summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJosep Torra <n770galaxy@gmail.com>2013-04-26 10:38:36 +0200
committerJosep Torra <n770galaxy@gmail.com>2013-04-26 11:27:19 +0200
commitfb0d8700e71c4a6569ba023d16201087aec119fd (patch)
tree1734ab9d0b6fa70a1d13ebed5a1098d78a4a91d8
parentb10b9693b95796a9bf0615bd62205758199d91c8 (diff)
downloadgstreamer-plugins-bad-fb0d8700e71c4a6569ba023d16201087aec119fd.tar.gz
h264parse: Update src pad caps when it was explicitly signaled
Fixes src pad caps aren't updated when converting from AVC to bytestream and new caps had been received in the sink pad. https://bugzilla.gnome.org/show_bug.cgi?id=698679
-rw-r--r--gst/videoparsers/gsth264parse.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gst/videoparsers/gsth264parse.c b/gst/videoparsers/gsth264parse.c
index 2dcf2cfd7..d398dbb9a 100644
--- a/gst/videoparsers/gsth264parse.c
+++ b/gst/videoparsers/gsth264parse.c
@@ -180,7 +180,8 @@ gst_h264_parse_reset_frame (GstH264Parse * h264parse)
h264parse->current_off = -1;
h264parse->picture_start = FALSE;
- h264parse->update_caps = FALSE;
+ if (!h264parse->push_codec)
+ h264parse->update_caps = FALSE;
h264parse->idr_pos = -1;
h264parse->sei_pos = -1;
h264parse->keyframe = FALSE;
@@ -1105,7 +1106,7 @@ gst_h264_parse_update_src_caps (GstH264Parse * h264parse, GstCaps * caps)
}
}
- if (G_UNLIKELY (modified)) {
+ if (G_UNLIKELY (modified || h264parse->update_caps)) {
gint fps_num = h264parse->fps_num;
gint fps_den = h264parse->fps_den;
gint width, height;