[FFmpeg-devel] UDP constant bitrate feature (cbr)
Zach Swena
zcybercomputing at gmail.com
Wed Nov 18 19:37:49 CET 2015
Yea, how it is supposed to happen isn't complicated. To be of any help, I
have to wrap my mind around how FFmpeg currently times the output stream.
That mechanism currently does not produce as stable of a transmission rate
as multiplexer and decoder hardware requires. Since there is a bounty
available for this, it would be nice if someone more qualified could tackle
this problem. Until someone steps up, I will be poking at it from my end.
I am used to reading c++ intead of c code, so my reading is still a little
slow. Fixing this problem will open up new possibilities on how I can use
FFmpeg.
Zach
On Wed, Nov 18, 2015 at 9:03 AM, Michael Niedermayer <michael at niedermayer.cc
> wrote:
> On Tue, Nov 17, 2015 at 03:06:27PM -0800, Zach Swena wrote:
> > Hi Pavel,
> >
> > I can confirm that there is a problem with the UDP packet engine in
> > FFmpeg. FFmpeg has excessive jitter in it's UDP streaming output to the
> > point where hardware decoders can't handle it. My solution was to buffer
> > to disk and have my own program read and send the datagrams via a very
> > tight event loop. While increasing the PCR period is not a bad thing,
> > FFmpeg really should stream at a more consistant rate. Can someone
> explain
> > the theory behind how the UDP rate control is currently implemented in
> > FFmpeg? PCR sounds like a good way to tell when to send a packet, except
> > not every packet contains one. If FFmpeg uses PCR to tell how long to
> wait
> > to send a packet, then do the packets in between go at line speed? I
> plan
> > on taking a look at the code that does this, but I would really
> appreciate
> > it if someone who knows the code could explain the theory as I usually
> deal
> > with a slightly different dev setup.
>
> i suggest you read the mpeg specs, they detail when things should be
> sent down to each byte IIRC
> also IIRC its not that complicated, more like timestamp + bytepos/rate
>
>
> [...]
> --
> Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
>
> I know you won't believe me, but the highest form of Human Excellence is
> to question oneself and others. -- Socrates
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>
>
More information about the ffmpeg-devel
mailing list