[libav-api] Using AVPacket::side_data

wl2776 wl2776 at gmail.com
Wed Nov 16 12:30:44 CET 2011

This field has appeared in AVPacket some time ago.
What is it used for? 
Since there is only one item AV_PKT_DATA_PALETTE in the enum
AVPacketSideDataType currently, I can suppose its usage is not very wide.

Is there any way to use it to communicate between custom AVIOContext and
main application.

For example, I have raw video data, files, consisting of raw H.264 or raw
mpeg-4 frames. 
Frame timestamps are stored in parallel with frames. Actually they are
inserted in the same file with raw video data between frames with special
markers, not compatible with any video container format.

I had to develop custom reading function, because I've found that
avformat_find_stream_info() doesn't deal with those markers very well.
However, I'd like to be able to use these timestamps reliably. My function
parses all these timestamps, while removing them from incoming stream, but
libav buffers the data, and its difficult to tell which timestamp belongs to
the packet, returned from av_read_frame ().

So, it would be great to have a way to communicate between AVIOContext and
main application.

View this message in context: http://libav-api.1054858.n5.nabble.com/libav-api-Using-AVPacket-side-data-tp4997436p4997436.html
Sent from the libav-api mailing list archive at Nabble.com.

More information about the libav-api mailing list