import "testing"
func TestEncoderNew(t *testing.T) {
- enc, err := NewEncoder(48000, 1, APPLICATION_VOIP)
+ enc, err := NewEncoder(48000, 1, AppVoIP)
if err != nil || enc == nil {
t.Errorf("Error creating new encoder: %v", err)
}
- enc, err = NewEncoder(12345, 1, APPLICATION_VOIP)
+ enc, err = NewEncoder(12345, 1, AppVoIP)
if err == nil || enc != nil {
t.Errorf("Expected error for illegal samplerate 12345")
}
}
func TestEncoderDTX(t *testing.T) {
- enc, err := NewEncoder(8000, 1, APPLICATION_VOIP)
+ enc, err := NewEncoder(8000, 1, AppVoIP)
if err != nil || enc == nil {
t.Errorf("Error creating new encoder: %v", err)
}
func TestEncoderSampleRate(t *testing.T) {
sample_rates := []int{8000, 12000, 16000, 24000, 48000}
for _, f := range sample_rates {
- enc, err := NewEncoder(f, 1, APPLICATION_VOIP)
+ enc, err := NewEncoder(f, 1, AppVoIP)
if err != nil || enc == nil {
t.Fatalf("Error creating new encoder with sample_rate %d Hz: %v", f, err)
}
// These variables should be constants, but for interoperability with CGO
// they're var. Don't change them, though!
+var (
+ // Optimize encoding for VoIP
+ AppVoIP = Application(C.CONST_APPLICATION_VOIP)
+ // Optimize encoding for non-voice signals like music
+ AppAudio = Application(C.CONST_APPLICATION_AUDIO)
+ // Optimize encoding for low latency applications
+ AppRestrictedLowdelay = Application(C.CONST_APPLICATION_RESTRICTED_LOWDELAY)
+)
+
+// DEPRECATED -- Don't use these. Will be removed end of 2017.
var (
// Optimize encoding for VOIP
APPLICATION_VOIP = Application(C.CONST_APPLICATION_VOIP)
const FRAME_SIZE_MS = 60
const FRAME_SIZE = SAMPLE_RATE * FRAME_SIZE_MS / 1000
pcm := make([]int16, FRAME_SIZE)
- enc, err := NewEncoder(SAMPLE_RATE, 1, APPLICATION_VOIP)
+ enc, err := NewEncoder(SAMPLE_RATE, 1, AppVoIP)
if err != nil || enc == nil {
t.Fatalf("Error creating new encoder: %v", err)
}
const FRAME_SIZE_MS = 60
const FRAME_SIZE = SAMPLE_RATE * FRAME_SIZE_MS / 1000
pcm := make([]float32, FRAME_SIZE)
- enc, err := NewEncoder(SAMPLE_RATE, 1, APPLICATION_VOIP)
+ enc, err := NewEncoder(SAMPLE_RATE, 1, AppVoIP)
if err != nil || enc == nil {
t.Fatalf("Error creating new encoder: %v", err)
}
const CHANNELS = 2
const FRAME_SIZE_MONO = SAMPLE_RATE * FRAME_SIZE_MS / 1000
- enc, err := NewEncoder(SAMPLE_RATE, CHANNELS, APPLICATION_VOIP)
+ enc, err := NewEncoder(SAMPLE_RATE, CHANNELS, AppVoIP)
if err != nil || enc == nil {
t.Fatalf("Error creating new encoder: %v", err)
}