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

📄 a2dp_8h.html

📁 BlueLab3 bluetooth API 说明文档
💻 HTML
📖 第 1 页 / 共 3 页
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>BlueLab: a2dp.h File Reference</title><link href="doxygen.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.3.8 --><div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a></div><h1>a2dp.h File Reference</h1>Interface to the Advanced Audio Distribution Profile library. <a href="#_details">More...</a><p><h2>Data Structures</h2><ul><li>struct <a class="el" href="structsep__config__params.html">sep_config_params</a><dl class="el"><dd class="mdescRight">Codec cppabilities specification block. This is used if the client wants to supply their own specific SEP capability parameters.  <a href="structsep__config__params.html#_details">More...</a><br></dl><li>struct <a class="el" href="structa2dp__sep__config.html">a2dp_sep_config</a><dl class="el"><dd class="mdescRight">A2DP SEP (Stream End Point) configuration parameters.  <a href="structa2dp__sep__config.html#_details">More...</a><br></dl><li>struct <a class="el" href="structa2dp__init__params.html">a2dp_init_params</a><dl class="el"><dd class="mdescRight">A2DP configuration parameters.  <a href="structa2dp__init__params.html#_details">More...</a><br></dl><li>struct <a class="el" href="struct_a2_d_p___i_n_i_t___c_f_m___t.html">A2DP_INIT_CFM_T</a><dl class="el"><dd class="mdescRight">This message returns the result of a call to A2dpInit.  <a href="struct_a2_d_p___i_n_i_t___c_f_m___t.html#_details">More...</a><br></dl><li>struct <a class="el" href="struct_a2_d_p___a_d_d___s_e_p___c_f_m___t.html">A2DP_ADD_SEP_CFM_T</a><dl class="el"><dd class="mdescRight">This message returns the result of a call to A2dpAddSep.  <a href="struct_a2_d_p___a_d_d___s_e_p___c_f_m___t.html#_details">More...</a><br></dl><li>struct <a class="el" href="struct_a2_d_p___o_p_e_n___c_f_m___t.html">A2DP_OPEN_CFM_T</a><dl class="el"><dd class="mdescRight">This message returns the result of a call to A2dpOpen.  <a href="struct_a2_d_p___o_p_e_n___c_f_m___t.html#_details">More...</a><br></dl><li>struct <a class="el" href="struct_a2_d_p___o_p_e_n___i_n_d___t.html">A2DP_OPEN_IND_T</a><dl class="el"><dd class="mdescRight">This message informs the application that a remote device has opened a local Stream End Point.  <a href="struct_a2_d_p___o_p_e_n___i_n_d___t.html#_details">More...</a><br></dl><li>struct <a class="el" href="struct_a2_d_p___c_l_o_s_e___c_f_m___t.html">A2DP_CLOSE_CFM_T</a><dl class="el"><dd class="mdescRight">This message is generated as the result of a call to A2dpClose.  <a href="struct_a2_d_p___c_l_o_s_e___c_f_m___t.html#_details">More...</a><br></dl><li>struct <a class="el" href="struct_a2_d_p___c_l_o_s_e___i_n_d___t.html">A2DP_CLOSE_IND_T</a><dl class="el"><dd class="mdescRight">This message informs the application that the connection has been closed.  <a href="struct_a2_d_p___c_l_o_s_e___i_n_d___t.html#_details">More...</a><br></dl><li>struct <a class="el" href="struct_a2_d_p___s_t_a_r_t___c_f_m___t.html">A2DP_START_CFM_T</a><dl class="el"><dd class="mdescRight">This message is generated as the result of a call to A2dpStart.  <a href="struct_a2_d_p___s_t_a_r_t___c_f_m___t.html#_details">More...</a><br></dl><li>struct <a class="el" href="struct_a2_d_p___s_t_a_r_t___i_n_d___t.html">A2DP_START_IND_T</a><dl class="el"><dd class="mdescRight">The message informs the application that the remote device has started streaming media.  <a href="struct_a2_d_p___s_t_a_r_t___i_n_d___t.html#_details">More...</a><br></dl><li>struct <a class="el" href="struct_a2_d_p___s_u_s_p_e_n_d___c_f_m___t.html">A2DP_SUSPEND_CFM_T</a><dl class="el"><dd class="mdescRight">This message returns the result of an A2dpSuspend request.  <a href="struct_a2_d_p___s_u_s_p_e_n_d___c_f_m___t.html#_details">More...</a><br></dl><li>struct <a class="el" href="struct_a2_d_p___s_u_s_p_e_n_d___i_n_d___t.html">A2DP_SUSPEND_IND_T</a><dl class="el"><dd class="mdescRight">This message informs the application that the media streaming has been suspended.  <a href="struct_a2_d_p___s_u_s_p_e_n_d___i_n_d___t.html#_details">More...</a><br></dl><li>struct <a class="el" href="struct_a2_d_p___c_o_d_e_c___s_e_t_t_i_n_g_s___i_n_d___t.html">A2DP_CODEC_SETTINGS_IND_T</a><dl class="el"><dd class="mdescRight">This message indicates what the app should configure the local codec.  <a href="struct_a2_d_p___c_o_d_e_c___s_e_t_t_i_n_g_s___i_n_d___t.html#_details">More...</a><br></dl><li>struct <a class="el" href="struct_a2_d_p___s_i_g_n_a_l_l_i_n_g___o_p_e_n___i_n_d___t.html">A2DP_SIGNALLING_OPEN_IND_T</a><dl class="el"><dd class="mdescRight">This message indicates to the client that the a2dp signalling channel has been opened.  <a href="struct_a2_d_p___s_i_g_n_a_l_l_i_n_g___o_p_e_n___i_n_d___t.html#_details">More...</a><br></dl><li>struct <a class="el" href="struct_a2_d_p___s_i_g_n_a_l_l_i_n_g___c_l_o_s_e___i_n_d___t.html">A2DP_SIGNALLING_CLOSE_IND_T</a><dl class="el"><dd class="mdescRight">This message indicates to the client that the a2dp signalling channel has been closed.  <a href="struct_a2_d_p___s_i_g_n_a_l_l_i_n_g___c_l_o_s_e___i_n_d___t.html#_details">More...</a><br></dl></ul><h2>Defines</h2><ul><li>#define <a class="el" href="a2dp_8h.html#a0">RESOURCE_KALIMBA</a>&nbsp;&nbsp;&nbsp;(1)<dl class="el"><dd class="mdescRight">Kalimba Resource.  <a href="#a0"></a><br></dl><li>#define <a class="el" href="a2dp_8h.html#a1">A2DP_MESSAGE_BASE</a>&nbsp;&nbsp;&nbsp;0x6d00<dl class="el"><dd class="mdescRight">The upstream A2DP library messages.  <a href="#a1"></a><br></dl></ul><h2>Typedefs</h2><ul><li>typedef __A2DP <a class="el" href="a2dp_8h.html#a2">A2DP</a><dl class="el"><dd class="mdescRight">The Advanced Audio Distribution Profile structure.  <a href="#a2"></a><br></dl></ul><h2>Enumerations</h2><ul><li>enum <a class="el" href="a2dp_8h.html#a45">a2dp_role</a> { <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a45a3">a2dp_sink</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a45a4">a2dp_source_usb</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a45a5">a2dp_source_analogue</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a45a6">a2dp_source_wolfson</a><br> }<dl class="el"><dd class="mdescRight">A2DP role.  <a href="#a45">More...</a><br></dl><li>enum <a class="el" href="a2dp_8h.html#a46">a2dp_sep_type</a> { <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a46a7">a2dp_sep_invalid</a> =  0, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a46a8">a2dp_sbc</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a46a9">a2dp_mpeg_audio</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a46a10">a2dp_mpeg_aac</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a46a11">a2dp_atrac</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a46a12">a2dp_vendor</a><br> }<dl class="el"><dd class="mdescRight">The type of the SEP. This identifies the codec type being registered or used.  <a href="#a46">More...</a><br></dl><li>enum <a class="el" href="a2dp_8h.html#a47">a2dp_channel_mode</a> { <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a47a13">a2dp_mono</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a47a14">a2dp_dual_channel</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a47a15">a2dp_stereo</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a47a16">a2dp_joint_stereo</a><br> }<dl class="el"><dd class="mdescRight">Audio stream channel mode.  <a href="#a47">More...</a><br></dl><li>enum <a class="el" href="a2dp_8h.html#a48">a2dp_status_code</a> { <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a17">a2dp_success</a> =  (0), <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a18">a2dp_fail</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a19">a2dp_no_resource</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a20">a2dp_bad_state</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a21">a2dp_timeout</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a22">a2dp_service_caps_error</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a23">a2dp_service_caps_incompatible</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a24">a2dp_rejected_by_remote_device</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a25">a2dp_unsupported_feature</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a26">a2dp_unknown_seid</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a27">a2dp_closed_by_remote_device</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a28">a2dp_aborted</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a29">a2dp_device_not_connected</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a30">a2dp_busy</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a31">a2dp_disconnect_link_loss</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a32">a2dp_unhandled_error</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a33">a2dp_unsupported_codec</a>, <br>&nbsp;&nbsp;<a class="el" href="a2dp_8h.html#a48a34">a2dp_unsupported_sep_role</a><br> }<dl class="el"><dd class="mdescRight">The Status codes are returned to indicate to the Client application the status of a requested operation.  <a href="#a48">More...</a><br></dl></ul><h2>Functions</h2><ul><li>void <a class="el" href="a2dp_8h.html#a35">A2dpInit</a> (<a class="el" href="struct_task_data.html">Task</a> theAppTask, const <a class="el" href="structa2dp__init__params.html">a2dp_init_params</a> *config)<dl class="el"><dd class="mdescRight">Initialise the A2DP library.  <a href="#a35"></a><br></dl><li>void <a class="el" href="a2dp_8h.html#a36">A2dpAddSep</a> (<a class="el" href="a2dp_8h.html#a2">A2DP</a> *a2dp, const <a class="el" href="structa2dp__sep__config.html">a2dp_sep_config</a> *config)<dl class="el"><dd class="mdescRight">Add a Stream Endpoint to the local database.  <a href="#a36"></a><br></dl><li>void <a class="el" href="a2dp_8h.html#a37">A2dpOpen</a> (const <a class="el" href="a2dp_8h.html#a2">A2DP</a> *a2dp, <a class="el" href="a2dp_8h.html#a46">a2dp_sep_type</a> sep_type, const <a class="el" href="structbdaddr.html">bdaddr</a> *bd_addr)<dl class="el"><dd class="mdescRight">Call to initiate a media connection from a local SEP to a remote device.  <a href="#a37"></a><br></dl><li>void <a class="el" href="a2dp_8h.html#a38">A2dpClose</a> (const <a class="el" href="a2dp_8h.html#a2">A2DP</a> *a2dp, <a class="el" href="sink___8h.html#a0">Sink</a> media_sink)<dl class="el"><dd class="mdescRight">Call to CLOSE a media connection from a local SEP to a remote device.  <a href="#a38"></a><br></dl><li>void <a class="el" href="a2dp_8h.html#a39">A2dpCloseAll</a> (const <a class="el" href="a2dp_8h.html#a2">A2DP</a> *a2dp)<dl class="el"><dd class="mdescRight">Clean up all AV related connections to the local device.  <a href="#a39"></a><br></dl><li>void <a class="el" href="a2dp_8h.html#a40">A2dpStart</a> (const <a class="el" href="a2dp_8h.html#a2">A2DP</a> *a2dp, <a class="el" href="sink___8h.html#a0">Sink</a> media_sink)<dl class="el"><dd class="mdescRight">Call to START streaming media from a currently OPEN or SUSPENDED media connection.  <a href="#a40"></a><br></dl><li>void <a class="el" href="a2dp_8h.html#a41">A2dpSuspend</a> (const <a class="el" href="a2dp_8h.html#a2">A2DP</a> *a2dp, <a class="el" href="sink___8h.html#a0">Sink</a> media_sink)<dl class="el"><dd class="mdescRight">Call to SUSPEND a streaming media connection.  <a href="#a41"></a><br></dl><li>void <a class="el" href="a2dp_8h.html#a42">A2dpAudioCodecEnable</a> (<a class="el" href="a2dp_8h.html#a2">A2DP</a> *a2dp, <a class="el" href="sink___8h.html#a0">Sink</a> media_sink)<dl class="el"><dd class="mdescRight">Enable the audio (AV) codec.  <a href="#a42"></a><br></dl><li>void <a class="el" href="a2dp_8h.html#a43">A2dpAudioCodecDisable</a> (<a class="el" href="a2dp_8h.html#a2">A2DP</a> *a2dp, <a class="el" href="sink___8h.html#a0">Sink</a> media_sink)<dl class="el"><dd class="mdescRight">Disable the audio (AV) codec.  <a href="#a43"></a><br></dl><li>void <a class="el" href="a2dp_8h.html#a44">A2dpEnableSignallingIndications</a> (<a class="el" href="a2dp_8h.html#a2">A2DP</a> *a2dp)<dl class="el"><dd class="mdescRight">Call to receive indications when the signalling channel is opened or closed.  <a href="#a44"></a><br></dl></ul><hr><a name="_details"></a><h2>Detailed Description</h2>Interface to the Advanced Audio Distribution Profile library. <p>Header file for the A2DP profile library. This profile library implements the A2DP using the services of the GAVDP library which is hidden from the Client application by this library<p>When a device wishes to start streaming audio content, the device must first set up a streaming connection. During the stream setup, the devices select the most suitable audio streaming parameters. Application service capability and transport service capability are configured during this stream setup procedure.<p>Once a streaming connection is established and the start streaming procedure as defined in the GAVDP specification is executed, audio can be streamed from the Source (SRC) to the Sink (SNK).<p>This library provides the low level services to permit an audio stream to be configured, started, stopped and suspended. This library provides the stream configuration and control. The actual streaming of data is performed by the underlying firmware. The audio stream is routed to the Digital Signal Processor (DSP) present on CSR BlueCore Multimedia devices. The CPU intensive operation of encoding/decoding a media stream is performed by the DSP.<p>The library exposes a functional downstream API and an upstream message based API.<hr><h2>Define Documentation</h2><a class="anchor" name="a0" doxytag="a2dp.h::RESOURCE_KALIMBA" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0">  <tr>    <td class="mdRow">      <table cellpadding="0" cellspacing="0" border="0">        <tr>          <td class="md" nowrap valign="top"> #define RESOURCE_KALIMBA&nbsp;&nbsp;&nbsp;(1)          </td>        </tr>      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>Kalimba Resource. <p>    </td>  </tr></table><a class="anchor" name="a1" doxytag="a2dp.h::A2DP_MESSAGE_BASE" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0">  <tr>    <td class="mdRow">      <table cellpadding="0" cellspacing="0" border="0">        <tr>          <td class="md" nowrap valign="top"> #define A2DP_MESSAGE_BASE&nbsp;&nbsp;&nbsp;0x6d00          </td>        </tr>      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>The upstream A2DP library messages. <p>    </td>  </tr></table><hr><h2>Typedef Documentation</h2><a class="anchor" name="a2" doxytag="a2dp.h::A2DP" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0">  <tr>    <td class="mdRow">      <table cellpadding="0" cellspacing="0" border="0">        <tr>          <td class="md" nowrap valign="top"> typedef struct __A2DP <a class="el" href="a2dp_8h.html#a2">A2DP</a>          </td>        </tr>      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>The Advanced Audio Distribution Profile structure. <p>    </td>  </tr></table><hr><h2>Enumeration Type Documentation</h2><a class="anchor" name="a45" doxytag="a2dp.h::a2dp_role" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0">  <tr>    <td class="mdRow">      <table cellpadding="0" cellspacing="0" border="0">        <tr>          <td class="md" nowrap valign="top"> enum <a class="el" href="a2dp_8h.html#a45">a2dp_role</a>          </td>        </tr>      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>A2DP role. <p>The A2DP specification defines two roles, Source (SRC) and Sink (SNK).<p>A device is the SRC when it acts as a source of a digital audio stream that is delivered to a SNK on the same Piconet.<p>A device is the SNK when it acts as a sink of a digital audio stream delivered from the SRC on the same Piconet. <dl compact><dt><b>Enumeration values: </b></dt><dd><table border=0 cellspacing=2 cellpadding=0><tr><td valign=top><em><a class="anchor" name="a45a3" doxytag="a2dp_sink" ></a>a2dp_sink</em>&nbsp;</td><td>This SEP is a sink. Register the config block dependent on the SEP type (a2dp_sep_type). </td></tr><tr><td valign=top><em><a class="anchor" name="a45a4" doxytag="a2dp_source_usb" ></a>a2dp_source_usb</em>&nbsp;</td><td>The SEP is an AV source with an USB input for the data. </td></tr><tr><td valign=top><em><a class="anchor" name="a45a5" doxytag="a2dp_source_analogue" ></a>a2dp_source_analogue</em>&nbsp;</td><td>The SEP is an AV source with an analogue input for the data, using the CSR internal codec. </td></tr><tr><td valign=top><em><a class="anchor" name="a45a6" doxytag="a2dp_source_wolfson" ></a>a2dp_source_wolfson</em>&nbsp;</td><td>The SEP is an AV source with an analogue input for the data, using the wolfson codec. </td></tr></table></dl>    </td>  </tr></table><a class="anchor" name="a46" doxytag="a2dp.h::a2dp_sep_type" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0">  <tr>    <td class="mdRow">      <table cellpadding="0" cellspacing="0" border="0">        <tr>          <td class="md" nowrap valign="top"> enum <a class="el" href="a2dp_8h.html#a46">a2dp_sep_type</a>          </td>        </tr>      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>The type of the SEP. This identifies the codec type being registered or used. <p><dl compact><dt><b>Enumeration values: </b></dt><dd><table border=0 cellspacing=2 cellpadding=0><tr><td valign=top><em><a class="anchor" name="a46a7" doxytag="a2dp_sep_invalid" ></a>a2dp_sep_invalid</em>&nbsp;</td><td>Invalid SEP value. </td></tr><tr><td valign=top><em><a class="anchor" name="a46a8" doxytag="a2dp_sbc" ></a>a2dp_sbc</em>&nbsp;</td><td>The SEP supports the SBC codec (support for this codec is mandatory). </td></tr><tr><td valign=top><em><a class="anchor" name="a46a9" doxytag="a2dp_mpeg_audio" ></a>a2dp_mpeg_audio</em>&nbsp;</td><td>The SEP supports the MPEG-1,2 AUdio codec. </td></tr>

⌨️ 快捷键说明

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