vaapih264enc+hlssink output not playable in browsers

Tim Müller tim at centricular.com
Wed Dec 28 19:39:44 UTC 2016


On Mon, 2016-12-26 at 22:12 +0100, Uwe Müller wrote:


Hi Uwe,

> I was able to narrow the problem down to the vaapih264enc-element by
> creating gst-launch lines looking like this:
> 
>     gst-launch-1.0 videotestsrc ! [ENCODER] ! h264parse ! mpegtsmux !
> hlssink
> 
> by placing "x264enc" as encoder, everything works as expected.
> Placing
> "vaapih264enc" produces the described mediaError / black picture
> problem. I tried a bunch of different properties of vaapih264enc, but
> no combination changes anything.
> (...)
> Is there anything wrong with my command or is there a problem in the
> vaapi plugin?

I suspect the problem is that vaapih264enc doesn't output AU delimiters
 by default, and it also seems to have no property for it ("aud"
property on x264enc which is set to true by default).

Compare working and non-working .ts segments with:

gst-launch-1.0 filesrc location=segment00000.ts ! tsdemux ! video/x-
h264 ! fakesink dump=true | grep ^00000000 | head

Note the 00 00 00 01 09 XX at the beginning of each packet/frame here.

Cheers
 -Tim

-- 
Tim Müller, Centricular Ltd - http://www.centricular.com


More information about the gstreamer-devel mailing list