📄 ringplayer.sgml
字号:
<refentry id="mediastreamer-MSRingPlayer"><refmeta><refentrytitle>MSRingPlayer</refentrytitle><manvolnum>3</manvolnum><refmiscinfo>MEDIASTREAMER Library</refmiscinfo></refmeta><refnamediv><refname>MSRingPlayer</refname><refpurpose>A nice source filter to play rings.</refpurpose></refnamediv><refsynopsisdiv><title>Synopsis</title><synopsis>#include <msringplayer.h> <link linkend="MSRingPlayer">MSRingPlayer</link>;<link linkend="MSFilter">MSFilter</link>* <link linkend="ms-ring-player-new">ms_ring_player_new</link> (<link linkend="char">char</link> *name, <link linkend="gint">gint</link> seconds);<link linkend="void">void</link> <link linkend="ms-ring-player-destroy">ms_ring_player_destroy</link> (<link linkend="MSRingPlayer">MSRingPlayer</link> *obj);</synopsis></refsynopsisdiv><refsect1><title>Description</title><para>This filter plays a repeatly a sound followed by a period of silence. The sound is given as the path to a 16 bit raw audio file, and the interval is specified in number of seconds.</para></refsect1><refsect1><title>Details</title><refsect2><title><anchor id="MSRingPlayer">MSRingPlayer</title><indexterm><primary>MSRingPlayer</primary></indexterm><programlisting>typedef struct { /* the MSRingPlayer derivates from MSFilter, so the MSFilter object MUST be the first of the MSRingPlayer object in order to the object mechanism to work*/ MSFilter filter; MSFifo *foutputs[MS_RING_PLAYER_MAX_OUTPUTS]; MSQueue *qoutputs[MS_RING_PLAYER_MAX_OUTPUTS];\ MSSync *sync; gint gran; gint freq; gint rate; gint channel; /* number of interleaved channels */ gint silence; /* silence time between each ring, in seconds */ gint state; gint fd; /* the file descriptor of the file being read*/ gint silence_bytes; /*silence in number of bytes between each ring */ gint current_pos; gint need_swap;} MSRingPlayer;</programlisting><para></para></refsect2><refsect2><title><anchor id="ms-ring-player-new">ms_ring_player_new ()</title><indexterm><primary>ms_ring_player_new</primary></indexterm><programlisting><link linkend="MSFilter">MSFilter</link>* ms_ring_player_new (<link linkend="char">char</link> *name, <link linkend="gint">gint</link> seconds);</programlisting><para>Allocates a new MSRingPlayer object.</para><para></para><variablelist role="params"><varlistentry><term><parameter>name</parameter> :</term><listitem><simpara> The path to the 16-bit 8khz raw file to be played as a ring.</simpara></listitem></varlistentry><varlistentry><term><parameter>seconds</parameter> :</term><listitem><simpara> The number of seconds that separates two rings.</simpara></listitem></varlistentry><varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a pointer the the object, NULL if name could not be open.</simpara></listitem></varlistentry></variablelist></refsect2><refsect2><title><anchor id="ms-ring-player-destroy">ms_ring_player_destroy ()</title><indexterm><primary>ms_ring_player_destroy</primary></indexterm><programlisting><link linkend="void">void</link> ms_ring_player_destroy (<link linkend="MSRingPlayer">MSRingPlayer</link> *obj);</programlisting><para>Destroy a MSRingPlayer object.</para><para></para><variablelist role="params"><varlistentry><term><parameter>obj</parameter> :</term><listitem><simpara> A valid MSRingPlayer object.</simpara></listitem></varlistentry></variablelist></refsect2></refsect1></refentry>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -