<div dir="ltr"><div style="font-size:large" class="gmail_default"><span class="gmail-mx_MTextBody gmail-mx_EventTile_content"><span class="gmail-mx_EventTile_body" dir="auto">Hi All,<br></span></span></div><div style="font-size:large" class="gmail_default"><span class="gmail-mx_MTextBody gmail-mx_EventTile_content"><span class="gmail-mx_EventTile_body" dir="auto"><br></span></span></div><div style="font-size:large" class="gmail_default"><span class="gmail-mx_MTextBody gmail-mx_EventTile_content"><span class="gmail-mx_EventTile_body" dir="auto">FFmpeg c++ newbie here, I've just joined this wonderful mailinglist, and have a mission:<br></span></span></div><div><span class="gmail_default" style="font-size:large">Im trying to get the c++ equivalent of this amazing cmd:</span></div><br><div><span style="font-family:monospace"><span class="gmail_default" style="font-size:large">$ ffmpeg -filter_complex_script script.txt test.mp4</span></span></div><div><span class="gmail_default" style="font-size:large">
</span><pre class="example"><span class="gmail_default" style="font-size:large"><br></span></pre><pre class="example"><span class="gmail_default" style="font-size:large">script.txt<br>==========<br>testsrc=r=5:n=1:d=2 [v1];<br>sine=440:b=2:d=1    [a1];<br>testsrc=r=5:n=1:d=1 [v2];<br>sine=622:b=2:d=2    [a2];<br>testsrc=r=5:n=1:d=1 [v3];<br>sine=880:b=2:d=1    [a3];<br><br>[v1][a1][v2][a2][v3][a3] concat=v=1:a=1:n=3</span></pre><pre class="example"><span class="gmail_default" style="font-size:large">---<br></span></pre></div><div style="font-size:large" class="gmail_default"><span class="gmail-mx_MTextBody gmail-mx_EventTile_content"><span class="gmail-mx_EventTile_body" dir="auto">I've tried reading the ffmpeg source, some c++ examples, but without any results.</span></span></div><div style="font-size:large" class="gmail_default"><span class="gmail-mx_MTextBody gmail-mx_EventTile_content"><span class="gmail-mx_EventTile_body" dir="auto">I'm stuck fiddling with avformat_open_input(&format, "lavfi", NULL, NULL).</span></span></div><div style="font-size:large" class="gmail_default"><span class="gmail-mx_MTextBody gmail-mx_EventTile_content"><span class="gmail-mx_EventTile_body" dir="auto"><br></span></span></div><div style="font-size:large" class="gmail_default"><span class="gmail-mx_MTextBody gmail-mx_EventTile_content"><span class="gmail-mx_EventTile_body" dir="auto">Questions: <br></span></span></div><div style="font-size:large" class="gmail_default"><span class="gmail-mx_MTextBody gmail-mx_EventTile_content"><span class="gmail-mx_EventTile_body" dir="auto">1. any tips where to look?</span></span><div style="font-size:large" class="gmail_default"><span class="gmail-mx_MTextBody gmail-mx_EventTile_content"><span class="gmail-mx_EventTile_body" dir="auto">2. how do i read frames from lavfi-streams from the filtergraph? avcodec_decode_video2()? avcodec_receive_frame()?</span></span></div><div style="font-size:large" class="gmail_default"><span class="gmail-mx_MTextBody gmail-mx_EventTile_content"><span class="gmail-mx_EventTile_body" dir="auto"><br></span></span></div><div><span class="gmail_default" style="font-size:large">M</span>y shtick is: I want to play a<span class="gmail-mx_MTextBody gmail-mx_EventTile_content"><span class="gmail-mx_EventTile_body" dir="auto"> filtergraph-file in my qt-app (so I can use movie/amovie/crossfade/mix/blend nodes)</span></span>. <br></div></div><div><div style="font-size:large" class="gmail_default">The good news is : playing one simple videofile works using avformat_open_input.</div><div style="font-size:large" class="gmail_default">However, I want to refactor it to render a complex-filter-script like above instead.</div><div style="font-size:large" class="gmail_default">This would be much more powerful, so I any pointers are very welcome!</div></div><div><br></div><div><div style="font-size:large" class="gmail_default">Thanks for being awesome.</div><br></div><div><br><div style="font-size:large" class="gmail_default">Leon<br></div><br></div><br></div>