Hey - thanks a lot, that really helped. You focused right in on my issue... I guess a lot of libav noobs screw up the read function. OK now I'm getting
FFERRTAG( 'I','N','D','A') at least I'm making better progress now...
avio_alloc_context() is the right direction. Here is my
implementation of your "read_fun" which uses a QIODevice
instead of std::fstream. libav calls read_fun when it wants
data. opaque will point to your ifs. You need to read from ifs
and fill libav's buffer (*buf) and then return how many bytes you
put into the buffer.