[Libav-user] How to keep AVFrame data after codec close

Bruce Wheaton bruce at spearmorgan.com
Thu Dec 5 19:53:37 CET 2013


On Dec 5, 2013, at 3:41 AM, Paul B Mahol <onemda at gmail.com> wrote:

> On 12/5/13, Eric Beuque <eric.beuque at gmail.com> wrote:
>> How i can tell libavcodec that i want to become the owner of the data and
>> be able to free it, to without codec context instance? I was thinking about
>> using get/release_buffer functions, but i don't know how to compute size of
>> the data.
>> 
>> Is data memcpy the only way to do this?
>> 
>> Note, that i also can't upgrade to new version of FFMPEG.
>> 
>> Thanks for your help.
>> 
> 
> Use reference counting system.
> They you need to manually free frame once you will not need it
> (otherwise you leak memory), so you do not need to do copy.


In my recent experiments, it seemed that closing the codec actually frees all buffers, regardless of reference count. That makes sense - if the codec is gone, what would detect the decreased reference count? 

Bruce


More information about the Libav-user mailing list