1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2025-07-31 13:02:27 -04:00

qrtplib: generic UDP transmitter (2)

This commit is contained in:
f4exb 2018-03-01 01:08:57 +01:00
parent cd7962508d
commit 8f4a006bca
2 changed files with 8 additions and 10 deletions

View File

@ -325,7 +325,6 @@ public:
RTPTransmissionInfo *GetTransmissionInfo(); RTPTransmissionInfo *GetTransmissionInfo();
void DeleteTransmissionInfo(RTPTransmissionInfo *inf); void DeleteTransmissionInfo(RTPTransmissionInfo *inf);
int GetLocalHostName(uint8_t *buffer, std::size_t *bufferlength);
bool ComesFromThisTransmitter(const RTPAddress *addr); bool ComesFromThisTransmitter(const RTPAddress *addr);
std::size_t GetHeaderOverhead() std::size_t GetHeaderOverhead()
{ {
@ -357,8 +356,8 @@ public:
void ClearAcceptList(); void ClearAcceptList();
int SetMaximumPacketSize(std::size_t s); int SetMaximumPacketSize(std::size_t s);
bool NewDataAvailable(); bool NewDataAvailable(); // TODO: emit signal instead
RTPRawPacket *GetNextPacket(); RTPRawPacket *GetNextPacket(); // TODO: use a queue
private: private:
int CreateLocalIPList(); int CreateLocalIPList();
@ -376,9 +375,8 @@ private:
bool m_waitingfordata; bool m_waitingfordata;
QUdpSocket *m_rtpsock, *m_rtcpsock; QUdpSocket *m_rtpsock, *m_rtcpsock;
QHostAddress m_mcastifaceIP; QHostAddress m_mcastifaceIP;
std::list<QHostAddress> m_localIPs; QHostAddress m_localIP;
uint16_t m_rtpPort, m_rtcpPort; uint16_t m_rtpPort, m_rtcpPort;
uint8_t m_multicastTTL;
RTPTransmitter::ReceiveMode m_receivemode; RTPTransmitter::ReceiveMode m_receivemode;
uint8_t *m_localhostname; uint8_t *m_localhostname;

View File

@ -297,10 +297,10 @@ inline RTPUDPv4TransmissionNoBindParams::RTPUDPv4TransmissionNoBindParams() :
class RTPUDPv4TransmissionNoBindInfo: public RTPTransmissionInfo class RTPUDPv4TransmissionNoBindInfo: public RTPTransmissionInfo
{ {
public: public:
RTPUDPv4TransmissionNoBindInfo(std::list<uint32_t> iplist, SocketType rtpsock, SocketType rtcpsock, uint16_t rtpport, uint16_t rtcpport) : RTPUDPv4TransmissionNoBindInfo(const QHostAddress& ip, SocketType rtpsock, SocketType rtcpsock, uint16_t rtpport, uint16_t rtcpport) :
RTPTransmissionInfo(RTPTransmitter::IPv4UDPProto) RTPTransmissionInfo(RTPTransmitter::IPv4UDPProto)
{ {
localIPlist = iplist; localIP = ip;
rtpsocket = rtpsock; rtpsocket = rtpsock;
rtcpsocket = rtcpsock; rtcpsocket = rtcpsock;
m_rtpPort = rtpport; m_rtpPort = rtpport;
@ -312,9 +312,9 @@ public:
} }
/** Returns the list of IPv4 addresses the transmitter considers to be the local IP addresses. */ /** Returns the list of IPv4 addresses the transmitter considers to be the local IP addresses. */
std::list<uint32_t> GetLocalIPList() const QHostAddress GetLocalIP() const
{ {
return localIPlist; return localIP;
} }
/** Returns the socket descriptor used for receiving and transmitting RTP packets. */ /** Returns the socket descriptor used for receiving and transmitting RTP packets. */
@ -341,7 +341,7 @@ public:
return m_rtcpPort; return m_rtcpPort;
} }
private: private:
std::list<uint32_t> localIPlist; QHostAddress localIP;
SocketType rtpsocket, rtcpsocket; SocketType rtpsocket, rtcpsocket;
uint16_t m_rtpPort, m_rtcpPort; uint16_t m_rtpPort, m_rtcpPort;
}; };