summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: d7410ca)
raw | patch | inline | side by side (parent: d7410ca)
author | Alessandro Decina <alessandro.decina@collabora.co.uk> | |
Thu, 22 Mar 2012 14:42:34 +0000 (15:42 +0100) | ||
committer | Alessandro Decina <alessandro.decina@collabora.co.uk> | |
Thu, 22 Mar 2012 15:19:22 +0000 (16:19 +0100) |
src/gstducatih264enc.c | patch | blob | history |
diff --git a/src/gstducatih264enc.c b/src/gstducatih264enc.c
index 1b2e32efdb19b5b52ddc85e8928230f7553a07c6..4d905feefb0cb001b6640144b216c80576206f2c 100644 (file)
--- a/src/gstducatih264enc.c
+++ b/src/gstducatih264enc.c
{
GstDucatiH264Enc *self = GST_DUCATIH264ENC (videnc);
IH264ENC_Params *params;
+ gboolean ret;
videnc->params->profile = self->profile;
videnc->params->level = self->level;
/* this is the only non-base field strictly required */
params->maxIntraFrameInterval = 0x7fffffff;
- return GST_DUCATIVIDENC_CLASS (parent_class)->configure (videnc);
+ ret = GST_DUCATIVIDENC_CLASS (parent_class)->configure (videnc);
+ if (ret) {
+ const GstVideoState *state = \
+ gst_base_video_encoder_get_state (GST_BASE_VIDEO_ENCODER (videnc));
+ GstCaps *caps = gst_caps_new_simple ("video/x-h264",
+ "width", G_TYPE_INT, state->width,
+ "height", G_TYPE_INT, state->height,
+ "framerate", GST_TYPE_FRACTION, state->fps_n, state->fps_d,
+ "pixel-aspect-ratio", GST_TYPE_FRACTION, state->par_n, state->par_d,
+ "stream-format", G_TYPE_STRING, "byte-stream",
+ "align", G_TYPE_STRING, "au",
+ NULL);
+ ret = gst_pad_set_caps (GST_BASE_VIDEO_CODEC_SRC_PAD (self), caps);
+ }
+
+ return ret;
}
static gboolean