[FFmpeg-devel] Allow MPEGTS and KLV metadata remuxing

Stefano Sabatini stefasab at gmail.com
Sat Jan 30 13:40:24 CET 2016


On date Wednesday 2016-01-27 19:30:59 +0100, Stefano Sabatini encoded:
> On date Monday 2016-01-18 00:40:52 +0100, Michael Niedermayer encoded:
> > On Sun, Jan 17, 2016 at 01:24:29PM +0100, Stefano Sabatini wrote:
> > > Hi,
> > > 
> > > the attached patches allow to remux MPEGTS files containing KLV
> > > metadata. Since there are two kinds of metadata (synchronous and
> > > asynchronous), the first patch creates side data which stores the
> > > stream ID used to distinguish the two kind of packets, which is
> > > otherwise lost.
> > > 
> > > At the moment, I'm storing a single byte in the side data
> > > (corresponding to the stream ID), but the metadata could be extended
> > > to contain more information.
> [...]
> > >  libavcodec/avcodec.h    |    7 +++++++
> > >  libavcodec/avpacket.c   |    1 +
> > >  libavformat/mpegts.c    |   12 +++++++++++-
> > >  libavformat/mpegtsenc.c |   27 ++++++++++++++++++++-------
> > 
> > breaks fate
> > --- ./tests/ref/acodec/s302m    2016-01-17 18:42:03.168224316 +0100
> > +++ tests/data/fate/acodec-s302m        2016-01-18 00:19:04.128650317 +0100
> > @@ -1,4 +1,4 @@
> > -2d1494ad78292dca556fd079ec27f28d *tests/data/fate/acodec-s302m.mpegts
> > +8601644c674752c62ca35567a0294eef *tests/data/fate/acodec-s302m.mpegts
> 

> Can this be explained by the fact that the demuxer adds the merged
> side data to the packet data? How is this hash computed?

Bah, forget this, this was caused by messing with timestamps in the
muxer.

I'll send a new patch in a distinct thread.
-- 
FFmpeg = Fiendish and Forgiving Monstrous Philosophical Exciting Gadget


More information about the ffmpeg-devel mailing list