summaryrefslogtreecommitdiffstats
path: root/ext
diff options
context:
space:
mode:
authorThomas Vander Stichele <thomas@apestaart.org>2004-03-14 23:20:41 +0000
committerThomas Vander Stichele <thomas@apestaart.org>2004-03-14 23:20:41 +0000
commit87960e43ea268d999cbc3ed5a589f660fb3e3192 (patch)
tree48a676a58e4355eee64d3f14ea205d793809a323 /ext
parent7a778ee4b7ec09a1f5b2185c9cceee3910dfbdf2 (diff)
downloadgst-plugins-bad-87960e43ea268d999cbc3ed5a589f660fb3e3192.tar.gz
gst-plugins-bad-87960e43ea268d999cbc3ed5a589f660fb3e3192.tar.bz2
gst-plugins-bad-87960e43ea268d999cbc3ed5a589f660fb3e3192.zip
gst-indent c++ files
Original commit message from CVS: gst-indent c++ files
Diffstat (limited to 'ext')
-rw-r--r--ext/arts/gst_artsio_impl.cc249
-rw-r--r--ext/mpeg2enc/gstmpeg2enc.cc140
-rw-r--r--ext/mpeg2enc/gstmpeg2encoder.cc21
-rw-r--r--ext/mpeg2enc/gstmpeg2encoptions.cc407
-rw-r--r--ext/mpeg2enc/gstmpeg2encpicturereader.cc51
-rw-r--r--ext/mpeg2enc/gstmpeg2encstreamwriter.cc10
-rw-r--r--ext/mplex/gstmplex.cc232
-rw-r--r--ext/mplex/gstmplexibitstream.cc37
-rw-r--r--ext/mplex/gstmplexjob.cc101
-rw-r--r--ext/mplex/gstmplexoutputstream.cc11
10 files changed, 601 insertions, 658 deletions
diff --git a/ext/arts/gst_artsio_impl.cc b/ext/arts/gst_artsio_impl.cc
index dff27eb1..b08aa93a 100644
--- a/ext/arts/gst_artsio_impl.cc
+++ b/ext/arts/gst_artsio_impl.cc
@@ -14,166 +14,173 @@
using namespace Arts;
-namespace Gst {
-
-class ArtsStereoSink_impl : virtual public ArtsStereoSink_skel,
- virtual public StdSynthModule
+namespace Gst
{
- GstPad *sinkpad;
- GstPad *srcpad;
- unsigned long remainingsamples;
- GstData *inbuf;
- unsigned char *dataptr;
+ class ArtsStereoSink_impl:virtual public ArtsStereoSink_skel,
+ virtual public StdSynthModule
+ {
-public:
+ GstPad *sinkpad;
+ GstPad *srcpad;
+ unsigned long remainingsamples;
+ GstData *inbuf;
+ unsigned char *dataptr;
- ArtsStereoSink_impl()
- {
- remainingsamples = 0;
- inbuf = NULL;
- dataptr = NULL;
- }
+ public:
- void calculateBlock (unsigned long samples)
- {
- unsigned long fulfilled = 0;
+ ArtsStereoSink_impl ()
+ {
+ remainingsamples = 0;
+ inbuf = NULL;
+ dataptr = NULL;
+ }
+
+ void calculateBlock (unsigned long samples)
+ {
+ unsigned long fulfilled = 0;
//gint16 *s;
//fprintf(stderr,"StereoSink: getting %d samples\n",samples);
- while (fulfilled < samples) {
- if (remainingsamples == 0) {
+ while (fulfilled < samples)
+ {
+ if (remainingsamples == 0) {
//fprintf(stderr,"need to get a buffer\n");
- if (inbuf) {
- gst_data_unref(inbuf);
- inbuf = NULL;
+ if (inbuf) {
+ gst_data_unref (inbuf);
+ inbuf = NULL;
+ }
+ // start by pulling a buffer from GStreamer
+ inbuf = gst_pad_pull (sinkpad);
+
+ while (GST_IS_EVENT (inbuf)) {
+ switch (GST_EVENT_TYPE (inbuf)) {
+ case GST_EVENT_EOS:
+ gst_element_set_eos (GST_PAD_PARENT (sinkpad));
+ default:
+ break;
+ }
+ gst_pad_event_default (srcpad, GST_EVENT (inbuf));
+ inbuf = gst_pad_pull (sinkpad);
+ }
+
+ dataptr = GST_BUFFER_DATA (GST_BUFFER (inbuf));
+ remainingsamples = GST_BUFFER_SIZE (GST_BUFFER (inbuf)) / 4;
+//fprintf(stderr,"got a buffer with %d samples\n",remainingsamples);
}
- // start by pulling a buffer from GStreamer
- inbuf = gst_pad_pull (sinkpad);
- while (GST_IS_EVENT (inbuf)) {
- switch (GST_EVENT_TYPE (inbuf)) {
- case GST_EVENT_EOS:
- gst_element_set_eos (GST_PAD_PARENT (sinkpad));
- default:
- break;
- }
- gst_pad_event_default (srcpad, GST_EVENT(inbuf));
- inbuf = gst_pad_pull (sinkpad);
- }
-
- dataptr = GST_BUFFER_DATA(GST_BUFFER(inbuf));
- remainingsamples = GST_BUFFER_SIZE(GST_BUFFER(inbuf)) / 4;
-//fprintf(stderr,"got a buffer with %d samples\n",remainingsamples);
- }
+ unsigned long count = MIN (remainingsamples, samples - fulfilled);
- unsigned long count = MIN(remainingsamples,samples-fulfilled);
//fprintf(stderr,"have %d samples left, can fill %d\n",remainingsamples,count);
- convert_stereo_i16le_2float(count,dataptr,outleft,outright);
+ convert_stereo_i16le_2float (count, dataptr, outleft, outright);
//s = (gint16 *)dataptr;
//fprintf(stderr,"samples in are %d and %d, out are %f and %f\n",s[0],s[1],outleft[0],outright[0]);
- remainingsamples -= count;
- dataptr += 4 * count;
- fulfilled += count;
+ remainingsamples -= count;
+ dataptr += 4 * count;
+ fulfilled += count;
+ }
}
- }
- void setPad(GstPad *pad)
- {
- sinkpad = pad;
- }
- void setSrcPad(GstPad *pad)
- {
- srcpad = pad;
- }
-};
+ void setPad (GstPad * pad)
+ {
+ sinkpad = pad;
+ }
+ void setSrcPad (GstPad * pad)
+ {
+ srcpad = pad;
+ }
+ };
-class ArtsStereoSrc_impl : virtual public ArtsStereoSrc_skel,
- virtual public StdSynthModule
-{
+ class ArtsStereoSrc_impl:virtual public ArtsStereoSrc_skel,
+ virtual public StdSynthModule
+ {
- GstPad *srcpad;
- GstBuffer *outbuf;
- unsigned char *dataptr;
+ GstPad *srcpad;
+ GstBuffer *outbuf;
+ unsigned char *dataptr;
-public:
+ public:
- void calculateBlock (unsigned long samples)
- {
+ void calculateBlock (unsigned long samples)
+ {
//gint16 *s;
//fprintf(stderr,"StereoSrc: handed %d samples\n",samples);
- outbuf = gst_buffer_new();
- GST_BUFFER_DATA(outbuf) = (guchar *)g_malloc(samples*4);
- GST_BUFFER_SIZE(outbuf) = samples*4;
- memset(GST_BUFFER_DATA(outbuf),0,samples*4);
- convert_stereo_2float_i16le(samples,inleft,inright,GST_BUFFER_DATA(outbuf));
+ outbuf = gst_buffer_new ();
+ GST_BUFFER_DATA (outbuf) = (guchar *) g_malloc (samples * 4);
+ GST_BUFFER_SIZE (outbuf) = samples * 4;
+ memset (GST_BUFFER_DATA (outbuf), 0, samples * 4);
+ convert_stereo_2float_i16le (samples, inleft, inright,
+ GST_BUFFER_DATA (outbuf));
//s = (gint16 *)GST_BUFFER_DATA(outbuf);
//fprintf(stderr,"samples in are %f and %f, out are %d and %d\n",inleft[0],inright[0],s[0],s[1]);
- gst_pad_push(srcpad,GST_DATA(outbuf));
- outbuf = NULL;
- }
+ gst_pad_push (srcpad, GST_DATA (outbuf));
+ outbuf = NULL;
+ }
- void setPad(GstPad *pad)
- {
- srcpad = pad;
- }
-};
+ void setPad (GstPad * pad)
+ {
+ srcpad = pad;
+ }
+ };
-class GstArtsWrapper {
- Dispatcher *dispatcher;
- ArtsStereoSink sink;
- ArtsStereoSrc source;
- StereoVolumeControl effect;
-
-public:
- GstArtsWrapper(GstPad *sinkpad, GstPad *sourcepad) {
- dispatcher = new Arts::Dispatcher();
- ArtsStereoSink_impl *sink_impl = new ArtsStereoSink_impl();
- ArtsStereoSrc_impl *source_impl = new ArtsStereoSrc_impl();
- sink_impl->setPad(sinkpad);
- sink_impl->setSrcPad(sourcepad);
- source_impl->setPad(sourcepad);
- sink = ArtsStereoSink::_from_base(sink_impl);
- source = ArtsStereoSrc::_from_base(source_impl);
- sink.start();
- effect.start();
- source.start();
- effect.scaleFactor(0.5);
- connect(sink, effect);
- connect(effect, source);
-// connect(sink,source);
- }
- void iterate()
+ class GstArtsWrapper
{
- source._node()->requireFlow();
- }
-};
+ Dispatcher *dispatcher;
+ ArtsStereoSink sink;
+ ArtsStereoSrc source;
+ StereoVolumeControl effect;
+
+ public:
+ GstArtsWrapper (GstPad * sinkpad, GstPad * sourcepad)
+ {
+ dispatcher = new Arts::Dispatcher ();
+ ArtsStereoSink_impl *sink_impl = new ArtsStereoSink_impl ();
+ ArtsStereoSrc_impl *source_impl = new ArtsStereoSrc_impl ();
+ sink_impl->setPad (sinkpad);
+ sink_impl->setSrcPad (sourcepad);
+ source_impl->setPad (sourcepad);
+ sink = ArtsStereoSink::_from_base (sink_impl);
+ source = ArtsStereoSrc::_from_base (source_impl);
+ sink.start ();
+ effect.start ();
+ source.start ();
+ effect.scaleFactor (0.5);
+ connect (sink, effect);
+ connect (effect, source);
+// connect(sink,source);
+ }
+ void iterate ()
+ {
+ source._node ()->requireFlow ();
+ }
+ };
};
-extern "C" {
-
-void *gst_arts_wrapper_new(GstPad *sinkpad, GstPad *sourcepad)
+extern "C"
{
- return new Gst::GstArtsWrapper(sinkpad, sourcepad);
-}
-void gst_arts_wrapper_free(void *wrapper)
-{
- Gst::GstArtsWrapper *w = (Gst::GstArtsWrapper *)wrapper;
- delete w;
-}
+ void *gst_arts_wrapper_new (GstPad * sinkpad, GstPad * sourcepad)
+ {
+ return new Gst::GstArtsWrapper (sinkpad, sourcepad);
+ }
-void gst_arts_wrapper_do(void *wrapper)
-{
- Gst::GstArtsWrapper *w = (Gst::GstArtsWrapper *)wrapper;
- w->iterate();
-}
+ void gst_arts_wrapper_free (void *wrapper)
+ {
+ Gst::GstArtsWrapper * w = (Gst::GstArtsWrapper *) wrapper;
+ delete w;
+ }
+
+ void gst_arts_wrapper_do (void *wrapper)
+ {
+ Gst::GstArtsWrapper * w = (Gst::GstArtsWrapper *) wrapper;
+ w->iterate ();
+ }
}
diff --git a/ext/mpeg2enc/gstmpeg2enc.cc b/ext/mpeg2enc/gstmpeg2enc.cc
index 7ee28bd9..1f6e582a 100644
--- a/ext/mpeg2enc/gstmpeg2enc.cc
+++ b/ext/mpeg2enc/gstmpeg2enc.cc
@@ -30,13 +30,15 @@
* we do something manual...
*/
static void
-add_fps (GstCaps *caps)
+add_fps (GstCaps * caps)
{
GstStructure *structure = gst_caps_get_structure (caps, 0);
- GValue list = { 0 }, fps = { 0 };
- gdouble fpss[] = { 24.0/1.001, 24.0, 25.0,
- 30.0/1.001, 30.0, 50.0,
- 60.0/1.001, 60.0, 0 };
+ GValue list = { 0 }, fps = {
+ 0};
+ gdouble fpss[] = { 24.0 / 1.001, 24.0, 25.0,
+ 30.0 / 1.001, 30.0, 50.0,
+ 60.0 / 1.001, 60.0, 0
+ };
guint n;
g_value_init (&list, GST_TYPE_LIST);
@@ -59,15 +61,13 @@ sink_templ (void)
GstCaps *caps;
caps = gst_caps_new_simple ("video/x-raw-yuv",
- "format", GST_TYPE_FOURCC,
- GST_MAKE_FOURCC ('I','4','2','0'),
- "width", GST_TYPE_INT_RANGE, 16, 4096,
- "height", GST_TYPE_INT_RANGE, 16, 4096,
- NULL);
+ "format", GST_TYPE_FOURCC,
+ GST_MAKE_FOURCC ('I', '4', '2', '0'),
+ "width", GST_TYPE_INT_RANGE, 16, 4096,
+ "height", GST_TYPE_INT_RANGE, 16, 4096, NULL);
add_fps (caps);
- templ = gst_pad_template_new ("sink", GST_PAD_SINK,
- GST_PAD_ALWAYS, caps);
+ templ = gst_pad_template_new ("sink", GST_PAD_SINK, GST_PAD_ALWAYS, caps);
}
return templ;
@@ -82,42 +82,34 @@ src_templ (void)
GstCaps *caps;
caps = gst_caps_new_simple ("video/mpeg",
- "systemstream", G_TYPE_BOOLEAN, FALSE,
- "mpegversion", GST_TYPE_INT_RANGE, 1, 2,
- "width", GST_TYPE_INT_RANGE, 16, 4096,
- "height", GST_TYPE_INT_RANGE, 16, 4096,
- NULL);
+ "systemstream", G_TYPE_BOOLEAN, FALSE,
+ "mpegversion", GST_TYPE_INT_RANGE, 1, 2,
+ "width", GST_TYPE_INT_RANGE, 16, 4096,
+ "height", GST_TYPE_INT_RANGE, 16, 4096, NULL);
add_fps (caps);
- templ = gst_pad_template_new ("src", GST_PAD_SRC,
- GST_PAD_ALWAYS, caps);
+ templ = gst_pad_template_new ("src", GST_PAD_SRC, GST_PAD_ALWAYS, caps);
}
return templ;
}
-static void gst_mpeg2enc_base_init (GstMpeg2encClass *klass);
-static void gst_mpeg2enc_class_init (GstMpeg2encClass *klass);
-static void gst_mpeg2enc_init (GstMpeg2enc *enc);
-static void gst_mpeg2enc_dispose (GObject *object);
+static void gst_mpeg2enc_base_init (GstMpeg2encClass * klass);
+static void gst_mpeg2enc_class_init (GstMpeg2encClass * klass);
+static void gst_mpeg2enc_init (GstMpeg2enc * enc);
+static void gst_mpeg2enc_dispose (GObject * object);
-static void gst_mpeg2enc_loop (GstElement *element);
+static void gst_mpeg2enc_loop (GstElement * element);
static GstPadLinkReturn
- gst_mpeg2enc_sink_link (GstPad *pad,
- const GstCaps *caps);
+gst_mpeg2enc_sink_link (GstPad * pad, const GstCaps * caps);
-static GstElementStateReturn
- gst_mpeg2enc_change_state (GstElement *element);
+static GstElementStateReturn gst_mpeg2enc_change_state (GstElement * element);
-static void gst_mpeg2enc_get_property (GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec);
-static void gst_mpeg2enc_set_property (GObject *object,
- guint prop_id,
- const GValue *value,
- GParamSpec *pspec);
+static void gst_mpeg2enc_get_property (GObject * object,
+ guint prop_id, GValue * value, GParamSpec * pspec);
+static void gst_mpeg2enc_set_property (GObject * object,
+ guint prop_id, const GValue * value, GParamSpec * pspec);
static GstElementClass *parent_class = NULL;
@@ -128,7 +120,7 @@ gst_mpeg2enc_get_type (void)
if (!gst_mpeg2enc_type) {
static const GTypeInfo gst_mpeg2enc_info = {
- sizeof (GstMpeg2encClass),
+ sizeof (GstMpeg2encClass),
(GBaseInitFunc) gst_mpeg2enc_base_init,
NULL,
(GClassInitFunc) gst_mpeg2enc_class_init,
@@ -141,34 +133,31 @@ gst_mpeg2enc_get_type (void)
gst_mpeg2enc_type =
g_type_register_static (GST_TYPE_ELEMENT,
- "GstMpeg2enc",
- &gst_mpeg2enc_info,
- (GTypeFlags) 0);
+ "GstMpeg2enc", &gst_mpeg2enc_info, (GTypeFlags) 0);
}
return gst_mpeg2enc_type;
}
static void
-gst_mpeg2enc_base_init (GstMpeg2encClass *klass)
+gst_mpeg2enc_base_init (GstMpeg2encClass * klass)
{
static GstElementDetails gst_mpeg2enc_details = {
"mpeg2enc video encoder",
"Codec/Video/Encoder",
"High-quality MPEG-1/2 video encoder",
"Andrew Stevens <andrew.stevens@nexgo.de>\n"
- "Ronald Bultje <rbultje@ronald.bitfreak.net>"
+ "Ronald Bultje <rbultje@ronald.bitfreak.net>"
};
GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
gst_element_class_add_pad_template (element_class, src_templ ());
gst_element_class_add_pad_template (element_class, sink_templ ());
- gst_element_class_set_details (element_class,
- &gst_mpeg2enc_details);
+ gst_element_class_set_details (element_class, &gst_mpeg2enc_details);
}
static void
-gst_mpeg2enc_class_init (GstMpeg2encClass *klass)
+gst_mpeg2enc_class_init (GstMpeg2encClass * klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
@@ -188,32 +177,35 @@ gst_mpeg2enc_class_init (GstMpeg2encClass *klass)
}
static void
-gst_mpeg2enc_dispose (GObject *object)
+gst_mpeg2enc_dispose (GObject * object)
{
GstMpeg2enc *enc = GST_MPEG2ENC (object);
if (enc->encoder) {
delete enc->encoder;
+
enc->encoder = NULL;
}
delete enc->options;
}
static void
-gst_mpeg2enc_init (GstMpeg2enc *enc)
+gst_mpeg2enc_init (GstMpeg2enc * enc)
{
GstElement *element = GST_ELEMENT (enc);
GstElementClass *klass = GST_ELEMENT_GET_CLASS (element);
GST_FLAG_SET (element, GST_ELEMENT_EVENT_AWARE);
- enc->sinkpad = gst_pad_new_from_template (
- gst_element_class_get_pad_template (klass, "sink"), "sink");
+ enc->sinkpad =
+ gst_pad_new_from_template (gst_element_class_get_pad_template (klass,
+ "sink"), "sink");
gst_pad_set_link_function (enc->sinkpad, gst_mpeg2enc_sink_link);
gst_element_add_pad (element, enc->sinkpad);
- enc->srcpad = gst_pad_new_from_template (
- gst_element_class_get_pad_template (klass, "src"), "src");
+ enc->srcpad =
+ gst_pad_new_from_template (gst_element_class_get_pad_template (klass,
+ "src"), "src");
gst_pad_use_explicit_caps (enc->srcpad);
gst_element_add_pad (element, enc->srcpad);
@@ -225,7 +217,7 @@ gst_mpeg2enc_init (GstMpeg2enc *enc)
}
static void
-gst_mpeg2enc_loop (GstElement *element)
+gst_mpeg2enc_loop (GstElement * element)
{
GstMpeg2enc *enc = GST_MPEG2ENC (element);
@@ -240,19 +232,20 @@ gst_mpeg2enc_loop (GstElement *element)
if (!(caps = GST_PAD_CAPS (enc->sinkpad))) {
GST_ELEMENT_ERROR (element, CORE, NEGOTIATION, (NULL),
- ("format wasn't negotiated before loop function"));
+ ("format wasn't negotiated before loop function"));
return;
}
/* create new encoder with these settings */
enc->encoder = new GstMpeg2Encoder (enc->options, enc->sinkpad,
- caps, enc->srcpad);
+ caps, enc->srcpad);
/* and set caps on other side */
othercaps = enc->encoder->getFormat ();
if (gst_pad_set_explicit_caps (enc->srcpad, othercaps) <= 0) {
GST_ELEMENT_ERROR (element, CORE, NEGOTIATION, (NULL), (NULL));
delete enc->encoder;
+
enc->encoder = NULL;
return;
}
@@ -263,8 +256,7 @@ gst_mpeg2enc_loop (GstElement *element)
}
static GstPadLinkReturn
-gst_mpeg2enc_sink_link (GstPad *pad,
- const GstCaps *caps)
+gst_mpeg2enc_sink_link (GstPad * pad, const GstCaps * caps)
{
GstMpeg2enc *enc = GST_MPEG2ENC (gst_pad_get_parent (pad));
@@ -273,6 +265,7 @@ gst_mpeg2enc_sink_link (GstPad *pad,
if (enc->encoder) {
delete enc->encoder;
+
enc->encoder = NULL;
}
@@ -280,25 +273,21 @@ gst_mpeg2enc_sink_link (GstPad *pad,
}
static void
-gst_mpeg2enc_get_property (GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec)
+gst_mpeg2enc_get_property (GObject * object,
+ guint prop_id, GValue * value, GParamSpec * pspec)
{
GST_MPEG2ENC (object)->options->getProperty (prop_id, value);
}
static void
-gst_mpeg2enc_set_property (GObject *object,
- guint prop_id,
- const GValue *value,
- GParamSpec *pspec)
+gst_mpeg2enc_set_property (GObject * object,
+ guint prop_id, const GValue * value, GParamSpec * pspec)
{
GST_MPEG2ENC (object)->options->setProperty (prop_id, value);
}
static GstElementStateReturn
-gst_mpeg2enc_change_state (GstElement *element)
+gst_mpeg2enc_change_state (GstElement * element)
{
GstMpeg2enc *enc = GST_MPEG2ENC (element);
@@ -318,21 +307,14 @@ gst_mpeg2enc_change_state (GstElement *element)
}
static gboolean
-plugin_init (GstPlugin *plugin)
+plugin_init (GstPlugin * plugin)
{
return gst_element_register (plugin, "mpeg2enc",
- GST_RANK_NONE,
- GST_TYPE_MPEG2ENC);
+ GST_RANK_NONE, GST_TYPE_MPEG2ENC);
}
-GST_PLUGIN_DEFINE (
- GST_VERSION_MAJOR,
- GST_VERSION_MINOR,
- "mpeg2enc",
- "High-quality MPEG-1/2 video encoder",
- plugin_init,
- VERSION,
- "GPL",
- GST_PACKAGE,
- GST_ORIGIN
-)
+GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
+ GST_VERSION_MINOR,
+ "mpeg2enc",
+ "High-quality MPEG-1/2 video encoder",
+ plugin_init, VERSION, "GPL", GST_PACKAGE, GST_ORIGIN)
diff --git a/ext/mpeg2enc/gstmpeg2encoder.cc b/ext/mpeg2enc/gstmpeg2encoder.cc
index f5b2ee4b..5a77b58b 100644
--- a/ext/mpeg2enc/gstmpeg2encoder.cc
+++ b/ext/mpeg2enc/gstmpeg2encoder.cc
@@ -35,11 +35,9 @@
* Class init stuff.
*/
-GstMpeg2Encoder::GstMpeg2Encoder (GstMpeg2EncOptions *options,
- GstPad *sinkpad,
- const GstCaps *caps,
- GstPad *srcpad) :
- MPEG2Encoder (*options)
+GstMpeg2Encoder::GstMpeg2Encoder (GstMpeg2EncOptions * options,
+ GstPad * sinkpad, const GstCaps * caps, GstPad * srcpad):
+MPEG2Encoder (*options)
{
MPEG2EncInVidParams strm;
@@ -58,7 +56,7 @@ GstMpeg2Encoder::GstMpeg2Encoder (GstMpeg2EncOptions *options,
/* sequencer */
seqencoder = new SeqEncoder (parms, *reader, *quantizer,
- *writer, *coder, *bitrate_controller);
+ *writer, *coder, *bitrate_controller);
parms.Init (*options);
reader->Init ();
@@ -86,10 +84,9 @@ GstMpeg2Encoder::getFormat ()
gdouble fps = Y4M_RATIO_DBL (mpeg_framerate (options.frame_rate));
return gst_caps_new_simple ("video/mpeg",
- "systemstream", G_TYPE_BOOLEAN, FALSE,
- "mpegversion", G_TYPE_INT, options.mpeg,
- "width", G_TYPE_INT, options.in_img_width,
- "height", G_TYPE_INT, options.in_img_height,
- "framerate", G_TYPE_DOUBLE, fps,
- NULL);
+ "systemstream", G_TYPE_BOOLEAN, FALSE,
+ "mpegversion", G_TYPE_INT, options.mpeg,
+ "width", G_TYPE_INT, options.in_img_width,
+ "height", G_TYPE_INT, options.in_img_height,
+ "framerate", G_TYPE_DOUBLE, fps, NULL);
}
diff --git a/ext/mpeg2enc/gstmpeg2encoptions.cc b/ext/mpeg2enc/gstmpeg2encoptions.cc
index 5dbf9ac7..8b6e7765 100644
--- a/ext/mpeg2enc/gstmpeg2encoptions.cc
+++ b/ext/mpeg2enc/gstmpeg2encoptions.cc
@@ -29,7 +29,8 @@
* Property enumeration.
*/
-enum {
+enum
+{
ARG_0,
ARG_FORMAT,
ARG_FRAMERATE,
@@ -64,7 +65,7 @@ enum {
ARG_CORRECT_SVCD_HDS,
ARG_ALTSCAN_MPEG2,
ARG_CONSTRAINTS
- /* FILL ME */
+ /* FILL ME */
};
/*
@@ -81,22 +82,21 @@ gst_mpeg2enc_format_get_type (void)
if (!mpeg2enc_format_type) {
static const GEnumValue mpeg2enc_formats[] = {
- { 0, "0", "Generic MPEG-1" },
- { 1, "1", "Standard VCD" },
- { 2, "2", "User VCD" },
- { 3, "3", "Generic MPEG-2" },
- { 4, "4", "Standard SVCD" },
- { 5, "5", "User SVCD" },
- { 6, "6", "VCD Stills sequences" },
- { 7, "7", "SVCD Stills sequences" },
- { 8, "8", "DVD MPEG-2 for dvdauthor" },
- { 9, "9", "DVD MPEG-2" },
- { 0, NULL, NULL },
+ {0, "0", "Generic MPEG-1"},
+ {1, "1", "Standard VCD"},
+ {2, "2", "User VCD"},
+ {3, "3", "Generic MPEG-2"},
+ {4, "4", "Standard SVCD"},
+ {5, "5", "User SVCD"},
+ {6, "6", "VCD Stills sequences"},
+ {7, "7", "SVCD Stills sequences"},
+ {8, "8", "DVD MPEG-2 for dvdauthor"},
+ {9, "9", "DVD MPEG-2"},
+ {0, NULL, NULL},
};
mpeg2enc_format_type =
- g_enum_register_static ("GstMpeg2encFormat",
- mpeg2enc_formats);
+ g_enum_register_static ("GstMpeg2encFormat", mpeg2enc_formats);
}
return mpeg2enc_format_type;
@@ -112,21 +112,20 @@ gst_mpeg2enc_framerate_get_type (void)
if (!mpeg2enc_framerate_type) {
static const GEnumValue mpeg2enc_framerates[] = {
- { 0, "0", "Same as input" },
- { 1, "1", "24/1.001 (NTSC 3:2 pulldown converted film)" },
- { 2, "2", "24 (native film)" },
- { 3, "3", "25 (PAL/SECAM video)" },
- { 4, "4", "30/1.001 (NTSC video)" },
- { 5, "5", "30" },
- { 6, "6", "50 (PAL/SECAM fields)" },
- { 7, "7", "60/1.001 (NTSC fields)" },
- { 8, "8", "60" },
- { 0, NULL, NULL },
+ {0, "0", "Same as input"},
+ {1, "1", "24/1.001 (NTSC 3:2 pulldown converted film)"},
+ {2, "2", "24 (native film)"},
+ {3, "3", "25 (PAL/SECAM video)"},
+ {4, "4", "30/1.001 (NTSC video)"},
+ {5, "5", "30"},
+ {6, "6", "50 (PAL/SECAM fields)"},
+ {7, "7", "60/1.001 (NTSC fields)"},
+ {8, "8", "60"},
+ {0, NULL, NULL},
};
mpeg2enc_framerate_type =
- g_enum_register_static ("GstMpeg2encFramerate",
- mpeg2enc_framerates);
+ g_enum_register_static ("GstMpeg2encFramerate", mpeg2enc_framerates);
}
return mpeg2enc_framerate_type;
@@ -142,17 +141,16 @@ gst_mpeg2enc_aspect_get_type (void)
if (!mpeg2enc_aspect_type) {
static const GEnumValue mpeg2enc_aspects[] = {
- { 0, "0", "Deduce from input" },
- { 1, "1", "1:1" },
- { 2, "2", "4:3" },
- { 3, "3", "16:9" },
- { 4, "4", "2.21:1" },
- { 0, NULL, NULL },
+ {0, "0", "Deduce from input"},
+ {1, "1", "1:1"},
+ {2, "2", "4:3"},
+ {3, "3", "16:9"},
+ {4, "4", "2.21:1"},
+ {0, NULL, NULL},
};
mpeg2enc_aspect_type =
- g_enum_register_static ("GstMpeg2encAspect",
- mpeg2enc_aspects);
+ g_enum_register_static ("GstMpeg2encAspect", mpeg2enc_aspects);
}
return mpeg2enc_aspect_type;
@@ -168,16 +166,16 @@ gst_mpeg2enc_interlace_mode_get_type (void)
if (!mpeg2enc_interlace_mode_type) {
static const GEnumValue mpeg2enc_interlace_modes[] = {
- { -1, "-1", "Format default mode" },
- { 0, "0", "Progressive" },
- { 1, "1", "Interlaced, per-frame encoding" },
- { 2, "2", "Interlaced, per-field-encoding" },
- { 0, NULL, NULL },
+ {-1, "-1", "Format default mode"},
+ {0, "0", "Progressive"},
+ {1, "1", "Interlaced, per-frame encoding"},
+ {2, "2", "Interlaced, per-field-encoding"},
+ {0, NULL, NULL},
};
mpeg2enc_interlace_mode_type =
g_enum_register_static ("GstMpeg2encInterlaceMode",
- mpeg2enc_interlace_modes);
+ mpeg2enc_interlace_modes);
}
return mpeg2enc_interlace_mode_type;
@@ -198,20 +196,20 @@ gst_mpeg2enc_quantisation_matrix_get_type (void)
if (!mpeg2enc_quantisation_matrix_type) {
static const GEnumValue mpeg2enc_quantisation_matrixes[] = {
- { GST_MPEG2ENC_QUANTISATION_MATRIX_DEFAULT,
- "0", "Default" },
- { GST_MPEG2ENC_QUANTISATION_MATRIX_HI_RES,
- "1", "High resolution" },
- { GST_MPEG2ENC_QUANTISATION_MATRIX_KVCD,
- "2", "KVCD" },
- { GST_MPEG2ENC_QUANTISATION_MATRIX_TMPGENC,
- "3", "TMPGEnc" },
- { 0, NULL, NULL },
+ {GST_MPEG2ENC_QUANTISATION_MATRIX_DEFAULT,
+ "0", "Default"},
+ {GST_MPEG2ENC_QUANTISATION_MATRIX_HI_RES,
+ "1", "High resolution"},
+ {GST_MPEG2ENC_QUANTISATION_MATRIX_KVCD,
+ "2", "KVCD"},
+ {GST_MPEG2ENC_QUANTISATION_MATRIX_TMPGENC,
+ "3", "TMPGEnc"},
+ {0, NULL, NULL},
};
mpeg2enc_quantisation_matrix_type =
g_enum_register_static ("GstMpeg2encQuantisationMatrix",
- mpeg2enc_quantisation_matrixes);
+ mpeg2enc_quantisation_matrixes);
}
return mpeg2enc_quantisation_matrix_type;
@@ -227,16 +225,15 @@ gst_mpeg2enc_video_norm_get_type (void)
if (!mpeg2enc_video_norm_type) {
static const GEnumValue mpeg2enc_video_norms[] = {
- { 0, "0", "Unspecified" },
- { 'p', "p", "PAL" },
- { 'n', "n", "NTSC" },
- { 's', "s", "SECAM" },
- { 0, NULL, NULL },
+ {0, "0", "Unspecified"},
+ {'p', "p", "PAL"},
+ {'n', "n", "NTSC"},
+ {'s', "s", "SECAM"},
+ {0, NULL, NULL},
};
mpeg2enc_video_norm_type =
- g_enum_register_static ("GstMpeg2encVideoNorm",
- mpeg2enc_video_norms);
+ g_enum_register_static ("GstMpeg2encVideoNorm", mpeg2enc_video_norms);
}
return mpeg2enc_video_norm_type;
@@ -252,15 +249,15 @@ gst_mpeg2enc_playback_field_order_get_type (void)
if (!mpeg2enc_playback_field_order_type) {
static const GEnumValue mpeg2enc_playback_field_orders[] = {
- { Y4M_UNKNOWN, "0", "Unspecified" },
- { Y4M_ILACE_TOP_FIRST, "1", "Top-field first" },
- { Y4M_ILACE_BOTTOM_FIRST, "2", "Bottom-field first" },
- { 0, NULL, NULL },
+ {Y4M_UNKNOWN, "0", "Unspecified"},
+ {Y4M_ILACE_TOP_FIRST, "1", "Top-field first"},
+ {Y4M_ILACE_BOTTOM_FIRST, "2", "Bottom-field first"},
+ {0, NULL, NULL},
};
mpeg2enc_playback_field_order_type =
g_enum_register_static ("GstMpeg2encPlaybackFieldOrders",
- mpeg2enc_playback_field_orders);
+ mpeg2enc_playback_field_orders);
}
return mpeg2enc_playback_field_order_type;
@@ -270,8 +267,8 @@ gst_mpeg2enc_playback_field_order_get_type (void)
* Class init stuff.
*/
-GstMpeg2EncOptions::GstMpeg2EncOptions () :
- MPEG2EncOptions ()
+GstMpeg2EncOptions::GstMpeg2EncOptions ():
+MPEG2EncOptions ()
{
/* autodetect number of CPUs */
num_cpus = sysconf (_SC_NPROCESSORS_ONLN);
@@ -286,169 +283,165 @@ GstMpeg2EncOptions::GstMpeg2EncOptions () :
*/
void
-GstMpeg2EncOptions::initProperties (GObjectClass *klass)
+GstMpeg2EncOptions::initProperties (GObjectClass * klass)
{
/* encoding profile */
g_object_class_install_property (klass, ARG_FORMAT,
- g_param_spec_enum ("format", "Format", "Encoding profile format",
- GST_TYPE_MPEG2ENC_FORMAT, 0,
- (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_enum ("format", "Format", "Encoding profile format",
+ GST_TYPE_MPEG2ENC_FORMAT, 0, (GParamFlags) G_PARAM_READWRITE));
/* input/output stream overrides */
g_object_class_install_property (klass, ARG_FRAMERATE,
- g_param_spec_enum ("framerate", "Framerate", "Output framerate",
- GST_TYPE_MPEG2ENC_FRAMERATE, 0,
- (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_enum ("framerate", "Framerate", "Output framerate",
+ GST_TYPE_MPEG2ENC_FRAMERATE, 0, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_ASPECT,
- g_param_spec_enum ("aspect", "Aspect", "Display aspect ratio",
- GST_TYPE_MPEG2ENC_ASPECT, 0,
- (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_enum ("aspect", "Aspect", "Display aspect ratio",
+ GST_TYPE_MPEG2ENC_ASPECT, 0, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_INTERLACE_MODE,
- g_param_spec_enum ("interlace-mode", "Interlace mode",
- "MPEG-2 motion estimation and encoding modes",
- GST_TYPE_MPEG2ENC_INTERLACE_MODE, 0,
- (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_enum ("interlace-mode", "Interlace mode",
+ "MPEG-2 motion estimation and encoding modes",
+ GST_TYPE_MPEG2ENC_INTERLACE_MODE, 0,
+ (GParamFlags) G_PARAM_READWRITE));
/* general encoding stream options */
g_object_class_install_property (klass, ARG_BITRATE,
- g_param_spec_int ("bitrate", "Bitrate", "Compressed video bitrate (kbps)",
- 0, 10*1024, 1125, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("bitrate", "Bitrate", "Compressed video bitrate (kbps)",
+ 0, 10 * 1024, 1125, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_NONVIDEO_BITRATE,
- g_param_spec_int ("non-video-bitrate", "Non-video bitrate",
- "Assumed bitrate of non-video for sequence splitting (kbps)",
- 0, 10*1024, 0, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("non-video-bitrate", "Non-video bitrate",
+ "Assumed bitrate of non-video for sequence splitting (kbps)",
+ 0, 10 * 1024, 0, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_QUANTISATION,
- g_param_spec_int ("quantisation", "Quantisation",
- "Quantisation factor (0=default, 1=best, 31=worst)",
- 0, 31, 0, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("quantisation", "Quantisation",
+ "Quantisation factor (0=default, 1=best, 31=worst)",
+ 0, 31, 0, (GParamFlags) G_PARAM_READWRITE));
/* stills options */
g_object_class_install_property (klass, ARG_VCD_STILL_SIZE,
- g_param_spec_int ("vcd-still-size", "VCD stills size",
- "Size of VCD stills (in kB)",
- 0, 512, 0, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("vcd-still-size", "VCD stills size",
+ "Size of VCD stills (in kB)",
+ 0, 512, 0, (GParamFlags) G_PARAM_READWRITE));
/* motion estimation options */
g_object_class_install_property (klass, ARG_MOTION_SEARCH_RADIUS,
- g_param_spec_int ("motion-search-radius", "Motion search radius",
- "Motion compensation search radius",
- 0, 32, 16, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("motion-search-radius", "Motion search radius",
+ "Motion compensation search radius",
+ 0, 32, 16, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_REDUCTION_4_4,
- g_param_spec_int ("reduction-4x4", "4x4 reduction",
- "Reduction factor for 4x4 subsampled candidate motion estimates"
- " (1=max. quality, 4=max. speed)",
- 1, 4, 2, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("reduction-4x4", "4x4 reduction",
+ "Reduction factor for 4x4 subsampled candidate motion estimates"
+ " (1=max. quality, 4=max. speed)",
+ 1, 4, 2, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_REDUCTION_2_2,
- g_param_spec_int ("reduction-2x2", "2x2 reduction",
- "Reduction factor for 2x2 subsampled candidate motion estimates"
- " (1=max. quality, 4=max. speed)",
- 1, 4, 3, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("reduction-2x2", "2x2 reduction",
+ "Reduction factor for 2x2 subsampled candidate motion estimates"
+ " (1=max. quality, 4=max. speed)",
+ 1, 4, 3, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_UNIT_COEFF_ELIM,
- g_param_spec_int ("unit-coeff-elim", "Unit coefficience elimination",
- "How agressively small-unit picture blocks should be skipped",
- -40, 40, 0, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("unit-coeff-elim", "Unit coefficience elimination",
+ "How agressively small-unit picture blocks should be skipped",
+ -40, 40, 0, (GParamFlags) G_PARAM_READWRITE));
/* GOP options */
g_object_class_install_property (klass, ARG_MIN_GOP_SIZE,
- g_param_spec_int ("min-gop-size", "Min. GOP size",
- "Minimal size per Group-of-Pictures (-1=default)",
- -1, 250, 0, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("min-gop-size", "Min. GOP size",
+ "Minimal size per Group-of-Pictures (-1=default)",
+ -1, 250, 0, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_MAX_GOP_SIZE,
- g_param_spec_int ("max-gop-size", "Max. GOP size",
- "Maximal size per Group-of-Pictures (-1=default)",
- -1, 250, 0, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("max-gop-size", "Max. GOP size",
+ "Maximal size per Group-of-Pictures (-1=default)",
+ -1, 250, 0, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_CLOSED_GOP,
- g_param_spec_boolean ("closed-gop", "Closed GOP",
- "All Group-of-Pictures are closed (for multi-angle DVDs)",
- FALSE, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_boolean ("closed-gop", "Closed GOP",
+ "All Group-of-Pictures are closed (for multi-angle DVDs)",
+ FALSE, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_FORCE_B_B_P,
- g_param_spec_boolean ("force-b-b-p", "Force B-B-P",
- "Force two B frames between I/P frames when closing GOP boundaries",
- FALSE, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_boolean ("force-b-b-p", "Force B-B-P",
+ "Force two B frames between I/P frames when closing GOP boundaries",
+ FALSE, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_B_PER_REFFRAME,
- g_param_spec_int ("b-per-refframe", "B per ref. frame",
- "Number of B frames between each I/P frame",
- 0, 2, 2, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("b-per-refframe", "B per ref. frame",
+ "Number of B frames between each I/P frame",
+ 0, 2, 2, (GParamFlags) G_PARAM_READWRITE));
/* quantisation options */
g_object_class_install_property (klass, ARG_QUANTISATION_REDUCTION,
- g_param_spec_float ("quantisation-reduction", "Quantisation reduction",
- "Max. quantisation reduction for highly active blocks",
- -4., 10., 0., (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_float ("quantisation-reduction", "Quantisation reduction",
+ "Max. quantisation reduction for highly active blocks",
+ -4., 10., 0., (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_QUANT_REDUCTION_MAX_VAR,
- g_param_spec_float ("quant-reduction-max-var", "Max. quant. reduction variance",
- "Maximal luma variance below which quantisation boost is used",
- 0., 2500., 0., (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_float ("quant-reduction-max-var",
+ "Max. quant. reduction variance",
+ "Maximal luma variance below which quantisation boost is used", 0.,
+ 2500., 0., (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_INTRA_DC_PRECISION,
- g_param_spec_int ("intra-dc-prec", "Intra. DC precision",
- "Number of bits precision for DC (base colour) in MPEG-2 blocks",
- 8, 11, 9, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("intra-dc-prec", "Intra. DC precision",
+ "Number of bits precision for DC (base colour) in MPEG-2 blocks", 8,
+ 11, 9, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_REDUCE_HF,
- g_param_spec_float ("reduce-hf", "Reduce HF",
- "How much to reduce high-frequency resolution (by increasing quantisation)",
- 0., 2., 0., (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_float ("reduce-hf", "Reduce HF",
+ "How much to reduce high-frequency resolution (by increasing quantisation)",
+ 0., 2., 0., (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_KEEP_HF,
- g_param_spec_boolean ("keep-hf", "Keep HF",
- "Maximize high-frequency resolution (for high-quality sources)",
- FALSE, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_boolean ("keep-hf", "Keep HF",
+ "Maximize high-frequency resolution (for high-quality sources)",
+ FALSE, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_QUANTISATION_MATRIX,
- g_param_spec_enum ("quant-matrix", "Quant. matrix",
- "Quantisation matrix to use for encoding",
- GST_TYPE_MPEG2ENC_QUANTISATION_MATRIX, 0,
- (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_enum ("quant-matrix", "Quant. matrix",
+ "Quantisation matrix to use for encoding",
+ GST_TYPE_MPEG2ENC_QUANTISATION_MATRIX, 0,
+ (GParamFlags) G_PARAM_READWRITE));
/* general options */
g_object_class_install_property (klass, ARG_BUFSIZE,
- g_param_spec_int ("bufsize", "Decoder buf. size",
- "Target decoders video buffer size (kB)",
- 20, 4000, 46, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("bufsize", "Decoder buf. size",
+ "Target decoders video buffer size (kB)",
+ 20, 4000, 46, (GParamFlags) G_PARAM_READWRITE));
/* header flag settings */
g_object_class_install_property (klass, ARG_VIDEO_NORM,
- g_param_spec_enum ("norm", "Norm",
- "Tag output for specific video norm",
- GST_TYPE_MPEG2ENC_VIDEO_NORM, 0,
- (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_enum ("norm", "Norm",
+ "Tag output for specific video norm",
+ GST_TYPE_MPEG2ENC_VIDEO_NORM, 0, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_SEQUENCE_LENGTH,
- g_param_spec_int ("sequence-length", "Sequence length",
- "Place a sequence boundary after each <num> MB (0=disable)",
- 0, 10*1024, 0, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("sequence-length", "Sequence length",
+ "Place a sequence boundary after each <num> MB (0=disable)",
+ 0, 10 * 1024, 0, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_3_2_PULLDOWN,
- g_param_spec_boolean ("pulldown-3-2", "3-2 pull down",
- "Generate header flags for 3-2 pull down 24fps movies",
- FALSE, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_boolean ("pulldown-3-2", "3-2 pull down",
+ "Generate header flags for 3-2 pull down 24fps movies",
+ FALSE, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_SEQUENCE_HEADER_EVERY_GOP,
- g_param_spec_boolean ("sequence-header-every-gop",
- "Sequence hdr. every GOP",
- "Include a sequence header in every GOP",
- FALSE, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_boolean ("sequence-header-every-gop",
+ "Sequence hdr. every GOP",
+ "Include a sequence header in every GOP",
+ FALSE, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_DUMMY_SVCD_SOF,
- g_param_spec_boolean ("dummy-svcd-sof", "Dummy SVCD SOF",
- "Generate dummy SVCD scan-data (for vcdimager)",
- TRUE, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_boolean ("dummy-svcd-sof", "Dummy SVCD SOF",
+ "Generate dummy SVCD scan-data (for vcdimager)",
+ TRUE, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_PLAYBACK_FIELD_ORDER,
- g_param_spec_enum ("playback-field-order", "Playback field order",
- "Force specific playback field order",
- GST_TYPE_MPEG2ENC_PLAYBACK_FIELD_ORDER, Y4M_UNKNOWN,
- (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_enum ("playback-field-order", "Playback field order",
+ "Force specific playback field order",
+ GST_TYPE_MPEG2ENC_PLAYBACK_FIELD_ORDER, Y4M_UNKNOWN,
+ (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_CORRECT_SVCD_HDS,
- g_param_spec_boolean ("correct-svcd-hds", "Correct SVCD hor. size",
- "Force SVCD width to 480 instead of 540/720",
- FALSE, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_boolean ("correct-svcd-hds", "Correct SVCD hor. size",
+ "Force SVCD width to 480 instead of 540/720",
+ FALSE, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_ALTSCAN_MPEG2,
- g_param_spec_boolean ("altscan-mpeg2", "Alt. MPEG-2 scan",
- "Alternate MPEG-2 block scanning. Disabling this might "
- "make buggy players play SVCD streams",
- TRUE, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_boolean ("altscan-mpeg2", "Alt. MPEG-2 scan",
+ "Alternate MPEG-2 block scanning. Disabling this might "
+ "make buggy players play SVCD streams",
+ TRUE, (GParamFlags) G_PARAM_READWRITE));
#if 0
-"--dxr2-hack"
+ "--dxr2-hack"
#endif
-
- /* dangerous/experimental stuff */
- g_object_class_install_property (klass, ARG_CONSTRAINTS,
- g_param_spec_boolean ("constraints", "Constraints",
- "Use strict video resolution and bitrate checks",
- TRUE, (GParamFlags) G_PARAM_READWRITE));
+ /* dangerous/experimental stuff */
+ g_object_class_install_property (klass, ARG_CONSTRAINTS,
+ g_param_spec_boolean ("constraints", "Constraints",
+ "Use strict video resolution and bitrate checks",
+ TRUE, (GParamFlags) G_PARAM_READWRITE));
}
/*
@@ -456,8 +449,7 @@ GstMpeg2EncOptions::initProperties (GObjectClass *klass)
*/
void
-GstMpeg2EncOptions::getProperty (guint prop_id,
- GValue *value)
+GstMpeg2EncOptions::getProperty (guint prop_id, GValue * value)
{
switch (prop_id) {
case ARG_FORMAT:
@@ -473,10 +465,10 @@ GstMpeg2EncOptions::getProperty (guint prop_id,
g_value_set_enum (value, fieldenc);
break;
case ARG_BITRATE:
- g_value_set_int (value, bitrate/1024);
+ g_value_set_int (value, bitrate / 1024);
break;
case ARG_NONVIDEO_BITRATE:
- g_value_set_int (value, nonvid_bitrate/1024);
+ g_value_set_int (value, nonvid_bitrate / 1024);
break;
case ARG_QUANTISATION:
g_value_set_int (value, quant);
@@ -528,18 +520,18 @@ GstMpeg2EncOptions::getProperty (guint prop_id,
break;
case ARG_QUANTISATION_MATRIX:
switch (hf_quant) {
- case 0:
- g_value_set_enum (value, GST_MPEG2ENC_QUANTISATION_MATRIX_DEFAULT);
- break;
- case 2:
- g_value_set_enum (value, GST_MPEG2ENC_QUANTISATION_MATRIX_HI_RES);
- break;
- case 3:
- g_value_set_enum (value, GST_MPEG2ENC_QUANTISATION_MATRIX_KVCD);
- break;
- case 4:
- g_value_set_enum (value, GST_MPEG2ENC_QUANTISATION_MATRIX_TMPGENC);
- break;
+ case 0:
+ g_value_set_enum (value, GST_MPEG2ENC_QUANTISATION_MATRIX_DEFAULT);
+ break;
+ case 2:
+ g_value_set_enum (value, GST_MPEG2ENC_QUANTISATION_MATRIX_HI_RES);
+ break;
+ case 3:
+ g_value_set_enum (value, GST_MPEG2ENC_QUANTISATION_MATRIX_KVCD);
+ break;
+ case 4:
+ g_value_set_enum (value, GST_MPEG2ENC_QUANTISATION_MATRIX_TMPGENC);
+ break;
}
break;
case ARG_BUFSIZE:
@@ -578,8 +570,7 @@ GstMpeg2EncOptions::getProperty (guint prop_id,
}
void
-GstMpeg2EncOptions::setProperty (guint prop_id,
- const GValue *value)
+GstMpeg2EncOptions::setProperty (guint prop_id, const GValue * value)
{
switch (prop_id) {
case ARG_FORMAT:
@@ -645,26 +636,26 @@ GstMpeg2EncOptions::setProperty (guint prop_id,
case ARG_REDUCE_HF:
hf_q_boost = g_value_get_float (value);
if (hf_quant == 0 && hf_q_boost != 0.)
- hf_quant = 1;
+ hf_quant = 1;
break;
case ARG_KEEP_HF:
hf_quant = g_value_get_boolean (value) ? 2 : 0;
break;
case ARG_QUANTISATION_MATRIX:
switch (g_value_get_enum (value)) {
- case GST_MPEG2ENC_QUANTISATION_MATRIX_DEFAULT:
- hf_quant = 0;
- hf_q_boost = 0;
- break;
- case GST_MPEG2ENC_QUANTISATION_MATRIX_HI_RES:
- hf_quant = 2;
- break;
- case GST_MPEG2ENC_QUANTISATION_MATRIX_KVCD:
- hf_quant = 3;
- break;
- case GST_MPEG2ENC_QUANTISATION_MATRIX_TMPGENC:
- hf_quant = 4;
- break;
+ case GST_MPEG2ENC_QUANTISATION_MATRIX_DEFAULT:
+ hf_quant = 0;
+ hf_q_boost = 0;
+ break;
+ case GST_MPEG2ENC_QUANTISATION_MATRIX_HI_RES:
+ hf_quant = 2;
+ break;
+ case GST_MPEG2ENC_QUANTISATION_MATRIX_KVCD:
+ hf_quant = 3;
+ break;
+ case GST_MPEG2ENC_QUANTISATION_MATRIX_TMPGENC:
+ hf_quant = 4;
+ break;
}
break;
case ARG_BUFSIZE:
diff --git a/ext/mpeg2enc/gstmpeg2encpicturereader.cc b/ext/mpeg2enc/gstmpeg2encpicturereader.cc
index 439f4f10..be8789ee 100644
--- a/ext/mpeg2enc/gstmpeg2encpicturereader.cc
+++ b/ext/mpeg2enc/gstmpeg2encpicturereader.cc
@@ -31,10 +31,9 @@
* Class init stuff.
*/
-GstMpeg2EncPictureReader::GstMpeg2EncPictureReader (GstPad *in_pad,
- const GstCaps *in_caps,
- EncoderParams *params) :
- PictureReader (*params)
+GstMpeg2EncPictureReader::GstMpeg2EncPictureReader (GstPad * in_pad,
+ const GstCaps * in_caps, EncoderParams * params):
+PictureReader (*params)
{
pad = in_pad;
caps = gst_caps_copy (in_caps);
@@ -50,7 +49,7 @@ GstMpeg2EncPictureReader::~GstMpeg2EncPictureReader ()
*/
void
-GstMpeg2EncPictureReader::StreamPictureParams (MPEG2EncInVidParams &strm)
+GstMpeg2EncPictureReader::StreamPictureParams (MPEG2EncInVidParams & strm)
{
GstStructure *structure = gst_caps_get_structure (caps, 0);
gint width, height;
@@ -65,8 +64,7 @@ GstMpeg2EncPictureReader::StreamPictureParams (MPEG2EncInVidParams &strm)
strm.frame_rate_code = mpeg_framerate_code (mpeg_conform_framerate (fps));
strm.interlacing_code = Y4M_ILACE_NONE;
strm.aspect_ratio_code = mpeg_guess_mpeg_aspect_code (2, y4m_sar_SQUARE,
- strm.horizontal_size,
- strm.vertical_size);
+ strm.horizontal_size, strm.vertical_size);
/* FIXME:
* strm.interlacing_code = y4m_si_get_interlace(&si);
@@ -82,15 +80,24 @@ GstMpeg2EncPictureReader::StreamPictureParams (MPEG2EncInVidParams &strm)
* Read a frame. Return true means EOS or error.
*/
-bool
-GstMpeg2EncPictureReader::LoadFrame ()
+bool GstMpeg2EncPictureReader::LoadFrame ()
{
- GstData *data;
- GstBuffer *buf = NULL;
- gint i, x, y, n;
- guint8 *frame;
- GstFormat fmt = GST_FORMAT_DEFAULT;
- gint64 pos = 0, tot = 0;
+ GstData *
+ data;
+ GstBuffer *
+ buf = NULL;
+ gint
+ i,
+ x,
+ y,
+ n;
+ guint8 *
+ frame;
+ GstFormat
+ fmt = GST_FORMAT_DEFAULT;
+ gint64
+ pos = 0, tot = 0;
+
gst_pad_query (GST_PAD_PEER (pad), GST_QUERY_POSITION, &fmt, &pos);
gst_pad_query (GST_PAD_PEER (pad), GST_QUERY_TOTAL, &fmt, &tot);
@@ -99,16 +106,16 @@ GstMpeg2EncPictureReader::LoadFrame ()
gst_pad_set_element_private (pad, NULL);
} else if (!(data = gst_pad_pull (pad))) {
GST_ELEMENT_ERROR (gst_pad_get_parent (pad), RESOURCE, READ,
- (NULL), (NULL));
+ (NULL), (NULL));
return true;
}
if (GST_IS_EVENT (data)) {
if (GST_EVENT_TYPE (data) == GST_EVENT_EOS) {
- gst_event_unref (GST_EVENT (data));
- return true;
+ gst_event_unref (GST_EVENT (data));
+ return true;
} else {
- gst_pad_event_default (pad, GST_EVENT (data));
+ gst_pad_event_default (pad, GST_EVENT (data));
}
} else {
buf = GST_BUFFER (data);
@@ -121,18 +128,18 @@ GstMpeg2EncPictureReader::LoadFrame ()
y = encparams.vertical_size;
for (i = 0; i < y; i++) {
- memcpy (input_imgs_buf[n][0]+i*encparams.phy_width, frame, x);
+ memcpy (input_imgs_buf[n][0] + i * encparams.phy_width, frame, x);
frame += x;
}
lum_mean[n] = LumMean (input_imgs_buf[n][0]);
x >>= 1;
y >>= 1;
for (i = 0; i < y; i++) {
- memcpy (input_imgs_buf[n][1]+i*encparams.phy_chrom_width, frame, x);
+ memcpy (input_imgs_buf[n][1] + i * encparams.phy_chrom_width, frame, x);
frame += x;
}
for (i = 0; i < y; i++) {
- memcpy (input_imgs_buf[n][2]+i*encparams.phy_chrom_width, frame, x);
+ memcpy (input_imgs_buf[n][2] + i * encparams.phy_chrom_width, frame, x);
frame += x;
}
gst_buffer_unref (buf);
diff --git a/ext/mpeg2enc/gstmpeg2encstreamwriter.cc b/ext/mpeg2enc/gstmpeg2encstreamwriter.cc
index ba59f3d4..39c705ac 100644
--- a/ext/mpeg2enc/gstmpeg2encstreamwriter.cc
+++ b/ext/mpeg2enc/gstmpeg2encstreamwriter.cc
@@ -31,9 +31,8 @@
* Class init stuff.
*/
-GstMpeg2EncStreamWriter::GstMpeg2EncStreamWriter (GstPad *in_pad,
- EncoderParams *params) :
- ElemStrmWriter (*params)
+GstMpeg2EncStreamWriter::GstMpeg2EncStreamWriter (GstPad * in_pad, EncoderParams * params):
+ElemStrmWriter (*params)
{
pad = in_pad;
buf = NULL;
@@ -44,8 +43,7 @@ GstMpeg2EncStreamWriter::GstMpeg2EncStreamWriter (GstPad *in_pad,
*/
void
-GstMpeg2EncStreamWriter::PutBits (guint32 val,
- gint n)
+GstMpeg2EncStreamWriter::PutBits (guint32 val, gint n)
{
/* only relevant bits. Note that (according to Andrew),
* some CPUs do bitshifts modulo wordsize (32), which
@@ -62,7 +60,7 @@ GstMpeg2EncStreamWriter::PutBits (guint32 val,
GST_BUFFER_SIZE (buf) = 0;
}
- outbfr = (outbfr << outcnt ) | (val >> (n - outcnt));
+ outbfr = (outbfr << outcnt) | (val >> (n - outcnt));
GST_BUFFER_DATA (buf)[GST_BUFFER_SIZE (buf)++] = outbfr;
n -= outcnt;
outcnt = 8;
diff --git a/ext/mplex/gstmplex.cc b/ext/mplex/gstmplex.cc
index 06d199bb..8f2c9385 100644
--- a/ext/mplex/gstmplex.cc
+++ b/ext/mplex/gstmplex.cc
@@ -28,74 +28,55 @@
#include "gstmplexibitstream.hh"
#include "gstmplexjob.hh"
-static GstStaticPadTemplate src_templ =
-GST_STATIC_PAD_TEMPLATE (
- "src",
- GST_PAD_SRC,
- GST_PAD_ALWAYS,
- GST_STATIC_CAPS (
- "video/mpeg, "
- "systemstream = (boolean) true"
- )
-);
+static GstStaticPadTemplate src_templ = GST_STATIC_PAD_TEMPLATE ("src",
+ GST_PAD_SRC,
+ GST_PAD_ALWAYS,
+ GST_STATIC_CAPS ("video/mpeg, " "systemstream = (boolean) true")
+ );
static GstStaticPadTemplate video_sink_templ =
-GST_STATIC_PAD_TEMPLATE (
- "video_%d",
- GST_PAD_SINK,
- GST_PAD_REQUEST,
- GST_STATIC_CAPS (
- "video/mpeg, "
- "mpegversion = (int) [ 1, 2 ], "
- "systemstream = (boolean) false"
- )
-);
+GST_STATIC_PAD_TEMPLATE ("video_%d",
+ GST_PAD_SINK,
+ GST_PAD_REQUEST,
+ GST_STATIC_CAPS ("video/mpeg, "
+ "mpegversion = (int) [ 1, 2 ], " "systemstream = (boolean) false")
+ );
static GstStaticPadTemplate audio_sink_templ =
-GST_STATIC_PAD_TEMPLATE (
- "audio_%d",
- GST_PAD_SINK,
- GST_PAD_REQUEST,
- GST_STATIC_CAPS (
- "audio/mpeg, "
- "mpegversion = (int) 1, "
- "layer = (int) [ 1, 2 ]; "
- "audio/x-ac3; "
- "audio/x-dts; "
- "audio/x-raw-int, "
- "endianness = (int) BYTE_ORDER, "
- "signed = (boolean) TRUE, "
- "width = (int) { 16, 20, 24 }, "
- "depth = (int) { 16, 20, 24 }, "
- "rate = (int) { 48000, 96000 }, "
- "channels = (int) [ 1, 6 ]"
- )
-);
+ GST_STATIC_PAD_TEMPLATE ("audio_%d",
+ GST_PAD_SINK,
+ GST_PAD_REQUEST,
+ GST_STATIC_CAPS ("audio/mpeg, "
+ "mpegversion = (int) 1, "
+ "layer = (int) [ 1, 2 ]; "
+ "audio/x-ac3; "
+ "audio/x-dts; "
+ "audio/x-raw-int, "
+ "endianness = (int) BYTE_ORDER, "
+ "signed = (boolean) TRUE, "
+ "width = (int) { 16, 20, 24 }, "
+ "depth = (int) { 16, 20, 24 }, "
+ "rate = (int) { 48000, 96000 }, " "channels = (int) [ 1, 6 ]")
+ );
/* FIXME: subtitles */
-static void gst_mplex_base_init (GstMplexClass *klass);
-static void gst_mplex_class_init (GstMplexClass *klass);
-static void gst_mplex_init (GstMplex *enc);
-static void gst_mplex_dispose (GObject *object);
+static void gst_mplex_base_init (GstMplexClass * klass);
+static void gst_mplex_class_init (GstMplexClass * klass);
+static void gst_mplex_init (GstMplex * enc);
+static void gst_mplex_dispose (GObject * object);
-static void gst_mplex_loop (GstElement *element);
+static void gst_mplex_loop (GstElement * element);
-static GstPad *gst_mplex_request_new_pad (GstElement *element,
- GstPadTemplate *templ,
- const gchar *name);
+static GstPad *gst_mplex_request_new_pad (GstElement * element,
+ GstPadTemplate * templ, const gchar * name);
-static GstElementStateReturn
- gst_mplex_change_state (GstElement *element);
+static GstElementStateReturn gst_mplex_change_state (GstElement * element);
-static void gst_mplex_get_property (GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec);
-static void gst_mplex_set_property (GObject *object,
- guint prop_id,
- const GValue *value,
- GParamSpec *pspec);
+static void gst_mplex_get_property (GObject * object,
+ guint prop_id, GValue * value, GParamSpec * pspec);
+static void gst_mplex_set_property (GObject * object,
+ guint prop_id, const GValue * value, GParamSpec * pspec);
static GstElementClass *parent_class = NULL;
@@ -106,7 +87,7 @@ gst_mplex_get_type (void)
if (!gst_mplex_type) {
static const GTypeInfo gst_mplex_info = {
- sizeof (GstMplexClass),
+ sizeof (GstMplexClass),
(GBaseInitFunc) gst_mplex_base_init,
NULL,
(GClassInitFunc) gst_mplex_class_init,
@@ -119,38 +100,35 @@ gst_mplex_get_type (void)
gst_mplex_type =
g_type_register_static (GST_TYPE_ELEMENT,
- "GstMplex",
- &gst_mplex_info,
- (GTypeFlags) 0);
+ "GstMplex", &gst_mplex_info, (GTypeFlags) 0);
}
return gst_mplex_type;
}
static void
-gst_mplex_base_init (GstMplexClass *klass)
+gst_mplex_base_init (GstMplexClass * klass)
{
static GstElementDetails gst_mplex_details = {
"mplex video multiplexer",
"Codec/Muxer",
"High-quality MPEG/DVD/SVCD/VCD video/audio multiplexer",
"Andrew Stevens <andrew.stevens@nexgo.de>\n"
- "Ronald Bultje <rbultje@ronald.bitfreak.net>"
+ "Ronald Bultje <rbultje@ronald.bitfreak.net>"
};
GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
gst_element_class_add_pad_template (element_class,
- gst_static_pad_template_get (&src_templ));
+ gst_static_pad_template_get (&src_templ));
gst_element_class_add_pad_template (element_class,
- gst_static_pad_template_get (&video_sink_templ));
+ gst_static_pad_template_get (&video_sink_templ));
gst_element_class_add_pad_template (element_class,
- gst_static_pad_template_get (&audio_sink_templ));
- gst_element_class_set_details (element_class,
- &gst_mplex_details);
+ gst_static_pad_template_get (&audio_sink_templ));
+ gst_element_class_set_details (element_class, &gst_mplex_details);
}
static void
-gst_mplex_class_init (GstMplexClass *klass)
+gst_mplex_class_init (GstMplexClass * klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
@@ -171,26 +149,28 @@ gst_mplex_class_init (GstMplexClass *klass)
}
static void
-gst_mplex_dispose (GObject *object)
+gst_mplex_dispose (GObject * object)
{
GstMplex *mplex = GST_MPLEX (object);
if (mplex->mux) {
delete mplex->mux;
+
mplex->mux = NULL;
}
delete mplex->job;
}
static void
-gst_mplex_init (GstMplex *mplex)
+gst_mplex_init (GstMplex * mplex)
{
GstElement *element = GST_ELEMENT (mplex);
GST_FLAG_SET (element, GST_ELEMENT_EVENT_AWARE);
- mplex->srcpad = gst_pad_new_from_template (
- gst_element_get_pad_template (element, "src"), "src");
+ mplex->srcpad =
+ gst_pad_new_from_template (gst_element_get_pad_template (element, "src"),
+ "src");
gst_element_add_pad (element, mplex->srcpad);
mplex->job = new GstMplexJob ();
@@ -202,7 +182,7 @@ gst_mplex_init (GstMplex *mplex)
}
static void
-gst_mplex_loop (GstElement *element)
+gst_mplex_loop (GstElement * element)
{
GstMplex *mplex = GST_MPLEX (element);
@@ -211,7 +191,7 @@ gst_mplex_loop (GstElement *element)
const GList *item;
for (item = gst_element_get_pad_list (element);
- item != NULL; item = item->next) {
+ item != NULL; item = item->next) {
StreamKind type;
GstMplexIBitStream *inputstream;
JobStream *jobstream;
@@ -222,15 +202,16 @@ gst_mplex_loop (GstElement *element)
/* skip our source pad */
if (GST_PAD_DIRECTION (pad) == GST_PAD_SRC)
- continue;
+ continue;
/* create inputstream, assure we've got caps */
inputstream = new GstMplexIBitStream (pad);
/* skip unnegotiated pads */
if (!(caps = GST_PAD_CAPS (pad))) {
- delete inputstream;
- continue;
+ delete inputstream;
+
+ continue;
}
/* get format */
@@ -238,40 +219,41 @@ gst_mplex_loop (GstElement *element)
mime = gst_structure_get_name (structure);
if (!strcmp (mime, "video/mpeg")) {
- VideoParams *params;
+ VideoParams *params;
- type = MPEG_VIDEO;
+ type = MPEG_VIDEO;
- params = VideoParams::Default (mplex->job->mux_format);
- mplex->job->video_param.push_back (params);
- mplex->job->video_tracks++;
+ params = VideoParams::Default (mplex->job->mux_format);
+ mplex->job->video_param.push_back (params);
+ mplex->job->video_tracks++;
} else if (!strcmp (mime, "audio/mpeg")) {
- type = MPEG_AUDIO;
- mplex->job->audio_tracks++;
+ type = MPEG_AUDIO;
+ mplex->job->audio_tracks++;
} else if (!strcmp (mime, "audio/x-ac3")) {
- type = AC3_AUDIO;
- mplex->job->audio_tracks++;
+ type = AC3_AUDIO;
+ mplex->job->audio_tracks++;
} else if (!strcmp (mime, "audio/x-dts")) {
- type = DTS_AUDIO;
- mplex->job->audio_tracks++;
+ type = DTS_AUDIO;
+ mplex->job->audio_tracks++;
} else if (!strcmp (mime, "audio/x-raw-int")) {
- LpcmParams *params;
- gint bits, chans, rate;
+ LpcmParams *params;
+ gint bits, chans, rate;
- type = LPCM_AUDIO;
+ type = LPCM_AUDIO;
- /* set LPCM params */
- gst_structure_get_int (structure, "depth", &bits);
- gst_structure_get_int (structure, "rate", &rate);
- gst_structure_get_int (structure, "channels", &chans);
- params = LpcmParams::Checked (rate, chans, bits);
+ /* set LPCM params */
+ gst_structure_get_int (structure, "depth", &bits);
+ gst_structure_get_int (structure, "rate", &rate);
+ gst_structure_get_int (structure, "channels", &chans);
+ params = LpcmParams::Checked (rate, chans, bits);
- mplex->job->lpcm_param.push_back (params);
- mplex->job->audio_tracks++;
- mplex->job->lpcm_tracks++;
+ mplex->job->lpcm_param.push_back (params);
+ mplex->job->audio_tracks++;
+ mplex->job->lpcm_tracks++;
} else {
- delete inputstream;
- continue;
+ delete inputstream;
+
+ continue;
}
jobstream = new JobStream (inputstream, type);
@@ -280,7 +262,7 @@ gst_mplex_loop (GstElement *element)
if (!mplex->job->video_tracks && !mplex->job->audio_tracks) {
GST_ELEMENT_ERROR (element, CORE, NEGOTIATION, (NULL),
- ("no input video or audio tracks set up before loop function"));
+ ("no input video or audio tracks set up before loop function"));
return;
}
@@ -293,8 +275,7 @@ gst_mplex_loop (GstElement *element)
}
static GstPadLinkReturn
-gst_mplex_sink_link (GstPad *pad,
- const GstCaps *caps)
+gst_mplex_sink_link (GstPad * pad, const GstCaps * caps)
{
GstStructure *structure = gst_caps_get_structure (caps, 0);
const gchar *mime = gst_structure_get_name (structure);
@@ -318,9 +299,8 @@ gst_mplex_sink_link (GstPad *pad,
}
static GstPad *
-gst_mplex_request_new_pad (GstElement *element,
- GstPadTemplate *templ,
- const gchar *name)
+gst_mplex_request_new_pad (GstElement * element,
+ GstPadTemplate * templ, const gchar * name)
{
GstElementClass *klass = GST_ELEMENT_GET_CLASS (element);
GstMplex *mplex = GST_MPLEX (element);
@@ -345,25 +325,21 @@ gst_mplex_request_new_pad (GstElement *element,
}
static void
-gst_mplex_get_property (GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec)
+gst_mplex_get_property (GObject * object,
+ guint prop_id, GValue * value, GParamSpec * pspec)
{
GST_MPLEX (object)->job->getProperty (prop_id, value);
}
static void
-gst_mplex_set_property (GObject *object,
- guint prop_id,
- const GValue *value,
- GParamSpec *pspec)
+gst_mplex_set_property (GObject * object,
+ guint prop_id, const GValue * value, GParamSpec * pspec)
{
GST_MPLEX (object)->job->setProperty (prop_id, value);
}
static GstElementStateReturn
-gst_mplex_change_state (GstElement *element)
+gst_mplex_change_state (GstElement * element)
{
GstMplex *mplex = GST_MPLEX (element);
@@ -385,24 +361,16 @@ gst_mplex_change_state (GstElement *element)
}
static gboolean
-plugin_init (GstPlugin *plugin)
+plugin_init (GstPlugin * plugin)
{
if (!gst_library_load ("gstbytestream"))
return FALSE;
- return gst_element_register (plugin, "mplex",
- GST_RANK_NONE,
- GST_TYPE_MPLEX);
+ return gst_element_register (plugin, "mplex", GST_RANK_NONE, GST_TYPE_MPLEX);
}
-GST_PLUGIN_DEFINE (
- GST_VERSION_MAJOR,
- GST_VERSION_MINOR,
- "mplex",
- "High-quality MPEG/DVD/SVCD/VCD video/audio multiplexer",
- plugin_init,
- VERSION,
- "GPL",
- GST_PACKAGE,
- GST_ORIGIN
-)
+GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
+ GST_VERSION_MINOR,
+ "mplex",
+ "High-quality MPEG/DVD/SVCD/VCD video/audio multiplexer",
+ plugin_init, VERSION, "GPL", GST_PACKAGE, GST_ORIGIN)
diff --git a/ext/mplex/gstmplexibitstream.cc b/ext/mplex/gstmplexibitstream.cc
index 6ed78206..612866f5 100644
--- a/ext/mplex/gstmplexibitstream.cc
+++ b/ext/mplex/gstmplexibitstream.cc
@@ -31,9 +31,8 @@
* Class init/exit functions.
*/
-GstMplexIBitStream::GstMplexIBitStream (GstPad *_pad,
- guint buf_size) :
- IBitStream ()
+GstMplexIBitStream::GstMplexIBitStream (GstPad * _pad, guint buf_size):
+IBitStream ()
{
guint8 *data;
@@ -54,8 +53,7 @@ GstMplexIBitStream::GstMplexIBitStream (GstPad *_pad,
if (!ReadIntoBuffer () && buffered == 0) {
GST_ELEMENT_ERROR (gst_pad_get_parent (_pad), RESOURCE, READ, (NULL),
- ("Failed to read from input pad %s",
- gst_pad_get_name (pad)));
+ ("Failed to read from input pad %s", gst_pad_get_name (pad)));
}
}
@@ -68,28 +66,30 @@ GstMplexIBitStream::~GstMplexIBitStream (void)
* Read data.
*/
-size_t
-GstMplexIBitStream::ReadStreamBytes (uint8_t *buf,
- size_t size)
+size_t GstMplexIBitStream::ReadStreamBytes (uint8_t * buf, size_t size)
{
- guint8 *data;
- guint read;
+ guint8 *
+ data;
+ guint
+ read;
if (eos)
return 0;
if ((read = gst_bytestream_peek_bytes (bs, &data, size)) != size) {
- GstEvent *event;
- guint pending;
+ GstEvent *
+ event;
+ guint
+ pending;
gst_bytestream_get_status (bs, &pending, &event);
if (event) {
switch (GST_EVENT_TYPE (event)) {
- case GST_EVENT_EOS:
- eos = TRUE;
- break;
- default:
- break;
+ case GST_EVENT_EOS:
+ eos = TRUE;
+ break;
+ default:
+ break;
}
gst_event_unref (event);
}
@@ -105,8 +105,7 @@ GstMplexIBitStream::ReadStreamBytes (uint8_t *buf,
* Are we at EOS?
*/
-bool
-GstMplexIBitStream::EndOfStream (void)
+bool GstMplexIBitStream::EndOfStream (void)
{
return eos;
}
diff --git a/ext/mplex/gstmplexjob.cc b/ext/mplex/gstmplexjob.cc
index 09ebe53f..8ff23bda 100644
--- a/ext/mplex/gstmplexjob.cc
+++ b/ext/mplex/gstmplexjob.cc
@@ -26,7 +26,8 @@
#include "gstmplexjob.hh"
-enum {
+enum
+{
ARG_0,
ARG_FORMAT,
ARG_MUX_BITRATE,
@@ -36,7 +37,7 @@ enum {
ARG_SEGMENT_SIZE,
ARG_PACKETS_PER_PACK,
ARG_SECTOR_SIZE
- /* FILL ME */
+ /* FILL ME */
};
/*
@@ -53,22 +54,21 @@ gst_mplex_format_get_type (void)
if (!mplex_format_type) {
static const GEnumValue mplex_formats[] = {
- { 0, "0", "Generic MPEG-1" },
- { 1, "1", "Standard VCD" },
- { 2, "2", "User VCD" },
- { 3, "3", "Generic MPEG-2" },
- { 4, "4", "Standard SVCD" },
- { 5, "5", "User SVCD" },
- { 6, "6", "VCD Stills sequences" },
- { 7, "7", "SVCD Stills sequences" },
- { 8, "8", "DVD MPEG-2 for dvdauthor" },
- { 9, "9", "DVD MPEG-2" },
- { 0, NULL, NULL },
+ {0, "0", "Generic MPEG-1"},
+ {1, "1", "Standard VCD"},
+ {2, "2", "User VCD"},
+ {3, "3", "Generic MPEG-2"},
+ {4, "4", "Standard SVCD"},
+ {5, "5", "User SVCD"},
+ {6, "6", "VCD Stills sequences"},
+ {7, "7", "SVCD Stills sequences"},
+ {8, "8", "DVD MPEG-2 for dvdauthor"},
+ {9, "9", "DVD MPEG-2"},
+ {0, NULL, NULL},
};
mplex_format_type =
- g_enum_register_static ("GstMplexFormat",
- mplex_formats);
+ g_enum_register_static ("GstMplexFormat", mplex_formats);
}
return mplex_format_type;
@@ -78,8 +78,8 @@ gst_mplex_format_get_type (void)
* Class init functions.
*/
-GstMplexJob::GstMplexJob (void) :
- MultiplexJob ()
+GstMplexJob::GstMplexJob (void):
+MultiplexJob ()
{
/* blabla */
}
@@ -89,58 +89,57 @@ GstMplexJob::GstMplexJob (void) :
*/
void
-GstMplexJob::initProperties (GObjectClass *klass)
+GstMplexJob::initProperties (GObjectClass * klass)
{
/* encoding profile */
g_object_class_install_property (klass, ARG_FORMAT,
- g_param_spec_enum ("format", "Format", "Encoding profile format",
- GST_TYPE_MPLEX_FORMAT, 0,
- (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_enum ("format", "Format", "Encoding profile format",
+ GST_TYPE_MPLEX_FORMAT, 0, (GParamFlags) G_PARAM_READWRITE));
/* total stream datarate. Normally, this shouldn't be needed, but
* some DVD/VCD/SVCD players really need strict values to handle
* the created files correctly. */
g_object_class_install_property (klass, ARG_MUX_BITRATE,
- g_param_spec_int ("mux-bitrate", "Mux. bitrate",
- "Bitrate of output stream in kbps (0 = autodetect)",
- 0, 15 * 1024, 0, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("mux-bitrate", "Mux. bitrate",
+ "Bitrate of output stream in kbps (0 = autodetect)",
+ 0, 15 * 1024, 0, (GParamFlags) G_PARAM_READWRITE));
#if 0
- { "video-buffer", 1, 0, 'b' },
+ {
+ "video-buffer", 1, 0, 'b'},
#endif
-
- /* some boolean stuff for headers */
- g_object_class_install_property (klass, ARG_VBR,
- g_param_spec_boolean ("vbr", "VBR",
- "Whether the input video stream is variable bitrate",
- FALSE, (GParamFlags) G_PARAM_READWRITE));
+ /* some boolean stuff for headers */
+ g_object_class_install_property (klass, ARG_VBR,
+ g_param_spec_boolean ("vbr", "VBR",
+ "Whether the input video stream is variable bitrate",
+ FALSE, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_SYSTEM_HEADERS,
- g_param_spec_boolean ("system-headers", "System headers",
- "Create system header in every pack for generic formats",
- FALSE, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_boolean ("system-headers", "System headers",
+ "Create system header in every pack for generic formats",
+ FALSE, (GParamFlags) G_PARAM_READWRITE));
g_object_class_install_property (klass, ARG_SPLIT_SEQUENCE,
- g_param_spec_boolean ("split-sequence", "Split sequence",
- "Simply split a sequence across files "
- "(rather than building run-out/run-in)",
- FALSE, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_boolean ("split-sequence", "Split sequence",
+ "Simply split a sequence across files "
+ "(rather than building run-out/run-in)",
+ FALSE, (GParamFlags) G_PARAM_READWRITE));
/* size of a segment (followed by EOS) */
g_object_class_install_property (klass, ARG_SEGMENT_SIZE,
- g_param_spec_int ("max-segment-size", "Max. segment size",
- "Max. size per segment/file in MB (0 = unlimited)",
- 0, 10 * 1024, 0, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("max-segment-size", "Max. segment size",
+ "Max. size per segment/file in MB (0 = unlimited)",
+ 0, 10 * 1024, 0, (GParamFlags) G_PARAM_READWRITE));
/* packets per pack (generic formats) */
g_object_class_install_property (klass, ARG_PACKETS_PER_PACK,
- g_param_spec_int ("packets-per-pack", "Packets per pack",
- "Number of packets per pack for generic formats",
- 1, 100, 1, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("packets-per-pack", "Packets per pack",
+ "Number of packets per pack for generic formats",
+ 1, 100, 1, (GParamFlags) G_PARAM_READWRITE));
/* size of one sector */
g_object_class_install_property (klass, ARG_SECTOR_SIZE,
- g_param_spec_int ("sector-size", "Sector size",
- "Specify sector size in bytes for generic formats",
- 256, 16384, 2048, (GParamFlags) G_PARAM_READWRITE));
+ g_param_spec_int ("sector-size", "Sector size",
+ "Specify sector size in bytes for generic formats",
+ 256, 16384, 2048, (GParamFlags) G_PARAM_READWRITE));
}
/*
@@ -148,8 +147,7 @@ GstMplexJob::initProperties (GObjectClass *klass)
*/
void
-GstMplexJob::getProperty (guint prop_id,
- GValue *value)
+GstMplexJob::getProperty (guint prop_id, GValue * value)
{
switch (prop_id) {
case ARG_FORMAT:
@@ -182,8 +180,7 @@ GstMplexJob::getProperty (guint prop_id,
}
void
-GstMplexJob::setProperty (guint prop_id,
- const GValue *value)
+GstMplexJob::setProperty (guint prop_id, const GValue * value)
{
switch (prop_id) {
case ARG_FORMAT:
@@ -193,7 +190,7 @@ GstMplexJob::setProperty (guint prop_id,
/* data_rate expects bytes (don't ask me why the property itself is
* in bits, I'm just staying compatible to mjpegtools options), and
* rounded up to 50-bytes. */
- data_rate = ((g_value_get_int (value) * 1000 / 8 + 49) / 50 ) * 50;
+ data_rate = ((g_value_get_int (value) * 1000 / 8 + 49) / 50) * 50;
break;
case ARG_VBR:
VBR = g_value_get_boolean (value);
diff --git a/ext/mplex/gstmplexoutputstream.cc b/ext/mplex/gstmplexoutputstream.cc
index c0a2976d..206c13ec 100644
--- a/ext/mplex/gstmplexoutputstream.cc
+++ b/ext/mplex/gstmplexoutputstream.cc
@@ -31,9 +31,8 @@
* Class init functions.
*/
-GstMplexOutputStream::GstMplexOutputStream (GstElement *_element,
- GstPad *_pad) :
- OutputStream ()
+GstMplexOutputStream::GstMplexOutputStream (GstElement * _element, GstPad * _pad):
+OutputStream ()
{
element = _element;
pad = _pad;
@@ -63,8 +62,7 @@ GstMplexOutputStream::Close (void)
* Get size of current segment.
*/
-off_t
-GstMplexOutputStream::SegmentSize (void)
+off_t GstMplexOutputStream::SegmentSize (void)
{
return size;
}
@@ -88,8 +86,7 @@ GstMplexOutputStream::NextSegment (void)
*/
void
-GstMplexOutputStream::Write (guint8 *data,
- guint len)
+GstMplexOutputStream::Write (guint8 * data, guint len)
{
GstBuffer *buf;