[SCM] libav/experimental: trigger for the audio scope vissualization
siretart at users.alioth.debian.org
siretart at users.alioth.debian.org
Sun Jun 30 15:55:44 UTC 2013
The following commit has been merged in the experimental branch:
commit ac50bcc834a3d2cee880813424072768f84c6229
Author: Michael Niedermayer <michaelni at gmx.at>
Date: Mon Jan 29 22:06:55 2007 +0000
trigger for the audio scope vissualization
Originally committed as revision 7761 to svn://svn.ffmpeg.org/ffmpeg/trunk
diff --git a/ffplay.c b/ffplay.c
index 02f8132..1c3aa63 100644
--- a/ffplay.c
+++ b/ffplay.c
@@ -782,7 +782,23 @@ static void video_audio_display(VideoState *s)
delay -= s->width / 2;
if (delay < s->width)
delay = s->width;
- i_start = compute_mod(s->sample_array_index - delay * channels, SAMPLE_ARRAY_SIZE);
+
+ i_start= x = compute_mod(s->sample_array_index - delay * channels, SAMPLE_ARRAY_SIZE);
+
+ h= INT_MIN;
+ for(i=0; i<1000; i+=channels){
+ int idx= (SAMPLE_ARRAY_SIZE + x - i) % SAMPLE_ARRAY_SIZE;
+ int a= s->sample_array[idx];
+ int b= s->sample_array[(idx + 4*channels)%SAMPLE_ARRAY_SIZE];
+ int c= s->sample_array[(idx + 5*channels)%SAMPLE_ARRAY_SIZE];
+ int d= s->sample_array[(idx + 9*channels)%SAMPLE_ARRAY_SIZE];
+ int score= a-d;
+ if(h<score && (b^c)<0){
+ h= score;
+ i_start= idx;
+ }
+ }
+
s->last_i_start = i_start;
} else {
i_start = s->last_i_start;
--
Libav/FFmpeg packaging
More information about the pkg-multimedia-commits
mailing list