ChangeLog 3.87 MB
Newer Older
Sebastian Dröge's avatar
Sebastian Dröge committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
=== release 1.9.1 ===

2016-07-06  Sebastian Dröge <slomo@coaxion.net>

	* configure.ac:
	  releasing 1.9.1

2016-07-06 10:17:37 +0300  Sebastian Dröge <sebastian@centricular.com>

	* po/da.po:
	* po/hr.po:
	* po/pt_BR.po:
	* po/sk.po:
	  po: Update translations

2016-07-05 12:17:18 +0200  Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>

	* libs/gst/base/gstbaseparse.c:
	  baseparse: Don't add calculated bitrates until threshold
	  Waiting before posting calculated bitrates seems to be the
	  intent of the code, so avoid adding them to the tag list
	  pushed with the first frame.
	  When the threshold is reached, gst_base_parse_update_bitrates
	  sets tags_changed, so this posts the calculated ones right
	  that moment.
	  This prevents an insane average calculated from just the
	  first (key) frame from getting posted.
	  https://bugzilla.gnome.org/show_bug.cgi?id=768439

2016-07-04 10:00:38 +0200  Sebastian Dröge <sebastian@centricular.com>

	* libs/gst/base/gstbaseparse.c:
	  baseparse: Make sure to not create an invalid event order when generating the default CAPS event because of a GAP event
	  There must be a SEGMENT event before the GAP event, and SEGMENT events must
	  come after any CAPS event. We however did not produce any CAPS yet, so we need
	  to ensure to insert the CAPS event before the SEGMENT event into the pending
	  events list.
	  https://bugzilla.gnome.org/show_bug.cgi?id=766970

2016-07-01 22:34:59 +1000  Jan Schmidt <jan@centricular.com>

	* gst/gstinfo.h:
	  gstinfo: Avoid gcc 6 warning that breaks the tests build
	  gcc 6 has problems detecting and avoiding throwing
	  a warning for tautological compares in macros (they
	  should only trigger for compares outside macros).
	  Avoid them with a nasty cast of one parameter to void *
	  https://bugzilla.gnome.org/show_bug.cgi?id=764526

2016-07-01 09:44:12 +0200  Edward Hervey <edward@centricular.com>

	* plugins/elements/gstmultiqueue.c:
	  multiqueue: Fix behaviour with not-linked and eos pads
	  This is an update on c9b6848885f4675d447e823c8fb117e247658252
	  multiqueue: Fix not-linked pad handling at EOS
	  While that commit did fix the behaviour if upstream sent a GST_EVENT_EOS,
	  it would break the same issue when *downstream* returns GST_FLOW_EOS
	  (which can happen for example when downstream decoders receive data
	  from after the segment stop).
	  GST_PAD_IS_EOS() is only TRUE when a GST_EVENT_EOS has flown through it
	  and not when a GST_EVENT_EOS has gone through it.
	  In order to handle both cases, also take into account the last flow
	  return.
	  https://bugzilla.gnome.org/show_bug.cgi?id=763770

2016-06-30 15:07:28 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/gstevent.c:
	* gst/gstevent.h:
	* gst/gstmessage.c:
	* gst/gstmessage.h:
	* gst/gststreamcollection.c:
	* gst/gststreamcollection.h:
	* gst/gststreams.c:
	* gst/gstutils.c:
	  streams: sprinkle some Since: markers for docs

2016-06-30 14:37:17 +0100  Tim-Philipp Müller <tim@centricular.com>

	* plugins/elements/gstmultiqueue.c:
	  multiqueue: add gtk-doc blurb for new pad property

2016-02-10 11:42:04 +0100  Edward Hervey <edward@centricular.com>

	* plugins/elements/gstmultiqueue.c:
	* plugins/elements/gstmultiqueue.h:
	  multiqueue: Add a pad property to "group" streams
	  When syncing by running time, multiqueue will throttle unlinked streams
	  based on a global "high-time" and the pending "next_time" of a stream.
	  The idea is that we don't want unlinked streams to be "behind" the global
	  running time of linked streams, so that if/when they get linked (like when
	  switching tracks) decoding/playback can resume from the same position as
	  the other streams.
	  The problem is that it assumes elements downstream will have a more or less
	  equal buffering/latency ... which isn't the case for streams of different
	  type. Video decoders tend to have higher latency (and therefore consume more
	  from upstream to output a given decoded frame) compared to audio ones, resulting
	  in the computed "high_time" being at the position of the video stream,
	  much further than the audio streams.
	  This means the unlinked audio streams end up being quite a bit after the linked
	  audio streams, resulting in gaps when switching streams.
	  In order to mitigate this issue, this patch adds a new "group-id" pad property
	  which allows users to "group" streams together. Calculating the high-time will
	  now be done not only globally, but also per group. This ensures that within
	  a given group unlinked streams will be throttled by that group's high-time
	  instead.
	  This fixes gaps when switching downstream elements (like switching audio tracks).

2015-06-12 10:53:23 +0200  Edward Hervey <edward@centricular.com>

	* docs/design/part-stream-selection.txt:
	* docs/gst/gstreamer-docs.sgml:
	* docs/gst/gstreamer-sections.txt:
	* gst/Makefile.am:
	* gst/gst.c:
	* gst/gst.h:
	* gst/gstevent.c:
	* gst/gstevent.h:
	* gst/gstmessage.c:
	* gst/gstmessage.h:
	* gst/gstquark.c:
	* gst/gstquark.h:
	* gst/gststreamcollection.c:
	* gst/gststreamcollection.h:
	* gst/gststreams.c:
	* gst/gststreams.h:
	* gst/gstutils.c:
	* gst/gstutils.h:
	* tests/check/Makefile.am:
	* tests/check/gst/.gitignore:
	* tests/check/gst/gstevent.c:
	* tests/check/gst/gstmessage.c:
	* tests/check/gst/gststream.c:
	* tests/check/gst/gststream.h:
	* win32/common/libgstreamer.def:
	  gst: New Stream listing/selection system
	  * GstStream
	  * GstStreamCollection
	  * GST_EVENT_SELECT_STREAMS
	  * GST_MESSAGE_STREAM_COLLECTION

2016-06-29 23:24:02 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstbufferpool.c:
	* gst/gstbus.c:
	* gst/gstpoll.c:
	  poll: #define EWOULDBLOCK to EAGAIN if it's not defined on Windows

2016-06-29 14:05:18 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstbufferpool.c:
	  bufferpool: Fix handling of the GstPoll
	  Especially if multiple threads are waiting for buffers to be available again,
	  the current code was wrong. Fix this and document clearly how the GstPoll is
	  supposed to be used.
	  Also fix some potential races with reading from the GstPoll before writing
	  actually happened.
	  https://bugzilla.gnome.org/show_bug.cgi?id=767979

2016-06-29 14:02:55 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstbus.c:
	  bus: Make sure to always read the control after popping a message
	  It might happen that we popped the message before writing of the control
	  happened. In this case we just have to retry again a bit later, and failure to
	  do so will cause an additional byte in the control and the GSource /
	  gst_poll_wait() to always wake up again immediately.
	  https://bugzilla.gnome.org/show_bug.cgi?id=750397

2016-06-29 13:37:28 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstsystemclock.c:
	  systemclock: Improve GstPoll handling and don't check for impossible errno values
	  Also just read/write control every time, GstPoll is optimized by itself
	  already to only do I/O if switching between empty and one byte.
	  https://bugzilla.gnome.org/show_bug.cgi?id=750397

2016-06-29 13:35:35 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstpoll.c:
	  poll: Clarify when FALSE is returned from read/write_control()
	  And also mention what the expected values of errno are going to be.
	  write_control() will only ever return FALSE if there was a critical error. It
	  will never return because of EINTR, EAGAIN or EWOULDBLOCK.
	  read_control() will return FALSE if there was no byte to read, in which case
	  errno would be EWOULDBLOCK.
	  In all other cases there was a critical error.
	  https://bugzilla.gnome.org/show_bug.cgi?id=750397

2016-06-29 13:26:57 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstpoll.c:
	  poll: set_controllable(), restart() and set_flushing() are only valid for non-timer GstPolls
	  On timer GstPolls it will cause the control socket state to become
	  inconsistent as now one less read_control() than write_control() be would
	  needed.
	  Similarly, read_control() and write_control() are only valid on timer
	  GstPolls.
	  https://bugzilla.gnome.org/show_bug.cgi?id=750397

2016-06-29 13:11:01 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstpoll.h:
	  poll: Warn if the return value of gst_poll_read_control() is unused
	  This might fail even under correct usage, e.g. if read_control() is called
	  from another thread before write_control() finished in another. It has to be
	  retried then, or other measures have to be taken, depending on how it is used
	  by the surrounding code.
	  https://bugzilla.gnome.org/show_bug.cgi?id=750397

2016-06-29 18:57:42 +0200  Matthew Gruenke <mgruenke@tycoint.com>

	* gst/gstpoll.c:
	  poll: Fix various race conditions with read_control() and write_control()
	  This addresses slightly different race conditions on Linux and Windows, and
	  fixes gst_poll_read_control() when control_pending == 0.
	  On Linux, the socketpair() used for control should not be made O_NONBLOCK.
	  If there's any propagation delay between set->control_write_fd.fd and
	  set->control_read_fd.fd, even the mutex now held will not be sufficient to
	  prevent a race condition.  There's no benefit to using O_NONBLOCK, here.
	  Only liabilities.
	  For Windows, it's necessary to fix the race condition between testing
	  set->control_pending and performing WAKE_EVENT()/RELEASE_EVENT().  This is
	  accomplished by acquiring and holding set->lock, for both of these operations.
	  We could optimize the Linux version by making this Windows-specific.
	  For consistency with the Linux implementation, Windows' RELEASE_EVENT()
	  has also been made to block, although it should never happen.
	  Also, changed release_wakeup() to return TRUE and decrement control_pending
	  only when > 0.  Furthermore, RELEASE_EVENT() is called only when
	  control_pending == 1.
	  Finally, changed control_pending to use normal, non-atomic arithmetic
	  operations, since it's now protected by set->lock.
	  Note: even though the underlying signaling mechanisms are blocking,
	  release_wakeup() is effectively non-blocking, as it will only attempt to read
	  from control_read_fd.fd after a byte has been written to control_write_fd.fd
	  or WaitForSingleObject() after it's been signaled.
	  https://bugzilla.gnome.org/show_bug.cgi?id=750397

2016-06-28 15:01:17 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* gst/gstbus.c:
	  bus: chain up GObject::constructed() to the parent class' implementation
	  Needed so GstBus can be tracked by the leaks tracer.
	  https://bugzilla.gnome.org/show_bug.cgi?id=768141

2016-06-24 05:26:09 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* gst/gstconfig.h.in:
	  gstconfig.h: Don't use extern with dllexport
	  GCC emits an error for this with -Werror:
	  plugin.c:22:1: error: 'gst_plugin_desc' initialized and declared 'extern' [-Werror]
	  This matches how glib does symbol exporting.
	  https://bugzilla.gnome.org/show_bug.cgi?id=767463

2016-06-21 19:49:15 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* configure.ac:
	* gst/gstconfig.h.in:
	  win32: Don't use dllexport/import when only building statically
	  If the prototypes in the public API have dllimport in them when building
	  statically on Windows, the compiler will look for symbols with symbol
	  mangling and indirection corresponding to a DLL. This will cause a build
	  failure when trying to link tests/examples/etc.
	  External users of GStreamer also need to define -DGST_STATIC_COMPILATION
	  if they want to link to static gstreamer libraries on Windows.
	  A similar version of this patch has been committed to all gstreamer
	  repositories.
	  https://bugzilla.gnome.org/show_bug.cgi?id=767463

2016-06-21 11:45:26 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* common:
	  Automatic update of common submodule
	  From ac2f647 to f363b32

2016-06-15 16:24:27 +0100  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>

	* tests/check/elements/queue2.c:
	  tests: add a test for small ring buffer sizes
	  https://bugzilla.gnome.org/show_bug.cgi?id=767688

2016-06-15 13:43:59 +0100  Vincent Penquerc'h <vincent.penquerch@collabora.co.uk>

	* plugins/elements/gstqueue2.c:
	  queue2: fix crash deleting current region for small ring buffers
	  Ensure we do not attempt to destroy the current range. Doing so
	  causes the current one to be left dangling, and it may be dereferenced
	  later, leading to a crash.
	  This can happen with a very small queue2 ring buffer (10000 bytes)
	  and 4 kB buffers.
	  repro case:
	  gst-launch-1.0 fakesrc sizetype=2 sizemax=4096 ! \
	  queue2 ring-buffer-max-size=1000 ! fakesink sync=true
	  https://bugzilla.gnome.org/show_bug.cgi?id=767688

2016-06-20 11:34:49 +0100  Tim-Philipp Müller <tim@centricular.com>

	* tests/check/gst/gstobject.c:
	  tests: gstobject: fix typo in test name

2016-06-16 14:08:01 -0700  Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>

	* docs/design/part-tracing.txt:
	  docs/design/part-tracing: fix reference to renamed func

2016-06-08 12:34:53 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* plugins/elements/gsttee.c:
	  tee: Properly handle return value when only 1 pad
	  This patch handle the case when you have 1 pad (so the fast path is
	  being used) but this pad is removed. If we are in allow-not-linked, we
	  should return GST_FLOW_OK, otherwise, we should return GST_FLOW_UNLINKED
	  and ignore the meaningless return value obtained from pushing.
	  https://bugzilla.gnome.org/show_bug.cgi?id=767413

2016-06-16 15:52:16 +0200  Stefan Sauer <ensonic@users.sf.net>

	* scripts/gst-plot-traces.sh:
	  gst-plot-traces.sh: add a script to plot gst-tracer graphs
	  The script extracts cpu-usage data from a tracelog and plots it via gnuplot.

2016-06-15 16:12:23 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstdevice.c:
	  device: Fix typo
	  paramater -> parameter

2016-06-14 19:16:33 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/gstinfo.h:
	  info: flesh out GST_PTR_FORMAT docs a bit

2016-06-13 18:33:27 +0200  Sebastian Dröge <sebastian@centricular.com>

	* libs/gst/base/gstbasesink.c:
	  basesink: Update start time when losing state only if we were in PLAYING
	  If we were in PAUSED, the current clock time and base time don't have much to
	  do with the running time anymore as the clock might have advanced while we
	  were PAUSED. The system clock does that for example, audio clocks often don't.
	  Updating the start time in PAUSED will cause a) the wrong position to be
	  reported, b) step events to step not just the requested amount but the amount
	  of time we spent in PAUSED. The start time should only ever be updated when
	  going from PLAYING to PAUSED to remember the current running time (to be able
	  to compensate later when going to PLAYING for the clock time advancing while
	  PAUSED), not when we are already in PAUSED.
	  Based on a patch by Kishore Arepalli <kishore.arepalli@gmail.com>
	  The updating of the start time when the state is lost was added in commit
	  ba943a82c0bbfd17c9ee9f5068d44c9d9274fd13 to fix the position reporting when
	  the state is lost. This still works correctly after this change.
	  https://bugzilla.gnome.org/show_bug.cgi?id=739289

2016-06-11 22:18:06 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstpad.c:
	  pad: Log pad offsets as signed times

2016-06-11 21:56:19 +0300  Sebastian Dröge <sebastian@centricular.com>

	* tests/check/gst/gstpad.c:
	  pad: Also check the number of segment events and if other serialized events and queries trigger segment updating too
	  https://bugzilla.gnome.org/show_bug.cgi?id=765049

2016-06-11 21:37:47 +0300  Sebastian Dröge <sebastian@centricular.com>

	* tests/check/gst/gstpad.c:
	  pad: Add unit test for pad offset handling on src pads
	  https://bugzilla.gnome.org/show_bug.cgi?id=765049

2016-06-07 11:32:47 +0300  Sebastian Dröge <sebastian@centricular.com>

	* docs/libs/gstreamer-libs-sections.txt:
	* libs/gst/base/gstadapter.c:
	* libs/gst/base/gstadapter.h:
	* tests/check/libs/adapter.c:
	* win32/common/libgstbase.def:
	  adapter: Rename functions and implement new functions, update test
	  We don't do calculations with different units (buffer offsets and bytes)
	  anymore but have functions for:
	  1) getting the number of bytes since the last discont
	  2) getting the offset (and pts/dts) at the last discont
	  and the previously added function to get the last offset and its distance from
	  the current adapter position.
	  https://bugzilla.gnome.org/show_bug.cgi?id=766647

2016-05-19 10:31:02 +0200  Edward Hervey <edward@centricular.com>

	* docs/libs/gstreamer-libs-sections.txt:
	* libs/gst/base/gstadapter.c:
	* libs/gst/base/gstadapter.h:
	* tests/check/libs/adapter.c:
	* win32/common/libgstbase.def:
	  adapter: Add methods to query current offset
	  API: gst_buffer_prev_offset
	  API: gst_buffer_get_offset_from_discont
	  The gst_buffer_get_offset_from_discont() method allows retrieving the current
	  offset based on the GST_BUFFER_OFFSET of the buffers that were pushed in.
	  The offset will be set initially by the GST_BUFFER_OFFSET of
	  DISCONT buffers, and then incremented by the sizes of the following
	  buffers.
	  The gst_buffer_prev_offset() method allows retrievent the previous
	  GST_BUFFER_OFFSET regardless of flags. It works in the same way as
	  the other gst_buffer_prev_*() methods.
	  https://bugzilla.gnome.org/show_bug.cgi?id=766647

2016-06-09 17:42:13 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/gstconfig.h.in:
	  gstconfig.h.in: indent #if #else jungle for better readability

2016-06-08 12:11:19 +0300  Sebastian Dröge <sebastian@centricular.com>

	* docs/gst/gstreamer-sections.txt:
	* gst/gstutils.c:
	* gst/gstutils.h:
	* win32/common/libgstreamer.def:
	  utils: Add gst_pad_link_maybe_ghosting() for consistency
	  We already had a _full() version, but having that alone seems inconsistent.
	  Add a non-full version that mirrors the behaviour of gst_pad_link() vs
	  gst_pad_link_full().

2016-05-22 13:10:06 +0200  Edward Hervey <edward@centricular.com>

	* libs/gst/base/gstbaseparse.c:
	  baseparse: Make sure DISCONT flags are properly propagated
	  If we drop a frame that contained a discontinuity, we must remember
	  that for the next frame that *will* be pushed downstream.
	  https://bugzilla.gnome.org/show_bug.cgi?id=766795

2016-06-04 13:31:58 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/gstdeviceprovider.c:
	  deviceprovider: remove base_class_finalize function
	  It's not going to get called anyway.
	  https://bugzilla.gnome.org/show_bug.cgi?id=765540

2016-06-04 13:11:55 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/gstelement.c:
	  element: remove base_class_finalize_func which is never called
	  Won't be called for static types, so no point keeping it around.
	  https://bugzilla.gnome.org/show_bug.cgi?id=765540

2016-06-03 13:55:44 +0100  Tim-Philipp Müller <tim@centricular.com>

	* plugins/tracers/gstleaks.c:
	  tracers: leaks: some micro-optimisations
	  - we know number of filter items is not going to change,
	  but compiler doesn't
	  - only do GST_IS_TRACER check for GObjects, not mini objects
	  - use non-type check cast macros in performance critical paths

2016-05-10 09:29:12 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* docs/design/part-tracing.txt:
	* plugins/tracers/Makefile.am:
	* plugins/tracers/gstleaks.c:
	* plugins/tracers/gstleaks.h:
	* plugins/tracers/gsttracers.c:
	  tracers: add leaks tracer
	  https://bugzilla.gnome.org/show_bug.cgi?id=765052

2016-05-30 12:11:13 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* gst/gstcaps.c:
	* gst/gstdeviceproviderfactory.c:
	* gst/gstelementfactory.c:
	* gst/gstpadtemplate.c:
	* gst/gsttask.c:
	* libs/gst/net/gstnetclientclock.c:
	  Use MAY_BE_LEAKED_FLAG
	  This helps having "make check" passing with the leaks tracer enabled.
	  https://bugzilla.gnome.org/show_bug.cgi?id=766008

2016-05-09 16:31:36 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* gst/gstminiobject.c:
	* gst/gstobject.c:
	* gst/gsttracerutils.c:
	* gst/gsttracerutils.h:
	  tracing: add hooks when objects or miniobjects are created and destroyed
	  https://bugzilla.gnome.org/show_bug.cgi?id=765052

2016-05-09 16:56:56 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* gst/gst.c:
	  gst_deinit: move down tracers cleaning
	  We want the tracer detecting leaks to be finalized as late as possible
	  to give the chance to other gst components to be properly cleaned first.
	  https://bugzilla.gnome.org/show_bug.cgi?id=765052

2016-05-10 11:06:42 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* tests/check/gst/gstplugin.c:
	  tests: plugin: remove feature refcount assert
	  This check fails if one, or more, tracers are loaded while running the
	  test. The new "leaks" tracer will be able to check for leaks anyway.
	  https://bugzilla.gnome.org/show_bug.cgi?id=765052

2016-04-14 12:25:43 +0300  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* gst/gststructure.c:
	  tracerrecord: allow G_TYPE_POINTER for field types
	  Tracers may want to display the address of an object.
	  https://bugzilla.gnome.org/show_bug.cgi?id=765052

2016-05-30 13:42:36 +0200  Stefan Sauer <ensonic@users.sf.net>

	* tests/check/gst/gstobject.c:
	  gstobject: split up name tests
	  It is better to have separate tests:
	  1) the test name will tell what is broekn when the test fails
	  2) we still run the other tests when one assert fails
	  3) the tests are easier to understand
	  4) we don't rely on sie effect of previous actions
	  5) ...
	  Also ix the assertion message for the name checks (Gst -> fakeobject).

2016-05-30 02:06:01 -0700  Stefan Sauer <ensonic@users.sf.net>

	* docs/design/part-tracing.txt:
	  design: update design doc
	  Some of the api was renamed before the merge.

2016-05-30 02:04:18 -0700  Stefan Sauer <ensonic@users.sf.net>

	* gst/gstquery.c:
	  docs: xref the free function and expand allocation query docs
	  Add xrefs for how to parse pool details from an allocation query.

2016-05-26 14:43:10 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* tests/check/gst/gstobject.c:
	  object: Add _set_name() test on parented object
	  This is not allowed, and set_name() should fail.
	  https://bugzilla.gnome.org/show_bug.cgi?id=766923

2016-05-26 14:41:38 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* tests/check/gst/gstobject.c:
	  object: Check that name change are notified once
	  GObject allow calling g_object_notify() within set_property() and
	  won't notify it twice. As it was raised during review, add a unit test to
	  make sure.
	  https://bugzilla.gnome.org/show_bug.cgi?id=766923

2016-05-26 13:17:37 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* gst/gstobject.c:
	  object: Notify name change when using _set_name()
	  There was a 0.11 FIXME about notifying the name change or removing that
	  function. Clearly we can't remove this function, so let's notify it.
	  https://bugzilla.gnome.org/show_bug.cgi?id=766923

2016-05-25 15:30:21 +0200  Edward Hervey <bilboed@bilboed.com>

	* gst/gst_private.h:
	  gst_private: Fix gstconfig include
	  Since it's a generated header, we need to specify the gst subdir so
	  that it gets properly included in out-of-dir compilation

2016-05-25 10:48:05 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/gst_private.h:
	  gst: make sure to include gstconfig.h also in gst_private.h
	  For GST_EXPORT define and also things like GST_DISABLE_REGISTRY.
	  Hopefully fixes the following build failure on cerbero-cross-mingw32:
	  helpers/gst-plugin-scanner.c:50: undefined reference to `_imp___gst_disable_registry_cache'

2016-05-24 00:40:27 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/Makefile.am:
	* libs/gst/base/Makefile.am:
	* libs/gst/check/Makefile.am:
	* libs/gst/controller/Makefile.am:
	* libs/gst/net/Makefile.am:
	  g-i: pass compiler env to g-ir-scanner
	  It's what introspection.mak does as well. Should
	  fix spurious build failures on gnome-continuous.

2016-05-23 21:15:48 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/Makefile.am:
	  gst: g-i: pass compiler with quotes
	  So CC="ccache gcc" works properly.

2016-05-23 21:06:53 +0100  Ray Strode <rstrode@redhat.com>

	* gst/Makefile.am:
	  gst: attempt to fix/track-down mysterious gnome-continuous build failures

2016-05-23 18:00:30 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/gstiterator.c:
	  iterator: only unset GValue if it was inited
	  And add some function guards. From GLib 2.48 on it is
	  allowed to pass an uninitialised GValue to g_value_unset().
	  https://bugzilla.gnome.org/show_bug.cgi?id=763762

2016-05-23 18:44:01 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* gst/parse/Makefile.am:
	  gst/parse: Also pass -DGST_EXPORTS here
	  This static library gets included directly into libgstreamer-1.0.so, so it needs
	  the same GST_EXPORTS definition as the rest of the code that's compiled into
	  that otherwise it will try to find the constants it uses from gstinfo via DLL
	  importing (__declspec(dllimport)).
	  Fixes https://ci.gstreamer.net/job/cerbero-cross-mingw32/4393/

2016-05-20 00:24:54 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* gst/gstconfig.h.in:
	  gstconfig.h: Always use dllexport/import on Windows
	  __declspec(dllexport/import) are supported by GCC and are needed for
	  properly generating code that fetches the values of constants from DLLs
	  built with __declspec(dllexport) which happens when anything using
	  GST_EXPORT is built with MSVC.
	  See: https://msdn.microsoft.com/en-us/library/619w14ds.aspx
	  Essentially, if you built gstreamer with MSVC and then tried to use
	  constants from it (such as GST_TYPE_CAPS) in a plugin, GCC would
	  retrieve the address of the value instead of the value itself.

2016-05-19 11:27:36 -0300  Danilo Cesar Lemes de Paula <danilo.cesar@collabora.co.uk>

	* scripts/git-update.sh:
	  scripts: make git-update.sh build with all cores available
	  The git-update.sh now builds with all cores available. In case of
	  failure it defaults to 1
	  The developer can still override this by setting -j to something else
	  in MAKEFLAGS, as stated by 299605dfe2f97fca330161ff01a392e1a85fe422.
	  https://bugzilla.gnome.org/show_bug.cgi?id=766666

2016-05-04 13:53:56 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* gst/gstminiobject.h:
	* gst/gstobject.h:
	  (mini)object: add MAY_BE_LEAKED flag
	  https://bugzilla.gnome.org/show_bug.cgi?id=766008

2016-05-15 14:15:51 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/gstbin.c:
	* tests/check/gst/gstbin.c:
	  bin: emit deep-element-{added,removed} for children of newly-added/removed bin
	  https://bugzilla.gnome.org/show_bug.cgi?id=578933

2016-05-14 10:55:53 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/gstbin.c:
	* gst/gstbin.h:
	* tests/check/gst/gstbin.c:
	  bin: add "deep-element-added" and "deep-element-removed" signals
	  This means applications and bin sub-classes can easily track when
	  a new child element is added to the pipeline sub-hierarchy or
	  removed.
	  Currently doesn't signal deep added/removed for elements inside
	  a bin if a bin is added/removed.
	  https://bugzilla.gnome.org/show_bug.cgi?id=578933

2016-05-15 15:02:49 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstpad.h:
	  pad: Improve IDLE probe docs
	  Make it explicit that the pad is only blocked while the callback is running,
	  and the pad will be unblocked again once the callback returned.
	  If BLOCK and IDLE behaviour is needed, both need to be used.
	  https://bugzilla.gnome.org/show_bug.cgi?id=766002

2016-05-15 13:29:55 +0300  Sebastian Dröge <sebastian@centricular.com>

	* docs/plugins/inspect/plugin-coreelements.xml:
	  docs: Update for git master

2016-03-11 16:04:52 +0200  Sebastian Dröge <sebastian@centricular.com>

	* plugins/elements/gstqueue.c:
	* plugins/elements/gstqueue2.c:
	  queue: Only unblock upstream waiting for the query once downstream is finished
	  ... when flushing and deactivating pads. Otherwise downstream might have a
	  query that was already unreffed by upstream, causing crashes or other
	  interesting effects.
	  https://bugzilla.gnome.org/show_bug.cgi?id=763496

2016-05-14 17:31:51 +0300  Sebastian Dröge <sebastian@centricular.com>

	* libs/gst/base/gstbasesink.c:
	* libs/gst/base/gstbasesrc.c:
	  basesink/src: Post an error message if ::start() fails
	  The subclass should do that already, but just in case do it ourselves too as a
	  fallback. Without this, e.g. playbin will just wait forever if this fails
	  because it is triggered as part of an ASYNC state change.

2016-05-14 23:36:43 +1000  Jan Schmidt <jan@centricular.com>

	* gst/gstbin.c:
	  bin: Fix EOS forwarding on PLAYING->PLAYING
	  When doing a transition from PLAYING to PLAYING, we will fail
	  to forward an EOS message on the bus, and noone else will ever
	  send it because there'll be no actual state changed message.
	  Allow EOS through directly in that case.

2016-05-13 09:43:14 +0200  Edward Hervey <bilboed@bilboed.com>

	* gst/gstpad.c:
	  pad: Don't drop LATENCY queries with default implementation
	  If there is only one pad in the internal pads, when folding for
	  LATENCY queries it will just drop the response if it's not live.
	  This is maybe not the proper fix, but it will just accept the first
	  peer responses, and if there are any other pads, it will only take
	  them into account if the response is live.
	  This *should* properly handle the aggregation/folding behaviour of
	  multiple live peer responses, while at the same time handling the
	  simple one-pad-only-and-forward use-case
	  https://bugzilla.gnome.org/show_bug.cgi?id=766360

2016-04-07 00:46:20 +1000  Jan Schmidt <jan@centricular.com>

	* tools/gst-launch.1.in:
	  Update the examples in the gst-launch-1.0 manpage
	  Replace elements that don't exist any more with ones
	  that do, and insert elements like mpegaudioparse where
	  they are needed.
	  https://bugzilla.gnome.org/show_bug.cgi?id=727105

2016-04-02 01:05:39 +1100  Jan Schmidt <jan@centricular.com>

	* gst/gst.c:
	  debug: Instantiate GType when dumping debug categories.
	  A lot of debug categories are declared in element class_init
	  functions, which don't get run until the element is first created
	  (not just registered in the plugin load function). This means
	  that --gst-debug-help doesn't print out a lot of categories.
	  Creating an instance of each element from the element factory
	  makes them visible, at some extra cost - 2-3 times longer, which can
	  be a full second or two of extra waiting. Yikes!
	  https://bugzilla.gnome.org/show_bug.cgi?id=741001

2016-05-11 15:06:39 +0300  Sebastian Dröge <sebastian@centricular.com>

	* plugins/elements/gsttypefindelement.c:
	  typefind: Only push a CAPS event downstream if the sinkpad is not in PULL mode
	  The other signal handlers of the type-found signal might have reactivated
	  typefind in PULL mode already, pushing a CAPS event at that point would cause
	  deadlocks and is in general unexpected by elements that are in PULL mode.
	  https://bugzilla.gnome.org/show_bug.cgi?id=765906

2016-05-11 12:16:09 +0900  Wonchul Lee <wonchul.lee@collabora.com>

	* gst/gstdebugutils.c:
	  debugutils: fix warning on enum properties printing
	  https://bugzilla.gnome.org/show_bug.cgi?id=766251

2016-05-10 15:01:42 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstpad.c:
	  pad: Fix pad state when deactivating from one mode and then trying to activate another and failing
	  When activating a pad in PULL mode, it might already be in PUSH mode. We now
	  first try to deactivate it from PUSH mode and then try to activate it in PULL
	  mode. If the activation fails, we would set the pad to flushing and set it
	  back to its old mode. However the old mode is wrong, the pad is not in PUSH
	  mode anymore but in NONE mode.
	  This fixes e.g. typefind in decodebin reactivating PUSH/PULL mode if upstream
	  actually fails to go into PULL mode after first PUSHING data to typefind.

2016-03-13 11:05:29 -0400  Anthony G. Basile <blueness@gentoo.org>

	* libs/gst/check/libcheck/strsignal.c:
	  libcompat.h: strsignal() should be not be decleared const
	  POSIX standards requires strsignal() to return a pointer to a char,
	  not a const pointer to a char. [1]  On uClibc, and possibly other
	  libc's, that do not HAVE_DECL_STRSIGNAL, libcompat.h declares
	  const char *strsignal (int sig) which causes a type error.
	  [1] man 3 strsignal
	  https://bugzilla.gnome.org/show_bug.cgi?id=763567

2016-05-05 18:50:05 +0100  Tim-Philipp Müller <tim@centricular.com>

	* libs/gst/base/gstflowcombiner.c:
	  flowcombiner: add debug category
	  Not that it logs much.

2016-05-05 18:02:21 +0100  Tim-Philipp Müller <tim@centricular.com>

	* libs/gst/base/gstflowcombiner.c:
	  flowcombiner: fix docs for gst_flow_combiner_reset()

2016-05-04 10:04:30 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* tests/check/pipelines/parse-launch.c:
	  parse-launch: fix factory leak in test
	  We get 2 references one from gst_element_factory_find() and the other
	  from gst_plugin_feature_load().
	  https://bugzilla.gnome.org/show_bug.cgi?id=765976

2016-05-04 13:46:46 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* tests/check/gst/gstminiobject.c:
	  miniobject: fix ref count leaks in tests
	  https://bugzilla.gnome.org/show_bug.cgi?id=765978

2016-05-04 09:53:32 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* gst/gstutils.c:
	* tests/check/pipelines/parse-launch.c:
	  utils: fix element leak in find_common_root()
	  The root element was not unreffed when iterating over ancestors.
	  https://bugzilla.gnome.org/show_bug.cgi?id=765961

2016-05-02 17:35:29 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* tools/gst-inspect.c:
	  inspect: fix feature leak
	  https://bugzilla.gnome.org/show_bug.cgi?id=765957

2016-05-03 11:49:03 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* gst/gsturi.c:
	  uri: unref instead of using _gst_uri_free() directly
	  This confuses gst_tracing as we shortcut the mini object reference
	  system.
	  https://bugzilla.gnome.org/show_bug.cgi?id=765958

2016-05-02 09:32:47 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* tests/check/pipelines/seek.c:
	  pipeline: fix bus leak in seek test
	  gst_bus_add_signal_watch_full() keeps a ref on the bus which should
	  be released using gst_bus_remove_signal_watch().
	  https://bugzilla.gnome.org/show_bug.cgi?id=765903

2016-05-02 09:29:31 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* tests/check/elements/streamiddemux.c:
	  streamiddemux: fix list and event leaks in test
	  https://bugzilla.gnome.org/show_bug.cgi?id=765903

2016-05-02 08:43:04 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* tests/check/elements/selector.c:
	  selector: fix pad leaks in tests
	  setup_input_pad() creates a new pad so we should unref it once we're
	  done.
	  https://bugzilla.gnome.org/show_bug.cgi?id=765903

2016-05-02 08:33:42 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* tests/check/elements/filesrc.c:
	  filesrc: fix buffer leaks in tests
	  gst_check_setup_sink_pad() internally uses gst_check_chain_func() so we
	  should call gst_check_drop_buffers() when tearing down tests to free the
	  buffers which have been exchanged through the pipeline.
	  https://bugzilla.gnome.org/show_bug.cgi?id=765903

2016-05-02 08:29:00 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* tests/check/elements/fakesink.c:
	  fakesink: fix pipeline leak in test
	  https://bugzilla.gnome.org/show_bug.cgi?id=765903

2016-05-02 07:35:45 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* tests/check/gst/gstelementfactory.c:
	  elementfactory: fix factory leak in test
	  https://bugzilla.gnome.org/show_bug.cgi?id=765903

2016-05-02 16:00:42 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* gst/gstdeviceproviderfactory.c:
	  deviceproviderfactory: fix factory leak
	  The code path when early returning was leaking the extra reference on
	  the factory.
	  https://bugzilla.gnome.org/show_bug.cgi?id=765904

2016-04-10 11:42:18 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/gstquery.c:
	  query: fix compiler warning
	  C4146: unary minus operator applied to unsigned type, result still unsigned

2016-04-28 14:59:51 +0300  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* tests/check/gst/gstbin.c:
	  bin: fix leaks in unit tests
	  The test rely on bus being flushed when setting the bin to the NULL state which
	  is not the case. This apply only when setting the pipeline state to
	  NULL.
	  https://bugzilla.gnome.org/show_bug.cgi?id=765720

2016-04-28 14:56:18 +0300  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* tests/check/gst/gstpad.c:
	  pad: fix buffer leaks in tests
	  The buffer received through the pad have to be unreffed using
	  gst_check_drop_buffers().
	  https://bugzilla.gnome.org/show_bug.cgi?id=765719

2016-04-30 14:15:08 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/gstbuffer.c:
	* gst/gstghostpad.c:
	* libs/gst/check/gstharness.c:
	  Fix some nonsensical g-i annotations

2016-04-29 14:55:02 +0200  Matej Knopp <matej.knopp@gmail.com>

	* plugins/elements/gstmultiqueue.c:
	  multiqueue: Ignore time when determining whether sparse stream limits have been reached
	  Basically, sq->max_size.visible is never increased for sparse streams in
	  overruncb when empty queue has been found;
	  If the queue is sparse it just skip the entire logic determining whether
	  max_size.visible should be increased, deadlocking the demuxer.
	  What should be done instead is that when determining if limits have been
	  reached, to ignore time for sparse streams, as the buffer may be far in the
	  future.
	  https://bugzilla.gnome.org/show_bug.cgi?id=765736

2016-02-28 12:06:40 +0200  Sebastian Dröge <sebastian@centricular.com>

	* docs/gst/gstreamer-sections.txt:
	* gst/gstbin.c:
	* gst/gstbin.h:
	* gst/gstelement.c:
	* gst/gstelement.h:
	* win32/common/libgstreamer.def:
	  element: Add gst_element_call_async()
	  This calls a function from another thread, asynchronously. This is to be
	  used for cases when a state change has to be performed from a streaming
	  thread, directly via gst_element_set_state() or indirectly e.g. via SEEK
	  events.
	  Calling those functions directly from the streaming thread will cause
	  deadlocks in many situations, as they might involve waiting for the
	  streaming thread to shut down from this very streaming thread.
	  This is mostly a convenience function around a GThreadPool and is for example
	  used by GstBin to continue asynchronous state changes.
	  https://bugzilla.gnome.org/show_bug.cgi?id=760532

2016-04-27 09:21:31 +0300  Sebastian Dröge <sebastian@centricular.com>

	* docs/manual/advanced-dataaccess.xml:
	  manual: Fix buffer memory leak in appsrc example
	  g_signal_emit_by_name() is not like gst_app_src_push_buffer() due to reference
	  counting limitations of signals, it does *not* take ownership of the buffer.

2016-04-26 16:02:14 +0300  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* gst/gst.c:
	* gst/gst_private.h:
	* gst/gstcaps.c:
	  caps: add cleanup priv function
	  Those are allocated in _priv_gst_caps_initialize() so it makes
	  sense to have a symetric cleanup functions called by gst_deinit().
	  https://bugzilla.gnome.org/show_bug.cgi?id=765606

2016-04-26 16:02:14 +0300  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* gst/gst.c:
	* gst/gst_private.h:
	* gst/gstcapsfeatures.c:
	  capsfeature: add cleanup priv function
	  Those are allocated in _priv_gst_caps_features_initialize() so it makes
	  sense to have a symetric cleanup functions called by gst_deinit().
	  https://bugzilla.gnome.org/show_bug.cgi?id=765606

2016-04-21 14:45:39 +0100  Alex Ashley <bugzilla@ashley-family.net>

	* libs/gst/check/gsttestclock.c:
	  testclock: add clock-type property
	  To allow the GstTestClock to be used as a GstSystemClock, it is
	  useful to implement the clock-type property that GstSystemClock
	  provides. This allows GstTestClock to be used as the system clock
	  with code that expects a GstSystemClock.
	  https://bugzilla.gnome.org/show_bug.cgi?id=762147

2016-04-21 13:49:32 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/gstdatetime.c:
	  datetime: Sanity check year, month and day when parsing ISO-8601 strings
	  Passing years > 9999, months > 12 or days > 31 to gst_date_time_new() will
	  cause an assertion and generally does not make much sense. Instead consider it
	  as a parsing error like hours > 24 and return NULL.

2016-04-20 11:46:19 +0300  Sebastian Dröge <sebastian@centricular.com>

	* libs/gst/base/gstbaseparse.c:
	  baseparse: Remember if we interpolated DTS from PTS and refresh it whenever we update the PTS
	  Otherwise PTS and DTS will come out of sync if upstream continues to provide
	  PTS and not DTS, and we have to skip some data from the stream or PTS are not
	  exactly increasing with the duration of each packet.
	  https://bugzilla.gnome.org/show_bug.cgi?id=765260

2016-04-20 11:45:28 +0300  Sebastian Dröge <sebastian@centricular.com>

	* libs/gst/base/gsttypefindhelper.c:
	  typefindhelper: Fix gobject-introspection warning about invalid transfer annotation
	  gsttypefindhelper.c:485: Warning: GstBase: invalid "transfer" annotation for gsize: only valid for array, struct, union, boxed, object and interface types

2016-04-18 13:05:40 +0300  Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>

	* gst/gst.c:
	* gst/gst_private.h:
	* gst/gstallocator.c: