--- /dev/null
+#include "drivers.h"
+
+namespace FreeDV {
+ AudioInput *
+ Driver::AudioInDefault()
+ {
+#if __linux__
+ return Driver::AudioInALSA("default");
+#else
+ #error Please fill in Driver::AudioInDefault for this platform.
+#endif
+ }
+}
--- /dev/null
+#include "drivers.h"
+
+namespace FreeDV {
+ AudioOutput *
+ Driver::AudioOutDefault()
+ {
+#if __linux__
+ return Driver::AudioOutALSA("default");
+#else
+ #error Please fill in Driver::AudioOutDefault for this platform.
+#endif
+ }
+}
return interfaces.print(stream);
}
- // The functions in the Driver and Enumerator namespaces are normally
- // registered with the driver manager at run-time. There isn't a reason
- // to reference them directly unless it's in a custom main for an embedded
- // program.
+ // Most of the functions in the Driver and Enumerator namespaces are
+ // registered with the driver manager at run-time. There won't be many
+ // reasons to reference them directly.
namespace Driver {
AudioInput * Tone(const char * parameter);
AudioInput * AudioInALSA(const char * parameter);
+ AudioInput * AudioInDefault();
AudioOutput * AudioSink(const char * parameter);
AudioOutput * AudioOutALSA(const char * parameter);
+ AudioOutput * AudioOutDefault();
Codec * CodecNoOp(const char * parameter);
Framer * FramerNoOp(const char * parameter);
KeyingOutput * KeyingSink(const char * parameter);
keying_output = Driver::KeyingSink(empty);
if ( !loudspeaker )
- loudspeaker = Driver::AudioSink(empty);
+ loudspeaker = Driver::AudioOutDefault();
if ( !microphone )
microphone = Driver::Tone(empty);