From 967aca777eb145764e4c309901f88efdf20283e1 Mon Sep 17 00:00:00 2001 From: "Ronald S. Bultje" Date: Sun, 21 Dec 2003 18:44:34 +0000 Subject: configure.ac: Improve mpeg2enc detection. This is for distributions that do ship mjpegtools, but without mpeg2enc. Al... Original commit message from CVS: 2003-12-21 Ronald Bultje * configure.ac: Improve mpeg2enc detection. This is for distributions that do ship mjpegtools, but without mpeg2enc. Also does object check for might there ever be ABI incompatibility. * ext/mpeg2enc/gstmpeg2enc.cc: Add Andrew as second maintainer (he's helping me), and also add an error if no caps was set. This happens if I pull before capsnego and that's something I should solve sometime else. * gst/matroska/matroska-demux.c: (gst_matroska_demux_parse_blockgroup): Fix time parsing. * gst/matroska/matroska-mux.c: (gst_matroska_mux_audio_pad_link), (gst_matroska_mux_track_header): Add caps to templates. * gst/mpegaudioparse/gstmpegaudioparse.c: (mp3_sink_factory): Add mpegversion=1 to prevent confusion with MPEG/AAC. * gst/mpegstream/gstmpegdemux.c: Remove layer since it causes warnings about unfixed caps. * gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_get): Fix obvious typo (we error out if caps were set, we should of course error out if *no* caps were set). * sys/oss/gstosselement.c: (gst_osselement_convert): Fix format conversion, we confused bits/bytes. * sys/oss/gstosselement.h: Improve documentation for 'bps'. * sys/v4l/TODO: Remove stuff about plugins that need removing - this was done ages ago. * sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_init), (gst_v4lmjpegsrc_src_convert), (gst_v4lmjpegsrc_src_query): * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_init), (gst_v4lsrc_src_convert), (gst_v4lsrc_src_query): * sys/v4l2/gstv4l2src.c: (gst_v4l2src_init), (gst_v4l2src_src_convert), (gst_v4l2src_src_query): Add get_query_types(), get_formats() and query() functions. --- ext/mpeg2enc/gstmpeg2enc.cc | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'ext/mpeg2enc') diff --git a/ext/mpeg2enc/gstmpeg2enc.cc b/ext/mpeg2enc/gstmpeg2enc.cc index 5e5e028d..ecf101a3 100644 --- a/ext/mpeg2enc/gstmpeg2enc.cc +++ b/ext/mpeg2enc/gstmpeg2enc.cc @@ -135,7 +135,8 @@ gst_mpeg2enc_base_init (GstMpeg2encClass *klass) "mpeg2enc video encoder", "Codec/Video/Encoder", "High-quality MPEG-1/2 video encoder", - "Ronald Bultje ", + "Andrew Stevens \n" + "Ronald Bultje " }; GstElementClass *element_class = GST_ELEMENT_CLASS (klass); @@ -209,11 +210,15 @@ gst_mpeg2enc_loop (GstElement *element) if (!enc->encoder) { GstCaps *caps; + if (!(caps = GST_PAD_CAPS (enc->sinkpad))) { + gst_element_error (element, + "No format given by previous element"); + return; + } + /* create new encoder with these settings */ - enc->encoder = new GstMpeg2Encoder (enc->options, - enc->sinkpad, - GST_PAD_CAPS (enc->sinkpad), - enc->srcpad); + enc->encoder = new GstMpeg2Encoder (enc->options, enc->sinkpad, + caps, enc->srcpad); /* and set caps on other side */ caps = enc->encoder->getFormat (); -- cgit v1.2.1