⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rtpsessionapi.sgml

📁 ORTP开源的rtp库
💻 SGML
📖 第 1 页 / 共 4 页
字号:
</variablelist></refsect2><refsect2><title><anchor id="rtp-session-set-blocking-mode" role="function">rtp_session_set_blocking_mode ()</title><indexterm><primary>rtp_session_set_blocking_mode</primary></indexterm><programlisting><link linkend="void">void</link>        rtp_session_set_blocking_mode   (<link linkend="RtpSession">RtpSession</link> *session,                                             <link linkend="int">int</link> yesno);</programlisting><para>Using this function implies that you previously enabled scheduled mode on the session (see <link linkend="rtp-session-set-scheduling-mode"><function>rtp_session_set_scheduling_mode()</function></link> ).<link linkend="rtp-session-set-blocking-mode"><function>rtp_session_set_blocking_mode()</function></link> defines the behaviour of the <link linkend="rtp-session-recv-with-ts"><function>rtp_session_recv_with_ts()</function></link> and <link linkend="rtp-session-send-with-ts"><function>rtp_session_send_with_ts()</function></link> functions. If <parameter>yesno</parameter> is TRUE, <link linkend="rtp-session-recv-with-ts"><function>rtp_session_recv_with_ts()</function></link>will block until it is time for the packet to be received, according to the timestamppassed to the function. After this time, the function returns.For <link linkend="rtp-session-send-with-ts"><function>rtp_session_send_with_ts()</function></link>, it will block until it is time for the packet to be sent.If <parameter>yesno</parameter> is FALSE, then the two functions will return immediately.</para><para></para><variablelist role="params"><varlistentry><term><parameter>session</parameter>&nbsp;:</term><listitem><simpara> a rtp session</simpara></listitem></varlistentry><varlistentry><term><parameter>yesno</parameter>&nbsp;:</term><listitem><simpara> a boolean</simpara></listitem></varlistentry></variablelist></refsect2><refsect2><title><anchor id="rtp-session-set-profile" role="function">rtp_session_set_profile ()</title><indexterm><primary>rtp_session_set_profile</primary></indexterm><programlisting><link linkend="void">void</link>        rtp_session_set_profile         (<link linkend="RtpSession">RtpSession</link> *session,                                             <link linkend="RtpProfile">RtpProfile</link> *profile);</programlisting><para>Set the RTP profile to be used for the session. By default, all session are created by<link linkend="rtp-session-new"><function>rtp_session_new()</function></link> are initialized with the AV profile, as defined in RFC 3551. The applicationcan set any other profile instead using that function.</para><para></para><variablelist role="params"><varlistentry><term><parameter>session</parameter>&nbsp;:</term><listitem><simpara> a rtp session</simpara></listitem></varlistentry><varlistentry><term><parameter>profile</parameter>&nbsp;:</term><listitem><simpara> a rtp profile</simpara></listitem></varlistentry></variablelist></refsect2><refsect2><title><anchor id="rtp-session-get-profile" role="function">rtp_session_get_profile ()</title><indexterm><primary>rtp_session_get_profile</primary></indexterm><programlisting><link linkend="RtpProfile">RtpProfile</link>* rtp_session_get_profile         (<link linkend="RtpSession">RtpSession</link> *session);</programlisting><para></para><para></para><variablelist role="params"><varlistentry><term><parameter>session</parameter>&nbsp;:</term><listitem><simpara> a rtp session</simpara></listitem></varlistentry><varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>current profile.</simpara></listitem></varlistentry></variablelist></refsect2><refsect2><title><anchor id="rtp-session-set-local-addr" role="function">rtp_session_set_local_addr ()</title><indexterm><primary>rtp_session_set_local_addr</primary></indexterm><programlisting><link linkend="int">int</link>         rtp_session_set_local_addr      (<link linkend="RtpSession">RtpSession</link> *session,                                             const <link linkend="char">char</link> *addr,                                             <link linkend="int">int</link> port);</programlisting><para>Specify the local addr to be use to listen for rtp packets or to send rtp packet from.In case where the rtp session is send-only, then it is not required to call this function:when calling <link linkend="rtp-session-set-remote-addr"><function>rtp_session_set_remote_addr()</function></link>, if no local address has been set, then the default INADRR_ANY (0.0.0.0) IP address with a random port will be used. Calling <link linkend="rtp-sesession-set-local-addr"><function>rtp_sesession_set_local_addr()</function></link> is mandatory when the session is recv-only or duplex.</para><para></para><variablelist role="params"><varlistentry><term><parameter>session</parameter>&nbsp;:</term><listitem><simpara>		a rtp session freshly created.</simpara></listitem></varlistentry><varlistentry><term><parameter>addr</parameter>&nbsp;:</term><listitem><simpara>		a local IP address in the xxx.xxx.xxx.xxx form.</simpara></listitem></varlistentry><varlistentry><term><parameter>port</parameter>&nbsp;:</term><listitem><simpara>		a local port or -1 to let oRTP choose the port randomly</simpara></listitem></varlistentry><varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> 0 on success.</simpara></listitem></varlistentry></variablelist></refsect2><refsect2><title><anchor id="rtp-session-set-remote-addr" role="function">rtp_session_set_remote_addr ()</title><indexterm><primary>rtp_session_set_remote_addr</primary></indexterm><programlisting><link linkend="int">int</link>         rtp_session_set_remote_addr     (<link linkend="RtpSession">RtpSession</link> *session,                                             const <link linkend="char">char</link> *addr,                                             <link linkend="int">int</link> port);</programlisting><para>Sets the remote address of the rtp session, ie the destination address where rtp packetare sent. If the session is recv-only or duplex, it also sets the origin of incoming RTP packets. Rtp packets that don't come from addr:port are discarded.</para><para></para><variablelist role="params"><varlistentry><term><parameter>session</parameter>&nbsp;:</term><listitem><simpara>		a rtp session freshly created.</simpara></listitem></varlistentry><varlistentry><term><parameter>addr</parameter>&nbsp;:</term><listitem><simpara>		a local IP address in the xxx.xxx.xxx.xxx form.</simpara></listitem></varlistentry><varlistentry><term><parameter>port</parameter>&nbsp;:</term><listitem><simpara>		a local port.</simpara></listitem></varlistentry><varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> 0 on success.</simpara></listitem></varlistentry></variablelist></refsect2><refsect2><title><anchor id="rtp-session-get-local-port" role="function">rtp_session_get_local_port ()</title><indexterm><primary>rtp_session_get_local_port</primary></indexterm><programlisting><link linkend="int">int</link>         rtp_session_get_local_port      (const <link linkend="RtpSession">RtpSession</link> *session);</programlisting><para>This function can be useful to retrieve the local port that was randomly choosen by <link linkend="rtp-session-set-remote-addr"><function>rtp_session_set_remote_addr()</function></link> when <link linkend="rtp-session-set-local-addr"><function>rtp_session_set_local_addr()</function></link> was not called.</para><para></para><variablelist role="params"><varlistentry><term><parameter>session</parameter>&nbsp;:</term><listitem><simpara>	a rtp session for which <link linkend="rtp-session-set-local-addr"><function>rtp_session_set_local_addr()</function></link> or <link linkend="rtp-session-set-remote-addr"><function>rtp_session_set_remote_addr()</function></link> has been called</simpara></listitem></varlistentry><varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> the local port used to listen for rtp packets, -1 if not set.</simpara></listitem></varlistentry></variablelist></refsect2><refsect2><title><anchor id="rtp-session-set-jitter-compensation" role="function">rtp_session_set_jitter_compensation ()</title><indexterm><primary>rtp_session_set_jitter_compensation</primary></indexterm><programlisting><link linkend="void">void</link>        rtp_session_set_jitter_compensation                                            (<link linkend="RtpSession">RtpSession</link> *session,                                             <link linkend="int">int</link> milisec);</programlisting><para>Sets the time interval for which packet are buffered instead of being delivered to the application.</para><para></para><variablelist role="params"><varlistentry><term><parameter>session</parameter>&nbsp;:</term><listitem><simpara> a RtpSession</simpara></listitem></varlistentry><varlistentry><term><parameter>milisec</parameter>&nbsp;:</term><listitem><simpara> the time interval in milisec to be jitter compensed.</simpara></listitem></varlistentry></variablelist></refsect2><refsect2><title><anchor id="rtp-session-set-ssrc" role="function">rtp_session_set_ssrc ()</title><indexterm><primary>rtp_session_set_ssrc</primary></indexterm><programlisting><link linkend="void">void</link>        rtp_session_set_ssrc            (<link linkend="RtpSession">RtpSession</link> *session,                                             <link linkend="uint32-t">uint32_t</link> ssrc);</programlisting><para>Sets the SSRC for the outgoing stream. If not done, a random ssrc is used.</para><para></para><variablelist role="params"><varlistentry><term><parameter>session</parameter>&nbsp;:</term><listitem><simpara> a rtp session.</simpara></listitem></varlistentry><varlistentry><term><parameter>ssrc</parameter>&nbsp;:</term><listitem><simpara> an unsigned 32bit integer representing the synchronisation source identifier (SSRC).</simpara></listitem></varlistentry></variablelist></refsect2><refsect2><title><anchor id="rtp-session-set-seq-number" role="function">rtp_session_set_seq_number ()</title><indexterm><primary>rtp_session_set_seq_number</primary></indexterm><programlisting><link linkend="void">void</link>        rtp_session_set_seq_number      (<link linkend="RtpSession">RtpSession</link> *session,                                             <link linkend="uint16-t">uint16_t</link> seq);</programlisting><para>sets the initial sequence number of a sending session.</para><para></para><variablelist role="params"><varlistentry><term><parameter>session</parameter>&nbsp;:</term><listitem><simpara>		a rtp session freshly created.</simpara></listitem></varlistentry><varlistentry><term><parameter>seq</parameter>&nbsp;:</term><listitem><simpara></simpara></listitem></varlistentry></variablelist></refsect2><refsect2><title><anchor id="rtp-session-set-send-payload-type" role="function">rtp_session_set_send_payload_type ()</title><indexterm><primary>rtp_session_set_send_payload_type</primary></indexterm><programlisting><link linkend="int">int</link>         rtp_session_set_send_payload_type                                            (<link linkend="RtpSession">RtpSession</link> *session,                                             <link linkend="int">int</link> paytype);</programlisting><para>Sets the payload type of the rtp session. It decides of the payload types written in theof the rtp header for the outgoing stream, if the session is SENDRECV or SENDONLY.For payload type in incoming packets, the application can be informed by registeringfor the "payload_type_changed" signal, so that it can make the necessary changeson the downstream decoder that deals with the payload of the packets.</para><para></para><variablelist role="params"><varlistentry><term><parameter>session</parameter>&nbsp;:</term><listitem><simpara> a rtp session</simpara></listitem></varlistentry><varlistentry><term><parameter>paytype</parameter>&nbsp;:</term><listitem><simpara> the payload type</simpara></listitem></varlistentry><varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> 0 on success, -1 if the payload is not defined.</simpara></listitem></varlistentry></variablelist></refsect2><refsect2><title><anchor id="rtp-session-set-recv-payload-type" role="function">rtp_session_set_recv_payload_type ()</title><indexterm><primary>rtp_session_set_recv_payload_type</primary></indexterm><programlisting><link linkend="int">int</link>         rtp_session_set_recv_payload_type                                            (<link linkend="RtpSession">RtpSession</link> *session,                                             <link linkend="int">int</link> pt);</programlisting><para>Sets the expected payload type for incoming packets.If the actual payload type in incoming packets is different that this expected payload type, thusthe "payload_type_changed" signal is emitted.</para><para></para><variablelist role="params"><varlistentry><term><parameter>session</parameter>&nbsp;:</term><listitem><simpara> a rtp session</simpara></listitem></varlistentry><varlistentry><term><parameter>pt</parameter>&nbsp;:</term><listitem><simpara></simpara></listitem></varlistentry><varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> 0 on success, -1 if the payload is not defined.</simpara></listitem></varlistentry></variablelist></refsect2><refsect2><title><anchor id="rtp-session-get-send-payload-type" role="function">rtp_session_get_send_payload_type ()</title><indexterm><primary>rtp_session_get_send_payload_type</primary></indexterm><programlisting><link linkend="int">int</link>         rtp_session_get_send_payload_type                                            (const <link linkend="RtpSession">RtpSession</link> *session);</programlisting>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -