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.
Tool/software: Linux
Hi,
I am using the SDK 03.02.00.05 and trying to decode the JPEG stream with Gstreamer pipeline and getting below error.
ERROR: Pipeline doesn't want to pause.
../git/libdce_linux.c:70: dce_init ERROR: Failed OmapDrm_FD > 0 error val -7Setting pipeline to NULL .
Am I missing something on this one ?
Thanks,
Nirav
Hello,
I am sorry for the delay. I ran some tests on the EVM.
Here is my observations:
1. I used these pipelines to create the mjpeg stream.
gst-launch-1.0 videotestsrc num-buffers=100 ! jpegenc ! qtmux ! filesink location=1.mov
gst-launch-1.0 videotestsrc num-buffers=100 ! jpegenc ! multipartmux ! filesink location=2.multipart -v
In this case you could set caps filter with resolution also.
Here is part of the log:
/GstPipeline:pipeline0/GstJpegEnc:jpegenc0.GstPad:sink: caps = "video/x-raw\,\ width\=\(int\)320\,\ height\=\(int\)240\,\ framerate\=\(fraction\)30/1\,\ format\=\(string\)I420\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ interlace-mode\=\(string\)progressive"
/GstPipeline:pipeline0/GstJpegEnc:jpegenc0.GstPad:src: caps = "image/jpeg\,\ sof-marker\=\(int\)0\,\ width\=\(int\)320\,\ height\=\(int\)240\,\ pixel-aspect-ratio\=\(fraction\)1/1\,\ framerate\=\(fraction\)30/1"
As you could see on the output (src) of encoder we have image/jpeg.
2. I played the test files:
gst-launch-1.0 -v filesrc location=1.mov ! qtdemux ! jpegparse ! ducatijpegdec ! kmssink
gst-launch-1.0 playbin uri=file:///usr/share/ti/video/1.mov video-sink=kmssink
With this pipeline only the first frame is displayed only:
gst-launch-1.0 -v -m filesrc location=1.mov ! jpegparse ! ducatijpegdec ! imagefreeze ! kmssink
gst-launch-1.0 -v -m filesrc location=2.multipart ! multipartdemux ! jpegparse ! ducatijpegdec ! kmssink
Here is part of the log for decoding:
/GstPipeline:pipeline0/GstJpegParse:jpegparse0.GstPad:src: caps = "image/jpeg\,\ parsed\=\(boolean\)true\,\ format\=\(string\)I420\,\ width\=\(int\)320\,\ height\=\(int\)240\,\ framerate\=\(fraction\)1/1"
/GstPipeline:pipeline0/GstDucatiJpegDec:ducatijpegdec0.GstPad:src: caps = "video/x-raw\,\ format\=\(string\)NV12\,\ width\=\(int\)320\,\ height\=\(int\)240\,\ framerate\=\(fraction\)1/1\,\ drm_mem\=\(boolean\)true"
/GstPipeline:pipeline0/GstKMSSink:kmssink0.GstPad:sink: caps = "video/x-raw\,\ format\=\(string\)NV12\,\ width\=\(int\)320\,\ height\=\(int\)240\,\ framerate\=\(fraction\)1/1\,\ drm_mem\=\(boolean\)true"
/GstPipeline:pipeline0/GstDucatiJpegDec:ducatijpegdec0.GstPad:sink: caps = "image/jpeg\,\ parsed\=\(boolean\)true\,\ format\=\(string\)I420\,\ width\=\(int\)320\,\ height\=\(int\)240\,\ framerate\=\(fraction\)1/1"
The jpegparser parse image/jpeg. On the input (sink) of the ducatijpegdec we have image/jpeg. On the output(src) raw NV12.
I haven't observed problem.
I would recommend you to check are you able to play your test file on PC with gstreamer or VLC for example?
Hope this helps.
BR
Margarita