<div dir="ltr"><div>I think you should build it with all optimizations such as sse, mmx etc. libavcodec will use these features by deafult.<br></div><div>Please check your build options<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2014-11-17 15:56 GMT+03:00 Васькевич Руслан <span dir="ltr"><<a href="mailto:jokerruslan@gmail.com" target="_blank">jokerruslan@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><p style="margin:0px 0px 1em;padding:0px;border:0px;font-size:14px;vertical-align:baseline;clear:both;color:rgb(0,0,0);font-family:Arial,'Liberation Sans','DejaVu Sans',sans-serif;line-height:17.8048000335693px;background-image:initial;background-repeat:initial">this is code for decoding h264 stream from camera using ffmpeg. But I want to use hardware acceleration for decoding video. I Can not find good sample. There are a lot of question about this topic but there is no answer</p><pre style="white-space:pre-wrap;margin-top:0px;margin-bottom:10px;padding:5px;border:0px;font-size:14px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida Console','Liberation Mono','DejaVu Sans Mono','Bitstream Vera Sans Mono','Courier New',monospace,serif;overflow:auto;width:auto;max-height:600px;word-wrap:normal;color:rgb(0,0,0);line-height:17.8048000335693px;background:rgb(238,238,238)"><code style="margin:0px;padding:0px;border:0px;vertical-align:baseline;font-family:Consolas,Menlo,Monaco,'Lucida Console','Liberation Mono','DejaVu Sans Mono','Bitstream Vera Sans Mono','Courier New',monospace,serif;white-space:inherit;background-image:initial;background-repeat:initial"><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">    string url </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">@</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">"rtsp://<a href="http://admin:123456@192.168.0.201:554/" target="_blank">admin:123456@192.168.0.201:554</a>"</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">av_register_all</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">();</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">avcodec_register_all</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">();</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">avformat_network_init</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">();</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">


        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">AVFormatContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">*</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pFormatContext </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">avformat_alloc_context</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">();</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">if</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">avformat_open_input</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(&</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pFormatContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> url</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> null</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> null</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">!=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">0</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">throw</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">new</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">Exception</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">"Could not open file"</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">if</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">avformat_find_stream_info</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pFormatContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> null</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">!=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">0</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">throw</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">new</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">Exception</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">"Could not find stream info"</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">AVStream</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">*</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pStream </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> null</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">for</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">int</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> i </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">0</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> i </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"><</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pFormatContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">-></span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">nb_streams</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> i</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">++)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">{</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">if</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pFormatContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">-></span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">streams</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">[</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">i</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">]-></span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">codec</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">-></span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">codec_type </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">==</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">AVMediaType</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">AVMEDIA_TYPE_VIDEO</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">{</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
                pStream </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pFormatContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">-></span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">streams</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">[</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">i</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">];</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
                </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">break</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">}</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">}</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">if</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pStream </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">==</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> null</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">throw</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">new</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">Exception</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">"Could not found video stream"</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">AVCodecContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> codecContext </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">*(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pStream</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">-></span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">codec</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">int</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> width </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> codecContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">width</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">int</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> height </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> codecContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">height</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">AVPixelFormat</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> sourcePixFmt </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> codecContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pix_fmt</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">AVCodecID</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> codecId </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> codecContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">codec_id</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        var convertToPixFmt </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">AVPixelFormat</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">PIX_FMT_BGR24</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">SwsContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">*</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pConvertContext </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">sws_getContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">width</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> height</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> sourcePixFmt</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
                                                                   width</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> height</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> convertToPixFmt</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
                                                                   </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">SWS_FAST_BILINEAR</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> null</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> null</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> null</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">if</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pConvertContext </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">==</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> null</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">throw</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">new</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">Exception</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">"Could not initialize the conversion context"</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

        var pConvertedFrame </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">AVPicture</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">*)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">avcodec_alloc_frame</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">();</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">int</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> convertedFrameBufferSize </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">avpicture_get_size</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">convertToPixFmt</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> width</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> height</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        var pConvertedFrameBuffer </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">byte</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">*)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">av_malloc</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">((</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">uint</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> convertedFrameBufferSize</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">avpicture_fill</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pConvertedFrame</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pConvertedFrameBuffer</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> convertToPixFmt</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> width</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> height</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">AVCodec</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">*</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pCodec </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">avcodec_find_decoder</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">codecId</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">if</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pCodec </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">==</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> null</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">throw</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">new</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">Exception</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">"Unsupported codec"</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,128,128);background:transparent">// Reusing codec context from stream info, </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,128,128);background:transparent">// as an alternative way it could look like this: (but it works not for all kind of codecs)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,128,128);background:transparent">// AVCodecContext* pCodecContext = FFmpegInvoke.avcodec_alloc_context3(pCodec);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">AVCodecContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">*</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pCodecContext </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">&</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">codecContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">if</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">((</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pCodec</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">-></span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">capabilities </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">&</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">CODEC_CAP_TRUNCATED</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">==</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">CODEC_CAP_TRUNCATED</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
            pCodecContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">-></span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">flags </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">|=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">CODEC_FLAG_TRUNCATED</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">if</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">avcodec_open2</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pCodecContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pCodec</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> null</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"><</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">0</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">throw</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">new</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">Exception</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">"Could not open codec"</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">AVFrame</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">*</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pDecodedFrame </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">avcodec_alloc_frame</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">();</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

        var packet </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">new</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">AVPacket</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">();</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">AVPacket</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">*</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pPacket </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">&</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">packet</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">av_init_packet</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pPacket</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">int</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> frameNumber </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">0</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">while</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">true</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">{</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">Console</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">WriteLine</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">"frame: {0}"</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> frameNumber</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">if</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">av_read_frame</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pFormatContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pPacket</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"><</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">0</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
                </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">throw</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">new</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">Exception</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">"Could not read frame"</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">if</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pPacket</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">-></span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">stream_index </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">!=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pStream</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">-></span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">index</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
                </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">continue</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">int</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> gotPicture </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">0</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">int</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> size </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">avcodec_decode_video2</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pCodecContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pDecodedFrame</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">&</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">gotPicture</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pPacket</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">if</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">size </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"><</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">0</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
                </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">throw</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">new</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">Exception</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">string</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">Format</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">"Error while decoding frame {0}"</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> frameNumber</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">));</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">if</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">gotPicture </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">==</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">1</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">)</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">{</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
                byte</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">**</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> src </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">&</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pDecodedFrame</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">-></span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">data_0</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
                byte</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">**</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> dst </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">&</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pConvertedFrame</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">-></span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">data_0</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
                </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">sws_scale</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pConvertContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> src</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pDecodedFrame</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">-></span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">linesize</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">0</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
                                        height</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> dst</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pConvertedFrame</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">-></span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">linesize</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

                byte</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">*</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> convertedFrameAddress </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pConvertedFrame</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">-></span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">data_0</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

                var imageBufferPtr </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">new</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">IntPtr</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">convertedFrameAddress</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

                </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">using</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">var bitmap </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">=</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(0,0,139);background:transparent">new</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">Bitmap</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">width</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> height</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> pConvertedFrame</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">-></span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">linesize</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">[</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">0</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">],</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">PixelFormat</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">Format24bppRgb</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> imageBufferPtr</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">))</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
                </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">{</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
                    bitmap</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">Save</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(@</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,0,0);background:transparent">"frame.buffer.jpg"</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">,</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent"> </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">ImageFormat</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">Jpeg</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
                </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">}</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">}</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
            </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(128,128,128);background:transparent">//frameNumber++;</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">}</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">av_free</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pConvertedFrame</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">av_free</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pConvertedFrameBuffer</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">sws_freeContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pConvertContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">

        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">av_free</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pDecodedFrame</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">avcodec_close</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pCodecContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">
        </span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;color:rgb(43,145,175);background:transparent">FFmpegInvoke</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">.</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">avformat_close_input</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">(&</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">pFormatContext</span><span style="margin:0px;padding:0px;border:0px;vertical-align:baseline;background:transparent">);</span></code></pre><p style="margin:0px 0px 1em;padding:0px;border:0px;font-size:14px;vertical-align:baseline;clear:both;color:rgb(0,0,0);font-family:Arial,'Liberation Sans','DejaVu Sans',sans-serif;line-height:17.8048000335693px;background-image:initial;background-repeat:initial">How use hardware acceleration for decoding stream(hwaccel)?</p></div>
<br>_______________________________________________<br>
Libav-user mailing list<br>
<a href="mailto:Libav-user@ffmpeg.org">Libav-user@ffmpeg.org</a><br>
<a href="http://ffmpeg.org/mailman/listinfo/libav-user" target="_blank">http://ffmpeg.org/mailman/listinfo/libav-user</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br><div class="gmail_signature">Regards,<br>Dmitry</div>
</div>