public void setup() throws IOException { // use default clock clock = new WallClock(); dspFactory.addCodec("org.mobicents.media.server.impl.dsp.audio.g711.alaw.Encoder"); dspFactory.addCodec("org.mobicents.media.server.impl.dsp.audio.g711.alaw.Decoder"); // create single thread scheduler mediaScheduler = new PriorityQueueScheduler(); mediaScheduler.setClock(clock); mediaScheduler.start(); udpManager = new UdpManager(scheduler); udpManager.setBindAddress("127.0.0.1"); scheduler.start(); udpManager.start(); channelsManager = new ChannelsManager(udpManager); channelsManager.setScheduler(mediaScheduler); }
@Before public void setUp() throws Exception { // given DtlsSrtpServerProvider mockedDtlsServerProvider = mock(DtlsSrtpServerProvider.class); DtlsSrtpServer mockedDtlsSrtpServer = mock(DtlsSrtpServer.class); // when when(mockedDtlsServerProvider.provide()).thenReturn(mockedDtlsSrtpServer); when(mockedDtlsSrtpServer.getCipherSuites()).thenReturn(cipherSuites); // then AudioFormat pcma = FormatFactory.createAudioFormat("pcma", 8000, 8, 1); Formats fmts = new Formats(); fmts.add(pcma); Formats dstFormats = new Formats(); dstFormats.add(FormatFactory.createAudioFormat("LINEAR", 8000, 16, 1)); dspFactory.addCodec("org.mobicents.media.server.impl.dsp.audio.g711.alaw.Encoder"); dspFactory.addCodec("org.mobicents.media.server.impl.dsp.audio.g711.alaw.Decoder"); dsp11 = dspFactory.newProcessor(); dsp12 = dspFactory.newProcessor(); dsp21 = dspFactory.newProcessor(); dsp22 = dspFactory.newProcessor(); // use default clock clock = new WallClock(); // create single thread scheduler mediaScheduler = new PriorityQueueScheduler(); mediaScheduler.setClock(clock); mediaScheduler.start(); udpManager = new UdpManager(scheduler); scheduler.start(); udpManager.start(); channelsManager = new ChannelsManager(udpManager, mockedDtlsServerProvider); channelsManager.setScheduler(mediaScheduler); detector = new DetectorImpl("dtmf", mediaScheduler); detector.setVolume(-35); detector.setDuration(40); detector.addListener(this); channel = channelsManager.getChannel(); channel.bind(false); sender = new Sender(channel.getLocalPort()); channel.setPeer(new InetSocketAddress("127.0.0.1", 9200)); channel.setInputDsp(dsp11); channel.setFormatMap(AVProfile.audio); audioMixer = new AudioMixer(mediaScheduler); audioMixer.addComponent(channel.getAudioComponent()); detectorComponent = new AudioComponent(1); detectorComponent.addOutput(detector.getAudioOutput()); detectorComponent.updateMode(true, true); audioMixer.addComponent(detectorComponent); oobMixer = new OOBMixer(mediaScheduler); oobMixer.addComponent(channel.getOOBComponent()); oobComponent = new OOBComponent(1); oobComponent.addOutput(detector.getOOBOutput()); oobComponent.updateMode(true, true); oobMixer.addComponent(oobComponent); }
@Before public void setUp() throws Exception { AudioFormat pcma = FormatFactory.createAudioFormat("pcma", 8000, 8, 1); Formats fmts = new Formats(); fmts.add(pcma); Formats dstFormats = new Formats(); dstFormats.add(FormatFactory.createAudioFormat("LINEAR", 8000, 16, 1)); dspFactory.addCodec("org.mobicents.media.server.impl.dsp.audio.g711.alaw.Encoder"); dspFactory.addCodec("org.mobicents.media.server.impl.dsp.audio.g711.alaw.Decoder"); dsp11 = dspFactory.newProcessor(); dsp12 = dspFactory.newProcessor(); dsp21 = dspFactory.newProcessor(); dsp22 = dspFactory.newProcessor(); // use default clock clock = new WallClock(); rtpClock1 = new RtpClock(clock); rtpClock2 = new RtpClock(clock); oobClock1 = new RtpClock(clock); oobClock2 = new RtpClock(clock); // create single thread scheduler mediaScheduler = new PriorityQueueScheduler(); mediaScheduler.setClock(clock); mediaScheduler.start(); udpManager = new UdpManager(scheduler); scheduler.start(); udpManager.start(); channelsManager = new ChannelsManager(udpManager); channelsManager.setScheduler(mediaScheduler); source1 = new Sine(mediaScheduler); source1.setFrequency(100); source2 = new Sine(mediaScheduler); source2.setFrequency(50); analyzer1 = new SpectraAnalyzer("analyzer", mediaScheduler); analyzer2 = new SpectraAnalyzer("analyzer", mediaScheduler); this.statistics1 = new RtpStatistics(rtpClock1); this.statistics2 = new RtpStatistics(rtpClock2); channel1 = channelsManager.getRtpChannel(statistics1, rtpClock1, oobClock1); channel1.updateMode(ConnectionMode.SEND_RECV); channel1.setOutputDsp(dsp11); channel1.setOutputFormats(fmts); channel1.setInputDsp(dsp12); channel2 = channelsManager.getRtpChannel(statistics2, rtpClock2, oobClock2); channel2.updateMode(ConnectionMode.SEND_RECV); channel2.setOutputDsp(dsp21); channel2.setOutputFormats(fmts); channel2.setInputDsp(dsp22); channel1.bind(false); channel2.bind(false); channel1.setRemotePeer(new InetSocketAddress("127.0.0.1", channel2.getLocalPort())); channel2.setRemotePeer(new InetSocketAddress("127.0.0.1", channel1.getLocalPort())); channel1.setFormatMap(AVProfile.audio); channel2.setFormatMap(AVProfile.audio); audioMixer1 = new AudioMixer(mediaScheduler); audioMixer2 = new AudioMixer(mediaScheduler); component1 = new AudioComponent(1); component1.addInput(source1.getAudioInput()); component1.addOutput(analyzer1.getAudioOutput()); component1.updateMode(true, true); audioMixer1.addComponent(component1); audioMixer1.addComponent(channel1.getAudioComponent()); component2 = new AudioComponent(2); component2.addInput(source2.getAudioInput()); component2.addOutput(analyzer2.getAudioOutput()); component2.updateMode(true, true); audioMixer2.addComponent(component2); audioMixer2.addComponent(channel2.getAudioComponent()); }