1
/* rygel-mp2ts-transcoder-bin.c generated by valac 0.14.1, the Vala compiler
2
* generated from rygel-mp2ts-transcoder-bin.vala, do not modify */
5
* Copyright (C) 2009 Nokia Corporation.
7
* Author: Zeeshan Ali (Khattak) <zeeshanak@gnome.org>
8
* <zeeshan.ali@nokia.com>
10
* This file is part of Rygel.
12
* Rygel is free software; you can redistribute it and/or modify
13
* it under the terms of the GNU Lesser General Public License as published by
14
* the Free Software Foundation; either version 2 of the License, or
15
* (at your option) any later version.
17
* Rygel is distributed in the hope that it will be useful,
18
* but WITHOUT ANY WARRANTY; without even the implied warranty of
19
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20
* GNU Lesser General Public License for more details.
22
* You should have received a copy of the GNU Lesser General Public License
23
* along with this program; if not, write to the Free Software Foundation,
24
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
28
#include <glib-object.h>
32
#include <glib/gi18n-lib.h>
35
#define RYGEL_TYPE_MP2_TS_TRANSCODER_BIN (rygel_mp2_ts_transcoder_bin_get_type ())
36
#define RYGEL_MP2_TS_TRANSCODER_BIN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_TYPE_MP2_TS_TRANSCODER_BIN, RygelMP2TSTranscoderBin))
37
#define RYGEL_MP2_TS_TRANSCODER_BIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), RYGEL_TYPE_MP2_TS_TRANSCODER_BIN, RygelMP2TSTranscoderBinClass))
38
#define RYGEL_IS_MP2_TS_TRANSCODER_BIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_TYPE_MP2_TS_TRANSCODER_BIN))
39
#define RYGEL_IS_MP2_TS_TRANSCODER_BIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), RYGEL_TYPE_MP2_TS_TRANSCODER_BIN))
40
#define RYGEL_MP2_TS_TRANSCODER_BIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), RYGEL_TYPE_MP2_TS_TRANSCODER_BIN, RygelMP2TSTranscoderBinClass))
42
typedef struct _RygelMP2TSTranscoderBin RygelMP2TSTranscoderBin;
43
typedef struct _RygelMP2TSTranscoderBinClass RygelMP2TSTranscoderBinClass;
44
typedef struct _RygelMP2TSTranscoderBinPrivate RygelMP2TSTranscoderBinPrivate;
45
#define _gst_object_unref0(var) ((var == NULL) ? NULL : (var = (gst_object_unref (var), NULL)))
47
#define RYGEL_TYPE_MEDIA_OBJECT (rygel_media_object_get_type ())
48
#define RYGEL_MEDIA_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_TYPE_MEDIA_OBJECT, RygelMediaObject))
49
#define RYGEL_MEDIA_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), RYGEL_TYPE_MEDIA_OBJECT, RygelMediaObjectClass))
50
#define RYGEL_IS_MEDIA_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_TYPE_MEDIA_OBJECT))
51
#define RYGEL_IS_MEDIA_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), RYGEL_TYPE_MEDIA_OBJECT))
52
#define RYGEL_MEDIA_OBJECT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), RYGEL_TYPE_MEDIA_OBJECT, RygelMediaObjectClass))
54
typedef struct _RygelMediaObject RygelMediaObject;
55
typedef struct _RygelMediaObjectClass RygelMediaObjectClass;
57
#define RYGEL_TYPE_MEDIA_ITEM (rygel_media_item_get_type ())
58
#define RYGEL_MEDIA_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_TYPE_MEDIA_ITEM, RygelMediaItem))
59
#define RYGEL_MEDIA_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), RYGEL_TYPE_MEDIA_ITEM, RygelMediaItemClass))
60
#define RYGEL_IS_MEDIA_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_TYPE_MEDIA_ITEM))
61
#define RYGEL_IS_MEDIA_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), RYGEL_TYPE_MEDIA_ITEM))
62
#define RYGEL_MEDIA_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), RYGEL_TYPE_MEDIA_ITEM, RygelMediaItemClass))
64
typedef struct _RygelMediaItem RygelMediaItem;
65
typedef struct _RygelMediaItemClass RygelMediaItemClass;
67
#define RYGEL_TYPE_TRANSCODER (rygel_transcoder_get_type ())
68
#define RYGEL_TRANSCODER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_TYPE_TRANSCODER, RygelTranscoder))
69
#define RYGEL_TRANSCODER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), RYGEL_TYPE_TRANSCODER, RygelTranscoderClass))
70
#define RYGEL_IS_TRANSCODER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_TYPE_TRANSCODER))
71
#define RYGEL_IS_TRANSCODER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), RYGEL_TYPE_TRANSCODER))
72
#define RYGEL_TRANSCODER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), RYGEL_TYPE_TRANSCODER, RygelTranscoderClass))
74
typedef struct _RygelTranscoder RygelTranscoder;
75
typedef struct _RygelTranscoderClass RygelTranscoderClass;
77
#define RYGEL_TYPE_MP2_TS_TRANSCODER (rygel_mp2_ts_transcoder_get_type ())
78
#define RYGEL_MP2_TS_TRANSCODER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_TYPE_MP2_TS_TRANSCODER, RygelMP2TSTranscoder))
79
#define RYGEL_MP2_TS_TRANSCODER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), RYGEL_TYPE_MP2_TS_TRANSCODER, RygelMP2TSTranscoderClass))
80
#define RYGEL_IS_MP2_TS_TRANSCODER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_TYPE_MP2_TS_TRANSCODER))
81
#define RYGEL_IS_MP2_TS_TRANSCODER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), RYGEL_TYPE_MP2_TS_TRANSCODER))
82
#define RYGEL_MP2_TS_TRANSCODER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), RYGEL_TYPE_MP2_TS_TRANSCODER, RygelMP2TSTranscoderClass))
84
typedef struct _RygelMP2TSTranscoder RygelMP2TSTranscoder;
85
typedef struct _RygelMP2TSTranscoderClass RygelMP2TSTranscoderClass;
87
#define RYGEL_TYPE_MP3_LAYER (rygel_mp3_layer_get_type ())
89
#define RYGEL_TYPE_MP3_TRANSCODER (rygel_mp3_transcoder_get_type ())
90
#define RYGEL_MP3_TRANSCODER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), RYGEL_TYPE_MP3_TRANSCODER, RygelMP3Transcoder))
91
#define RYGEL_MP3_TRANSCODER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), RYGEL_TYPE_MP3_TRANSCODER, RygelMP3TranscoderClass))
92
#define RYGEL_IS_MP3_TRANSCODER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), RYGEL_TYPE_MP3_TRANSCODER))
93
#define RYGEL_IS_MP3_TRANSCODER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), RYGEL_TYPE_MP3_TRANSCODER))
94
#define RYGEL_MP3_TRANSCODER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), RYGEL_TYPE_MP3_TRANSCODER, RygelMP3TranscoderClass))
96
typedef struct _RygelMP3Transcoder RygelMP3Transcoder;
97
typedef struct _RygelMP3TranscoderClass RygelMP3TranscoderClass;
98
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
99
#define _g_free0(var) (var = (g_free (var), NULL))
100
#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
102
struct _RygelMP2TSTranscoderBin {
103
GstBin parent_instance;
104
RygelMP2TSTranscoderBinPrivate * priv;
107
struct _RygelMP2TSTranscoderBinClass {
108
GstBinClass parent_class;
111
struct _RygelMP2TSTranscoderBinPrivate {
112
GstElement* audio_enc;
113
GstElement* video_enc;
118
RYGEL_MP3_LAYER_TWO = 1,
119
RYGEL_MP3_LAYER_THREE = 2
123
RYGEL_GST_ERROR_MISSING_PLUGIN,
126
#define RYGEL_GST_ERROR rygel_gst_error_quark ()
128
static gpointer rygel_mp2_ts_transcoder_bin_parent_class = NULL;
130
GType rygel_mp2_ts_transcoder_bin_get_type (void) G_GNUC_CONST;
131
#define RYGEL_MP2_TS_TRANSCODER_BIN_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), RYGEL_TYPE_MP2_TS_TRANSCODER_BIN, RygelMP2TSTranscoderBinPrivate))
133
RYGEL_MP2_TS_TRANSCODER_BIN_DUMMY_PROPERTY
135
#define RYGEL_MP2_TS_TRANSCODER_BIN_DECODEBIN "decodebin2"
136
#define RYGEL_MP2_TS_TRANSCODER_BIN_MUXER "mpegtsmux"
137
#define RYGEL_MP2_TS_TRANSCODER_BIN_AUDIO_ENC_SINK "audio-enc-sink-pad"
138
#define RYGEL_MP2_TS_TRANSCODER_BIN_VIDEO_ENC_SINK "sink"
139
GType rygel_media_object_get_type (void) G_GNUC_CONST;
140
GType rygel_media_item_get_type (void) G_GNUC_CONST;
141
GType rygel_transcoder_get_type (void) G_GNUC_CONST;
142
GType rygel_mp2_ts_transcoder_get_type (void) G_GNUC_CONST;
143
RygelMP2TSTranscoderBin* rygel_mp2_ts_transcoder_bin_new (RygelMediaItem* item, GstElement* src, RygelMP2TSTranscoder* transcoder, GError** error);
144
RygelMP2TSTranscoderBin* rygel_mp2_ts_transcoder_bin_construct (GType object_type, RygelMediaItem* item, GstElement* src, RygelMP2TSTranscoder* transcoder, GError** error);
145
GstElement* rygel_gst_utils_create_element (const gchar* factoryname, const gchar* name, GError** error);
146
GType rygel_mp3_layer_get_type (void) G_GNUC_CONST;
147
RygelMP3Transcoder* rygel_mp3_transcoder_new (RygelMP3Layer layer);
148
RygelMP3Transcoder* rygel_mp3_transcoder_construct (GType object_type, RygelMP3Layer layer);
149
GType rygel_mp3_transcoder_get_type (void) G_GNUC_CONST;
150
GstElement* rygel_mp3_transcoder_create_encoder (RygelMP3Transcoder* self, RygelMediaItem* item, const gchar* src_pad_name, const gchar* sink_pad_name, GError** error);
151
GstElement* rygel_mp2_ts_transcoder_create_encoder (RygelMP2TSTranscoder* self, RygelMediaItem* item, const gchar* src_pad_name, const gchar* sink_pad_name, GError** error);
152
static void rygel_mp2_ts_transcoder_bin_decodebin_pad_added (RygelMP2TSTranscoderBin* self, GstElement* decodebin, GstPad* new_pad);
153
static void _rygel_mp2_ts_transcoder_bin_decodebin_pad_added_gst_element_pad_added (GstElement* _sender, GstPad* pad, gpointer self);
154
static gboolean rygel_mp2_ts_transcoder_bin_autoplug_continue (RygelMP2TSTranscoderBin* self, GstElement* decodebin, GstPad* new_pad, GstCaps* caps);
155
static gboolean _rygel_mp2_ts_transcoder_bin_autoplug_continue_dynamic_autoplug_continue0_ (GstElement* _sender, GstPad* new_pad, GstCaps* caps, gpointer self);
156
static void g_cclosure_user_marshal_BOOLEAN__OBJECT_GST_CAPS (GClosure * closure, GValue * return_value, guint n_param_values, const GValue * param_values, gpointer invocation_hint, gpointer marshal_data);
157
void _dynamic_autoplug_continue1_connect (gpointer obj, const char * signal_name, GCallback handler, gpointer data);
158
GQuark rygel_gst_error_quark (void);
159
void rygel_gst_utils_post_error (GstElement* dest, GError* _error_);
160
static void rygel_mp2_ts_transcoder_bin_finalize (GObject* obj);
163
static gpointer _gst_object_ref0 (gpointer self) {
164
#line 54 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
165
return self ? gst_object_ref (self) : NULL;
166
#line 167 "rygel-mp2ts-transcoder-bin.c"
170
static void _rygel_mp2_ts_transcoder_bin_decodebin_pad_added_gst_element_pad_added (GstElement* _sender, GstPad* pad, gpointer self) {
171
#line 65 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
172
rygel_mp2_ts_transcoder_bin_decodebin_pad_added (self, _sender, pad);
173
#line 174 "rygel-mp2ts-transcoder-bin.c"
177
static gboolean _rygel_mp2_ts_transcoder_bin_autoplug_continue_dynamic_autoplug_continue0_ (GstElement* _sender, GstPad* new_pad, GstCaps* caps, gpointer self) {
179
result = rygel_mp2_ts_transcoder_bin_autoplug_continue (self, _sender, new_pad, caps);
180
#line 66 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
182
#line 183 "rygel-mp2ts-transcoder-bin.c"
186
static void g_cclosure_user_marshal_BOOLEAN__OBJECT_GST_CAPS (GClosure * closure, GValue * return_value, guint n_param_values, const GValue * param_values, gpointer invocation_hint, gpointer marshal_data) {
187
typedef gboolean (*GMarshalFunc_BOOLEAN__OBJECT_GST_CAPS) (gpointer data1, gpointer arg_1, gpointer arg_2, gpointer data2);
188
register GMarshalFunc_BOOLEAN__OBJECT_GST_CAPS callback;
189
register GCClosure * cc;
190
register gpointer data1;
191
register gpointer data2;
193
cc = (GCClosure *) closure;
194
#line 66 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
195
g_return_if_fail (return_value != NULL);
196
#line 66 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
197
g_return_if_fail (n_param_values == 3);
198
#line 66 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
199
if (G_CCLOSURE_SWAP_DATA (closure)) {
200
#line 66 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
201
data1 = closure->data;
202
#line 66 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
203
data2 = param_values->data[0].v_pointer;
204
#line 205 "rygel-mp2ts-transcoder-bin.c"
206
#line 66 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
207
data1 = param_values->data[0].v_pointer;
208
#line 66 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
209
data2 = closure->data;
210
#line 211 "rygel-mp2ts-transcoder-bin.c"
212
#line 66 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
213
callback = (GMarshalFunc_BOOLEAN__OBJECT_GST_CAPS) (marshal_data ? marshal_data : cc->callback);
214
#line 66 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
215
v_return = callback (data1, g_value_get_object (param_values + 1), gst_value_get_caps (param_values + 2), data2);
216
#line 66 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
217
g_value_set_boolean (return_value, v_return);
218
#line 219 "rygel-mp2ts-transcoder-bin.c"
222
void _dynamic_autoplug_continue1_connect (gpointer obj, const char * signal_name, GCallback handler, gpointer data) {
223
#line 66 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
224
g_signal_connect_object (obj, signal_name, handler, data, 0);
225
#line 226 "rygel-mp2ts-transcoder-bin.c"
229
RygelMP2TSTranscoderBin* rygel_mp2_ts_transcoder_bin_construct (GType object_type, RygelMediaItem* item, GstElement* src, RygelMP2TSTranscoder* transcoder, GError** error) {
230
RygelMP2TSTranscoderBin * self = NULL;
231
GstElement* _tmp0_ = NULL;
232
GstElement* decodebin;
233
RygelMP3Transcoder* _tmp1_;
234
RygelMP3Transcoder* mp3_transcoder;
235
RygelMP3Transcoder* _tmp2_;
236
RygelMediaItem* _tmp3_;
237
GstElement* _tmp4_ = NULL;
239
RygelMP2TSTranscoder* _tmp6_;
240
RygelMediaItem* _tmp7_;
241
GstElement* _tmp8_ = NULL;
243
GstElement* _tmp10_ = NULL;
258
GstPad* _tmp25_ = NULL;
261
GstGhostPad* _tmp27_;
263
GstGhostPad* _tmp28_;
267
GError * _inner_error_ = NULL;
268
#line 41 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
269
g_return_val_if_fail (item != NULL, NULL);
270
#line 41 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
271
g_return_val_if_fail (src != NULL, NULL);
272
#line 41 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
273
g_return_val_if_fail (transcoder != NULL, NULL);
274
#line 41 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
275
self = (RygelMP2TSTranscoderBin*) g_object_new (object_type, NULL);
276
#line 45 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
277
_tmp0_ = rygel_gst_utils_create_element (RYGEL_MP2_TS_TRANSCODER_BIN_DECODEBIN, RYGEL_MP2_TS_TRANSCODER_BIN_DECODEBIN, &_inner_error_);
278
#line 45 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
280
#line 45 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
281
if (_inner_error_ != NULL) {
282
#line 45 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
283
g_propagate_error (error, _inner_error_);
284
#line 45 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
285
_gst_object_unref0 (self);
286
#line 45 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
288
#line 289 "rygel-mp2ts-transcoder-bin.c"
290
#line 47 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
291
_tmp1_ = rygel_mp3_transcoder_new (RYGEL_MP3_LAYER_TWO);
292
#line 47 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
293
mp3_transcoder = _tmp1_;
294
#line 48 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
295
_tmp2_ = mp3_transcoder;
296
#line 48 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
298
#line 48 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
299
_tmp4_ = rygel_mp3_transcoder_create_encoder (_tmp2_, _tmp3_, NULL, RYGEL_MP2_TS_TRANSCODER_BIN_AUDIO_ENC_SINK, &_inner_error_);
300
#line 48 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
302
#line 48 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
303
if (_inner_error_ != NULL) {
304
#line 48 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
305
g_propagate_error (error, _inner_error_);
306
#line 48 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
307
_g_object_unref0 (mp3_transcoder);
308
#line 48 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
309
_gst_object_unref0 (decodebin);
310
#line 48 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
311
_gst_object_unref0 (self);
312
#line 48 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
314
#line 315 "rygel-mp2ts-transcoder-bin.c"
316
#line 48 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
317
_gst_object_unref0 (self->priv->audio_enc);
318
#line 48 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
319
self->priv->audio_enc = _tmp5_;
320
#line 51 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
322
#line 51 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
324
#line 51 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
325
_tmp8_ = rygel_mp2_ts_transcoder_create_encoder (_tmp6_, _tmp7_, NULL, RYGEL_MP2_TS_TRANSCODER_BIN_VIDEO_ENC_SINK, &_inner_error_);
326
#line 51 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
328
#line 51 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
329
if (_inner_error_ != NULL) {
330
#line 51 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
331
g_propagate_error (error, _inner_error_);
332
#line 51 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
333
_g_object_unref0 (mp3_transcoder);
334
#line 51 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
335
_gst_object_unref0 (decodebin);
336
#line 51 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
337
_gst_object_unref0 (self);
338
#line 51 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
340
#line 341 "rygel-mp2ts-transcoder-bin.c"
342
#line 51 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
343
_gst_object_unref0 (self->priv->video_enc);
344
#line 51 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
345
self->priv->video_enc = _tmp9_;
346
#line 52 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
347
_tmp10_ = rygel_gst_utils_create_element (RYGEL_MP2_TS_TRANSCODER_BIN_MUXER, RYGEL_MP2_TS_TRANSCODER_BIN_MUXER, &_inner_error_);
348
#line 52 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
350
#line 52 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
351
if (_inner_error_ != NULL) {
352
#line 52 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
353
g_propagate_error (error, _inner_error_);
354
#line 52 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
355
_g_object_unref0 (mp3_transcoder);
356
#line 52 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
357
_gst_object_unref0 (decodebin);
358
#line 52 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
359
_gst_object_unref0 (self);
360
#line 52 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
362
#line 363 "rygel-mp2ts-transcoder-bin.c"
364
#line 52 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
365
_gst_object_unref0 (self->priv->muxer);
366
#line 52 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
367
self->priv->muxer = _tmp11_;
368
#line 54 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
370
#line 54 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
371
_tmp13_ = _gst_object_ref0 (_tmp12_);
372
#line 54 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
374
#line 54 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
375
_tmp15_ = _gst_object_ref0 (_tmp14_);
376
#line 54 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
377
_tmp16_ = self->priv->audio_enc;
378
#line 54 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
379
_tmp17_ = _gst_object_ref0 (_tmp16_);
380
#line 54 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
381
_tmp18_ = self->priv->video_enc;
382
#line 54 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
383
_tmp19_ = _gst_object_ref0 (_tmp18_);
384
#line 54 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
385
_tmp20_ = self->priv->muxer;
386
#line 54 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
387
_tmp21_ = _gst_object_ref0 (_tmp20_);
388
#line 54 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
389
gst_bin_add_many ((GstBin*) self, _tmp13_, _tmp15_, _tmp17_, _tmp19_, _tmp21_, NULL);
390
#line 59 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
392
#line 59 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
394
#line 59 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
395
gst_element_link (_tmp22_, _tmp23_);
396
#line 61 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
397
_tmp24_ = self->priv->muxer;
398
#line 61 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
399
_tmp25_ = gst_element_get_static_pad (_tmp24_, "src");
400
#line 61 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
402
#line 62 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
404
#line 62 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
405
_tmp27_ = (GstGhostPad*) gst_ghost_pad_new (NULL, _tmp26_);
406
#line 62 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
407
gst_object_ref_sink (_tmp27_);
408
#line 62 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
410
#line 63 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
412
#line 63 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
413
_tmp29_ = _gst_object_ref0 ((GstPad*) _tmp28_);
414
#line 63 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
415
gst_element_add_pad ((GstElement*) self, _tmp29_);
416
#line 65 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
418
#line 65 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
419
g_signal_connect_object (_tmp30_, "pad-added", (GCallback) _rygel_mp2_ts_transcoder_bin_decodebin_pad_added_gst_element_pad_added, self, 0);
420
#line 66 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
422
#line 66 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
423
_dynamic_autoplug_continue1_connect (_tmp31_, "autoplug_continue", (GCallback) _rygel_mp2_ts_transcoder_bin_autoplug_continue_dynamic_autoplug_continue0_, self);
424
#line 41 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
425
_gst_object_unref0 (ghost);
426
#line 41 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
427
_gst_object_unref0 (src_pad);
428
#line 41 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
429
_g_object_unref0 (mp3_transcoder);
430
#line 41 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
431
_gst_object_unref0 (decodebin);
432
#line 41 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
434
#line 435 "rygel-mp2ts-transcoder-bin.c"
438
RygelMP2TSTranscoderBin* rygel_mp2_ts_transcoder_bin_new (RygelMediaItem* item, GstElement* src, RygelMP2TSTranscoder* transcoder, GError** error) {
439
#line 41 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
440
return rygel_mp2_ts_transcoder_bin_construct (RYGEL_TYPE_MP2_TS_TRANSCODER_BIN, item, src, transcoder, error);
441
#line 442 "rygel-mp2ts-transcoder-bin.c"
445
static gboolean rygel_mp2_ts_transcoder_bin_autoplug_continue (RygelMP2TSTranscoderBin* self, GstElement* decodebin, GstPad* new_pad, GstCaps* caps) {
446
gboolean result = FALSE;
449
GstPad* _tmp2_ = NULL;
452
#line 69 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
453
g_return_val_if_fail (self != NULL, FALSE);
454
#line 69 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
455
g_return_val_if_fail (decodebin != NULL, FALSE);
456
#line 69 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
457
g_return_val_if_fail (new_pad != NULL, FALSE);
458
#line 69 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
459
g_return_val_if_fail (caps != NULL, FALSE);
460
#line 72 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
461
_tmp0_ = self->priv->muxer;
462
#line 72 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
464
#line 72 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
465
_tmp2_ = gst_element_get_compatible_pad (_tmp0_, _tmp1_, NULL);
466
#line 72 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
468
#line 74 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
470
#line 74 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
471
if (_tmp3_ == NULL) {
472
#line 75 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
474
#line 75 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
475
_gst_object_unref0 (muxer_pad);
476
#line 75 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
478
#line 479 "rygel-mp2ts-transcoder-bin.c"
482
GstPadLinkReturn _tmp6_ = 0;
483
#line 77 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
485
#line 77 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
487
#line 77 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
488
_tmp6_ = gst_pad_link (_tmp4_, _tmp5_);
489
#line 77 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
490
result = _tmp6_ != GST_PAD_LINK_OK;
491
#line 77 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
492
_gst_object_unref0 (muxer_pad);
493
#line 77 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
495
#line 496 "rygel-mp2ts-transcoder-bin.c"
497
#line 69 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
498
_gst_object_unref0 (muxer_pad);
499
#line 500 "rygel-mp2ts-transcoder-bin.c"
503
static void rygel_mp2_ts_transcoder_bin_decodebin_pad_added (RygelMP2TSTranscoderBin* self, GstElement* decodebin, GstPad* new_pad) {
504
GstElement* encoder = NULL;
505
GstPad* enc_pad = NULL;
507
GstPad* _tmp1_ = NULL;
508
GstPad* audio_enc_pad;
510
GstPad* _tmp3_ = NULL;
511
GstPad* video_enc_pad;
514
gboolean _tmp6_ = FALSE;
519
GstPadLinkReturn _tmp22_ = 0;
520
#line 81 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
521
g_return_if_fail (self != NULL);
522
#line 81 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
523
g_return_if_fail (decodebin != NULL);
524
#line 81 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
525
g_return_if_fail (new_pad != NULL);
526
#line 85 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
527
_tmp0_ = self->priv->audio_enc;
528
#line 85 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
529
_tmp1_ = gst_element_get_pad (_tmp0_, RYGEL_MP2_TS_TRANSCODER_BIN_AUDIO_ENC_SINK);
530
#line 85 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
531
audio_enc_pad = _tmp1_;
532
#line 86 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
533
_tmp2_ = self->priv->video_enc;
534
#line 86 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
535
_tmp3_ = gst_element_get_pad (_tmp2_, RYGEL_MP2_TS_TRANSCODER_BIN_VIDEO_ENC_SINK);
536
#line 86 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
537
video_enc_pad = _tmp3_;
538
#line 89 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
540
#line 89 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
541
_tmp5_ = audio_enc_pad;
542
#line 89 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
543
_tmp6_ = gst_pad_can_link (_tmp4_, _tmp5_);
544
#line 89 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
546
#line 547 "rygel-mp2ts-transcoder-bin.c"
551
#line 90 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
552
_tmp7_ = self->priv->audio_enc;
553
#line 90 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
554
_tmp8_ = _gst_object_ref0 (_tmp7_);
555
#line 90 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
556
_gst_object_unref0 (encoder);
557
#line 90 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
559
#line 91 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
560
_tmp9_ = audio_enc_pad;
561
#line 91 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
562
_tmp10_ = _gst_object_ref0 (_tmp9_);
563
#line 91 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
564
_gst_object_unref0 (enc_pad);
565
#line 91 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
567
#line 568 "rygel-mp2ts-transcoder-bin.c"
571
gboolean _tmp13_ = FALSE;
572
#line 92 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
574
#line 92 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
575
_tmp12_ = video_enc_pad;
576
#line 92 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
577
_tmp13_ = gst_pad_can_link (_tmp11_, _tmp12_);
578
#line 92 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
580
#line 581 "rygel-mp2ts-transcoder-bin.c"
585
#line 93 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
586
_tmp14_ = self->priv->video_enc;
587
#line 93 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
588
_tmp15_ = _gst_object_ref0 (_tmp14_);
589
#line 93 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
590
_gst_object_unref0 (encoder);
591
#line 93 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
593
#line 94 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
594
_tmp16_ = video_enc_pad;
595
#line 94 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
596
_tmp17_ = _gst_object_ref0 (_tmp16_);
597
#line 94 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
598
_gst_object_unref0 (enc_pad);
599
#line 94 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
601
#line 602 "rygel-mp2ts-transcoder-bin.c"
603
#line 96 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
604
_gst_object_unref0 (video_enc_pad);
605
#line 96 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
606
_gst_object_unref0 (audio_enc_pad);
607
#line 96 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
608
_gst_object_unref0 (enc_pad);
609
#line 96 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
610
_gst_object_unref0 (encoder);
611
#line 96 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
613
#line 614 "rygel-mp2ts-transcoder-bin.c"
616
#line 99 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
618
#line 99 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
619
_tmp19_ = self->priv->muxer;
620
#line 99 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
621
gst_element_link (_tmp18_, _tmp19_);
622
#line 101 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
624
#line 101 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
626
#line 101 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
627
_tmp22_ = gst_pad_link (_tmp20_, _tmp21_);
628
#line 101 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
629
if (_tmp22_ != GST_PAD_LINK_OK) {
630
#line 631 "rygel-mp2ts-transcoder-bin.c"
631
const gchar* _tmp23_ = NULL;
644
#line 102 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
645
_tmp23_ = _ ("Failed to link pad %s to %s");
646
#line 102 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
648
#line 102 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
649
_tmp25_ = gst_object_get_name ((GstObject*) _tmp24_);
650
#line 102 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
652
#line 102 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
654
#line 102 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
656
#line 102 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
657
_tmp29_ = gst_object_get_name ((GstObject*) _tmp28_);
658
#line 102 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
660
#line 102 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
662
#line 102 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
663
_tmp32_ = g_error_new (RYGEL_GST_ERROR, RYGEL_GST_ERROR_LINK, _tmp23_, _tmp27_, _tmp31_);
664
#line 102 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
666
#line 102 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
668
#line 102 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
670
#line 102 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
672
#line 105 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
674
#line 105 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
675
rygel_gst_utils_post_error ((GstElement*) self, _tmp34_);
676
#line 101 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
677
_g_error_free0 (_error_);
678
#line 679 "rygel-mp2ts-transcoder-bin.c"
680
#line 81 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
681
_gst_object_unref0 (video_enc_pad);
682
#line 81 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
683
_gst_object_unref0 (audio_enc_pad);
684
#line 81 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
685
_gst_object_unref0 (enc_pad);
686
#line 81 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
687
_gst_object_unref0 (encoder);
688
#line 689 "rygel-mp2ts-transcoder-bin.c"
692
static void rygel_mp2_ts_transcoder_bin_class_init (RygelMP2TSTranscoderBinClass * klass) {
693
#line 30 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
694
rygel_mp2_ts_transcoder_bin_parent_class = g_type_class_peek_parent (klass);
695
#line 30 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
696
g_type_class_add_private (klass, sizeof (RygelMP2TSTranscoderBinPrivate));
697
#line 30 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
698
G_OBJECT_CLASS (klass)->finalize = rygel_mp2_ts_transcoder_bin_finalize;
699
#line 700 "rygel-mp2ts-transcoder-bin.c"
703
static void rygel_mp2_ts_transcoder_bin_instance_init (RygelMP2TSTranscoderBin * self) {
704
#line 30 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
705
self->priv = RYGEL_MP2_TS_TRANSCODER_BIN_GET_PRIVATE (self);
706
#line 707 "rygel-mp2ts-transcoder-bin.c"
710
static void rygel_mp2_ts_transcoder_bin_finalize (GObject* obj) {
711
RygelMP2TSTranscoderBin * self;
712
#line 30 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
713
self = RYGEL_MP2_TS_TRANSCODER_BIN (obj);
714
#line 37 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
715
_gst_object_unref0 (self->priv->audio_enc);
716
#line 38 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
717
_gst_object_unref0 (self->priv->video_enc);
718
#line 39 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
719
_gst_object_unref0 (self->priv->muxer);
720
#line 30 "/home/jens/Source/rygel/src/rygel/rygel-mp2ts-transcoder-bin.vala"
721
G_OBJECT_CLASS (rygel_mp2_ts_transcoder_bin_parent_class)->finalize (obj);
722
#line 723 "rygel-mp2ts-transcoder-bin.c"
727
* A Gst.Bin derivative that implements transcoding of any type of media (using
728
* decodebin2) to mpeg transport stream containing mpeg 2 video and mp2 audio.
730
GType rygel_mp2_ts_transcoder_bin_get_type (void) {
731
static volatile gsize rygel_mp2_ts_transcoder_bin_type_id__volatile = 0;
732
if (g_once_init_enter (&rygel_mp2_ts_transcoder_bin_type_id__volatile)) {
733
static const GTypeInfo g_define_type_info = { sizeof (RygelMP2TSTranscoderBinClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) rygel_mp2_ts_transcoder_bin_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (RygelMP2TSTranscoderBin), 0, (GInstanceInitFunc) rygel_mp2_ts_transcoder_bin_instance_init, NULL };
734
GType rygel_mp2_ts_transcoder_bin_type_id;
735
rygel_mp2_ts_transcoder_bin_type_id = g_type_register_static (GST_TYPE_BIN, "RygelMP2TSTranscoderBin", &g_define_type_info, 0);
736
g_once_init_leave (&rygel_mp2_ts_transcoder_bin_type_id__volatile, rygel_mp2_ts_transcoder_bin_type_id);
738
return rygel_mp2_ts_transcoder_bin_type_id__volatile;