[FFmpeg-devel] [PATCH] RDT/Realmedia patches #2

Ronald S. Bultje rsbultje
Mon Nov 3 19:48:59 CET 2008


On Mon, Nov 3, 2008 at 12:42 PM, Michael Niedermayer <michaelni at gmx.at> wrote:
> what are all thouse variables? i can guess the meaning of prev ;) but
> what is sn ts and rn?
> and what is rule that is added?

rn is rule number, sn is stream number and ts is timestamp.

Real has streams divided in streams and rules. Streams are types, e.g.
audio could be 0 while video could be 1. Rules are substreams per
type, e.g. different bitrates. You can request and receive multiple,
which are thus separated by stream and rule number. Ever packet also
has a timestamp. We use this for (all 3) for discovering whether is is
a keyframe (if the streamnumber & 1 == 0, then it is a keyframe) and
finding out which AVStream the packet belongs to.

> (yes iam asking silly questions but by clarifying these it might become
>  easier to review the code for me or others without having to spend time
>  figuring out what everything is, also the code should become more readable

I can add doxy comments if wanted.

> also what exactly does the patch do?

Parse the rule number for each incoming packet. This will (in the next
patch) be used to implement multi-stream receiving and rule-switching
(e.g. -ast option or the 'a' key in ffplay). I did all of that in one
patch previously (~16kb), but had no replies so I started chopping it
up in smaller units.


More information about the ffmpeg-devel mailing list