diff options
author | Robert Swain <robert.swain@collabora.co.uk> | 2012-02-09 11:55:07 +0100 |
---|---|---|
committer | Robert Swain <robert.swain@collabora.co.uk> | 2012-02-09 11:55:07 +0100 |
commit | ed561dcdb1b67212c748f2cd47f271639fd57bb3 (patch) | |
tree | c67ff722bc182d56dd16b26c7f1f5a0c10454eba /ext | |
parent | 73330c2ab86f1c8406464ff13db6f61a4bebe2cd (diff) |
x264enc: Add baseline profile to caps
libx264 does not yet support the features that create the difference
between baseline and constrained baseline profile. Hence it currently
supports both though it can only technically encode constrained
baseline.
Diffstat (limited to 'ext')
-rw-r--r-- | ext/x264/gstx264enc.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/ext/x264/gstx264enc.c b/ext/x264/gstx264enc.c index 4865bcd8..e81630d5 100644 --- a/ext/x264/gstx264enc.c +++ b/ext/x264/gstx264enc.c @@ -478,8 +478,8 @@ static GstStaticPadTemplate src_factory = GST_STATIC_PAD_TEMPLATE ("src", "width = (int) [ 1, MAX ], " "height = (int) [ 1, MAX ], " "stream-format = (string) { byte-stream, avc }, " "alignment = (string) { au }, " - "profile = (string) { high-10, high, main, constrained-baseline, " - "high-10-intra }") + "profile = (string) { high-10, high, main, baseline, " + "constrained-baseline, high-10-intra }") ); static void gst_x264_enc_finalize (GObject * object); @@ -1601,7 +1601,11 @@ gst_x264_enc_sink_set_caps (GstPad * pad, GstCaps * caps) profile = gst_structure_get_string (s, "profile"); if (profile) { - if (!strcmp (profile, "constrained-baseline")) { + /* FIXME - if libx264 ever adds support for FMO, ASO or redundant slices + * make sure constrained profile has a separate case which disables + * those */ + if (!strcmp (profile, "constrained-baseline") || + !strcmp (profile, "baseline")) { encoder->peer_profile = "baseline"; } else if (!strcmp (profile, "high-10-intra")) { encoder->peer_intra_profile = TRUE; |