How to convert avc/au to byte-stream/au ?
lucky chou
luckychsj at gmail.com
Tue Jun 13 02:23:26 UTC 2017
Dear msemsar,
thanks for your comment.
msemsar wrote
> Hi Lucky,
> h264parse supports both avc and byte-stream, you can check it yourself by
> running gst-inspect-1.0 h264parse.
> Just set the stream-format of h264parse to byte-stream.
> yours,
Yes,I have checked, h264parse does support byte-stream.
In fact, I should describe it more clearly, sorry. If h264parse detected
stream is avc, how can it also let it output byte-stream?
Like the following logļ¼
-------------
01-01 09:05:02.867 12796 13371 D gstplayer: enter setDataSource
url=http://10.9.44.131/test.mp4 player_state=0
...
01-01 09:05:18.148 12796 13539 D [gsth264parse.c:331] <h264parse> parsing
caps: video/x-h264, stream-format=(string)avc, alignment=(string)au,
level=(string)3.1, profile=(string)high,
codec_data=(buffer)0164001fffe1001a6764001facd1005005bb011000000300100000030328f162d12001000568ebe11cb0,
width=(int)1280, height=(int)720, framerate=(fraction)25/1,
pixel-aspect-ratio=(fraction)1/1
01-01 09:05:18.148 12796 13539 D [gsth264parse.c:2592] <h264parse> have
packetized h264
01-01 09:05:18.148 12796 13539 D [gsth264parse.c:2622] <h264parse> profile
64001f
01-01 09:05:18.148 12796 13539 D [gsth264parse.c:2630] <h264parse> nal
length size 4
...
01-01 09:05:19.812 12796 13539 D [gstvideodecoder.c:537] <videodecoder>
gst_video_decoder_init
01-01 09:05:19.812 12796 13539 D [gstvideodecoder.c:1996] <videodecoder>
reset full 1
01-01 09:05:19.813 12796 13539 D [gstvideodecoder.c:1870] <videodecoder>
received query 40963, accept-caps
01-01 09:05:19.813 12796 13539 D [gstvideodecoder.c:1719] <videodecoder>
received query 43523, caps
01-01 09:05:19.813 12796 13539 D [gstvideodecoder.c:1996] <videodecoder>
reset full 1
01-01 09:05:19.814 12796 13539 D [gstvideodecoder.c:1379] <videodecoder>
received event 10254, stream-start
01-01 09:05:19.814 12796 13539 D [gstvideodecoder.c:1096] <videodecoder>
received STREAM_START. Clearing taglist
01-01 09:05:19.814 12796 13539 D [gstvideodecoder.c:852] <videodecoder>
pushing event stream-start
01-01 09:05:19.814 12796 13539 D [gstvideodecoder.c:1870] <videodecoder>
received query 40963, accept-caps
01-01 09:05:19.814 12796 13539 D [gstvideodecoder.c:1379] <videodecoder>
received event 12814, caps
01-01 09:05:19.814 12796 13539 D [gstvideodecoder.c:679] <videodecoder>
setcaps video/x-h264, parsed=(boolean)true, stream-format=(string)avc,
alignment=(string)au, width=(int)1280, height=(int)720,
framerate=(fraction)25/1, profile=(string)high
01-01 09:05:19.928 12796 13539 D libchplayer: [gstvideodecoder.c:1719]
<videodecoder> received query 43523, caps
As shown above, because the stream itself is avc, so h264parse very happy to
choose stream-format=avc, then videodecoder in nego can only match avc,
which causing HW decode (amcvideodec*) can't be selected.
If I understanding what is wrong, please help correct me,
thank you.
Regards,
luckychou
--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/How-to-convert-avc-au-to-byte-stream-au-tp4683201p4683319.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.
More information about the gstreamer-devel
mailing list