[theora] Ripping theora stream

Stefano Luceri stefano.luceri at agilex.it
Wed Aug 17 06:34:13 PDT 2011

Thanks to #theora IRC channel I've ripped the RTP/THEORA packet stream to an
ogg file.
I used liboggz to write packet content (oggz_write_feed function).
The only problem I've found is related to header packets since rtp_theora
suggests to merge identification header and setup header in a single rtp
packet payload suppressing the comment one. 
Solution to this problem is trivial:
1) Extract identification header it has a fixed length (42) and write it
down using oggz_write_feed
2) Create a dummy comment header:
	Theora_comment tcom;
	ogg_packet op_header_comment;

	theora_encode_comment(&tcom, &op_header_comment)
	// and write it down using oggz_write_feed

3) Extract setup header (the remaining playload from 1)) and write it using

Now I've the following problem, playing the ogg file is very fast, is there
a way in theora to 'control' frame rate?
Moreover my next step consists in muxing audio/video (I can save it as a
separate WAV for now), what tool or library do you suggest for muxing?

Thank you,


> Hi,
> I'm new to this mailing list. I'm trying to save a theora stream into an
OGG file (or something else). I've the theora packets received from a VoIp
application > (over RTP). I'm able to convert a single frame to a jpeg image
but I've no idea about how to write video file.
> Maybe this is not the right place to answer this question but I'm loosing
my mind reading specs about file formats and conversion tools . any help

> Thank you very much

More information about the theora mailing list