summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>2010-09-22 13:55:20 +0200
committerMark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>2010-10-01 12:15:50 +0200
commiteb9ba9e115c743030117906ba2f7daee97cf9c59 (patch)
tree48a3995968f72b2829cc3e03be551401556f5fc7
parentdef0aadb81a9ad6dc93bbb7bb55ec8a8f18fd08f (diff)
baseparse: localize use of provided fps information
-rw-r--r--gst/audioparsers/gstbaseparse.c20
1 files changed, 5 insertions, 15 deletions
diff --git a/gst/audioparsers/gstbaseparse.c b/gst/audioparsers/gstbaseparse.c
index 765ca9f31..73da287c9 100644
--- a/gst/audioparsers/gstbaseparse.c
+++ b/gst/audioparsers/gstbaseparse.c
@@ -943,14 +943,8 @@ gst_base_parse_convert_default (GstBaseParse * parse,
if (!parse->priv->framecount)
return FALSE;
- /* either frame info (having num means den also ok) or use average bitrate */
- if (parse->priv->fps_num) {
- duration = parse->priv->framecount * parse->priv->fps_den * 1000;
- bytes = parse->priv->bytecount * parse->priv->fps_num;
- } else {
- duration = parse->priv->acc_duration / GST_MSECOND;
- bytes = parse->priv->bytecount;
- }
+ duration = parse->priv->acc_duration / GST_MSECOND;
+ bytes = parse->priv->bytecount;
if (G_UNLIKELY (!duration || !bytes))
return FALSE;
@@ -1076,13 +1070,9 @@ gst_base_parse_update_bitrates (GstBaseParse * parse, GstBuffer * buffer)
data_len = GST_BUFFER_SIZE (buffer) - overhead;
parse->priv->data_bytecount += data_len;
- if (parse->priv->fps_num) {
- /* Calculate duration of a frame from frame properties */
- frame_dur = (GST_SECOND * parse->priv->fps_den) / parse->priv->fps_num;
- parse->priv->avg_bitrate = (8 * parse->priv->data_bytecount * GST_SECOND) /
- (parse->priv->framecount * frame_dur);
-
- } else if (GST_BUFFER_DURATION_IS_VALID (buffer)) {
+ /* duration should be valid by now,
+ * either set by subclass or maybe based on fps settings */
+ if (GST_BUFFER_DURATION_IS_VALID (buffer)) {
/* Calculate duration of a frame from buffer properties */
frame_dur = GST_BUFFER_DURATION (buffer);
parse->priv->avg_bitrate = (8 * parse->priv->data_bytecount * GST_SECOND) /