From b7ed963ff7e0c39b01481efbb3b8b0281b6deca1 Mon Sep 17 00:00:00 2001 From: f4exb Date: Tue, 27 Mar 2018 00:40:59 +0200 Subject: [PATCH] Multiple audio support: RTP sink code cleanup --- sdrbase/audio/audionetsink.cpp | 5 --- sdrbase/audio/audionetsink.h | 1 - sdrbase/util/rtpsink.cpp | 70 ---------------------------------- sdrbase/util/rtpsink.h | 1 - 4 files changed, 77 deletions(-) diff --git a/sdrbase/audio/audionetsink.cpp b/sdrbase/audio/audionetsink.cpp index a8747ecdc..580190bc0 100644 --- a/sdrbase/audio/audionetsink.cpp +++ b/sdrbase/audio/audionetsink.cpp @@ -89,11 +89,6 @@ void AudioNetSink::deleteDestination(const QString& address, uint16_t port) } } -void AudioNetSink::setStereo(bool stereo) -{ - m_rtpBufferAudio->setPayloadType(stereo ? RTPSink::PayloadL16Stereo : RTPSink::PayloadL16Mono); -} - void AudioNetSink::setParameters(bool stereo, int sampleRate) { m_rtpBufferAudio->setPayloadInformation(stereo ? RTPSink::PayloadL16Stereo : RTPSink::PayloadL16Mono, sampleRate); diff --git a/sdrbase/audio/audionetsink.h b/sdrbase/audio/audionetsink.h index 3e7fe1a1c..a57f83e9e 100644 --- a/sdrbase/audio/audionetsink.h +++ b/sdrbase/audio/audionetsink.h @@ -43,7 +43,6 @@ public: void setDestination(const QString& address, uint16_t port); void addDestination(const QString& address, uint16_t port); void deleteDestination(const QString& address, uint16_t port); - void setStereo(bool stereo); void setParameters(bool stereo, int sampleRate); void write(qint16 sample); diff --git a/sdrbase/util/rtpsink.cpp b/sdrbase/util/rtpsink.cpp index 7e2020f89..f87ac3cb2 100644 --- a/sdrbase/util/rtpsink.cpp +++ b/sdrbase/util/rtpsink.cpp @@ -139,76 +139,6 @@ void RTPSink::setPayloadInformation(PayloadType payloadType, int sampleRate) } } -void RTPSink::setPayloadType(PayloadType payloadType) -{ - uint32_t timestampinc; - QMutexLocker locker(&m_mutex); - - qDebug("RTPSink::setPayloadType: %d", payloadType); - - switch (payloadType) - { - case PayloadL16Stereo: - m_sampleRate = 48000; - m_sampleBytes = sizeof(AudioSample); - m_rtpSession.SetDefaultPayloadType(96); - timestampinc = m_sampleRate / 100; - break; - case PayloadL16Mono: - default: - m_sampleRate = 48000; - m_sampleBytes = sizeof(int16_t); - m_rtpSession.SetDefaultPayloadType(96); - timestampinc = m_sampleRate / 50; - break; - } - - m_packetSamples = m_sampleRate/50; // 20ms packet samples - m_bufferSize = m_packetSamples * m_sampleBytes; - - if (m_byteBuffer) { - delete[] m_byteBuffer; - } - - m_byteBuffer = new uint8_t[m_bufferSize]; - m_sampleBufferIndex = 0; - m_payloadType = payloadType; - - int status = m_rtpSession.SetTimestampUnit(1.0 / (double) m_sampleRate); - - if (status < 0) { - qCritical("RTPSink::setPayloadType: cannot set timestamp unit: %s", qrtplib::RTPGetErrorString(status).c_str()); - } else { - qDebug("RTPSink::setPayloadType: timestamp unit set to %f: %s", - 1.0 / (double) m_sampleRate, - qrtplib::RTPGetErrorString(status).c_str()); - } - - status = m_rtpSession.SetDefaultMark(false); - - if (status < 0) { - qCritical("RTPSink::setPayloadType: cannot set default mark: %s", qrtplib::RTPGetErrorString(status).c_str()); - } else { - qDebug("RTPSink::setPayloadType: set default mark to false: %s", qrtplib::RTPGetErrorString(status).c_str()); - } - - status = m_rtpSession.SetDefaultTimestampIncrement(timestampinc); - - if (status < 0) { - qCritical("RTPSink::setPayloadType: cannot set default timestamp increment: %s", qrtplib::RTPGetErrorString(status).c_str()); - } else { - qDebug("RTPSink::setPayloadType: set default timestamp increment to %d: %s", timestampinc, qrtplib::RTPGetErrorString(status).c_str()); - } - - status = m_rtpSession.SetMaximumPacketSize(m_bufferSize+40); - - if (status < 0) { - qCritical("RTPSink::setPayloadType: cannot set maximum packet size: %s", qrtplib::RTPGetErrorString(status).c_str()); - } else { - qDebug("RTPSink::setPayloadType: set maximum packet size to %d bytes: %s", m_bufferSize+40, qrtplib::RTPGetErrorString(status).c_str()); - } -} - void RTPSink::setDestination(const QString& address, uint16_t port) { m_rtpSession.ClearDestinations(); diff --git a/sdrbase/util/rtpsink.h b/sdrbase/util/rtpsink.h index e264ae52a..43fb4e0d0 100644 --- a/sdrbase/util/rtpsink.h +++ b/sdrbase/util/rtpsink.h @@ -48,7 +48,6 @@ public: ~RTPSink(); bool isValid() const { return m_valid; } - void setPayloadType(PayloadType payloadType); void setPayloadInformation(PayloadType payloadType, int sampleRate); void setDestination(const QString& address, uint16_t port);