/usr/include/sipxtapi/mi/IMediaSocket.h is in libsipxtapi-dev 3.3.0~test17-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 | //
// Copyright (C) 2006 SIPfoundry Inc.
// Licensed by SIPfoundry under the LGPL license.
//
// Copyright (C) 2006 Pingtel Corp. All rights reserved.
// Licensed to SIPfoundry under a Contributor Agreement.
//
// $$
///////////////////////////////////////////////////////////////////////////////
#ifndef _IMediaSocket_h_
#define _IMediaSocket_h_
// DEFINES
#define TYPE_AUDIO_RTP 0
#define TYPE_AUDIO_RTCP 1
#define TYPE_VIDEO_RTP 2
#define TYPE_VIDEO_RTCP 3
#define TRANSPORT_DUMP
#undef TRANSPORT_DUMP
#ifdef TRANSPORT_DUMP
#define TRANSPORT_DUMP_FILE "C:\\transport-debug.txt"
#endif
// MACROS
// EXTERNAL FUNCTIONS
// EXTERNAL VARIABLES
// CONSTANTS
// STRUCTS
// TYPEDEFS
typedef struct RTP_HEADER
{
unsigned char vpxcc ;
unsigned char mp ;
unsigned short seq_number ;
unsigned long timestamp ;
unsigned long SSRC ;
} RTP_HEADER ;
typedef struct RTP_MONITOR_CONEXT
{
bool bInitialized ;
unsigned char payloadType ;
unsigned short seq_number ;
unsigned long SSRC ;
UtlString fromAddress ;
int fromPort ;
unsigned int mismatches ;
} RTP_MONITOR_CONEXT ;
/**
* Generic interface representing a media transport object.
* Implemented by VoiceEngineDatagramSocket, VoiceEngineConnectionSocket,
* and any other class which provides RTP transport of media.
*/
class IMediaSocket
{
/* //////////////////////////// PUBLIC //////////////////////////////////// */
public:
/* ============================ MANIPULATORS ============================== */
/**
* virtual destructor.
*/
virtual ~IMediaSocket() {};
/**
* Reads an RTP packet and 'pushes' it to media processing.
*/
virtual void pushPacket() = 0;
/**
* Reads an RTP packet and 'pushes' it to media processing.
*/
virtual void pushPacket(char* rtpPacket, size_t packetSize, int port) = 0;
/**
* Set the channel Id for video.
*
* @param channelId The VideoEngine channel id to be
* associated with this transport object.
*/
virtual void setVideoChannel(int channelId) = 0;
/**
* Timestamp the object with the last time that data
* was read.
*/
virtual void setLastTimeReadToNow() = 0;
/**
* Enable media transport reading & writing.
*/
virtual void setEnabled(bool bEnabled) = 0;
virtual void setPreferredReceiveAddress(const char*szAddress, int port) = 0;
};
inline IMediaSocket* getMediaSocketPtr(IStunSocket* pStunSocket)
{
return dynamic_cast<IMediaSocket*>(pStunSocket->getSocket());
}
#endif // #ifndef _IMediaSocket_h_
|