From: Tim-Philipp Müller Date: Thu, 28 Jul 2011 10:09:08 +0000 (+0100) Subject: speex: update for position/query/convert API changes X-Git-Tag: RELEASE-0.11.1~431 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ab625998321f997ba3a20e2b96a120a9f5e79209;p=platform%2Fupstream%2Fgst-plugins-good.git speex: update for position/query/convert API changes --- diff --git a/ext/speex/gstspeexdec.c b/ext/speex/gstspeexdec.c index 4093fee..56a2afe 100644 --- a/ext/speex/gstspeexdec.c +++ b/ext/speex/gstspeexdec.c @@ -376,6 +376,7 @@ speex_dec_src_query (GstPad * pad, GstQuery * query) dec = GST_SPEEX_DEC (gst_pad_get_parent (pad)); + /* FIXME: why not just pass position/duration queries upstream to demuxer? */ switch (GST_QUERY_TYPE (query)) { case GST_QUERY_POSITION:{ GstSegment segment; @@ -400,11 +401,11 @@ speex_dec_src_query (GstPad * pad, GstQuery * query) break; } case GST_QUERY_DURATION:{ - GstFormat format = GST_FORMAT_TIME; + GstFormat format; gint64 dur; /* get duration from demuxer */ - if (!gst_pad_query_peer_duration (dec->sinkpad, &format, &dur)) + if (!gst_pad_query_peer_duration (dec->sinkpad, GST_FORMAT_TIME, &dur)) break; gst_query_parse_duration (query, &format, NULL); diff --git a/ext/speex/gstspeexenc.c b/ext/speex/gstspeexenc.c index bfbb6d8..1da8cad 100644 --- a/ext/speex/gstspeexenc.c +++ b/ext/speex/gstspeexenc.c @@ -291,7 +291,7 @@ gst_speex_enc_sink_getcaps (GstPad * pad, GstCaps * filter) static gboolean gst_speex_enc_convert_src (GstPad * pad, GstFormat src_format, gint64 src_value, - GstFormat * dest_format, gint64 * dest_value) + GstFormat dest_format, gint64 * dest_value) { gboolean res = TRUE; GstSpeexEnc *enc; @@ -306,7 +306,7 @@ gst_speex_enc_convert_src (GstPad * pad, GstFormat src_format, gint64 src_value, switch (src_format) { case GST_FORMAT_BYTES: - switch (*dest_format) { + switch (dest_format) { case GST_FORMAT_TIME: *dest_value = src_value * GST_SECOND / avg; break; @@ -315,7 +315,7 @@ gst_speex_enc_convert_src (GstPad * pad, GstFormat src_format, gint64 src_value, } break; case GST_FORMAT_TIME: - switch (*dest_format) { + switch (dest_format) { case GST_FORMAT_BYTES: *dest_value = src_value * avg / GST_SECOND; break; @@ -430,44 +430,44 @@ gst_speex_enc_src_query (GstPad * pad, GstQuery * query) switch (GST_QUERY_TYPE (query)) { case GST_QUERY_POSITION: { - GstFormat fmt, req_fmt; + GstFormat req_fmt; gint64 pos, val; gst_query_parse_position (query, &req_fmt, NULL); - if ((res = gst_pad_query_peer_position (enc->sinkpad, &req_fmt, &val))) { + if ((res = gst_pad_query_peer_position (enc->sinkpad, req_fmt, &val))) { gst_query_set_position (query, req_fmt, val); break; } - fmt = GST_FORMAT_TIME; - if (!(res = gst_pad_query_peer_position (enc->sinkpad, &fmt, &pos))) + res = gst_pad_query_peer_position (enc->sinkpad, GST_FORMAT_TIME, &pos); + if (!res) break; if ((res = - gst_pad_query_peer_convert (enc->sinkpad, fmt, pos, &req_fmt, - &val))) + gst_pad_query_peer_convert (enc->sinkpad, GST_FORMAT_TIME, pos, + req_fmt, &val))) { gst_query_set_position (query, req_fmt, val); - + } break; } case GST_QUERY_DURATION: { - GstFormat fmt, req_fmt; + GstFormat req_fmt; gint64 dur, val; gst_query_parse_duration (query, &req_fmt, NULL); - if ((res = gst_pad_query_peer_duration (enc->sinkpad, &req_fmt, &val))) { + if ((res = gst_pad_query_peer_duration (enc->sinkpad, req_fmt, &val))) { gst_query_set_duration (query, req_fmt, val); break; } - fmt = GST_FORMAT_TIME; - if (!(res = gst_pad_query_peer_duration (enc->sinkpad, &fmt, &dur))) + res = gst_pad_query_peer_duration (enc->sinkpad, GST_FORMAT_TIME, &dur); + if (!res) break; if ((res = - gst_pad_query_peer_convert (enc->sinkpad, fmt, dur, &req_fmt, - &val))) { + gst_pad_query_peer_convert (enc->sinkpad, GST_FORMAT_TIME, dur, + req_fmt, &val))) { gst_query_set_duration (query, req_fmt, val); } break; @@ -478,7 +478,7 @@ gst_speex_enc_src_query (GstPad * pad, GstQuery * query) gint64 src_val, dest_val; gst_query_parse_convert (query, &src_fmt, &src_val, &dest_fmt, &dest_val); - if (!(res = gst_speex_enc_convert_src (pad, src_fmt, src_val, &dest_fmt, + if (!(res = gst_speex_enc_convert_src (pad, src_fmt, src_val, dest_fmt, &dest_val))) goto error; gst_query_set_convert (query, src_fmt, src_val, dest_fmt, dest_val);