[FFmpeg-devel] [Libav-user] MOV and custom IO

David Rodrigues drodrigues at wit-software.com
Sun Jul 22 15:01:02 CEST 2012


Hi everyone.

I've written some code to change the video container from MOV to MPEG-TS using ffmpeg API successfully. I'm using physical files. 

Now i have to change my input from file to custom IO. I changed the code for use custom IO with a callback (read_packet_callback) to feed ffmpeg.

fmtCtx = avformat_alloc_context();

iformat = av_find_input_format(input_fmt);

ibuffer = (unsigned char *) av_malloc(BUF_SIZE + FF_INPUT_BUFFER_PADDING_SIZE)

fmtCtx->pb = avio_alloc_context(ibuffer, 
				BUF_SIZE, 
				0, 
				read_context, 
				read_packet_callback, 
				NULL, 
				NULL);

avformat_open_input(&fmtCtx, "in-memory", iformat, NULL)

When i run the code the function avformat_open_input blocks, it reads N chunks of data but don't terminate with or without error. This happens with MOV format. I've tried using MPEG-TS format and this code runs successfully.

There's a special trick for MOV format? Has anyone encountered this problem?

Thanks!

David Rodrigues


More information about the ffmpeg-devel mailing list