h264 encoding "divisible by 2"

Nicolas Dufresne nicolas at ndufresne.ca
Tue Apr 2 13:20:28 UTC 2019


Le mar. 2 avr. 2019 04 h 10, Igors <igors at eias3d.com> a écrit :

> Hello again
>
> My venture with h264 is continuing. I've found another h264 encoder:
> vtenc_x264, it works fine with odd size(s) and produced files are readable
> with popular players. But I've got another prob: it can't save a single
> frame or few frames, for example
>
> gst-launch-1.0 videotestsrc num-buffers=10 ! videoconvert !
> video/x-raw,format=I420 ! vtenc_h264 ! qtmux ! filesink
> location=test_264.mov
>
> It works fine but if num-buffers=3 (or 1) then output movie is junk 616
> bytes
>
> I want a simple thing - just save video in a popular h264, why all is so
> complex? What am I doing wrong?
>

This seems like a bug in vtenc draining flow. Because of reordering, h2264
encoder queue up to 16 buffers before letting one go, this requires special
casing at EOS and is often a source a bugs. The right thing to do is to
file a bug.

About x264, it historically didn't fully support padding and cropping. H264
encoding happens in minimum macroblock of 16x16 (that part seems handled)
on top of which there is special casing for subsampled format. I would also
recommend to file a bug, I'm quite certain if some dev find the time we
could lift this limitation. You could also give a try yourself if you feel
like it.


> Thx
>
>
>
> --
> Sent from: http://gstreamer-devel.966125.n4.nabble.com/
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20190402/aa6d46c6/attachment.html>


More information about the gstreamer-devel mailing list