[FFmpeg-devel] Full time video streaming job...

2021-06-16 Thread grady player
My name is Grady Player, I am the manager of the Encoding team at Uplynk 
(Verizon Digital Media).
I have a remote full-time Senior Software Developer position open, currently US 
locations only.

The tech stack is C/C++ and Python.  We work on a product that is the 
on-premises encoding product,
 and the distributed cloud encoding back end that produces the objects that are 
served via HLS and DASH.
Useful skill are all sorts of media skills including audio, video and subtitles.

The product compiles and runs on Mac and Linux, and some subset also run on 
Windows, 
developers generally work on company provided Macbooks, but linux is also 
workable.


I apologize if the isn't the correct forum, but the website indicates I should 
send an email here.

https://vzbuilders.wd5.myworkdayjobs.com/careers/job/US---Salt-Lake-City/Senior-Software-Engineer---Real-Time-Streaming_JR0013990
 
<https://vzbuilders.wd5.myworkdayjobs.com/careers/job/US---Salt-Lake-City/Senior-Software-Engineer---Real-Time-Streaming_JR0013990>

-Grady Player

you can also send questions to grady.pla...@verizondigitalmedia.com 
<mailto:grady.pla...@verizondigitalmedia.com>

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".


Re: [FFmpeg-devel] [RFC][ALT PATCHES] Code of Conduct Enforcement

2018-05-17 Thread grady player
There are lots of developers that consume FFMPEG and have a vested interest in 
its development continuing smoothly... I count myself among them.
I dont think it would be hard to impanel a group (3-4) of reasonable and 
dispassionate people to officiate and moderate public communication.

As an observer it seems like some of the disagreements fall into a few 
categories.

1) Constructive criticism done in a way that could be interpreted as 
threatening or dismissive.

2) Legitimate disagreements about implementation (reuse side_data or add a 
field to a struct; etc).

3) Language that might be completely acceptable in another language or in 
verbal communication, but "Comes off wrong" in the context of a code review.

4) The least common is someone actually being intentionally malicious... this 
is much, much less common than it used to be.

Then there are complicating personality factors: 

Some people take criticism poorly, and take personal offense when no ill will 
is intended.
Core developers have been working together for a long time, and often times 
there is some stored up ill will.

with a spelled out code of conduct you get rules and transgressions of rules, 
and reprimands and ultimatums, etc... but the incentives don't work well with 
volunteers.
It seems like it would be more effective to have a body that can just 
communicate a community standard out of band of this list.

If a CoC needs to be in place in order to banish someone to a new email 
address... or to have process to strip committing privileges, so be it.

-- grady (uninformed spectator)



> On May 17, 2018, at 10:09 AM, Dave Rice  wrote:
> 
>> 
>> On May 17, 2018, at 10:22 AM, Clément Bœsch  wrote:
>> 
>> On Mon, May 14, 2018 at 05:50:25PM +0100, Derek Buitenhuis wrote:
>> [...]
>>>   1. Implement a formal CoC enforcement system. This has been mostly 
>>> copypasted
>>>  from VideoLAN's, and is meant as more of a blueprint. This will no 
>>> doubt
>>>  be controversial.
>> 
>> So as mentioned already in the thread, the main issue is having a
>> police/justice entity. I would say it needs to be separate from the
>> development team (to maintain a power separation). Since such profile
>> doesn't seem to be exactly common in the open source world, maybe we could
>> externalize it. Does such a service exist with reasonable prices? Could we
>> use our funds for this? I understand this may sound far-fetched, but who
>> knows.
> 
> CoC enforcement as a paid service sounds alarming. Though it might make sense 
> to consider people separate from the development team for the role. There are 
> likely many who would like to contribute to the FFmpeg project but not as a 
> developer who could consider such a role.
> 
>> If such solution is not viable, we could fallback on the voting committee
>> to elect/design a subgroup of itself (an odd number like 3 persons maybe?)
>> to hold this moderation task for a period of 3 or 6 months, maybe 1 year.
>> Then these members are automatically maintainer of the CoC for this period
>> of time, and decide what to do with it.
>> 
>> Just random thoughts, no hard opinion on it to be honest.
> 
> I like this suggestion for a small committee to be tasked and trusted with 
> such actions. I consider that it might be easier to find rough consensus in 
> scenario a than in scenario b.
> 
> a) the larger ffmpeg community finds consensus to appoint a CoC committee and 
> as needed the CoC committee finds consensus (as a small group) on how to 
> respond to concerns from the community and to implement the CoC.
> 
> b) the larger ffmpeg community finds consensus on how to implement the CoC 
> directly each time there’s a concern from the community.
> 
> Dave Rice
> 
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org 
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel 
> 
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] State of decklink_ctx vs. decklink_cctx

2018-03-27 Thread grady player
So I haven't looked in great detail so this may all be info that you know, and 
maybe not helpful...

1. You can easily link C objects to C++ code by marking it `extern "C"`
2. You can not easily link C++ objects to C code, because there are classes, 
vtables, name mangling etc.
3. The solution for this interop is usually a shim layer that is compiled in 
C++ and has a C interface, and is imported as extern "C" so the names aren't 
mangled.
4. there are  2 common headers for decklink, one that can contain C++ symbols 
and one that contains only C symbols ( `IDeckLink`  is a c++ class and can't be 
included C Code)

So I don't know how you would really combine everything... you could keep the 
all of the DeckLink classes in the decklink_cctx as (void *) but that isn't 
elegant.
The only thing that seems useful would be de-duplication of the duplicate 
fields and if those are only for state to be read on opening, then I dont know 
that is exactly useful either,
but you could make an options struct and keep one ref to it in both contexts, 
they are similar but slightly different...


> On Mar 27, 2018, at 12:27 PM, Devin Heitmueller  
> wrote:
> 
> Hello,
> 
> I’m continuing to do some cleanup work on the decklink libavdevice 
> input/output, and I’m trying to understand how the way state is managed has 
> evolved over time.
> 
> Specifically, there are two key state structures - decklink_ctx and 
> decklink_cctx.  It would appear the motivation behind this was to store any 
> C++ members (mainly stuff exported by the Blackmagic driver) in a context 
> which doesn’t need to be accessed by the C code.  At one point I had assumed 
> the decklink_cctx was intended for the “capture" specific features (as 
> opposed to output), but after further review it looks like the goal is not 
> exposing the C++ members to the C code.
> 
> My concern is that I’m seeing a couple of trends:
> 
> 1.  Lots of C members appearing in the decklink_ctx state (i.e. stuff that 
> could be in decklink_cctx).  Presumably if the goal was to partition the C++ 
> stuff out, why not put everything except the actual C++ members into the 
> decklink_cctx state?
> 
> 2.  Duplicate members between the two state structs.  Both structs contain a 
> number of the same members (e.g. list_devices, list_formats, etc).  In some 
> cases the members are copied from one to the other after initialization, but 
> it’s not clear why the members are duplicated in the first place - why not 
> just reference the original member?
> 
> Can anyone offer any background on how this evolved?  I would like to see if 
> I can improve the situation, but I need to better understand what the goal(s) 
> were.  Also as I’m adding new features to both capture and output, it would 
> be good to better understand which of the two structs is appropriate to own 
> the state information.
> 
> Thanks in advance,
> 
> Devin
> 
> ---
> Devin Heitmueller - LTN Global Communications
> dheitmuel...@ltnglobal.com
> 
> 
> 
> 
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] First Post

2018-02-01 Thread grady player
Probably a good place to start would be:
https://ffmpeg.org/developer.html 
especially:
https://ffmpeg.org/developer.html#Submitting-patches 


as for looking for things to fix, most people add features they are using, or 
fix/enhance functionality they rely on.
if you want to look at bugs:
https://trac.ffmpeg.org/query?status=new=open=reopened=id=summary=status=type=component=version=time=changetime=priority=1
 


and the overall wiki:
https://trac.ffmpeg.org/wiki 

Good luck

- Grady

> On Feb 1, 2018, at 3:25 PM, param mangal  wrote:
> 
> Hello
> I am a student pursuing a Bachelor's degree in Computer Science and
> Engineering.
> I am comfortable programming in C, C++, and Java. I want to contribute to
> the ffmpeg project. I am familiar with the git workflow but I have never
> worked on an actual open source project.
> Please tell me how to start contributing to the project.
> I have gone through the Developer Documentation on the ffmpeg website.
> I have downloaded the current ffmpeg repository but I don't know where to
> start reading the code much less contributing to it.
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] ffmpeg for CentOS 7 tutorial is broken

2017-11-17 Thread grady player
do you have a opus build?
on my build system opus.pc is in the root of opus-1.1
if that is the case for your system you should be able to set:

export PKG_CONFIG_PATH=/path/to/opus then rebuild

if you have multiple paths for pc files you can separate them with a colon 
`export PKG_CONFIG_PATH=/path/to/opus:/path/to/other/thing`

you can also build ffmpeg without opus if you dont need it.




> On Nov 17, 2017, at 5:16 PM, Douglas Wire <pupcostud...@gmail.com> wrote:
> 
> This is using the procedure right off of the webpage tutorial and it does
> not appear it even created an OPUS.pc anywhere.
> 
> BEGIN /tmp/ffconf.zdwwNVl9/test.c
>1#include 
>2#include 
>3long check_lame_set_VBR_quality(void) { return (long)
> lame_set_VBR_quality; }
>4int main(void) { int ret = 0;
>5 ret |= ((intptr_t)check_lame_set_VBR_quality) & 0x;
>6return ret; }
> END /tmp/ffconf.zdwwNVl9/test.c
> gcc -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
> -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -I/root/ffmpeg_build/include
> -std=c11 -fomit-frame-pointer -pthread -I/root/ffmpeg_build/include
> -I/usr/include/freetype2 -c -o /tmp/ffconf.zdwwNVl9/test.o
> /tmp/ffconf.zdwwNVl9/test.c
> gcc -L/root/ffmpeg_build/lib -Wl,--as-needed -Wl,-z,noexecstack -o
> /tmp/ffconf.zdwwNVl9/test /tmp/ffconf.zdwwNVl9/test.o -lmp3lame -lpthread
> require_pkg_config libopus opus opus_multistream.h
> opus_multistream_decoder_create
> check_pkg_config libopus opus opus_multistream.h
> opus_multistream_decoder_create
> test_pkg_config libopus opus opus_multistream.h
> opus_multistream_decoder_create
> pkg-config --exists --print-errors opus
> Package opus was not found in the pkg-config search path.
> Perhaps you should add the directory containing `opus.pc'
> to the PKG_CONFIG_PATH environment variable
> No package 'opus' found
> ERROR: opus not found using pkg-config
> 
> The reason I mentioned the tutorial is I thought whoever rights those might
> wan to revisit their work as the one for CentOS 7 is incorrect. I think I
> cn figure out how to compile as shared on my.
> 
> On Fri, Nov 17, 2017 at 7:02 PM, grady player <derfoo...@icloud.com> wrote:
> 
>> if you post the output of failed build step, someone might have some
>> insight... but just saying everything is broken isn't likely going to go
>> anywhere.
>> 
>> if you are having problems with ffmpeg-php you may want to contact their
>> maintainers https://github.com/PHP-FFMpeg/PHP-FFMpeg/issues
>> 
>> -grady
>> 
>> 
>>> On Nov 17, 2017, at 4:38 PM, Douglas Wire <pupcostud...@gmail.com>
>> wrote:
>>> 
>>> I spent a week or so at one point making a set of one liners to install
>>> ffmpeg with a bunch of encoder support and since I need ffmpeg-php
>> support
>>> I was compiling as shared.
>>> 
>>> Now nothing I wrote works and if you run the tutorial it fails with
>>> pckg-config errors and refuses to compile. Can someone take a look at
>> this?
>>> I have spent three days pulling my hair out until I realized just
>> following
>>> your published tutorial exhibits the same failures as I have been seeing
>>> with my script. Thanks in advance
>>> ___
>>> ffmpeg-devel mailing list
>>> ffmpeg-devel@ffmpeg.org
>>> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>> 
>> ___
>> ffmpeg-devel mailing list
>> ffmpeg-devel@ffmpeg.org
>> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>> 
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] ffmpeg for CentOS 7 tutorial is broken

2017-11-17 Thread grady player
if you post the output of failed build step, someone might have some insight... 
but just saying everything is broken isn't likely going to go anywhere.

if you are having problems with ffmpeg-php you may want to contact their 
maintainers https://github.com/PHP-FFMpeg/PHP-FFMpeg/issues

-grady


> On Nov 17, 2017, at 4:38 PM, Douglas Wire  wrote:
> 
> I spent a week or so at one point making a set of one liners to install
> ffmpeg with a bunch of encoder support and since I need ffmpeg-php support
> I was compiling as shared.
> 
> Now nothing I wrote works and if you run the tutorial it fails with
> pckg-config errors and refuses to compile. Can someone take a look at this?
> I have spent three days pulling my hair out until I realized just following
> your published tutorial exhibits the same failures as I have been seeing
> with my script. Thanks in advance
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] avfilter_graph Question

2015-10-14 Thread Grady Player
Currently using:

commit af5917698bd44f136fd0ff00a9e5f8b5f92f2d58
Author: Michael Niedermayer 
Date:   Sun May 17 01:34:35 2015 +0200

I am trying to set up a small filter graph in order to use the YADIF 
implementation in libavfilter...

I have set up an avfilter_graph with 3 filters…

avfilter_register_all();
avfGraph = avfilter_graph_alloc();

AVFilter * bufferFilter, * yadifFilter, * bufferSink;

bufferFilter = avfilter_get_by_name("buffer");
yadifFilter = avfilter_get_by_name("yadif");
bufferSink = avfilter_get_by_name("buffersink”);

  /* dynamic configuration here */
   
avfilter_graph_create_filter(/*done for each filter */);

if (err >= 0) err = avfilter_link(buffer_ctx, 0, yadif_ctx, 0);
if (err >= 0) err = avfilter_link(yadif_ctx, 0, sink_ctx, 0);

if (err>=0) err = avfilter_graph_config(avfGraph, NULL);


Then I feed frames into the graph with:

err = av_buffersrc_add_frame(buffer_ctx, avf);

and pull frames out of the graph with:

  AVFrame * oframe = av_frame_alloc();
  err = av_buffersink_get_frame(sink_ctx, oframe);


 this all seems to work pretty well, except it is holding on to a lot of memory 
that is released in avfilter_graph_free()

I suspect it is something dumb, but is there something I need to be doing to 
release internal references to some resource?

 
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] avfilter_graph Question

2015-10-14 Thread Grady Player
Yes, sorry this was omitted  - after I am done I call:
 
av_frame_free();

it seems to be something that is internally referenced by the graph...


On Oct 14, 2015, at 10:50 AM, Paul B Mahol <one...@gmail.com> wrote:

> Dana 14. 10. 2015. 17:36 osoba "Grady Player" <
> grady.pla...@verizondigitalmedia.com> napisala je:
>> 
>> Currently using:
>> 
>> commit af5917698bd44f136fd0ff00a9e5f8b5f92f2d58
>> Author: Michael Niedermayer <michae...@gmx.at>
>> Date:   Sun May 17 01:34:35 2015 +0200
>> 
>> I am trying to set up a small filter graph in order to use the YADIF
> implementation in libavfilter...
>> 
>> I have set up an avfilter_graph with 3 filters…
>> 
>>avfilter_register_all();
>>avfGraph = avfilter_graph_alloc();
>> 
>>AVFilter * bufferFilter, * yadifFilter, * bufferSink;
>> 
>>bufferFilter = avfilter_get_by_name("buffer");
>>yadifFilter = avfilter_get_by_name("yadif");
>>bufferSink = avfilter_get_by_name("buffersink”);
>> 
>>  /* dynamic configuration here */
>> 
>>avfilter_graph_create_filter(/*done for each filter */);
>> 
>>if (err >= 0) err = avfilter_link(buffer_ctx, 0, yadif_ctx, 0);
>>if (err >= 0) err = avfilter_link(yadif_ctx, 0, sink_ctx, 0);
>> 
>>if (err>=0) err = avfilter_graph_config(avfGraph, NULL);
>> 
>> 
>> Then I feed frames into the graph with:
>> 
>>err = av_buffersrc_add_frame(buffer_ctx, avf);
>> 
>> and pull frames out of the graph with:
>> 
>>  AVFrame * oframe = av_frame_alloc();
>>  err = av_buffersink_get_frame(sink_ctx, oframe);
>> 
>> 
>> this all seems to work pretty well, except it is holding on to a lot of
> memory that is released in avfilter_graph_free()
>> 
>> I suspect it is something dumb, but is there something I need to be doing
> to release internal references to some resource?
>> 
>> 
>> 
> 
> Do you free frame you no longer need?
> ___
>> ffmpeg-devel mailing list
>> ffmpeg-devel@ffmpeg.org
>> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] avfilter_graph Question

2015-10-14 Thread Grady Player
Figured it out, sharing (if anyone were to care)…

I was using 
 av_buffersrc_add_frame
rather than: 
 av_buffersrc_write_frame

which informs the buffer to retain an internal reference to the original 
picture/frame..

-Grady


On Oct 14, 2015, at 11:50 AM, Grady Player 
<grady.pla...@verizondigitalmedia.com> wrote:

> Yes, sorry this was omitted  - after I am done I call:
>  
> av_frame_free();
> 
> it seems to be something that is internally referenced by the graph...
> 
> 
> On Oct 14, 2015, at 10:50 AM, Paul B Mahol <one...@gmail.com> wrote:
> 
>> Dana 14. 10. 2015. 17:36 osoba "Grady Player" <
>> grady.pla...@verizondigitalmedia.com> napisala je:
>>> 
>>> Currently using:
>>> 
>>> commit af5917698bd44f136fd0ff00a9e5f8b5f92f2d58
>>> Author: Michael Niedermayer <michae...@gmx.at>
>>> Date:   Sun May 17 01:34:35 2015 +0200
>>> 
>>> I am trying to set up a small filter graph in order to use the YADIF
>> implementation in libavfilter...
>>> 
>>> I have set up an avfilter_graph with 3 filters…
>>> 
>>>avfilter_register_all();
>>>avfGraph = avfilter_graph_alloc();
>>> 
>>>AVFilter * bufferFilter, * yadifFilter, * bufferSink;
>>> 
>>>bufferFilter = avfilter_get_by_name("buffer");
>>>yadifFilter = avfilter_get_by_name("yadif");
>>>bufferSink = avfilter_get_by_name("buffersink”);
>>> 
>>>  /* dynamic configuration here */
>>> 
>>>avfilter_graph_create_filter(/*done for each filter */);
>>> 
>>>if (err >= 0) err = avfilter_link(buffer_ctx, 0, yadif_ctx, 0);
>>>if (err >= 0) err = avfilter_link(yadif_ctx, 0, sink_ctx, 0);
>>> 
>>>if (err>=0) err = avfilter_graph_config(avfGraph, NULL);
>>> 
>>> 
>>> Then I feed frames into the graph with:
>>> 
>>>err = av_buffersrc_add_frame(buffer_ctx, avf);
>>> 
>>> and pull frames out of the graph with:
>>> 
>>>  AVFrame * oframe = av_frame_alloc();
>>>  err = av_buffersink_get_frame(sink_ctx, oframe);
>>> 
>>> 
>>> this all seems to work pretty well, except it is holding on to a lot of
>> memory that is released in avfilter_graph_free()
>>> 
>>> I suspect it is something dumb, but is there something I need to be doing
>> to release internal references to some resource?
>>> 
>>> 
>>> 
>> 
>> Do you free frame you no longer need?
>> ___
>>> ffmpeg-devel mailing list
>>> ffmpeg-devel@ffmpeg.org
>>> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>> ___
>> ffmpeg-devel mailing list
>> ffmpeg-devel@ffmpeg.org
>> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] avfilter_graph Question

2015-10-14 Thread Grady Player
the doxygen, docs dont really point to any difference… (the prototype for 
av_buffersrc_add_frame doesn’t match my header, not sure if that is a version 
issue)

int av_buffersrc_write_frame(   AVFilterContext *   s, const 
AVFrame *  frame)  
Add a frame to the buffer source.

int av_buffersrc_add_frame (AVFilterContext *buffer_src, const AVFrame 
*frame, int flags)
Add frame data to buffer_src. 


On Oct 14, 2015, at 2:15 PM, Ganesh Ajjanagadde <gajja...@mit.edu> wrote:

> On Wed, Oct 14, 2015 at 4:13 PM, Grady Player
> <grady.pla...@verizondigitalmedia.com> wrote:
>> Figured it out, sharing (if anyone were to care)…
>> 
>> I was using
>> av_buffersrc_add_frame
>> rather than:
>> av_buffersrc_write_frame
>> 
>> which informs the buffer to retain an internal reference to the original 
>> picture/frame..
> 
> Was the documentation confusing? Any suggestions for improving the docs?
> 
>> 
>> -Grady
>> 
>> 
>> On Oct 14, 2015, at 11:50 AM, Grady Player 
>> <grady.pla...@verizondigitalmedia.com> wrote:
>> 
>>> Yes, sorry this was omitted  - after I am done I call:
>>> 
>>> av_frame_free();
>>> 
>>> it seems to be something that is internally referenced by the graph...
>>> 
>>> 
>>> On Oct 14, 2015, at 10:50 AM, Paul B Mahol <one...@gmail.com> wrote:
>>> 
>>>> Dana 14. 10. 2015. 17:36 osoba "Grady Player" <
>>>> grady.pla...@verizondigitalmedia.com> napisala je:
>>>>> 
>>>>> Currently using:
>>>>> 
>>>>> commit af5917698bd44f136fd0ff00a9e5f8b5f92f2d58
>>>>> Author: Michael Niedermayer <michae...@gmx.at>
>>>>> Date:   Sun May 17 01:34:35 2015 +0200
>>>>> 
>>>>> I am trying to set up a small filter graph in order to use the YADIF
>>>> implementation in libavfilter...
>>>>> 
>>>>> I have set up an avfilter_graph with 3 filters…
>>>>> 
>>>>>   avfilter_register_all();
>>>>>   avfGraph = avfilter_graph_alloc();
>>>>> 
>>>>>   AVFilter * bufferFilter, * yadifFilter, * bufferSink;
>>>>> 
>>>>>   bufferFilter = avfilter_get_by_name("buffer");
>>>>>   yadifFilter = avfilter_get_by_name("yadif");
>>>>>   bufferSink = avfilter_get_by_name("buffersink”);
>>>>> 
>>>>> /* dynamic configuration here */
>>>>> 
>>>>>   avfilter_graph_create_filter(/*done for each filter */);
>>>>> 
>>>>>   if (err >= 0) err = avfilter_link(buffer_ctx, 0, yadif_ctx, 0);
>>>>>   if (err >= 0) err = avfilter_link(yadif_ctx, 0, sink_ctx, 0);
>>>>> 
>>>>>   if (err>=0) err = avfilter_graph_config(avfGraph, NULL);
>>>>> 
>>>>> 
>>>>> Then I feed frames into the graph with:
>>>>> 
>>>>>   err = av_buffersrc_add_frame(buffer_ctx, avf);
>>>>> 
>>>>> and pull frames out of the graph with:
>>>>> 
>>>>> AVFrame * oframe = av_frame_alloc();
>>>>> err = av_buffersink_get_frame(sink_ctx, oframe);
>>>>> 
>>>>> 
>>>>> this all seems to work pretty well, except it is holding on to a lot of
>>>> memory that is released in avfilter_graph_free()
>>>>> 
>>>>> I suspect it is something dumb, but is there something I need to be doing
>>>> to release internal references to some resource?
>>>>> 
>>>>> 
>>>>> 
>>>> 
>>>> Do you free frame you no longer need?
>>>> ___
>>>>> ffmpeg-devel mailing list
>>>>> ffmpeg-devel@ffmpeg.org
>>>>> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>>>> ___
>>>> ffmpeg-devel mailing list
>>>> ffmpeg-devel@ffmpeg.org
>>>> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>>> 
>> 
>> ___
>> ffmpeg-devel mailing list
>> ffmpeg-devel@ffmpeg.org
>> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> ___
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel