X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=ext%2Fpulse%2Fpulseutil.h;h=a410d0519a3b37d2387625f03bc9e7290679975a;hb=82a861316c7d53940a4ba5c5ea6b80e4e9b2fbb0;hp=8b50fa58a1927d2aca3a2755ed449e07539eb47e;hpb=8580dd86c9e73a523cc2a78f10541b330598fa6a;p=platform%2Fupstream%2Fgst-plugins-good.git diff --git a/ext/pulse/pulseutil.h b/ext/pulse/pulseutil.h index 8b50fa5..a410d05 100644 --- a/ext/pulse/pulseutil.h +++ b/ext/pulse/pulseutil.h @@ -15,7 +15,7 @@ * * You should have received a copy of the GNU Lesser General Public * License along with gst-pulse; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 * USA. */ @@ -31,10 +31,50 @@ #include #include + +#if (G_BYTE_ORDER == G_LITTLE_ENDIAN) +# define _PULSE_FORMATS "{ S16LE, S16BE, F32LE, F32BE, S32LE, S32BE, " \ + "S24LE, S24BE, S24_32LE, S24_32BE, U8 }" +#else +# define _PULSE_FORMATS "{ S16BE, S16LE, F32BE, F32LE, S32BE, S32LE, " \ + "S24BE, S24LE, S24_32BE, S24_32LE, U8 }" +#endif + +#define _PULSE_CAPS_LINEAR \ + "audio/x-raw, " \ + "format = (string) " _PULSE_FORMATS ", " \ + "layout = (string) interleaved, " \ + "rate = (int) [ 1, MAX ], " \ + "channels = (int) [ 1, 32 ]; " +#define _PULSE_CAPS_ALAW \ + "audio/x-alaw, " \ + "rate = (int) [ 1, MAX], " \ + "channels = (int) [ 1, 32 ]; " +#define _PULSE_CAPS_MULAW \ + "audio/x-mulaw, " \ + "rate = (int) [ 1, MAX], " \ + "channels = (int) [ 1, 32 ]; " + +#define _PULSE_CAPS_AC3 "audio/x-ac3, framed = (boolean) true; " +#define _PULSE_CAPS_EAC3 "audio/x-eac3, framed = (boolean) true; " +#define _PULSE_CAPS_DTS "audio/x-dts, framed = (boolean) true, " \ + "block-size = (int) { 512, 1024, 2048 }; " +#define _PULSE_CAPS_MP3 "audio/mpeg, mpegversion = (int) 1, " \ + "mpegaudioversion = (int) [ 1, 2 ], parsed = (boolean) true;" +#define _PULSE_CAPS_AAC "audio/mpeg, mpegversion = (int) { 2, 4 }, " \ + "framed = (boolean) true, stream-format = (string) adts;" + +#define _PULSE_CAPS_PCM \ + _PULSE_CAPS_LINEAR \ + _PULSE_CAPS_ALAW \ + _PULSE_CAPS_MULAW + + gboolean gst_pulse_fill_sample_spec (GstAudioRingBufferSpec * spec, pa_sample_spec * ss); gboolean gst_pulse_fill_format_info (GstAudioRingBufferSpec * spec, pa_format_info ** f, guint * channels); +const char * gst_pulse_sample_format_to_caps_format (pa_sample_format_t sf); gchar *gst_pulse_client_name (void); @@ -47,5 +87,11 @@ GstAudioRingBufferSpec *gst_pulse_channel_map_to_gst (const pa_channel_map * map void gst_pulse_cvolume_from_linear (pa_cvolume *v, unsigned channels, gdouble volume); pa_proplist *gst_pulse_make_proplist (const GstStructure *properties); +GstStructure *gst_pulse_make_structure (pa_proplist *properties); +GstCaps * gst_pulse_format_info_to_caps (pa_format_info * format); + +#ifdef __TIZEN__ +void gst_pulse_set_volume_ratio (uint32_t stream_index, const char *direction, double ratio); +#endif #endif