Reduce the "overlong" delay. Hopefully this is the end to ALSA tuning,
authorbruceperens <bruceperens@01035d8c-6547-0410-b346-abe4f91aad63>
Thu, 20 Mar 2014 00:11:44 +0000 (00:11 +0000)
committerbruceperens <bruceperens@01035d8c-6547-0410-b346-abe4f91aad63>
Thu, 20 Mar 2014 00:11:44 +0000 (00:11 +0000)
but I doubt it.

git-svn-id: https://svn.code.sf.net/p/freetel/code@1458 01035d8c-6547-0410-b346-abe4f91aad63

freedv-server/source/platform/linux/audio_in_alsa.cpp
freedv-server/source/platform/linux/audio_out_alsa.cpp

index 26d7fad9889c3689a3b8c4c7599f8b582123552c..28c48adbfc91c8121d67c8c557bd6181ac4e4681 100644 (file)
@@ -14,7 +14,7 @@ namespace FreeDV {
   /// Audio input "ALSA", Uses the Linux ALSA Audio API.
   class AudioInALSA : public AudioInput {
   private:
-    static const int   overlong_delay = AudioFrameSamples * 10;
+    static const int   overlong_delay = AudioFrameSamples * 4;
 
     char * const       parameters;
     snd_pcm_t *                handle;
index 556ca6b915e520cdf41d1872bd0e0b2c4e0a30e1..2b85491aae0fa4f0e67e07d3bd330214298562c4 100644 (file)
@@ -153,7 +153,7 @@ namespace FreeDV {
       return AudioFrameSamples;
 
     error = snd_pcm_avail_delay(handle, &available, &delay);
-    if ( delay > (AudioFrameSamples * 10) ) {
+    if ( delay > (AudioFrameSamples * 4) ) {
       const double seconds = (double)delay / (double)SampleRate;
 
       std::cerr << "ALSA output \"" << parameters