[1.0][Regression ?] gstamcvideodec: not-negotiated problem

cee1 fykcee1 at gmail.com
Mon Jul 29 18:31:22 PDT 2013


Hi,

I tried the gstreamer 1.0.8 for android, and found the pipeline which
works under 0.10 is then broken(amcviddec-omxk3videodecoderavc is a hw
h264 decoder on my pad):
"""
# Receive data from net.
udpsrc uri=udp://0.0.0.0:3057
caps=application/x-rtp,media=(string)video,clock-rate=(int)90000,payload=(int)96,encoding-name=(string)H264,sprop-parameter-sets=(string)\"Z01AFNoFB+wEQAAAAwBAAAAPI8UKqA\\=\\=\\,aO88gA\\=\\=\"
! rtph264depay ! h264parse ! amcviddec-omxk3videodecoderavc !
eglglessink name=videosink
"""

Going deeper, I found:
* accept caps:
"""
video/x-h264, stream-format=(string)byte-stream, alignment=(string)au,
width=(int)320, height=(int)240, framerate=(fraction)30/1,
parsed=(boolean)true, pixel-aspect-ratio=(fraction)1/1
"""

* allowed caps:
"""
video/x-h264, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ],
framerate=(fraction)[ 0/1, 2147483647/1 ], parsed=(boolean)true,
stream-format=(string)byte-stream, alignment=(string)au,
profile=(string)high, level=(string){ 1, 1b, 1.1, 1.2, 1.3, 2, 2.1,
2.2, 3, 3.1, 3.2, 4, 4.1, 4.2, 5, 5.1 };
video/x-h264, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ],
framerate=(fraction)[ 0/1, 2147483647/1 ], parsed=(boolean)true,
stream-format=(string)byte-stream, alignment=(string)au,
profile=(string)main, level=(string){ 1, 1b, 1.1, 1.2, 1.3, 2, 2.1,
2.2, 3, 3.1, 3.2, 4, 4.1, 4.2, 5, 5.1 };
video/x-h264, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ],
framerate=(fraction)[ 0/1, 2147483647/1 ], parsed=(boolean)true,
stream-format=(string)byte-stream, alignment=(string)au,
profile=(string)baseline, level=(string){ 1, 1b, 1.1, 1.2, 1.3, 2,
2.1, 2.2, 3, 3.1, 3.2, 4, 4.1, 4.2, 5, 5.1 };

...

"""

* Then gst_caps_is_subset (accept_caps, allowed_caps) returns false.


Does gstamcvideodec export an improper caps? Or should I change caps of udpsrc?
Any idea?


-- 
Regards,

- cee1


More information about the gstreamer-android mailing list