This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

dm365 video streaming compressed on dvsdk4

Other Parts Discussed in Thread: TVP5151, TVP5150

Sorry for my not enough gstreamer knowledge (I'm improving it...).

tvp5151 works on my custom board and I can get video using this command:

gst-launch v4l2src ! 'video/x-raw-yuv, format=(fourcc)UYVY, fr
amerate=(fraction)60/1, width=(int)720, height=(int)480' ! ffmpegcolorspace ! fi
lesink location=video_19_11_2010_003.raw

I can see the video on the host using this command:

mplayer -fps 6 video_19_11_2010_002.raw -demuxer rawvideo -rawvideo w=720:h=480:format=uyvy

I'm working with the arago kernel and loadmodules ok (mem=60M).
I'd like to stream to windows in mpeg4/h264 in the easiest way.
I guess gstreamer-ti+mpeg4+vlc on win O.S.
Looking at http://processors.wiki.ti.com/index.php/Example_GStreamer_Pipelines I guess that the info are to be updated.
It doesn't matter anyway...

Now I have found in targetfs some examples:
find target_fs/ -name "gst*"
target_fs/home/root/dm365/matrix/bin/gst_encode_h264
target_fs/home/root/dm365/matrix/bin/gst_decode_mp4
target_fs/home/root/dm365/matrix/bin/gst_decode_h264
target_fs/home/root/dm365/matrix/bin/gst_decode_mpeg4
target_fs/home/root/dm365/matrix/bin/gst_passthru
target_fs/home/root/dm365/matrix/bin/gst_decode_mpeg2

and I'm trying to move from the following working command:

gst-launch v4l2src ! 'video/x-raw-yuv, format=(fourcc)UYVY, fr
amerate=(fraction)60/1, width=(int)720, height=(int)480' ! ffmpegcolorspace ! fi
lesink location=video_19_11_2010_003.raw

to the streaming example in http://processors.wiki.ti.com/index.php/Example_GStreamer_Pipelines, that is:
gst-launch -v v4l2src always-copy=FALSE ! TIVidenc codecName=h264enc engineName=hmjcp contiguousInputFrame=TRUE ! rtph264pay pt=96 ! udpsink host=<HOST_PC_IP> port=5000

passing from /home/root/dm365/matrix/bin/gst_encode_h264 example:
gst-launch v4l2src always-copy=FALSE num-buffers=500 ! 'video/x-raw-yuv, format=(fourcc)NV12, framerate=(fraction)60/1, width=(int)1280, height=(int)720' ! tee name=t ! queue ! TIVidenc1 codecName=h264enc engineName=codecServer contiguousInputFrame=TRUE bitRate=600000 ! filesink location=/home/root/GStreamer_encoded_file.264 t. ! queue ! TIDmaiVideoSink videoStd=720P_60 videoOutput=component sync=false hideOSD=true contiguousInputFrame=TRUE -v

I really need NV12 or I can use UYVY  ?
If use UYVY the resizer is not happy:
davinci_resizer davinci_resizer.2: Operation mode doesn't match with current hw mode
Any idea?

bye,
Raffaele


  • To be more clear here you are the error

    root@dm365-evm:~# gst-launch v4l2src always-copy=FALSE num-buffers=500    ! 'vid
    eo/x-raw-yuv, format=(fourcc)UYVY, framerate=(fraction)60/1, width=(int)720, hei
    ght=(int)480' ! ffmpegcolorspace ! queue ! TIVidenc1 codecName=h264enc engineNam
    e=codecServer contiguousInputFrame=TRUE bitRate=600000 ! filesink location=/home
    /root/GStreamer_encoded_file.264
    Setting pipeline to PAUSED ...
    davinci_resizer davinci_resizer.2: Operation mode doesn't match with current hw mode
    rsz_doioctl - 248: 0,1
    tvp5150_g_fmt - 1054
    tvp5150_g_fmt - 1068
    vpfe-capture vpfe-capture: input information not found for the subdev
    tvp515x_querystd - 969
    vpfe-capture vpfe-capture: width = 1, height = 1, bpp = 2
    vpfe-capture vpfe-capture: adjusted width = 16, height = 2, bpp = 2, bytesperline = 32, sizeimage = 64
    vpfe-capture vpfe-capture: width = 32768, height = 32768, bpp = 2
    vpfe-capture vpfe-capture: adjusted width = 720, height = 480, bpp = 2, bytesperline = 1440, sizeimage = 691200
    vpfe-capture vpfe-capture: width = 1, height = 1, bpp = 2
    vpfe-capture vpfe-capture: adjusted width = 16, height = 2, bpp = 2, bytesperline = 32, sizeimage = 64
    vpfe-capture vpfe-capture: width = 32768, height = 32768, bpp = 2
    vpfe-capture vpfe-capture: adjusted width = 720, height = 480, bpp = 2, bytesperline = 1440, sizeimage = 691200
    vpfe-capture vpfe-capture: width = 720, height = 480, bpp = 2
    vpfe-capture vpfe-capture: adjusted width = 720, height = 480, bpp = 2, bytesperline = 1440, sizeimage = 691200
    Pipeline is live and does not need PREROLL ...
    INFO:
    v4l2_dm365_ipipe.c(249): gst_v4l2_dm365_resizer_init (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0
    WARNING: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Failed to set norm for device '/dev/video0'.
    Additional debug info:
    v4l2_calls.c(720): gst_v4l2_set_norm (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
    system error: Invalid argument
    Setting pipeline to PLAYING ...
    New clock: GstSystemClock
    ERROR: from element /GstPipeline:pipeline0/GstTIVidenc1:tividenc10: failed to create video encoder: h264enc

    Additional debug info:
    gsttividenc1.c(1584): gst_tividenc1_codec_start (): /GstPipeline:pipeline0/GstTIVidenc1:tividenc10
    Execution ended after 519301001 ns.
    gst-launch-0.10: linux/Rendezvous.c:105: Rendezvous_meet: Assertion `hRv' failed.
    Execution ended after 519301001 ns.
    Aborted

  • Hi Raffele,

    Unfortunately the codec does not support UYVY. NV12 is the only supported colorspace.

    Best regards,

    Vincent

  • I have a Decodec Demo, but when it is runing , it always prints
    Decode demo started.
    Failed to create attribute window device
    Error: Failed to create UI
    hRendezvousCleanup start
    dm365_Dec_debug2: linux/Rendezvous.c:105: Rendezvous_meet: Assertion `hRv' failed.
    Aborted,

    who can help me ?thanks,

    I don't know if  it is relate to /dev/fb*  ,

  • oh,yes, it is relate to /dev/fb* . you can use "DMAI_DEBUG = 2     ./you program" to get detial information.

    then ,you can create /dev/fb*  .(may be ).