1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2025-02-03 09:44:01 -05:00

Multiple audio support: RTP sink code cleanup

This commit is contained in:
f4exb 2018-03-27 00:40:59 +02:00
parent a0282dd3d9
commit b7ed963ff7
4 changed files with 0 additions and 77 deletions

View File

@ -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);

View File

@ -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);

View File

@ -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();

View File

@ -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);