[FFmpeg-trac] #5600(avformat:new): Please merge patches output bytestream labels from libav
FFmpeg
trac at avcodec.org
Tue May 31 23:37:05 CEST 2016
#5600: Please merge patches output bytestream labels from libav
----------------------------------+---------------------------------------
Reporter: Sesse | Type: enhancement
Status: new | Priority: normal
Component: avformat | Version: git-master
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
----------------------------------+---------------------------------------
Hi,
libav recently acquired a feature that's very useful for streaming; it
allows a client to register avio callbacks that get the type of data
(header, keyframe, nothing special) each block begins, which means it can
begin clients' streams from other places than the beginning of the stream
without producing an invalid stream.
It is possible to infer the same information with the current API, but it
is rather indirect, is based on assuming internal details of muxers, and
requires frequent flushing (which messes up e.g. movenc's duration
calculation, causing pts < dts in rare cases).
I've tested an earlier version of the patch set (on top of ffmpeg, not
libav) for literally weeks in Nageru (my streaming application) with no
problems, and I believe it would also be useful for e.g. VLC's streaming.
The patch series from libav (all directly after each other) is:
db7968bff4851c2be79b15b2cb2ae747424d2fca avio: Allow custom IO users to
get labels for the output bytestream
371df9ba71393a1c5429d5f40c76348b30e556c7 flvenc: Provide output
bytestream markers
dbbaad32e36b9046cd19d6e3329e2ca7ab49b401 movenc: Provide output
bytestream markers for fragmented content
71852a1ba89abc8749e309d9d662c49d47e19531 matroskaenc: Provide output
bytestream markers
fd4957d9c67996e7d218fd36b4168c9cb85f9ea7 movenc-test: Test
write_data_type
e1eb0fc960163402bbb4e630185790488f7d28ed movenc: Use packets in
interleaving queues for the duration at the end of fragments
a79aafd0b4d37eda6f15dc68e6509d4e815290c9 movenc: Add a test for VFR with
b-frames, with a duration change at a fragment end
72d621069fc301b431fac36b5281699a362562f2 movenc: Add a missed const
There are some conflicts, but they seem simple to reconcile (possibly with
the exception of test syntax differences, which I don't know anything
about).
--
Ticket URL: <https://trac.ffmpeg.org/ticket/5600>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list