[FFmpeg-devel] [PATCH 1/5] ffplay: move frame step pause from the video thread to video_refresh

Marton Balint cus at passwd.hu
Wed Dec 26 21:05:02 CET 2012



On Wed, 26 Dec 2012, Clément Bœsch wrote:

> On Wed, Dec 26, 2012 at 12:46:20AM +0100, Marton Balint wrote:
>> This way we pause the video right after we displayed a new frame. This should
>> fix ticket #2053.
>>
>> Signed-off-by: Marton Balint <cus at passwd.hu>
>> ---
>>  ffplay.c |    6 +++---
>>  1 file changed, 3 insertions(+), 3 deletions(-)
>>
>> diff --git a/ffplay.c b/ffplay.c
>> index 38673b5..070fbd7 100644
>> --- a/ffplay.c
>> +++ b/ffplay.c
>> @@ -1396,6 +1396,9 @@ display:
>>                  video_display(is);
>>
>>              pictq_next_picture(is);
>> +
>> +            if (is->step && !is->paused)
>> +                stream_toggle_pause(is);
>>          }
>>      } else if (is->audio_st) {
>>          /* draw the next audio frame */
>> @@ -1923,9 +1926,6 @@ static int video_thread(void *arg)
>>
>>          if (ret < 0)
>>              goto the_end;
>> -
>> -        if (is->step)
>> -            stream_toggle_pause(is);
>>      }
>>   the_end:
>>      avcodec_flush_buffers(is->video_st->codec);
>
> Indeed this is better, but I still have the issue sometimes. Strangely I'm
> somehow able to trigger it more often with this:
> http://samples.ffmpeg.org/MPEG-VOB/interlaced/bug1966ex1.vob

I've just posted another patch, which should fix this. Could you apply it 
on top of this one and report back if it fixes the issue for you as well?

Thanks,
Marton


More information about the ffmpeg-devel mailing list