Nitin - 1) In normal mode of operation, the most AV sync part is handled by the demuxer. Decoder element normally gets the buffer from demuxer then decodes it and adds timestamp and push to display sink. You will see AV sync from decoder only when the decoder thread is not able to process fast enough to keep-up with demuxer. I would suggest you to enable displayBuffer=TRUE property in decoder elements which will print you the read/write pointer location in circular buffer and will give u some clue. In addition to that, I would suggest modifying the number of maximum buffer queued in queue element after the demuxer. See decode_qt.sh for sample examples.
2) I think video encoder is almost 70% done, during development I tried testing all dvsdk's but will wait for validating result before concluding completed. You can find pretty much the same wording on omapzoom webstie, where the encoder is shown as "untested". Now coming back to your problem. * You are trying to "capture" -> "encode" -> "decode" -> "display". By default this mode of operation will not work because you can not load two combo's at the same time. By default encoder uses "encodeCombo" and decoder uses "decodeCombo". To solve this problem you need to use "loopbackCombo" which has both video encoder and decoder. To use loopback combo you need to modify gstreamer codec cfg file. Look at the plug-in source code. * But if I look at your log then you are hitting v4l2src issue. There was some driver bugs (or limitation) and I have patched v4l2src with those workaround. Looks like you are using sensor not the composite (or component) input. We are testing gst with normal EVM bundle which has composite input. If you are using sensor then u may need to modify v4l2src element to work with your sensor driver. Before jumping on v4l2src element, I would suggest using videotestsrc element for testing video encoder. See "encode_elementry.sh" script. E.g run ./encode_elementry.sh -l -v -o sample.264 This will display sample pipeline used for constructing real video encoder pipeline. See ./encode_elementry.sh -h for various options. Hope this will help Thanks Brijesh Singh -----Original Message----- From: Nitin Mahajan [mailto:[email protected]] Sent: Tuesday, February 24, 2009 10:07 PM To: [email protected] Cc: Singh, Brijesh Subject: RE: DMAI Based GStreamer Audio Video Synchronisation? Hello Brijech, Thanks for your inputs, --- On Wed, 25/2/09, Singh, Brijesh <[email protected]> wrote: > From: Singh, Brijesh <[email protected]> > Subject: RE: DMAI Based GStreamer Audio Video Synchronisation? > To: "Vladimir Pantelic" <[email protected]>, > "[email protected]" > <[email protected]> > Cc: "[email protected]" > <[email protected]> > Date: Wednesday, 25 February, 2009, 1:22 AM Hello, > > To test AV sync you need to use clip which has lot of talking (e.g > news channels podcast). I personally use animated clips for video > quality test (e.g up-scale/down-scale etc) not for AV sync. Use some > podcast from here http://geekbriefwp.podshow.com/feed/ or try youtube > video's. > > In addition check the tracker bug items for known bugs. > I was able to play this file with proper A-V sync using the older TI gstreamer pugins, so I thought there is some issue with the sync. Also on desktop with same version of Gstreamer I am able to play with sync. In this particular case the video is being played very fast and audio is not able to catch up with the DMAI based plugins. I filed the same as bug on OMAP-Zoom, but thought if I could get some quick pointers to this issue, it would be helpful. I have one more query with respect to the video encoder in Dmai based plugins. Two experiments are done with TiVidenc and there results are also provided below. Both are failing with same error.This was from latest revision r121. Please let us know if there is something wrong in our command... Experiemnt 1 ] gst-launch-0.10 v4lsrc ! video/x-raw-yuv,width=352,height=288,framerate=25/1 ! TIVidenc ! TIViddec ! TIDmaiVideoSink displayStd=fbdev displayDevice=/dev/fb/3 videoStd=D1_NTSC videoOutput=COMPOSITE resizer=TRUE accelFrameCopy=TRUE Output: Setting pipeline to PAUSED ... /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: [spca5xx_set_light_freq:1932] Sensor currently not support light frequency banding filters. /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: [gspca_set_isoc_ep:945] ISO EndPoint found 0x81 AlternateSet 7 /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: [spca5xx_do_ioctl:2124] Bridge ZC301-2 /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: [spca5xx_do_ioctl:2124] Bridge ZC301-2 /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: VIDIOCMCAPTURE: invalid format (7) /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: VIDIOCMCAPTURE: invalid format (9) /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: VIDIOCMCAPTURE: invalid format (14) /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: VIDIOCMCAPTURE: invalid format (13) /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: VIDIOCMCAPTURE: invalid format (16) /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: VIDIOCMCAPTURE: invalid format (11) /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: VIDIOCMCAPTURE: invalid format (6) ERROR: Pipeline doesn't want to pause. ERROR: from element /GstPipeline:pipeline0/GstV4lSrc:v4lsrc0: Could not negotiate format Additional debug info: gstbasesrc.c(2426): gst_base_src_start (): /GstPipeline:pipeline0/GstV4lSrc:v4lsrc0: Check your filtered caps, if any Setting pipeline to NULL ... FREEING pipeline ... Experiemnt 2 ] ./encode_elementry.sh -l -s "v4lsrc" -o purush -v Output : /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: [spca5xx_set_light_freq:1932] Sensor currently not support light frequency banding filters. /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: [gspca_set_isoc_ep:945] ISO EndPoint found 0x81 AlternateSet 7 /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: [spca5xx_do_ioctl:2124] Bridge ZC301-2 /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: [spca5xx_do_ioctl:2124] Bridge ZC301-2 gst-inspect TIVidenc *********** Pipeline Settings ************* platform = dm6446 source = v4lsrc source_args = num-buffers=1000 encoder_plugin = TIVidenc encoder_plugin_args = codecName=h264enc engineName=encode contiguousInputFrame=FALSE gst-launch --gst-debug-no-color --gst-debug=TI*:2 v4lsrc num-buffers=1000 ! TIVidenc codecName=h264enc engineName=encode contiguousInputFrame=FALSE ! filesink location=purush /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: [spca5xx_set_light_freq:1932] Sensor currently not support light frequency banding filters. Setting pipeline/mnt/mvl/sources/gspcav1-20071224/gspca_core.c: [gspca_set_isoc_ep:945] ISO EndPoint found 0x81 AlternateSet 7 to PAUSED ... /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: [spca5xx_do_ioctl:2124] Bridge ZC301-2 /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: [spca5xx_do_ioctl:2124] Bridge ZC301-2 /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: VIDIOCMCAPTURE: invalid format (7) /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: VIDIOCMCAPTURE: invalid format (9) /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: VIDIOCMCAPTURE: invalid format (14) /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: VIDIOCMCAPTURE: invalid format (13) /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: VIDIOCMCAPTURE: invalid format (16) /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: VIDIOCMCAPTURE: invalid format (11) /mnt/mvl/sources/gspcav1-20071224/gspca_core.c: VIDIOCMCAPTURE: invalid format (6) ERROR: Pipeline doesn't want to pause. ERROR: from element /GstPipeline:pipeline0/GstV4lSrc:v4lsrc0: Could not negotiate format Additional debug info: gstbasesrc.c(2426): gst_base_src_start (): /GstPipeline:pipeline0/GstV4lSrc:v4lsrc0: Check your filtered caps, if any Setting pipeline to NULL ... FREEING pipeline ... Also, is it too early to try with the video encoder? Thanks in advance regards -Nitin New Email addresses available on Yahoo! Get the Email name you've always wanted on the new @ymail and @rocketmail. Hurry before someone else does! http://mail.promotions.yahoo.com/newdomains/aa/ _______________________________________________ Davinci-linux-open-source mailing list [email protected] http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
