<div dir="ltr">Thanks. I have tried it just now but unfortunately it won't enter the second while loop (so it doesn't seem to decode anything for the 2nd time..)<div><br></div><div>Now I have also tried avformat_seek_file(pFormatCtx, -1, 0, 0, 0, AVSEEK_FLAG_BACKWARD); (correct usage?) and it makes no difference.</div>
<div><br></div><div>Is it maybe the case that once the whole file is decoded, you cannot go back?</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On 18 June 2014 15:04, Info || Non-Lethal Applications <span dir="ltr"><<a href="mailto:info@non-lethal-applications.com" target="_blank">info@non-lethal-applications.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word">I’d say av_seek_frame (or avformat_seek_file) is what you’re after.<div><br></div><div>
<div style="margin:0px;font-family:Menlo"><span style="color:#3d1d81">av_seek_frame</span>(<span style="color:#4f8187">pFormatContext</span>, -<span style="color:#272ad8">1</span>, 0, <span style="color:#78492a">AVSEEK_FLAG_BACKWARD</span>);</div>
<div style="margin:0px;font-family:Menlo"><br></div><div style="margin:0px;font-family:Menlo"><span style="font-family:Helvetica">Best,</span></div><div style="margin:0px;font-family:Menlo"><span style="font-family:Helvetica"><br>
</span></div><div style="margin:0px;font-family:Menlo"><span style="font-family:Helvetica">Flo</span></div><div style="margin:0px;font-family:Menlo"><span style="font-family:Helvetica"><br></span></div><div><div><div class="h5">
<div>On 18 Jun 2014, at 14:54, Slash <<a href="mailto:slashpm@gmail.com" target="_blank">slashpm@gmail.com</a>> wrote:</div><br></div></div><blockquote type="cite"><div><div class="h5"><div dir="ltr">Hello,<div><br>
</div><div>I'm developing a crypto-related application using h264 streams (only video). I'd like to decode the frames multiple times after changing some info in them (dct, mv, whatever), so the decoded result is always different a little bit but I always want to deal with same input file.</div>

<div><br></div><div>I followed the tutorial here (tutorial01.c): <a href="https://github.com/chelyaev/ffmpeg-tutorial" target="_blank">https://github.com/chelyaev/ffmpeg-tutorial</a></div><div><br></div><div>so the decoding code in question looks like this:</div>

<div><br></div><div><div><span style="white-space:pre-wrap">      </span>while (av_read_frame(pFormatCtx, &packet) >= 0) {<br></div><div><span style="white-space:pre-wrap">               </span>// Is this a packet from the video stream?</div>

<div><span style="white-space:pre-wrap">          </span>if (packet.stream_index == videoStream) {</div><div><span style="white-space:pre-wrap">                        </span>// Decode video frame</div><div><span style="white-space:pre-wrap">                    </span>avcodec_decode_video2(pCodecCtx, pFrame, &frameFinished, &packet);</div>

<div><span style="white-space:pre-wrap">                  </span>}<br></div><div><span style="white-space:pre-wrap">              </span>}</div><div><span style="white-space:pre-wrap">                </span>// Free the packet that was allocated by av_read_frame</div>

<div><span style="white-space:pre-wrap">          </span>av_free_packet(&packet);</div><div><span style="white-space:pre-wrap">     </span>}</div></div><div><br></div><div>After this while loop, all the frames are decoded. What I want is to change something and then redo the previous while loop to decode the frames again. How can I start it all over again?</div>

<div><br></div><div>I have tried using av_seek_frame(pFormatCtx, videoStream, 0, AVSEEK_FLAG_ANY) to jump back to the beginning but apparently I didn't get any new decoded data so it is not doing what I need.</div><div>

<br></div><div>Thanks for help.</div></div></div></div>
_______________________________________________<br>Libav-user mailing list<br><a href="mailto:Libav-user@ffmpeg.org" target="_blank">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>
</blockquote></div><br></div></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></div>