This file is indexed.

/usr/include/gpac/rtp_streamer.h is in libgpac-dev 0.5.2-426-gc5ad4e4+dfsg5-3.

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
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
/*
 *			GPAC - Multimedia Framework C SDK
 *
 *			Authors: Jean Le Feuvre
 *			Copyright (c) Telecom ParisTech 2000-2012
 *					All rights reserved
 *
 *  This file is part of GPAC / media tools sub-project
 *
 *  GPAC is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU Lesser General Public License as published by
 *  the Free Software Foundation; either version 2, or (at your option)
 *  any later version.
 *
 *  GPAC is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU Lesser General Public License for more details.
 *
 *  You should have received a copy of the GNU Lesser General Public
 *  License along with this library; see the file COPYING.  If not, write to
 *  the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 *
 */

#ifndef _GF_RTPSTREAMER_H_
#define _GF_RTPSTREAMER_H_

#ifdef __cplusplus
extern "C" {
#endif

/*!
 *	\file <gpac/rtp_streamer.h>
 *	\brief RTP streamer functions (packetizer and RTP socket).
 */

/*!
 *	\ingroup media_grp
 *	\brief RTPStreamer object
 *
 *	This section documents the RTP streamer object of the GPAC framework.
 *	@{
 */

#include <gpac/ietf.h>
#include <gpac/isomedia.h>

#if !defined(GPAC_DISABLE_STREAMING) && !defined(GPAC_DISABLE_ISOM)

typedef struct __rtp_streamer GF_RTPStreamer;

/*!
 *	\brief RTP Streamer constructor
 *
 *	Constructs a new RTP file streamer
 *\param streamType type of the stream (GF_STREAM_* as defined in \ref constants.h)
 *\param oti MPEG-4 object type indication for the stream (GPAC_OTI_* as defined in \ref constants.h)
 *\param timeScale unit to express timestamps
 *\param ip_dest IP address of the destination
 *\param port port number of the destination
 *\param MTU Maximum Transmission Unit size to use
 *\param TTL Time To Leave
 *\param ifce_addr IP of the local interface to use (may be NULL)
 *\param flags
 *\param dsi MPEG-4 Decoder Specific Info for the stream
 *\param dsi_len length of the dsi parameter
 *\return new object
 */

GF_RTPStreamer *gf_rtp_streamer_new(u32 streamType, u32 oti, u32 timeScale,
                                    const char *ip_dest, u16 port, u32 MTU, u8 TTL, const char *ifce_addr,
                                    u32 flags, char *dsi, u32 dsi_len);

/*!
 *	\brief RTP Streamer constructor with extended parameters
 *
 *	Constructs a new RTP file streamer
 *\param streamType type of the stream (GF_STREAM_* as defined in \ref constants.h)
 *\param oti MPEG-4 object type indication for the stream (GPAC_OTI_* as defined in \ref constants.h)
 *\param timeScale unit to express timestamps
 *\param ip_dest IP address of the destination
 *\param port port number of the destination
 *\param MTU Maximum Transmission Unit size to use
 *\param TTL Time To Leave
 *\param ifce_addr IP of the local interface to use (may be NULL)
 *\param flags
 *\param dsi MPEG-4 Decoder Specific Info for the stream
 *\param dsi_len length of the dsi parameter
 *\param PayloadType RTP payload type
 *\param sample_rate audio sample rate
 *\param nb_ch number of channels in audio streams
 *\param is_crypted Boolean indicating if the stream is crypted
 *\param IV_length lenght of the Initialisation Vector used for encryption
 *\param KI_length length of the key index
 *\param MinSize
 *\param MaxSize
 *\param avgTS
 *\param maxDTSDelta
 *\param const_dur
 *\param bandwidth
 *\param max_ptime
 *\param au_sn_len length of the MPEG-4 SL descriptor AU sequence number field
 *\return new object
 */
GF_RTPStreamer *gf_rtp_streamer_new_extended(u32 streamType, u32 oti, u32 timeScale,
        const char *ip_dest, u16 port, u32 MTU, u8 TTL, const char *ifce_addr,
        u32 flags, char *dsi, u32 dsi_len,
        u32 PayloadType, u32 sample_rate, u32 nb_ch,
        Bool is_crypted, u32 IV_length, u32 KI_length,
        u32 MinSize, u32 MaxSize, u32 avgTS, u32 maxDTSDelta, u32 const_dur, u32 bandwidth, u32 max_ptime,
        u32 au_sn_len);

/*!
 *	\brief RTP file streamer destructor
 *
 *	Destructs an RTP file streamer
 *	\param streamer object to destruct
 */
void gf_rtp_streamer_del(GF_RTPStreamer *streamer);

/*!
 *	\brief gets the SDP file
 *
 *	Gets the SDP asscoiated with all media in the streaming session (only media parts are returned)
 *	\param rtp RTP streamer object
 *	\param ESID The MPEG-4 elementary stream id of the stream to process
 *	\param dsi The MPEG-4 decoder specific info data
 *	\param dsi_len length of The MPEG-4 decoder specific info data
 *	\param KMS_URI URI of the Key Management System
 *	\param out_sdp_buffer location to the SDP buffer to allocate and fill
 */
GF_Err gf_rtp_streamer_append_sdp(GF_RTPStreamer *rtp, u16 ESID, char *dsi, u32 dsi_len, char *KMS_URI, char **out_sdp_buffer);

GF_Err gf_rtp_streamer_append_sdp_extended(GF_RTPStreamer *rtp, u16 ESID, char *dsi, u32 dsi_len, GF_ISOFile *isofile, u32 isotrack, char *KMS_URI, u32 width, u32 height, char **out_sdp_buffer) ;

GF_Err gf_rtp_streamer_append_sdp_decoding_dependency(GF_ISOFile *isofile, u32 isotrack, u8 *payload_type, char **out_sdp_buffer);

GF_Err gf_rtp_streamer_send_au(GF_RTPStreamer *rtp, char *data, u32 size, u64 cts, u64 dts, Bool is_rap);

GF_Err gf_rtp_streamer_send_au_with_sn(GF_RTPStreamer *rtp, char *data, u32 size, u64 cts, u64 dts, Bool is_rap, u32 inc_au_sn);

GF_Err gf_rtp_streamer_send_data(GF_RTPStreamer *rtp, char *data, u32 size, u32 fullsize, u64 cts, u64 dts, Bool is_rap, Bool au_start, Bool au_end, u32 au_sn, u32 sampleDuration, u32 sampleDescIndex);

char *gf_rtp_streamer_format_sdp_header(char *app_name, char *ip_dest, char *session_name, char *iod64);

void gf_rtp_streamer_disable_auto_rtcp(GF_RTPStreamer *streamer);

GF_Err gf_rtp_streamer_send_rtcp(GF_RTPStreamer *streamer, Bool force_ts, u32 rtp_ts, u32 force_ntp_type, u32 ntp_sec, u32 ntp_frac);

u8 gf_rtp_streamer_get_payload_type(GF_RTPStreamer *streamer);

/*! @} */

#ifdef __cplusplus
}
#endif

#endif //GPAC_DISABLE_ISOM && GPAC_DISABLE_STREAMING

#endif		/*_GF_RTPSTREAMER_H_*/