]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
fix
authorMichael Jerris <mike@jerris.com>
Fri, 22 Dec 2006 21:31:47 +0000 (21:31 +0000)
committerMichael Jerris <mike@jerris.com>
Fri, 22 Dec 2006 21:31:47 +0000 (21:31 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3805 d0543943-73ff-0310-b7d9-9358b9ac24b2

src/switch_ivr.c

index a22a67c9abf458d246f64e0746f7ab5927f39bb6..c0895640ff8ee414069b324b7947fd37ca5a8aff 100644 (file)
@@ -434,9 +434,9 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_record_file(switch_core_session_t *se
 
     if (fh->thresh) {
         if (fh->silence_hits) {
-                       fh->silence_hits = fh->samplerate * fh->silence_hits;
+                       fh->silence_hits = fh->samplerate * fh->silence_hits / read_codec->implementation->samples_per_frame;
                } else {
-            fh->silence_hits = fh->samplerate * 3;
+            fh->silence_hits = fh->samplerate * 3 / read_codec->implementation->samples_per_frame;
         }
                org_silence_hits = fh->silence_hits;
        }
@@ -504,8 +504,7 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_record_file(switch_core_session_t *se
                
             score = (uint32_t)(energy / samples);
             if (score < fh->thresh) {
-                               fh->silence_hits -= fh->samplerate;
-                if (fh->silence_hits <= 0) {
+                if (!--fh->silence_hits) {
                     break;
                 }
                        } else {