Newer
Older
* gst/flx/flx_color.c:
* gst/flx/flx_fmt.h:
* gst/flx/gstflxdec.c:
* gst/flx/gstflxdec.h:
flxdec: rewrite logic based on GstByteReader/Writer
Solves overreading/writing the given arrays and will error out if the
streams asks to do that.
Also does more error checking that the stream is valid and won't
overrun any allocated arrays. Also mitigate integer overflow errors
calculating allocation sizes.
https://bugzilla.gnome.org/show_bug.cgi?id=774859
2016-11-23 11:20:49 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/flx/gstflxdec.c:
flxdec: Don't unref() parent in the chain function
We don't own the reference here, it is owned by the caller and given to
us for the scope of this function. Leftover mistake from 0.10 porting.
https://bugzilla.gnome.org/show_bug.cgi?id=774897
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
2016-11-22 20:33:29 +0200 Sebastian Dröge <sebastian@centricular.com>
* ext/vpx/gstvpxdec.c:
vpxdec: libvpx's release buffer is sometimes called with fb->priv==NULL
Don't assert on this but just ignore these cases.
2016-11-22 20:24:59 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/matroska/matroska-demux.c:
matroskademux: Fix cluster searching if we search multiple times in one chunk
After finding a cluster id in the byte reader, we skip ahead the reader
position by one further byte to be able to continue searching from there
inside the same chunk if the cluster candidate was a false positive.
We have to accomodate for that additional byte when resuming the search,
otherwise all following pulls are off-by-one for every resume and we run
into an assertion.
2016-11-22 20:01:20 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/matroska/matroska-ids.c:
matroska: Add size checks to the parsing of FLAC headers
2016-11-22 23:46:00 +1100 Matthew Waters <matthew@centricular.com>
* gst/flx/gstflxdec.c:
flxdec: fix some warnings comparing unsigned < 0
bf43f44fcfada5ec4a3ce60cb374340486fe9fac was comparing an unsigned
expression to be < 0 which was always false.
gstflxdec.c: In function ‘flx_decode_brun’:
gstflxdec.c:322:33: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits]
if ((glong) row - count < 0) {
^
gstflxdec.c:332:33: warning: comparison of unsigned expression < 0 is always false [-Wtype-limits]
if ((glong) row - count < 0) {
^
https://bugzilla.gnome.org/show_bug.cgi?id=774834
2016-11-21 16:17:31 +0200 Vivia Nikolaidou <vivia@ahiru.eu>
* gst/isomp4/gstqtmuxmap.c:
qtmux: Enable up to 16 unpositioned raw audio channels
https://bugzilla.gnome.org/show_bug.cgi?id=774789
2016-11-22 19:05:00 +1100 Matthew Waters <matthew@centricular.com>
* gst/flx/gstflxdec.c:
flxdec: add some write bounds checking
Without checking the bounds of the frame we are writing into, we can
write off the end of the destination buffer.
https://scarybeastsecurity.blogspot.dk/2016/11/0day-exploit-advancing-exploitation.html
https://bugzilla.gnome.org/show_bug.cgi?id=774834
2016-11-21 15:25:23 +0000 David Evans <bbcrddave@gmail.com>
* gst/isomp4/qtdemux.c:
qtdemux: Be sure not to read off end of FLAC dfLa box
https://bugzilla.gnome.org/show_bug.cgi?id=773712
2016-11-21 11:48:58 +0100 Nicola Murino <nicola.murino@gmail.com>
* gst/matroska/matroska-demux.c:
matroskademux: add support for skipping invalid data in push mode
https://bugzilla.gnome.org/show_bug.cgi?id=774566
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101
4102
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112
4113
4114
2016-11-21 11:48:29 +0100 Nicola Murino <nicola.murino@gmail.com>
* gst/matroska/matroska-parse.c:
* gst/matroska/matroska-read-common.c:
* gst/matroska/matroska-read-common.h:
matroskaparse: add support for skipping invalid data
https://bugzilla.gnome.org/show_bug.cgi?id=774566
2016-11-18 17:00:59 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtsp/gstrtspsrc.c:
rtspsrc: Move to new helper function to parse authentication responses
https://bugzilla.gnome.org/show_bug.cgi?id=774416
2016-11-20 14:12:16 +0100 christophecvr <stefansat@telenet.be>
* gst/isomp4/qtdemux.c:
qtdemux: Fix wrong compiler warning with gcc 6.2
| ../../../git/gst/isomp4/qtdemux.c: In function 'qtdemux_parse_tree':
| ../../../git/gst/isomp4/qtdemux.c:10224:24: error: 'size' may be used uninitialized in this function [-Werror=maybe-uninitialized]
| offset += size;
| ^~
| ../../../git/gst/isomp4/qtdemux.c:10197:25: note: 'size' was declared here
| guint32 size, tag;
| ^~~~
https://bugzilla.gnome.org/show_bug.cgi?id=774747
2016-11-20 16:15:07 +0000 Tim-Philipp Müller <tim@centricular.com>
* Makefile.am:
win32: remove copies of generated headers
2016-11-20 13:14:08 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/avi/gstavidemux.c:
* gst/avi/gstavidemux.h:
avidemux: Ensure that raw video have properly aligned buffers
That is, aligned to to 32 bytes for video. Fixes crashes if the raw
buffers are passed to SIMD processing functions.
https://bugzilla.gnome.org/show_bug.cgi?id=774428
2016-11-20 13:08:27 +0200 Sebastian Dröge <sebastian@centricular.com>
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177
4178
4179
4180
4181
4182
4183
4184
4185
4186
4187
4188
4189
4190
4191
4192
4193
4194
4195
4196
4197
4198
4199
4200
4201
* gst/isomp4/qtdemux.c:
qtdemux: Ensure that raw audio and video have properly aligned buffers
That is, aligned to the basic type for audio and to 32 bytes for video.
Fixes crashes if the raw buffers are passed to SIMD processing functions.
https://bugzilla.gnome.org/show_bug.cgi?id=774428
2016-11-14 14:44:11 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/gstqtmux.c:
qtmux: Always write edit lists for the tracks to give a more accurate duration
Always write an edit list for the whole track. In general this is not
necessary except for the case of having a gap or DTS adjustment but
it allows to give the whole track's duration in the usually more
accurate media timescale.
https://bugzilla.gnome.org/show_bug.cgi?id=774403
2016-11-18 22:45:45 +0900 Seungha Yang <sh.yang@lge.com>
* gst/isomp4/qtdemux.c:
qtdemux: Remove useless return variable
qtdemux_expose_streams() returns flow error immediately, if there is an error.
So, the variable for the flow return is not needed.
https://bugzilla.gnome.org/show_bug.cgi?id=774674
2016-11-17 13:59:48 +0000 David Evans <bbcrddave@gmail.com>
* gst/isomp4/fourcc.h:
* gst/isomp4/qtdemux.c:
* gst/isomp4/qtdemux_dump.c:
* gst/isomp4/qtdemux_dump.h:
* gst/isomp4/qtdemux_types.c:
qtdemux: Add support for FLAC encapsulated in ISOBMFF
As defined by
https://git.xiph.org/?p=flac.git;a=blob_plain;f=doc/isoflac.txt
https://bugzilla.gnome.org/show_bug.cgi?id=773712
2016-11-17 19:59:53 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/rtpmanager/gstrtpmux.c:
rtpmux: Mark pad as needing reconfiguration again if it failed
And return FLUSHING instead of NOT_NEGOTIATED on flushing pads.
https://bugzilla.gnome.org/show_bug.cgi?id=774623
2016-11-17 19:59:26 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/monoscope/gstmonoscope.c:
monoscope: Mark pad as needing reconfiguration again if it failed
And return FLUSHING instead of NOT_NEGOTIATED on flushing pads.
https://bugzilla.gnome.org/show_bug.cgi?id=774623
2016-11-17 19:58:52 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/deinterlace/gstdeinterlace.c:
deinterlace: Mark pad as needing reconfiguration again if reconfiguration failed
And consider negotiation failures on flushing pads as FLUSHING, not as
NOT_NEGOTIATED.
https://bugzilla.gnome.org/show_bug.cgi?id=774623
2016-11-17 19:56:23 +0200 Sebastian Dröge <sebastian@centricular.com>
* ext/dv/gstdvdec.c:
dvdec: Fix handling of negotiation failures
Return NOT_NEGOTIATED if sending the caps event fails, or FLUSHING if
the pad was flushing at that point.
https://bugzilla.gnome.org/show_bug.cgi?id=774623
2016-11-17 17:16:26 -0800 Scott D Phillips <scott.d.phillips@intel.com>
* meson.build:
meson: add_global_arguments -> add_project_arguments
https://bugzilla.gnome.org/show_bug.cgi?id=774656
2016-11-16 10:53:51 +0530 Vinod Kesti <vinodkesti@yahoo.com>
* gst/multifile/gstsplitmuxsink.c:
splitmuxsink: pad request fails for flvmux
splitmuxsink requests pad from element using pad template like "video_%u", "audio_%u" and "sink_%d". This is true for most of the muxers.
But splitmuxsink not able to request pad to flvmux as flvmux has "audio" and "video" as pad templates.
fix: splitmuxsink should fallback to "audio" and "video" when template not found.
https://bugzilla.gnome.org/show_bug.cgi?id=774507
4212
4213
4214
4215
4216
4217
4218
4219
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
4257
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268
2016-11-17 10:24:28 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/matroska/matroska-parse.c:
matroskaparse: Add remaining relevant parts from a3a55305 to the parser
https://bugzilla.gnome.org/show_bug.cgi?id=774566
2016-11-16 22:39:01 +0100 Nicola Murino <nicola.murino@gmail.com>
* gst/matroska/matroska-parse.c:
matroskaparse: ignore parsing errors at the end of the file
This is the same change as a3a55305 for the parser.
https://bugzilla.gnome.org/show_bug.cgi?id=774566
2016-11-16 08:56:34 +0100 Philippe Normand <philn@igalia.com>
* docs/plugins/gst-plugins-good-plugins.signals:
* gst/rtpmanager/gstrtpbin.c:
* gst/rtpmanager/gstrtpbin.h:
* tests/check/Makefile.am:
* tests/check/elements/.gitignore:
* tests/check/elements/rtpbundle.c:
* tests/check/meson.build:
* tests/examples/rtp/.gitignore:
* tests/examples/rtp/Makefile.am:
* tests/examples/rtp/client-rtpbundle.c:
* tests/examples/rtp/server-rtpbundle.c:
rtpbin: receive bundle support
A new signal named on-bundled-ssrc is provided and can be
used by the application to redirect a stream to a different
GstRtpSession or to keep the RTX stream grouped within the
GstRtpSession of the same media type.
https://bugzilla.gnome.org/show_bug.cgi?id=772740
2016-11-15 16:52:39 +0530 Vinod Kesti <vinodkesti@yahoo.com>
* gst/audioparsers/gstaacparse.c:
aacparse: assertion while converting ADTS stream to RAW
aacparse resizes input buffer while converting ADTS stream to RAW,
During buffer resize buffer write permission is not checked.
This throws gst_buffer_is_writable assertion and leads to AV sync issue some times.
It is corrected by making buffer writeable using gst_buffer_make_writable
https://bugzilla.gnome.org/show_bug.cgi?id=774129
2016-11-15 21:17:51 +0900 Seungha Yang <sh.yang@lge.com>
* gst/isomp4/qtdemux.c:
qtdemux: Don't modify upstream TIME segment
TIME segment implies that stream/running time is being handled by upstream.
So, we shouldn't override it without any clue.
This patch is for fixing seek in DASH streaming.
https://bugzilla.gnome.org/show_bug.cgi?id=774196
2016-11-14 22:33:27 +0530 Arun Raghavan <arun@osg.samsung.com>
* config.h.meson:
meson: Add define for v4l2-probe config option
2016-11-14 17:37:51 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/interleave/deinterleave.c:
deinterleave: Reset caps accumulator to ANY when resyncing the adapter, not EMPTY
The accumulator is filled by intersecting with all the pad caps, as such
it must be initialized with ANY (like it is before the iteration is
started) and not to EMPTY.
Fixes the CAPS query always returning EMPTY caps when resyncing happened
during the query, e.g. because pads were added/removed.
2016-11-14 12:13:14 +0100 Petr Kulhavy <brain@jikos.cz>
* gst/udp/gstudpsrc.c:
udpsrc: remove redundant saddr unref
The g_object_unref (saddr) before receiving message seems to be redundant as it
is done just before jumping to retry
Though not directly related, part of
https://bugzilla.gnome.org/show_bug.cgi?id=772841
2016-11-12 23:34:23 +0100 Petr Kulhavy <brain@jikos.cz>
* gst/udp/gstudpsrc.c:
udpsrc: receive control messages only in multicast
Control messages are used only in multicast mode - to detect if the destination
address is not ours and possibly drop the packet. However in non-multicast
modes the messages are still allocated and freed even if not used. Therefore
request control messages from g_socket_receive_message() only in multicast
mode.
https://bugzilla.gnome.org/show_bug.cgi?id=772841
4299
4300
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313
4314
4315
4316
4317
4318
4319
4320
4321
4322
4323
4324
4325
4326
4327
4328
4329
4330
4331
4332
4333
4334
4335
4336
4337
4338
4339
4340
4341
4342
4343
4344
4345
4346
4347
4348
4349
4350
4351
4352
4353
4354
4355
4356
4357
4358
4359
4360
4361
4362
4363
4364
4365
4366
4367
4368
4369
4370
4371
4372
4373
4374
4375
4376
4377
4378
4379
4380
4381
4382
4383
4384
4385
4386
4387
4388
4389
4390
4391
4392
4393
4394
4395
4396
4397
4398
4399
4400
4401
4402
4403
4404
4405
4406
4407
4408
4409
4410
4411
4412
4413
4414
4415
4416
4417
4418
4419
4420
4421
4422
4423
4424
4425
4426
4427
4428
4429
4430
4431
4432
4433
4434
4435
4436
4437
4438
4439
4440
4441
4442
4443
4444
4445
4446
4447
4448
4449
4450
4451
4452
4453
4454
4455
4456
4457
4458
4459
4460
4461
4462
4463
4464
4465
4466
4467
4468
4469
4470
4471
4472
4473
4474
4475
4476
4477
4478
4479
4480
4481
4482
4483
4484
4485
4486
4487
4488
4489
4490
4491
4492
4493
4494
4495
4496
4497
4498
4499
4500
4501
4502
4503
4504
4505
4506
4507
4508
4509
4510
4511
4512
4513
4514
4515
4516
4517
4518
4519
4520
4521
4522
4523
4524
4525
4526
4527
4528
4529
4530
4531
4532
4533
4534
4535
4536
4537
4538
4539
4540
4541
4542
4543
4544
4545
4546
4547
4548
4549
4550
4551
4552
4553
4554
4555
4556
4557
4558
4559
4560
4561
4562
4563
4564
4565
4566
4567
4568
4569
4570
4571
4572
4573
4574
4575
4576
4577
4578
4579
4580
4581
4582
4583
4584
4585
4586
4587
4588
4589
4590
4591
4592
4593
4594
4595
4596
4597
4598
4599
4600
4601
4602
4603
4604
4605
4606
4607
4608
4609
4610
4611
4612
4613
4614
4615
4616
4617
4618
4619
4620
4621
4622
4623
4624
4625
4626
4627
4628
4629
4630
4631
4632
4633
4634
4635
4636
4637
4638
4639
4640
4641
4642
4643
4644
4645
4646
4647
4648
4649
4650
4651
4652
4653
4654
4655
4656
4657
4658
4659
4660
4661
4662
2016-11-11 10:45:01 -0800 Scott D Phillips <scott.d.phillips@intel.com>
* gst/matroska/matroska-mux.c:
Use intermediate guint when handling GstVideoMultiviewFlags
The underlying integer type of the enum GstVideoMultiviewFlags is
implementation defined and may not have the same size as guint.
https://bugzilla.gnome.org/show_bug.cgi?id=774293
2016-11-11 10:44:18 -0800 Scott D Phillips <scott.d.phillips@intel.com>
* gst/multifile/gstsplitfilesrc.c:
splitfilesrc: update uri_get_type to match the prototype in GstURIHandlerInterface
https://bugzilla.gnome.org/show_bug.cgi?id=774293
2016-10-26 22:37:34 -0700 Scott D Phillips <scott.d.phillips@intel.com>
* meson.build:
meson: don't add_global_arguments when being built as a subproject
https://bugzilla.gnome.org/show_bug.cgi?id=773568
2016-10-21 15:49:36 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
* gst/audioparsers/gstflacparse.c:
* gst/audioparsers/gstflacparse.h:
flacparse: fix header rewriting being ignored
https://bugzilla.gnome.org/show_bug.cgi?id=727802
2016-11-09 06:25:27 +0000 Sean DuBois <sean@siobud.com>
* gst/flv/gstflvmux.c:
* gst/flv/gstflvmux.h:
flvmux: Add metadatacreator property
Allow users to set metadatacreator value in the meta packet
https://bugzilla.gnome.org/show_bug.cgi?id=774131
2016-11-01 19:56:36 +0200 Vivia Nikolaidou <vivia@toolsonair.com>
* gst/multifile/gstsplitmuxsink.c:
* gst/multifile/gstsplitmuxsink.h:
splitmuxsink: Use first buffer TS as mux start time
Do not use last buffer TS + buffer duration because buffer duration
might be inaccurate, especially for frame rates like 30fps where a
rounding error is observed.
https://bugzilla.gnome.org/show_bug.cgi?id=773785
2016-11-03 15:03:59 +0100 Havard Graff <havard.graff@gmail.com>
* gst/rtpmanager/gstrtpjitterbuffer.c:
* tests/check/elements/rtpjitterbuffer.c:
rtpjitterbuffer: fix timer-reuse bug
When doing rtx, the jitterbuffer will always add an rtx-timer for the next
sequence number.
In the case of the packet corresponding to that sequence number arriving,
that same timer will be reused, and simply moved on to wait for the
following sequence number etc.
Once an rtx-timer expires (after all retries), it will be rescheduled as
a lost-timer instead for the same sequence number.
Now, if this particular sequence-number now arrives (after the timer has
become a lost-timer), the reuse mechanism *should* now set a new
rtx-timer for the next sequence number, but the bug is that it does
not change the timer-type, and hence schedules a lost-timer for that
following sequence number, with the result that you will have a very
early lost-event for a packet that might still arrive, and you will
never be able to send any rtx for this packet.
Found by Erlend Graff - erlend@pexip.com
https://bugzilla.gnome.org/show_bug.cgi?id=773891
2016-10-09 15:59:05 +0200 Havard Graff <havard.graff@gmail.com>
* gst/rtpmanager/gstrtpjitterbuffer.c:
* gst/rtpmanager/rtpjitterbuffer.c:
* gst/rtpmanager/rtpjitterbuffer.h:
* tests/check/elements/rtpjitterbuffer.c:
rtpjitterbuffer: fix lost-event using dts instead of pts
The lost-event was using a different time-domain (dts) than the outgoing
buffers (pts). Given certain network-conditions these two would become
sufficiently different and the lost-event contained timestamp/duration
that was really wrong. As an example GstAudioDecoder could produce
a stream that jumps back and forth in time after receiving a lost-event.
The previous behavior calculated the pts (based on the rtptime) inside the
rtp_jitter_buffer_insert function, but now this functionality has been
refactored into a new function rtp_jitter_buffer_calculate_pts that is
called much earlier in the _chain function to make pts available to
various calculations that wrongly used dts previously
(like the lost-event).
There are however two calculations where using dts is the right thing to
do: calculating the receive-jitter and the rtx-round-trip-time, where the
arrival time of the buffer from the network is the right metric
(and is what dts in fact is today).
The patch also adds two tests regarding B-frames or the
“rtptime-going-backwards”-scenario, as there were some concerns that this
patch might break this behavior (which the tests shows it does not).
2016-11-03 16:33:53 +0100 Havard Graff <havard.graff@gmail.com>
* gst/rtpmanager/gstrtpjitterbuffer.c:
* tests/check/elements/rtpjitterbuffer.c:
rtpjitterbuffer: fix bug in reschedule_timer
The new timeout is always going to be (timeout + delay), however, the
old behavior compared the current timeout to just (timeout), basically
being (delay) off.
This would happen if rtx-delay == rtx-retry-timeout, with the result that
a second rtx attempt for any buffers would be scheduled immediately instead
of after rtx-delay ms.
Simply calculate (new_timeout = timeout + delay) and then use that instead.
https://bugzilla.gnome.org/show_bug.cgi?id=773905
2016-11-03 13:27:51 +0000 Tim-Philipp Müller <tim@centricular.com>
* tests/check/elements/wavparse.c:
* tests/files/Makefile.am:
* tests/files/audiotestsrc.wav:
tests: wavparse: add test for processing an actual .wav file
https://bugzilla.gnome.org/show_bug.cgi?id=773861
2016-11-03 12:34:51 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/wavparse/gstwavparse.c:
wavparse: Don't set caps to NULL after setting them on the srcpad
We would like to check later on EOS if we found a known stream type or
not, to possibly post an error message.
https://bugzilla.gnome.org/show_bug.cgi?id=773861
2016-11-02 14:33:28 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/gstqtmux.c:
qtmux: Don't deref NULL pads in debug output
That tends to crash.
2016-11-02 11:46:07 +1100 Jan Schmidt <jan@centricular.com>
* gst/isomp4/qtdemux.c:
isomp4: Don't use gst_video_colorimetry_to_string_full()
The API was reverted. Just use the plain
gst_video_colorimetry_to_string() function.
2016-11-02 11:00:13 +1100 Jan Schmidt <jan@centricular.com>
* gst/multifile/gstsplitmuxsink.c:
splitmuxsink: Fix GObject warnings on shutdown.
Commit 83e718 added a pad template to splitmux request
pads, which means that GstElement now releases the pads on
dispose, but after having removed all elements in the bin
and unlinked them. Make sure we can handle cleanup in that case
without throwing assertions.
https://bugzilla.gnome.org/show_bug.cgi?id=773784
2016-11-02 02:25:51 +1100 Jan Schmidt <jan@centricular.com>
* gst/multifile/gstsplitmuxsrc.c:
* gst/multifile/gstsplitmuxsrc.h:
splitmuxsrc: Store seek seqnum and send it on EOS / segment events.
GES relies on the EOS event having the seqnum of the seek that
caused it.
2016-11-02 02:25:00 +1100 Jan Schmidt <jan@centricular.com>
* gst/multifile/gstsplitmuxsrc.c:
splitmuxsrc: Forward a not-linked error on the bus
Handle not-linked as for other fatal errors and post it
onto the bus so the app knows
2016-11-01 21:00:15 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/qtdemux.c:
qtdemux: Fix compiler warning
qtdemux.c: In function ‘qtdemux_parse_tree’:
qtdemux.c:10139:16: error: ‘color_table_id’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
if (color_table_id != 0) {
^
qtdemux.c:10121:19: note: ‘color_table_id’ was declared here
guint16 color_table_id;
^~~~~~~~~~~~~~
2016-10-20 17:40:59 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/gstqtmux.c:
qtmux: Use a default interleave of 250ms for all codecs
https://bugzilla.gnome.org/show_bug.cgi?id=773217
2016-10-19 14:33:33 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/gstqtmux.c:
qtmux: Use a default interleave when ProRes is used
The ProRes guidelines suggest an interleave of 0.5s is common, but
specifies that for ProRes at most 2MB (for SD) and 4MB (for HD) should
be used per chunk.
It might also make sense to use similar numbers in general.
https://bugzilla.gnome.org/show_bug.cgi?id=773217
2016-10-19 14:25:28 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/atoms.c:
* gst/isomp4/gstqtmux.c:
* gst/isomp4/gstqtmux.h:
qtmux: Allow configuring the interleave size in bytes/time
Previously we were switching from one chunk to another on every single
buffer. This wastes some space in the headers and, depending on the
software, might depend in more reads (e.g. if the software is reading
multiple samples in one go if they're in the same chunk).
The ProRes guidelines suggest an interleave of 0.5s is common, but
specifies that for ProRes at most 2MB (for SD) and 4MB (for HD) should
be used per chunk. This will be handled in a follow-up commit.
https://bugzilla.gnome.org/show_bug.cgi?id=773217
2016-09-30 18:22:27 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/gstqtmux.c:
qtmux: Set compressor name, horizontal/vertical resolution and depth for ProRes
This is also required by some software to handle ProRes files.
https://bugzilla.gnome.org/show_bug.cgi?id=769048
2016-09-30 18:05:38 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/fourcc.h:
* gst/isomp4/gstqtmux.c:
* gst/isomp4/qtdemux.c:
qt: Add support for ProRes 4444 XQ
And also 4444 in the muxer.
https://bugzilla.gnome.org/show_bug.cgi?id=769048
2016-09-30 17:58:37 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/atoms.c:
* gst/isomp4/atoms.h:
* gst/isomp4/fourcc.h:
* gst/isomp4/gstqtmux.c:
* gst/isomp4/qtdemux_types.c:
qtmux: Write 'clap' atom for ProRes
It's required for ProRes to work with other software.
It is also in the MP4 standard, but inventing values here seems a bit
tricky for the general case and it does not really give any extra
information.
https://bugzilla.gnome.org/show_bug.cgi?id=769048
2016-09-30 09:55:58 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/qtdemux.c:
qtdemux: Read colorimetry information from colr atom if available
https://bugzilla.gnome.org/show_bug.cgi?id=772181
2016-09-29 21:56:18 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/atoms.c:
* gst/isomp4/atoms.h:
* gst/isomp4/fourcc.h:
* gst/isomp4/gstqtmux.c:
qtmux: Always write colr atom with the colorimetry information
https://bugzilla.gnome.org/show_bug.cgi?id=772181
2016-09-29 18:16:18 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/atoms.c:
* gst/isomp4/atoms.h:
* gst/isomp4/gstqtmux.c:
qtmux: Fix writing of the 'fiel' extension atom
This was also wrong for JPEG2000. Also write it for all MOV files and
JPEG2000, not only for ProRes.
https://bugzilla.gnome.org/show_bug.cgi?id=769048
2016-09-29 17:40:23 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/atoms.c:
qtmux: Write 4 bytes of zeroes at the end of the sample description extensions
This is working around some broken software.
https://bugzilla.gnome.org/show_bug.cgi?id=769048
2016-09-28 20:55:24 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/atoms.c:
atoms: 'pasp' atom is also part of MP4, write it always
https://bugzilla.gnome.org/show_bug.cgi?id=769048
2016-07-11 19:30:12 +0300 Vivia Nikolaidou <vivia@ahiru.eu>
* gst/isomp4/atoms.c:
* gst/isomp4/atoms.h:
* gst/isomp4/fourcc.h:
* gst/isomp4/gstqtmux.c:
qtmux: Write additional atoms for prores video
These required atoms are: colorimetry, field information, spatial/temporal
quality, and vendor.
https://bugzilla.gnome.org/show_bug.cgi?id=769048
2014-06-16 17:20:32 +0200 Stian Selnes <stian.selnes@gmail.com>
* gst/rtp/gstrtph263depay.c:
rtph263depay: Don't drop mode b packets with picture start code
Some buggy payloaders, e.g. rtph263pay, may use mode B for packets
that starts with a picture (or GOB) start code although it's not
allowed. Let's be nice and not drop these packets/frames.
https://bugzilla.gnome.org/show_bug.cgi?id=773516
2016-06-22 13:59:35 +0200 Havard Graff <havard.graff@gmail.com>
* gst/rtp/gstrtph263ppay.c:
* tests/check/elements/rtph263.c:
rtph263ppay: Fix caps leak
Fix leaking caps when downstream has not-fixed caps.
https://bugzilla.gnome.org/show_bug.cgi?id=773515
2016-10-26 16:42:19 +0200 Stian Selnes <stian@pexip.com>
* gst/rtp/gstrtph263pay.c:
rtph263pay: Fix indentation
https://bugzilla.gnome.org/show_bug.cgi?id=773514
2016-10-18 11:35:58 +0200 Stian Selnes <stian@pexip.com>
* gst/rtp/gstrtph263pay.c:
rtph263pay: Use GST_TRACE_OBJECT for logging bitstream parsing
Bump the bitstream parsing to TRACE log level so it doesn't flood the
output when trying to read the more useful DEBUG and LOG messages.
Also use GST_DEBUG_OBJECT instead of GST_DEBUG in various places
https://bugzilla.gnome.org/show_bug.cgi?id=773514
2016-10-18 11:09:10 +0200 Stian Selnes <stian@pexip.com>
* gst/rtp/gstrtph263pay.c:
rtph263pay: Fix leak for B-fragments
Altough commits 6a16be7, 64f9d08 and 0c7e3a8 fixed some issues they
introduced others. This patch fixes the leak of one macroblock for every
B fragment.
Macroblock structures must not be freed immediately after finding the
boundaries as they are stored and used later. However the inital dummy
structure (used for finding the first boundary) must be freed.
CID #1212156
https://bugzilla.gnome.org/show_bug.cgi?id=773512
2016-10-20 13:14:13 +0200 Alejandro G. Castro <alex@igalia.com>
* gst/rtpmanager/rtpsession.c:
rtpbin: avoid generating errors when rtcp messages are empty and check the queue is not empty
Add a check to verify all the output buffers were empty for the
session in a timout and log an error.
https://bugzilla.gnome.org/show_bug.cgi?id=773269
2016-10-26 13:21:29 +0200 Alejandro G. Castro <alex@igalia.com>
* gst/rtpmanager/gstrtpsession.c:
* gst/rtpmanager/rtpsession.c:
* gst/rtpmanager/rtpsession.h:
rtpbin: pipeline gets an EOS when any rtpsources byes
Instead of sending EOS when a source byes we have to wait for
all the sources to be gone, which means they already sent BYE and
were removed from the session. We now handle the EOS in the rtcp
loop checking the amount of sources in the session.
https://bugzilla.gnome.org/show_bug.cgi?id=773218
2016-10-21 17:31:00 +0000 Matt Staples <staples255@gmail.com>
* gst/rtsp/gstrtspsrc.c:
rtspsrc: Also handle redirect on PLAY
https://bugzilla.gnome.org/show_bug.cgi?id=772610
2016-08-30 10:24:43 +0200 Petr Kulhavy <brain@jikos.cz>
* gst/rtsp/gstrtspsrc.c:
rtspsrc: allow missing control attribute in case of a single stream
Improve RFC2326 - chapter C.3 compatibility:
In case just a single stream is specified in SDP and the control attribute
is missing do not drop the stream but rather assume "a=control:*"
https://bugzilla.gnome.org/show_bug.cgi?id=770568
4663
4664
4665
4666
4667
4668
4669
4670
4671
4672
4673
4674
4675
4676
4677
4678
4679
4680
4681
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691
4692
4693
4694
4695
4696
4697
4698
4699
4700
4701
4702
4703
4704
4705
4706
4707
4708
4709
4710
4711
4712
4713
4714
2016-10-08 18:11:17 +0200 William Manley <will@williammanley.net>
* sys/v4l2/gstv4l2allocator.c:
v4l2: Warn, don't assert if v4l gives us a buffer with a too large size
I've seen problems where the `bytesused` field of `v4l2_buffer` would be
a silly number causing the later call to:
gst_memory_resize (group->mem[i], 0, group->planes[i].bytesused);
to result in this error to be printed:
(pulsevideo:11): GStreamer-CRITICAL **: gst_memory_resize: assertion 'size + mem->offset + offset <= mem->maxsize' failed
besides causing who-knows what other problems.
We make the assumption that this buffer has still been dequeued correctly
so just clamp to a valid size so downstream elements won't end up in
undefined behaviour.
The invalid `v4l2_buffer` I saw from my capture device was:
buffer = {
index = 0,
type = 1,
bytesused = 534748928, // <- Invalid
flags = 8260, // V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC | V4L2_BUF_FLAG_ERROR | V4L2_BUF_FLAG_DONE
field = 01330, // <- Invalid
timestamp = {
tv_sec = 0,
tv_usec = 0
},
timecode = {
type = 0,
flags = 0,
frames = 0 '\000',
seconds = 0 '\000',
minutes = 0 '\000',
hours = 0 '\000',
userbits = "\000\000\000"
},
sequence = 0,
memory = 2,
m = {
offset = 3537219584,
userptr = 140706665836544, // Could be nonsense, not sure
planes = 0x7ff8d2d5b000,
fd = -757747712
},
length = 2764800,
reserved2 = 0,
reserved = 0
}
This is from gdb with my own annotations added.
This was with gst-plugins-good 1.8.1, a Magewell XI100DUSB-HDMI video
capture device and kernel 3.13 using a dodgy HDMI cable which is great at
breaking HDMI capture devices. I'm using io-mode=userptr and have built
gst-plugins-good without libv4l.
https://bugzilla.gnome.org/show_bug.cgi?id=769765
2016-10-20 20:41:07 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/gstqtmux.c:
qtmux: Use a better default value for the movie header timescale
Take the maximum video timescale, or if no video track is present the
previous value of 1800.
https://bugzilla.gnome.org/show_bug.cgi?id=769041
2016-10-20 20:07:19 +0300 Sebastian Dröge <sebastian@centricular.com>
* gst/isomp4/gstqtmux.c:
qtmux: Be more clever with the default video track timescale
Use the number of milliframes per second for integral and drop-frame
framerates, as suggested by the QT file format specification and other
places. We already did that for integral framerates before, but not for
drop-frame framerates. This now keeps precision better.
For all other framerates, check if it's close to a well-known framerate
and use that instead.
https://bugzilla.gnome.org/show_bug.cgi?id=769041
2016-10-10 13:00:01 +0100 Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>
* gst/isomp4/qtdemux.c:
qtdemux: extract interlaced information from jpeg video
This information is hidden in a small chunk of data.
Format found at https://developer.apple.com/standards/qtff-2001.pdf,
page 92, "Video Sample Description", under table 3.1.
https://bugzilla.gnome.org/show_bug.cgi?id=767771
2016-10-26 12:46:28 +0530 Jagadish <jagadishkamathk@gmail.com>
* ext/gdk_pixbuf/gstgdkpixbufoverlay.c:
gdkpixbufoverlay: Fixing x and y offset computation
While computing the x and y offsets, it's the video resolution and
resized overlay resolution to be used instead of actual overlay image
resoltuion. Due to this, the overlay image used to get wrongly overlayed
in undesired location
https://bugzilla.gnome.org/show_bug.cgi?id=757292
2016-11-01 18:09:00 +0000 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
meson: update version
2016-10-24 16:56:31 +0000 Enrique Ocaña González <eocanha@igalia.com>
* gst/isomp4/qtdemux.c:
qtdemux: Use the tfdt decode time on byte streams when it's significantly different than the time in the last sample
We consider there's a sifnificant difference when it's larger than on second
or than half the duration of the last processed fragment in case the latter is
larger.
https://bugzilla.gnome.org/show_bug.cgi?id=754230
2016-11-01 18:53:15 +0200 Sebastian Dröge <sebastian@centricular.com>
2016-11-01 17:57:44 +0200 Sebastian Dröge <sebastian@centricular.com>
* ChangeLog:
* NEWS:
* RELEASE:
4783
4784
4785
4786
4787
4788
4789
4790
4791
4792
4793
4794
4795
4796
4797
4798
4799
4800
4801
4802
4803
4804
4805
4806
4807
4808
4809
4810
4811
4812
4813
4814
4815
4816
4817
4818
4819
4820
4821
4822
4823
4824
4825
4826
4827
4828
4829
4830
4831
4832
4833
4834
4835
4836
4837
4838
4839
4840
4841
4842
4843
4844
4845
4846
4847
4848
4849
4850
4851
4852
4853
4854
4855
4856
4857
4858
4859
4860
4861
4862
4863
4864
4865
4866
4867
4868
4869
4870
4871
4872
4873
4874
4875
4876
4877
4878
4879
4880
4881
4882
4883
4884
4885
4886
4887
4888
4889
4890
4891
4892
4893
4894
4895
4896
4897
* docs/plugins/gst-plugins-good-plugins.args:
* docs/plugins/inspect/plugin-1394.xml:
* docs/plugins/inspect/plugin-aasink.xml:
* docs/plugins/inspect/plugin-alaw.xml:
* docs/plugins/inspect/plugin-alpha.xml:
* docs/plugins/inspect/plugin-alphacolor.xml:
* docs/plugins/inspect/plugin-apetag.xml:
* docs/plugins/inspect/plugin-audiofx.xml:
* docs/plugins/inspect/plugin-audioparsers.xml:
* docs/plugins/inspect/plugin-auparse.xml:
* docs/plugins/inspect/plugin-autodetect.xml:
* docs/plugins/inspect/plugin-avi.xml:
* docs/plugins/inspect/plugin-cacasink.xml:
* docs/plugins/inspect/plugin-cairo.xml:
* docs/plugins/inspect/plugin-cutter.xml:
* docs/plugins/inspect/plugin-debug.xml:
* docs/plugins/inspect/plugin-deinterlace.xml:
* docs/plugins/inspect/plugin-dtmf.xml:
* docs/plugins/inspect/plugin-dv.xml:
* docs/plugins/inspect/plugin-effectv.xml:
* docs/plugins/inspect/plugin-equalizer.xml:
* docs/plugins/inspect/plugin-flac.xml:
* docs/plugins/inspect/plugin-flv.xml:
* docs/plugins/inspect/plugin-flxdec.xml:
* docs/plugins/inspect/plugin-gdkpixbuf.xml:
* docs/plugins/inspect/plugin-goom.xml:
* docs/plugins/inspect/plugin-goom2k1.xml:
* docs/plugins/inspect/plugin-icydemux.xml:
* docs/plugins/inspect/plugin-id3demux.xml:
* docs/plugins/inspect/plugin-imagefreeze.xml:
* docs/plugins/inspect/plugin-interleave.xml:
* docs/plugins/inspect/plugin-isomp4.xml:
* docs/plugins/inspect/plugin-jack.xml:
* docs/plugins/inspect/plugin-jpeg.xml:
* docs/plugins/inspect/plugin-level.xml:
* docs/plugins/inspect/plugin-matroska.xml:
* docs/plugins/inspect/plugin-mulaw.xml:
* docs/plugins/inspect/plugin-multifile.xml:
* docs/plugins/inspect/plugin-multipart.xml:
* docs/plugins/inspect/plugin-navigationtest.xml:
* docs/plugins/inspect/plugin-oss4.xml:
* docs/plugins/inspect/plugin-ossaudio.xml:
* docs/plugins/inspect/plugin-png.xml:
* docs/plugins/inspect/plugin-pulseaudio.xml:
* docs/plugins/inspect/plugin-replaygain.xml:
* docs/plugins/inspect/plugin-rtp.xml:
* docs/plugins/inspect/plugin-rtpmanager.xml:
* docs/plugins/inspect/plugin-rtsp.xml:
* docs/plugins/inspect/plugin-shapewipe.xml:
* docs/plugins/inspect/plugin-shout2send.xml:
* docs/plugins/inspect/plugin-smpte.xml:
* docs/plugins/inspect/plugin-soup.xml:
* docs/plugins/inspect/plugin-spectrum.xml:
* docs/plugins/inspect/plugin-speex.xml:
* docs/plugins/inspect/plugin-taglib.xml:
* docs/plugins/inspect/plugin-udp.xml:
* docs/plugins/inspect/plugin-video4linux2.xml:
* docs/plugins/inspect/plugin-videobox.xml:
* docs/plugins/inspect/plugin-videocrop.xml:
* docs/plugins/inspect/plugin-videofilter.xml:
* docs/plugins/inspect/plugin-videomixer.xml:
* docs/plugins/inspect/plugin-vpx.xml:
* docs/plugins/inspect/plugin-wavenc.xml:
* docs/plugins/inspect/plugin-wavpack.xml:
* docs/plugins/inspect/plugin-wavparse.xml:
* docs/plugins/inspect/plugin-ximagesrc.xml:
* docs/plugins/inspect/plugin-y4menc.xml:
* gst-plugins-good.doap:
* win32/common/config.h:
Release 1.10.0
2016-11-01 17:47:31 +0200 Sebastian Dröge <sebastian@centricular.com>
* po/af.po:
* po/az.po:
* po/bg.po:
* po/ca.po:
* po/cs.po:
* po/da.po:
* po/de.po:
* po/el.po:
* po/en_GB.po:
* po/eo.po:
* po/es.po:
* po/eu.po:
* po/fi.po:
* po/fr.po:
* po/gl.po:
* po/hr.po:
* po/hu.po:
* po/id.po:
* po/it.po:
* po/ja.po:
* po/lt.po:
* po/lv.po:
* po/mt.po:
* po/nb.po:
* po/nl.po:
* po/or.po:
* po/pl.po:
* po/pt_BR.po:
* po/ro.po:
* po/ru.po:
* po/sk.po:
* po/sl.po:
* po/sq.po:
* po/sr.po:
* po/sv.po:
* po/tr.po:
* po/uk.po:
* po/vi.po:
* po/zh_CN.po:
* po/zh_HK.po:
* po/zh_TW.po:
Update .po files
4898
4899
4900
4901
4902
4903
4904
4905
4906
4907
4908
4909
4910
4911
4912
4913
4914
4915
4916
4917
4918
4919
4920
4921
4922
4923
4924
4925
4926
4927
4928
4929
4930
4931
4932
4933
4934
4935
4936
4937
4938
4939
4940
4941
4942
4943
4944
4945
4946
4947
4948
4949
4950
4951
4952
4953
4954
4955
4956
4957
4958
4959
4960
4961
4962
4963
4964
4965
4966
4967
4968
4969
4970
4971
4972
4973
4974
4975
4976
4977
4978
4979
4980
4981
4982
4983
4984
4985
4986
4987
4988
4989
4990
4991
4992
4993
4994
4995
4996
4997
4998
4999
5000
2016-11-01 17:41:51 +0200 Sebastian Dröge <sebastian@centricular.com>
* po/el.po:
po: Update translations
2016-10-27 12:01:55 +0200 Tobias Schneider <tobias.schneider@voiceinterconnect.de>
* sys/v4l2/gstv4l2object.c:
v4l2object: fix extra-controls leak
Gst struct v4l2object->extra_controls is created if user sets appropriate
option but it is not freed on destruction of v4l2object.
https://bugzilla.gnome.org/show_bug.cgi?id=773580
2016-10-31 18:00:07 +0200 Sebastian Dröge <sebastian@centricular.com>
* ext/soup/gstsouphttpsrc.c:
* ext/soup/gstsouphttpsrc.h:
Revert "souphttpsrc: reduce reading latency by using non-blocking read"
This reverts commit 8816764112408766889c8b680a3af51115df4bf5.
It causes issues with the timeouts, and causes connections to be closed
without actual reason. Needs further investigation.
https://bugzilla.gnome.org/show_bug.cgi?id=773509
2016-10-31 09:00:49 +0200 Sebastian Dröge <sebastian@centricular.com>
* gst/wavparse/gstwavparse.c:
wavparse: Don't try to add srcpad if we don't know valid caps yet
Otherwise we'll run into an assertion on specially crafted files.
https://bugzilla.gnome.org/show_bug.cgi?id=773643
2016-10-27 11:23:51 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
* meson.build:
meson: Remove uselessly duplicated dep checks
These checks are done inside the meson.build files for each plugin.
2016-10-27 11:22:59 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
* ext/meson.build:
meson: dv plugin now works on MSVC
Needs a Meson patch to filter out the useless -lpthread
https://github.com/mesonbuild/meson/pull/962
2016-10-27 14:03:48 +0200 Branko Subasic <branko@axis.com>
* gst/matroska/matroska-mux.c:
matroskamux: allow resolutions above 4096
Modify the caps string to allow width and height greater than 4096.
There is no need to restrict it since the matroska format allows the
width and height values to be up to eight bytes long.
https://bugzilla.gnome.org/show_bug.cgi?id=773582
2016-10-23 17:23:10 -0700 Scott D Phillips <scott.d.phillips@intel.com>
* gst/udp/gstudpsrc.c:
udpsrc: Check for G_PLATFORM_WIN32 for presence of ipi_spec_dest
G_OS_WIN32 is only set when not building with cygwin, but
ipi_spec_dest is missing both with and without cygwin.
https://bugzilla.gnome.org/show_bug.cgi?id=773114
2016-10-26 08:51:40 +0200 Michael Olbrich <m.olbrich@pengutronix.de>
* ext/soup/gstsouphttpsrc.c:
souphttpsrc: reset read_position when reading fails
souphttpsrc maintains two variables for the position:
* 'request_position' is where we want to be
* 'read_position' is where we are
During Normal operations both are updated in sync when data arrives. A seek
changes 'request_position' but not 'read_position'.
When the two positions get out of sync, then a new request is send and the
'Range' header is adjusted to the current 'request_position'.
Without this patch, if reading fails, then the source is destroyed. This
triggers a new request, but the range remains unchanged. As a result, the
old range is used and old data will be read.
Changing the 'read_position' to -1 makes it explicitly different from
'request_position' and as a result the 'Range' header is updated correctly.
https://bugzilla.gnome.org/show_bug.cgi?id=773509
2016-10-25 08:54:34 -0700 Scott D Phillips <scott.d.phillips@intel.com>
* meson.build:
meson: Don't depend on gstreamer-check-1.0 on windows
https://bugzilla.gnome.org/show_bug.cgi?id=773114
2016-10-25 15:24:20 +0200 Mark Nauwelaerts <mnauw@users.sourceforge.net>
* gst/rtsp/gstrtspsrc.c:
rtspsrc: reset connection info to non-flushing when closing
This solves a hanging mainloop in following scenario:
* connect to source
* network/server drops
* pipeline set to NULL (and connection to flushing as part)
* pipeline set to PAUSED/PLAYING (connection to non-flushing, but not recorded)
* [connecting still not possible]
* pipeline set to NULL => mainloop hangs (since no actual flushing is done)
2016-10-26 14:32:48 +1100 Jan Schmidt <jan@centricular.com>
* gst/multifile/gstsplitmuxsink.c:
* gst/multifile/gstsplitmuxsink.h:
splitmuxsink: Only allow one video request pad
The pacing of the overall muxing is controlled