/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_
 |