ffplay: calculate audio diff threshold based on the actual settings
authorMarton Balint <cus@passwd.hu>
Sat, 2 Jun 2012 19:40:12 +0000 (21:40 +0200)
committerMarton Balint <cus@passwd.hu>
Sat, 2 Jun 2012 19:56:08 +0000 (21:56 +0200)
Signed-off-by: Marton Balint <cus@passwd.hu>
ffplay.c

index 700c894..3134c3a 100644 (file)
--- a/ffplay.c
+++ b/ffplay.c
@@ -2370,7 +2370,7 @@ static int stream_component_open(VideoState *is, int stream_index)
         is->audio_diff_avg_count = 0;
         /* since we do not have a precise anough audio fifo fullness,
            we correct audio sync only if larger than this threshold */
-        is->audio_diff_threshold = 2.0 * SDL_AUDIO_BUFFER_SIZE / avctx->sample_rate;
+        is->audio_diff_threshold = 2.0 * is->audio_hw_buf_size / av_samples_get_buffer_size(NULL, is->audio_tgt.channels, is->audio_tgt.freq, is->audio_tgt.fmt, 1);
 
         memset(&is->audio_pkt, 0, sizeof(is->audio_pkt));
         memset(&is->audio_pkt_temp, 0, sizeof(is->audio_pkt_temp));