diff options
| author | Luiz Augusto von Dentz <luiz.dentz@openbossa.org> | 2008-01-23 13:16:02 +0000 | 
|---|---|---|
| committer | Luiz Augusto von Dentz <luiz.dentz@openbossa.org> | 2008-01-23 13:16:02 +0000 | 
| commit | 489c2e0dbd76d9cecec62d19fafd9e7baddb72e7 (patch) | |
| tree | d8ec2cba32e8a20443eb85e4162d0b38f0fd0d31 /audio/gsta2dpsendersink.c | |
| parent | a0af7ee44534dad8f35a4142c6a22177e54ffc57 (diff) | |
Add mpeg12 sep registration.
Diffstat (limited to 'audio/gsta2dpsendersink.c')
| -rw-r--r-- | audio/gsta2dpsendersink.c | 37 | 
1 files changed, 24 insertions, 13 deletions
diff --git a/audio/gsta2dpsendersink.c b/audio/gsta2dpsendersink.c index cfb67b87..1f54f29c 100644 --- a/audio/gsta2dpsendersink.c +++ b/audio/gsta2dpsendersink.c @@ -236,13 +236,13 @@ static gboolean gst_a2dp_sender_sink_init_pkt_conf(GstA2dpSenderSink *sink,  	value = gst_structure_get_value(structure, "rate");  	rate = g_value_get_int(value);  	if (rate == 44100) -		cfg->frequency = BT_A2DP_SAMPLING_FREQ_44100; +		cfg->frequency = BT_SBC_SAMPLING_FREQ_44100;  	else if (rate == 48000) -		cfg->frequency = BT_A2DP_SAMPLING_FREQ_48000; +		cfg->frequency = BT_SBC_SAMPLING_FREQ_48000;  	else if (rate == 32000) -		cfg->frequency = BT_A2DP_SAMPLING_FREQ_32000; +		cfg->frequency = BT_SBC_SAMPLING_FREQ_32000;  	else if (rate == 16000) -		cfg->frequency = BT_A2DP_SAMPLING_FREQ_16000; +		cfg->frequency = BT_SBC_SAMPLING_FREQ_16000;  	else {  		GST_ERROR_OBJECT(sink, "Invalid rate while setting caps");  		return FALSE; @@ -396,17 +396,14 @@ static gboolean server_callback(GIOChannel *chan,  	return TRUE;  } -static gboolean gst_a2dp_sender_sink_update_caps(GstA2dpSenderSink *self) +static GstStructure *gst_a2dp_sender_sink_parse_sbc_caps( +			GstA2dpSenderSink *self, sbc_capabilities_t *sbc)  { -	sbc_capabilities_t *sbc = &self->data->caps.sbc_capabilities;  	GstStructure *structure;  	GValue *value;  	GValue *list; -	gchar *tmp;  	gboolean mono, stereo; -	GST_LOG_OBJECT(self, "updating device caps"); -  	structure = gst_structure_empty_new("audio/x-sbc");  	value = g_value_init(g_new0(GValue, 1), G_TYPE_STRING); @@ -518,19 +515,19 @@ static gboolean gst_a2dp_sender_sink_update_caps(GstA2dpSenderSink *self)  	/* rate */  	g_value_init(value, G_TYPE_INT);  	list = g_value_init(g_new0(GValue, 1), GST_TYPE_LIST); -	if (sbc->frequency & BT_A2DP_SAMPLING_FREQ_48000) { +	if (sbc->frequency & BT_SBC_SAMPLING_FREQ_48000) {  		g_value_set_int(value, 48000);  		gst_value_list_prepend_value(list, value);  	} -	if (sbc->frequency & BT_A2DP_SAMPLING_FREQ_44100) { +	if (sbc->frequency & BT_SBC_SAMPLING_FREQ_44100) {  		g_value_set_int(value, 44100);  		gst_value_list_prepend_value(list, value);  	} -	if (sbc->frequency & BT_A2DP_SAMPLING_FREQ_32000) { +	if (sbc->frequency & BT_SBC_SAMPLING_FREQ_32000) {  		g_value_set_int(value, 32000);  		gst_value_list_prepend_value(list, value);  	} -	if (sbc->frequency & BT_A2DP_SAMPLING_FREQ_16000) { +	if (sbc->frequency & BT_SBC_SAMPLING_FREQ_16000) {  		g_value_set_int(value, 16000);  		gst_value_list_prepend_value(list, value);  	} @@ -584,6 +581,20 @@ static gboolean gst_a2dp_sender_sink_update_caps(GstA2dpSenderSink *self)  	gst_structure_set_value(structure, "channels", value);  	g_free(value); +	return structure; +} + +static gboolean gst_a2dp_sender_sink_update_caps(GstA2dpSenderSink *self) +{ +	sbc_capabilities_t *sbc = &self->data->caps.sbc_capabilities; +	mpeg_capabilities_t *mpeg = &self->data->caps.mpeg_capabilities; +	GstStructure *structure; +	gchar *tmp; + +	GST_LOG_OBJECT(self, "updating device caps"); + +	structure = gst_a2dp_sender_sink_parse_sbc_caps(self, sbc); +  	if (self->dev_caps != NULL)  		gst_caps_unref(self->dev_caps);  	self->dev_caps = gst_caps_new_full(structure, NULL);  | 
