def testSpeexCodec(self): if codecs.gsm is None: raise unittest.SkipTest("no speex support") ae = self.assertEqual c = Codecker(PT_SPEEX) ae(c.getDefaultFormat(), PT_SPEEX) class Foo: def handle_media_sample(self, sample): ae(len(sample.data), 40) ae(sample.ct, PT_SPEEX) p = RTPPacket(0, 0, 0, data=sample.data, ct=sample.ct) ae(len(c.decode(p)), 320) c.set_handler(Foo().handle_media_sample) p = c.handle_audio(instr) class Foo: def handle_media_sample(self, sample, tester=self): tester.fail( "WRONG. The decoding of 30 zeroes (a short Speex frame) is required to be None, but it came out: %s" % (sample, )) c.set_handler(Foo().handle_media_sample) c.handle_audio(b'\0' * 30)
def testCodeckerSanity(self): a_ = self.assertTrue ae = self.assertEqual ar = self.assertRaises c = Codecker(PT_PCMU) a_(isinstance(c.format_to_codec.get(PT_PCMU), MulawCodec)) a_(isinstance(c.format_to_codec.get(PT_RAW), PassthruCodec)) a_(isinstance(c.format_to_codec.get(PT_CN), NullCodec)) for codec in c.format_to_codec.values(): a_(isinstance(codec, _Codec)) ae(c.getDefaultFormat(), PT_PCMU) ar(ValueError, Codecker, PT_QCELP)
def testMuLawCodec(self): if codecs.mulaw is None: raise unittest.SkipTest("no mulaw support") ae = self.assertEqual c = Codecker(PT_PCMU) ae(c.getDefaultFormat(), PT_PCMU) class Foo: def handle_media_sample(self, sample): ae(len(sample.data), 160) ae(sample.data, ulawout) ae(sample.ct, PT_PCMU) c.set_handler(Foo().handle_media_sample) c.handle_audio(instr)
def testPassthruCodec(self): ae = self.assertEqual c = Codecker(PT_RAW) ae(c.getDefaultFormat(), PT_RAW) p = PassthruCodec() ae = self.assertEqual class Foo: def handle_media_sample(self, sample): ae(sample.data, b'frobozulate') c.set_handler(Foo().handle_media_sample) c.handle_audio(b'frobozulate') class Foo: def handle_media_sample(self, sample): ae(sample.data, b'farnarkling') ae(sample.ct, PT_RAW) c.set_handler(Foo().handle_media_sample) c.handle_audio(b'farnarkling')