-
Notifications
You must be signed in to change notification settings - Fork 2
/
NEWS
2403 lines (2158 loc) · 116 KB
/
NEWS
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
This is GStreamer 0.10.36 "Harder"
Changes since 0.10.35:
* bin: Don't interpret pipelines without sink elements as always being in EOS state
* bin: Only post EOS messages after reaching the PLAYING state
* buffer: add set/get_qdata() to attach arbitrary metadata to buffers
* caps, structure, gstvalue: some optimisations and improvements
* miniobject: add weak referencing functionality
* gstobject: make gst_object_replace() atomic
* pad: Only do the subset check in gst_pad_accept_caps() if the pad claims to accept the caps
* pad: make public some ghostpad/proxypad API
* preset: allow applications to specify an extra preset directory with application-specific presets
* collectpads: add GstCollectPads2 API
* basebarse: new detect vfunc so subclassed can do some format detection first
* baseparse: new get_sink_caps vfunc so downstream caps restrictions can be propagated upstream
* baseparse: answer position query in stream time and try upstream first
* baseparse: send duration message when updating internal duration
* baseparse: make baseparse-based elements is reusable
* baseparse: provide latency query support
* basesink: don't compensate for render-delay twice
* basesink: try harder to arrange increasing position reporting
* basesrc: allow for the size to change dynamically
* basetransform: add query vfunc
* basetransform: caps negotiation improvements
* basetransform: delay serialized events when src caps are not set yet
* filesrc: do not mistake short reads for EOS
* filesrc/fdsrc: indicate dynamic size handling to basesrc
* inputselector: add sync mode that syncs inactive pads to the running time of the active pad
* queue2: add bufferlist support
* queue2: adjust input data rate estimation
* multiqueue: add mode to synchronize deactivated/not-linked streams by the running time
* multiqueue: check filled state of queues even if another one is empty
* outputselector: don't send last segment/buffer when no segment was configured yet
* tools: teach gst-launch about missing-plugin messages
* tools: make unversioned wrapper look for -0.10 tools only
Bugs fixed since 0.10.35:
* 647940 : [basesrc] - fails to send updated segment event when duration changes
* 662777 : Caps negotiation got a lot slow since the last release
* 647493 : Regression: gstbus: Not getting all messages posted on the bus
* 415754 : [API] GstCollectPads2; muxing sparse/subtitle streams
* 459466 : double memory usage for pluginfeature names
* 546570 : gst_caps_append/merge should not require caps2 to be writable
* 609473 : [miniobject] Add support for weak references
* 619844 : [basetransform] transform_caps can ignore pass-through
* 628021 : [baseaudiosink] position reporting not increasing
* 629300 : gstructure: New API for comparing structures
* 643269 : dot file flow direction
* 645017 : [inputselector] Add mode to drop buffers only after the active sinkpad's running time is after the current buffer
* 645107 : [multiqueue] Implement throttling based on stream's running time
* 647756 : [bin] Posting EOS message although not reached PLAYING yet
* 648025 : parse-launch: don't unescape inside quotes
* 650002 : 'No space left on device' message logged continuously, filling /home slice
* 650973 : check: add fail_unless_equals_int64
* 652037 : basesrc: less persistent caching of size
* 652577 : basesink: s/if/is/
* 653137 : Warnings in Gstreamer (core) with Clang compiler
* 653172 : Compilation fails when PR_SET_NAME is not defined in prctl.h
* 655155 : Build failure for gstcontroller.c -- (-Wall) assignment discards qualifiers from pointer target type
* 655204 : bad interaction between queue and adder
* 655381 : GstBitReader and GstByteReader functions missing out argument annotations
* 656193 : don't revalidate utf8 elementfactory metadata all the time
* 656265 : Fix compiler warnings reported by ICC
* 656557 : Add Farsight and Nice support to gst-uninstalled
* 657316 : capsfilter is racy when changing the caps during initial pipeline startup
* 657318 : basetranform dosn't allow query handlers to be overridden
* 657421 : Fix compiler warnings reported by ICC
* 658076 : setcaps function for ghost pads never called
* 658449 : Fix typos in docs and code comments
* 658517 : [ghostpad] Peer query does not work with empty GstPlaySinkVideoConvert
* 658518 : basesink: Backport query override support
* 658541 : [API change] caps negotiation failures
* 658918 : [pad] set caps on pad before checking for peer
* 659139 : gstpad: make some debug traces more useful
* 659571 : basetransform: delay events we cannot send right away
* 659606 : Remaining non-subset caps warnings
* 660083 : Fix mingw compiler warnings
* 660144 : [GstBaseParse] make start/stop methods optional
* 660165 : basetransform: send delayed events earlier
* 660760 : .prs presets needs to have a per-application option
* 660778 : multiqueue: check filled state of queues even if another one is empty
* 660955 : gst_type_register_static_full: guard against large instance sizes that don't fit into a guint16
* 662091 : plugin loader: spawn new plugin loader helper after loading N plugins
* 662199 : [capsfilter] behavior has changed
* 662291 : basetransform: cache transformed caps where appropriate
* 662664 : API: add gst_element_class_add_static_pad_template() and fix template pad ref leaks
* 663333 : basetransfrom cache should be invalidated whenever there is any change in the peer caps
* 663643 : gstvalue: consider lists and ranges equal if they hold the same set
* 664221 : [baseparse] ::sink_get_caps() vfunc breaks API/ABI
* 664720 : API: add gst_buffer_{set,get}_qdata()
* 665921 : filesrc: Incorrect EOF detection in create_read
* 666174 : [basetransform] causes segfaults because gst_pad_alloc_buffer_and_set_caps return a buffer with a size of 0
* 667284 : registry: add missing #ifndef guard
* 667286 : gstpoll: Include correct poll.h based on autoconf test
* 667288 : plugins: Explicitly cast initialization values to the correct type.
* 667290 : tools: Include locale.h before any i18n headers.
* 667298 : basesink: don't compensate for render-delay twice
* 667444 : baseparse: clear adapter in reset so no old data is read when re-using elements
* 668289 : regression: playbin2: repeat mode only repeats twice in totem
* 668764 : collectpads2: move private stuff into private struct
* 669036 : Missing include in gstpreset.h causes build error
* 669502 : [baseparse] duration msg spam when upstream knows avg bitrate
API additions since 0.10.35:
* gst_base_parse_set_latency()
* GstBaseParse::detect
* GstBaseParse::get_sink_caps
* gst_base_src_set_dynamic_size()
* GstBaseTransform::query
* gst_collect_pads2_add_pad()
* gst_collect_pads2_add_pad_full()
* gst_collect_pads2_available()
* gst_collect_pads2()_collect
* gst_collect_pads2_collect_range()
* gst_collect_pads2_flush()
* gst_collect_pads2_get_type()
* gst_collect_pads2_is_active()
* gst_collect_pads2_new()
* gst_collect_pads2_peek()
* gst_collect_pads2_pop()
* gst_collect_pads2_read()
* gst_collect_pads2_read_buffer()
* gst_collect_pads2_remove_pad()
* gst_collect_pads2_set_buffer_function()
* gst_collect_pads2_set_clip_function()
* gst_collect_pads2_set_compare_function()
* gst_collect_pads2_set_event_function()
* gst_collect_pads2_set_flushing()
* gst_collect_pads2_set_function()
* gst_collect_pads2_set_waiting()
* gst_collect_pads2_start()
* gst_collect_pads2_stop()
* gst_collect_pads2_take_buffer()
* gst_buffer_get_qdata()
* gst_buffer_set_qdata()
* gst_caps_is_strictly_equal()
* gst_caps_is_subset_structure
* gst_element_class_add_static_pad_template()
* GstElement::state_changed
* gst_ghost_pad_activate_pull_default()
* gst_ghost_pad_activate_push_default()
* gst_ghost_pad_internal_activate_pull_default()
* gst_ghost_pad_internal_activate_push_default()
* gst_ghost_pad_link_default()
* gst_ghost_pad_setcaps_default()
* gst_ghost_pad_unlink_default()
* gst_mini_object_weak_ref()
* gst_mini_object_weak_unref()
* gst_preset_get_app_dir()
* gst_preset_set_app_dir()
* gst_proxy_pad_acceptcaps_default()
* gst_proxy_pad_bufferalloc_default()
* gst_proxy_pad_chain_default()
* gst_proxy_pad_chain_list_default()
* gst_proxy_pad_checkgetrange_default()
* gst_proxy_pad_event_default()
* gst_proxy_pad_fixatecaps_default()
* gst_proxy_pad_get_internal()
* gst_proxy_pad_getcaps_default()
* gst_proxy_pad_getrange_default()
* gst_proxy_pad_iterate_internal_links_default()
* gst_proxy_pad_query_default()
* gst_proxy_pad_query_type_default()
* gst_proxy_pad_setcaps_default()
* gst_proxy_pad_unlink_default()
* gst_structure_can_intersect()
* gst_structure_intersect()
* gst_structure_is_equal()
* gst_structure_is_subset()
* gst_tag_list_is_equal()
* gst_tag_list_new_from_string()
* gst_tag_list_to_string()
* fail_unless_equals_int64()
API deprecations since 0.10.35:
* gst_plugin_feature_type_name_filter()
* GstTypeNameData
* gst_filter_run()
* GstFilterFunc
Changes since 0.10.34:
* work around GLib atomic ops API change
* some minor win32/mingw fixes
* don't use G_CONST_RETURN in public headers
Bugs fixed since 0.10.34:
* 652211 : Use const instead G_CONST_RETURN
Changes since 0.10.33:
* Fix multiqueue thread-safety regression
* Don't set artificial 0-timestamp on first packet for TIME-based live sources
* Otherwise identical to the previous release (0.10.33)
Bugs fixed since 0.10.33:
* 649369 : basesrc: do not set first buffer timestamp to 0 for live sources
* 649878 : multiqueue regression: gst_single_queue_new not MT-safe
Changes since 0.10.32:
* atomicqueue: add an atomic/lock-free queue structure based
* bufferlist: improve _add*() performance
* bus: in _add_watch() honour any per-thread default main context set via g_main_thread_push_thread_default()
* caps: new gst_caps_intersect_full() to intersect in different modes
* clock: add functions to re-init existing periodic GstClockIDs
* event: add QoS type (overflow, underflow, throttle) for QoS events
* ghostpad: The internally linked pad of the proxypad is the ghostpad
* gstpoll: retry reading the control socket to release properly all wakeups
* message: new progress message API for asynchronous operations
* pad: unlock before freeing the pad cache to avoid deadlock
* pad: better handling for when parent goes away during data/query/event flow
* parse-launch: allow element names to begin with digits
* pluginloader: call gst-plugin-scanner with the right arch on OSX, fixing hangs with firefox
* registry: fixes elements (features) disappearing if a plugin or plugin file is renamed
* structure: Add "(date)" as a type abbreviation of GDate
* structure: Don't allow invalid GDates in all structures and don't allow NULL GDates in taglists
* taglist: add a new "encoded-by" tag
* uri: add gst_filename_to_uri() that takes relative filenames
* utils: add gst_element_factory_can_{src|sink}_{any|all}_caps() to replace can_{sink,src}_caps()
* baseparse: new GstBaseParse class for parsers
* basesink: improve rate, duration, and average duration calculation
* basesink: use new QoS types and add add "throttle-time" property
* basesrc: Handle tag and custom downstream events the same
* basesrc: keep downstream caps order when fixating, to honour downstream preferences when negotiating
* basesrc: Return FALSE if we don't handle an event
* basesrc: Send synchronized custom downstream/both events downstream from the streaming thread
* basetransform: Be smarter with pad allocs
* basetransform: Check for pad alloc caps when suggestion is not fixed
* basetransform: Retain caps order when getting caps, to honour downstream preferences when negotiating
* funnel: new N-to-1 pipe fitting element imported from farsight
* fakesink: print buffer flags
* filesink: Fix escaping of URIs
* file{sink,src}: Check if non-URI characters are escaped, but only for the URI not the location property
* filesrc, filesink: fix URI creation regression for non-absolute locations
* filesrc: Fix escaping of file uris
* inputselector: Hold the selector lock while reading properties of the active pad
* inputselector: Make sure that EOS is always sent downstream for the active pad
* inputselector: Return GST_FLOW_OK until the selected pad pushed something downstream
* inputselector: Stop waiting for a pad switch when the pad is flushing
* multiqueue: fix some potential corner-case deadlocks and some leaks
* multiqueue: handle arbitrary sink + source pad naming
* queue2: don't read beyond the end of file upstream in pull mode; leak fixes
* plugins: make query and event functions more thread-safe, protect against parent-pad disappearing
* gst-launch: add GstIndex support
Bugs fixed since 0.10.32:
* 642356 : [Index] review api and add an example
* 402141 : gst_element_factory_can_{sink,src}_caps seems to be broken
* 518857 : [API] GstBaseParse: new base class for parsers
* 604094 : registry: do not remove features when removing a cached plugin that no longer is present
* 615357 : [macosx] Handle multi-arch plugin-scanner
* 617045 : [caps] New method for intersecting caps while retaining order
* 639674 : parse-launch: improve parsing resilience (for escapes at end of string)
* 639962 : design docs: Fix a few typos and a think
* 640071 : pluginloader: do not leak the description string of blacklisted plugin
* 640437 : design docs: fix 2 typos in part-MT-refcounting
* 640502 : fix a few typos
* 640622 : gst_element_link_pads_full function return wrong error information
* 640675 : high cpu-load with 0.10.32 release
* 640850 : GstElement: Fix warning with GCC 4.6
* 641212 : gst-uninstalled: use $GST_PREFIX variable
* 641928 : gst_pad_push fast path races with pad deactivation
* 642071 : Incorrect comparing of number of source and sink links when parsing a launch string
* 642130 : [basetransform] Check for pad alloc caps when suggestion is not fixed
* 642271 : crash in gst_caps_structure_intersect, encoder_match_media_type
* 642373 : [basetransform] Avoid too may pad allocs
* 642393 : [filesrc] Fails setting the same uri it's setting in the uri queries.
* 642504 : [mingw/cygwin build] correctly export plugin description
* 642522 : gstvalue.c does not include a deserialize function for uchar
* 642869 : gst_index_new: documentation typo
* 643301 : Adding a buffer to a buffer list iterates the list
* 643455 : [regression] Lots of dropouts in Empathy voip calls
* 644935 : [inputselector] During switching of streams it can happen that all pads returned not-linked last
* 645022 : GstTask: typo in GST_TASK_BROADCAST - g_cond_breadcast should probably be g_cond_broadcast
* 645267 : build: fix build with -Werror with GCC 4.6.0
* 645595 : bytereader, bytewriter: fix warnings when using inline functions with g++
* 645746 : [gstpoll] Regression causes 100% cpu usage in multifdsink
* 645877 : commit 14d7db1 causes cpu spinning and other bus weirdness
* 645931 : [gstmultiqueue] fix arbitrary sink + source pad naming
* 646118 : [gstmultiqueue] if arbitrary sink number is specified by caller, use this as single queue id
* 646341 : [baseparse] Add a queued flow return so parsers can keep frames in a queue
* 646531 : GST_BOILERPLATE: don't use " type " as both a variable name and a macro argument
* 646566 : Protect against Pad-Parent disappearing
* 646569 : poll: don't call WSAWaitForMultipleEvents with no events
* 646624 : GstBin: regression: creating too many bins fails, exhausting allowed file descriptor limit
* 646811 : baseparse: deadlock in gst_base_parse_set_index
* 646971 : iterator: resync to avoid infinite loop
* 647005 : GstBus: Only create the socketpair for async message delivery if required
* 647131 : recent multiqueue changes break DVD playback (again)
* 647293 : Fix pad callbacks so they handle when parent goes away
* 647763 : [bus] Bus is leaked if a watch is installed in the default main context
* 647844 : baseparse: Remove unused but set variable
* 647922 : [introspection] Needs to call gst_init() before anything else
* 648199 : pad: potential deadlock / crash when freeing cache
* 648215 : basetransform: unref in wrong place
* 648220 : Regression: videoscale fails to negotiate for PAR transformation
* 648297 : [bus] regression: critical assertion failure
* 649195 : [miniobject] Fix dup_mini_object function to handle NULL gvalues
* 635718 : [basesrc] custom, non-OOB events aren't pushed downstream
* 625396 : gst_debug_remove_log_function doesn't remove default log handler
* 640771 : amarok doesn't start with new phonon gstreamer
* 646972 : queue2: Fixes memory leak on out_flushing error in gst_queue2_create_read
* 640665 : basesink: drops too many buffers when there's no duration
API additions since 0.10.32:
* gst_atomic_queue_length()
* gst_atomic_queue_new()
* gst_atomic_queue_peek()
* gst_atomic_queue_pop()
* gst_atomic_queue_push()
* gst_atomic_queue_ref()
* gst_atomic_queue_unref()
* gst_buffer_list_iterator_get_type()
* gst_caps_intersect_full()
* gst_caps_intersect_mode_get_type()
* gst_clock_periodic_id_reinit()
* gst_element_factory_can_sink_all_caps()
* gst_element_factory_can_sink_any_caps()
* gst_element_factory_can_src_all_caps()
* gst_element_factory_can_src_any_caps()
* gst_event_new_qos_full()
* gst_event_parse_qos_full()
* gst_filename_to_uri()
* gst_message_new_progress()
* gst_message_parse_progress()
* gst_parse_context_get_type()
* gst_progress_type_get_type()
* gst_qos_type_get_type()
* GST_TAG_ENCODED_BY
* gst_base_parse_add_index_entry()
* gst_base_parse_convert_default()
* gst_base_parse_frame_free()
* gst_base_parse_frame_get_type()
* gst_base_parse_frame_init()
* gst_base_parse_frame_new()
* gst_base_parse_get_type()
* gst_base_parse_push_frame()
* gst_base_parse_set_average_bitrate()
* gst_base_parse_set_duration()
* gst_base_parse_set_frame_rate()
* gst_base_parse_set_has_timing_info()
* gst_base_parse_set_min_frame_size()
* gst_base_parse_set_passthrough()
* gst_base_parse_set_syncable()
* gst_base_sink_get_throttle_time()
* gst_base_sink_set_throttle_time()
API deprecated since 0.10.32:
* gst_element_factory_can_src_caps()
* gst_element_factory_can_sink_caps()
Changes since 0.10.31:
* GLib requirement is now >= 2.22
* New core element: valve (moved from -bad)
* New core element: input-selector (N.B. without "select-all" property,
use fsfunnel instead) (moved from -bad)
* New core element: output-selector (N.B. with different negotiation
behaviour by default, set pad-negotiation-mode=active for previous
behaviour) (moved from -bad)
* Performance improvements for many heavily-used code paths: GstPad,
GstPoll, GstClock, GstTask, basesink, basesrc, queue2, multiqueue
* gobject-introspection: add annotations for most core API
* clock: make sync clock wait lockfree
* fdsrc/fdsink: reenable on MSVC
* registry: fix GStatBuf definition for win32 when building against older
glib (fixes unnecessary rescanning of plugins at start-up)
* element: add a more flexible way to get request pads from elements
* multiqueue: return upon input when already eos
* object: fix creation of default name (when creating more than 100000 elements)
* pluginloader: fix hangs on OSX
* poll: fixes for (p)select backend (used e.g. on OSX)
* poll: refactor and make more lockfree; fixes for win32 and OSX (pselect backend)
* registry: don't replace valid existing plugins by blacklisted ones
* tags: don't produce duplicated entries when merging same value twice
* basesink: preroll fixes for async=false case
* basesink: rework position reporting code
* basetransform: handle downstream giving a buffer with new caps but invalid size
Bugs fixed since 0.10.31:
* 635785 : basesrc: fix deadlock
* 638599 : GST_PTR_FORMAT causes crashes if GLib-internal printf is used but system provides register_printf_specifier
* 503592 : gstpad.c does many ref/unref of peer pad in dataflow
* 564056 : Protect against umask(0177)
* 607513 : input-selector segfaults in g_object_notify()
* 632168 : [gsttask] MSVC thread names for task debugging
* 632447 : reduce static memory allocated by the registry
* 632557 : [macros] Define restrict keyword if not available
* 632778 : Optimisations to GstBaseSink
* 632779 : gstdataqueue: Only emit g_cond_signal when needed
* 632780 : queue: Remove useless checks from e406f7
* 633918 : [fakesink] [PATCH] print sink-message events like a message and its structure
* 634965 : sinks render buffers in state PAUSED when async is FALSE
* 635001 : basesink: fix position reporting in PAUSED
* 636268 : configure test fails on FreeBSD
* 636455 : basesrc: Avoid taking object locks for just checking tag presence
* 637057 : [plugin-scanner] gstpoll fails with select backend
* 637300 : [API] request pad based on caps
* 637549 : build fails: ./.libs/libgstbase-0.10.so: undefined reference to `gst_clock_single_shot_id_reinit'
* 637776 : merging the same tag values again produces lists containing duplicates
* 638381 : {input,output}-selector: double-check API before release
* 638399 : a few typos in GStreamer
* 638900 : [GstPoll] Doesn't compile with MinGW
* 638941 : registry scan/loading race and inconsistency
API additions since 0.10.31:
* gst_clock_single_shot_id_reinit()
* gst_element_request_pad()
* GstElementClass::request_new_pad_full()
* gst_poll_get_read_gpollfd()
* gst_value_list_merge()
* GST_CLOCK_DONE
Changes since 0.10.30:
* bin: add "message-forward" property to force forwarding of messages that would usually be filtered such as ASYNC_DONE or EOS
* bin: improve tracking of source elements for more efficient event dispatch
* bufferlist: add function to add a list of buffers
* clock: fix racy shutdown clock id leak
* element: add support for arbitrary element class / factory details
* element: link_many should activate pads if needed
* gst: add math-compat.h header
* datetime: add GstDateTime API
* elementfactory: add utility functions to filter features by type
* plugin: load the gst-python plugin loader with G_MODULE_BIND_LAZY
* query: add buffering ranges API to retrieve informations about the areas of the stream currently buffered
* value: add int64 range type
* info: write debugging output to file if GST_DEBUG_FILE environment variable is set
* pad: use more efficient g_object_notify_by_pspec() for caps notifies if compiling against new-enough GLib
* pipeline: If the currently used clock gets lost update it the next time when going from PAUSED to playing
* plugin: add release datetime field to GstPluginDesc and set it if GST_PACKAGE_RELEASE_DATETIME is defined
* utils: speed up pad linking utility functions by not trying pads that will never work
* adapter: add function to get a list of buffers; support 0-sized buffers
* adapter: optimize gst_adapter_take() and gst_adapter_peek() a little
* basesink: only answer the SEGMENT query in pull mode
* basesrc: return values in stream time for the POSITION query
* basetransform: allow the subclass to add new fields to caps when getting new caps from downstream
* basetransform: avoid useless memcpy
* basetransform: upstream caps-renegotiation fixes
* bitreader: add inlined and unchecked versions of the most important functions
* bytewriter: add inline and unchecked variants of all important functions
* bytewriter: fix possible infinite loop caused by an overflow
* queue: add "silent" property to suppress signal emission (for better performance)
* queue: avoid unnecessary g_cond_signal() (for better performance)
* queue: push newsegment event when linking in PLAYING
* queue2: extend ring buffer to support RAM mode
* queue2: in download mode, prevent range corruption due to race
* queue2: don't send seeks beyond the end of the file upstream in pull mode (fixes apple trailers and youtube/html5 playback in webkit)
* multiqueue: flush the data queue if downstream return WRONG_STATE too
* gst-inspect: print GST_PARAM_MUTABLE_* property flags
Bugs fixed since 0.10.30:
* 396774 : Make GstElementDetails extensible
* 482147 : [queue] Issue with current time level if source task is not started
* 579127 : gst-launch: disable CLOCK_LOST message handling
* 594504 : Need a GType of " Date AND Time AND Timezone "
* 600004 : underrun signal emits when i tested queue overrun test case from file /gstreamerXXXX/tests/check/element/queue.c
* 610366 : [gstcollectpads][doc] Add a reminder for 'data' doc
* 611918 : leaky queue might not push newsegment event
* 618919 : Registry/Plugin Loading Memory Leak
* 619522 : basetransform fix for upstream caps-renegotiation
* 621299 : make simple queues faster
* 621332 : BaseTransform should disable proxy alloc if downstream changes caps
* 622740 : GstPad: Do not call gst_pad_accept_caps() when caps change
* 623040 : Add release_datetime field to GstPluginDesc
* 623121 : [queue2] downloaded areas of the media are not exposed
* 623491 : make *_get_type() thread safe
* 623541 : [basetransform] Implement POSITION query
* 623622 : [basesink/basesrc] Should return values in stream time for POSITION query
* 623806 : [pipeline] Doesn't update the clock if the currently used one gets lost and the start time did not change
* 623875 : gstregistrybinary.c compatibility with glib > = 2.25.0
* 624203 : gstutils: Make gst_pad_proxy_getcaps() return empty caps if it's what the other side has
* 625239 : FTBFS: ./gstreamer-decl.txt:9461: warning: GstTagList has multiple definitions.
* 625295 : [info] regression: doesn't flush output stream after every debug print any longer
* 625368 : gstdatetime.c doesn't compile in VS 2008
* 625862 : [docs] unused symbol GST_CAT_LEVEL_LOG_valist breaks the build
* 626027 : [tag] Add GST_TAG_APPLICATION_NAME
* 626181 : GstElementFactory: add listing/filtering API
* 626651 : [tag] Photography/capture settings tags
* 626784 : element: link_many might assert elements are in paused or playing
* 627438 : gst: Add a gst_is_initialized() API
* 627826 : GstInt64Range type
* 627910 : Warnings emitted when -Wcast-qual used
* 627959 : [queue2] on-disk buffering failing for AVI container
* 628014 : Deprecate GST_FLOW_IS_FATAL/GST_FLOW_IS_SUCCESS
* 628174 : New gstvalue checks cause trouble in thoggen
* 628176 : [basetransform] Problems with buffer handling in inplace mode
* 628408 : Use GDateTime that has been released
* 629241 : Build broken with introspection using gobject-introspection from master
* 629410 : GstBaseTransform: position query refers to sink pad, not source pad
* 629494 : Latest gst-launch.c doesn't build in Visual Studio 2008
* 629553 : GstAdapter: timestamp not updated when empty buffer is pushed
* 629831 : [API] add gst_structure_take_value() and gst_structure_id_take_value()
* 629946 : Enumerations have incorrect names of enum values (GEnumValue.value_name)
* 630257 : GST_DEBUG_DUMP_DOT_DIR not working anymore
* 630436 : basesink: renderdelay needs to be subtracted in adjust_time()
* 630437 : basetransform: Make a WARNING into a DEBUG statement
* 630439 : clock: fix racy shutdown clock id leak
* 631755 : Fix build with glib 2.21.3
* 631853 : [queue2] deadlock when using temp-location and dispatch-properties
* 632236 : [gst-inspect] unhelpful uri handler output
* 632433 : [basesink] hangs/drops going to PLAYING following flushing step in PAUSED
* 632977 : [queue2] qtdemux causes soup to request seeks past the end of the range
* 633147 : Simple reverse negotiation pipeline is broken.
* 633886 : Visual Studio emits warnings about double defined _USE_MATH_DEFINES
* 635031 : [datetime] Fix unix epoch handling
* 635389 : Include information on exported packages in GIRs
* 635869 : GST_BOILERPLATE_FULL causes warnings in user C++ code
* 633176 : recent multiqueue changes break DVD playback
API additions since 0.10.30:
* gst_is_initialized
* gst_buffer_list_iterator_add_list
* GstBin:message-forward
* GST_TYPE_DATE_TIME
* gst_date_time_get_day
* gst_date_time_get_hour
* gst_date_time_get_microsecond
* gst_date_time_get_minute
* gst_date_time_get_month
* gst_date_time_get_second
* gst_date_time_get_time_zone_offset
* gst_date_time_get_type
* gst_date_time_get_year
* gst_date_time_new
* gst_date_time_new_from_unix_epoch_local_time
* gst_date_time_new_from_unix_epoch_utc
* gst_date_time_new_local_time
* gst_date_time_new_now_local_time
* gst_date_time_new_now_utc
* gst_date_time_ref
* gst_date_time_unref
* gst_tag_list_get_date_time
* gst_tag_list_get_date_time_index
* GST_TAG_GEO_LOCATION_HORIZONTAL_ERROR
* GST_TAG_APPLICATION_DATA
* GST_TAG_APPLICATION_NAME
* GST_TAG_DATE_TIME
* GST_ELEMENT_IS_SOURCE
* gst_element_class_set_documentation_uri
* gst_element_class_set_icon_name
* gst_element_factory_get_documentation_uri
* gst_element_factory_get_icon_name
* gst_element_factory_list_filter
* gst_element_factory_list_get_elements
* gst_element_factory_list_is_type
* GstElementFactoryListType
* GST_ELEMENT_FACTORY_TYPE_ANY
* GST_ELEMENT_FACTORY_TYPE_AUDIOVIDEO_SINKS
* GST_ELEMENT_FACTORY_TYPE_AUDIO_ENCODER
* GST_ELEMENT_FACTORY_TYPE_DECODABLE
* GST_ELEMENT_FACTORY_TYPE_DECODER
* GST_ELEMENT_FACTORY_TYPE_DEMUXER
* GST_ELEMENT_FACTORY_TYPE_DEPAYLOADER
* GST_ELEMENT_FACTORY_TYPE_ENCODER
* GST_ELEMENT_FACTORY_TYPE_FORMATTER
* GST_ELEMENT_FACTORY_TYPE_MAX_ELEMENTS
* GST_ELEMENT_FACTORY_TYPE_MEDIA_AUDIO
* GST_ELEMENT_FACTORY_TYPE_MEDIA_IMAGE
* GST_ELEMENT_FACTORY_TYPE_MEDIA_METADATA
* GST_ELEMENT_FACTORY_TYPE_MEDIA_SUBTITLE
* GST_ELEMENT_FACTORY_TYPE_MEDIA_VIDEO
* GST_ELEMENT_FACTORY_TYPE_MEDIA_ANY
* GST_ELEMENT_FACTORY_TYPE_MUXER
* GST_ELEMENT_FACTORY_TYPE_PARSER
* GST_ELEMENT_FACTORY_TYPE_PAYLOADER
* GST_ELEMENT_FACTORY_TYPE_SINK
* GST_ELEMENT_FACTORY_TYPE_SRC
* GST_ELEMENT_FACTORY_TYPE_VIDEO_ENCODER
* GST_ELEMENT_FACTORY_KLASS_DECODER
* GST_ELEMENT_FACTORY_KLASS_ENCODER
* GST_ELEMENT_FACTORY_KLASS_SINK
* GST_ELEMENT_FACTORY_KLASS_SRC
* GST_ELEMENT_FACTORY_KLASS_MUXER
* GST_ELEMENT_FACTORY_KLASS_DEMUXER
* GST_ELEMENT_FACTORY_KLASS_PARSER
* GST_ELEMENT_FACTORY_KLASS_PAYLOADER
* GST_ELEMENT_FACTORY_KLASS_DEPAYLOADER
* GST_ELEMENT_FACTORY_KLASS_FORMATTER
* GST_ELEMENT_FACTORY_KLASS_MEDIA_VIDEO
* GST_ELEMENT_FACTORY_KLASS_MEDIA_AUDIO
* GST_ELEMENT_FACTORY_KLASS_MEDIA_IMAGE
* GST_ELEMENT_FACTORY_KLASS_MEDIA_SUBTITLE
* GST_ELEMENT_FACTORY_KLASS_MEDIA_METADATA
* gst_plugin_feature_list_debug
* gst_plugin_feature_rank_compare_func
* gst_query_add_buffering_range
* gst_query_get_n_buffering_ranges
* gst_query_parse_nth_buffering_range
* gst_structure_get_date_time
* gst_structure_id_take_value
* gst_structure_take_value
* GST_TYPE_INT64_RANGE
* gst_int64_range_get_type
* gst_util_fraction_compare
* gst_value_get_int64_range_max
* gst_value_get_int64_range_min
* gst_value_set_int64_range
* GST_VALUE_HOLDS_DATE_TIME
* gst_adapter_take_list
* gst_bit_reader_skip_unchecked
* gst_bit_reader_skip_to_byte_unchecked
* gst_bit_reader_get_bits_uint16_unchecked
* gst_bit_reader_get_bits_uint32_unchecked
* gst_bit_reader_get_bits_uint64_unchecked
* gst_bit_reader_get_bits_uint8_unchecked
* gst_bit_reader_peek_bits_uint16_unchecked
* gst_bit_reader_peek_bits_uint32_unchecked
* gst_bit_reader_peek_bits_uint64_unchecked
* gst_bit_reader_peek_bits_uint8_unchecked
* gst_byte_writer_put_int8_unchecked
* gst_byte_writer_put_int16_be_unchecked
* gst_byte_writer_put_int16_le_unchecked
* gst_byte_writer_put_int24_be_unchecked
* gst_byte_writer_put_int32_be_unchecked
* gst_byte_writer_put_int32_le_unchecked
* gst_byte_writer_put_int64_be_unchecked
* gst_byte_writer_put_int64_le_unchecked
* gst_byte_writer_put_uint8_unchecked
* gst_byte_writer_put_uint16_be_unchecked
* gst_byte_writer_put_uint16_le_unchecked
* gst_byte_writer_put_uint24_be_unchecked
* gst_byte_writer_put_uint24_le_unchecked
* gst_byte_writer_put_uint32_be_unchecked
* gst_byte_writer_put_uint32_le_unchecked
* gst_byte_writer_put_uint64_be_unchecked
* gst_byte_writer_put_uint64_le_unchecked
* gst_byte_writer_put_float32_be_unchecked
* gst_byte_writer_put_float32_le_unchecked
* gst_byte_writer_put_float64_be_unchecked
* gst_byte_writer_put_float64_le_unchecked
* gst_byte_writer_put_data_unchecked
* gst_byte_writer_fill_unchecked
API deprecated since 0.10.30:
* GST_FLOW_IS_FATAL
* GST_FLOW_IS_SUCCESS
Changes since 0.10.29:
* GLib requirement was bumped to 2.20, automake requirement to 1.10
* bin: unlock gst_element_get_state() on error, instead of hanging forever if no timeout is given
* clock: fix refcounting bug in gst_clock_set_master
* caps: make sure _normalize() is applied on all structures
* info: add new TRACE log level and move refcounting there from LOG level
* pad: don't check twice for changed caps per push
* pad: fix iterator aggregation of all pads in the internal links fallback
* tagsetter: protect tagsetter operations with a lock
* value: support short fourccs (esp. serialisation/deserialisation)
* adapter: fix _try_to_merge_up(); optimize progressive masked scans
* basesink: implement percentage position and duration queries
* basesink: fix segment query return value
* basetransform: add accept_caps vmethod
* basetransform: re-evaluate proxy_alloc when reconfigured
* basetransform: assume in_size equals out_size if there's no transform_size/get_unit_size vfunc
* fdsink, filesink: make sync property work correctly
* typefind: make sure buffers' metadata is writable before setting caps on them
* queue2: fix merging of ranges
* queue2: don't wait for data when EOS
* queue2: don't ignore failure to open the temporary file location
* tools: make gst-launch print things correctly to stderr/stdout and make --quiet work correctly
* introspection: add many more gobject-introspection annotations
* xml: serialisation/deserialisation to/from XML has been deprecated, since it's always been broken
for all but the most trivial pipelines, and will likely never be fixed
Bugs fixed since 0.10.29:
* 623586 : gst/tagsetter check fails
* 463435 : Skip #include < libxml/parser.h > in gstconfig.h.in when not needed
* 505770 : gst_element_get_state() should unblock if element posts an error
* 615820 : implement percentage position and duration queries
* 615941 : [tags] Add GST_TAG_DEVICE_MANUFACTURER and GST_TAG_DEVICE_MODEL
* 616586 : Use GObject's boxed type for GError
* 617223 : [tags] Add tags for direction of capture and movement
* 617625 : Commandline utility wrappers (gst-run) don't work on Windows
* 618644 : gst_pad_get_caps() Return pad template if parent element is in GST_STATE_NULL
* 619508 : [tag] Add image orientation tag
* 619815 : GST_PLUGIN_LOADING_WHITELIST env var for unit tests
* 619828 : [API] adapter: add masked_scan_uint32_peek
* 620460 : info: add new TRACE log level and move refcounting there from LOG level
* 620490 : [basesink] segment query unconditionally returns FALSE
* 621006 : Deprecate unused gst_object_{get|set}_name_prefix()
* 621282 : Display of short fourccs is in hex instead of text
* 621332 : BaseTransform should disable proxy alloc if downstream changes caps
* 621334 : GstBaseTransform should not require a transform_size function
* 621505 : Disable memory poisoning by default for releases
* 621527 : gstcaps: New gst_caps_steal_structure() method
* 621530 : filesink ignores sync=true
* 621595 : --quiet doesnt make gst-launch be completely quiet, also messages should not go to stdout
* 621773 : Add introspection annotations
* 621867 : gst-launch: rename new --no-play command line option
* 621896 : [API][taglist] Add gst_tag_list_peek_string_index
* 622504 : [GstPad] Provide more fine-grained linking methods
* 622546 : distcheck fails in docs/plugins/
* 622685 : [GstXml] Deprecate GstXml
* 622967 : [queue2] Problems with progressive downloading
* 623301 : gst_caps_normalize : doesn't normalize completely
* 623589 : Fix races/refcounting bugs with slave clocks
* 624113 : [tags] wrong behaviour in merge function for strings
* 622025 : Can't build gstreamer due to Gst-0.10.gir: error: Can't resolve type 'PadIntLinkFunction' for field Gst.Pad.intlinkfunc
API additions since 0.10.29:
* gst_caps_steal_structure()
* gst_clock_id_wait_async_full()
* gst_element_link_pads_full()
* GstPadLinkCheck
* gst_pad_link_check_get_type()
* gst_pad_link_full()
* gst_structure_fixate_field_string()
* GST_TAG_DEVICE_MANUFACTURER
* GST_TAG_DEVICE_MODEL
* GST_TAG_IMAGE_ORIENTATION
* GST_TAG_GEO_LOCATION_CAPTURE_DIRECTION
* GST_TAG_GEO_LOCATION_MOVEMENT_DIRECTION
* GST_TAG_GEO_LOCATION_MOVEMENT_SPEED
* gst_tag_list_peek_string_index()
* GST_TRACE
* GST_TRACE_OBJECT
* GST_CAT_TRACE
* GST_CAT_TRACE_OBJECT
* GST_LEVEL_TRACE
* gst_adapter_masked_scan_uint32_peek
* GstBaseSink::enable-last-buffer
* gst_base_sink_is_last_buffer_enabled()
* gst_base_sink_set_last_buffer_enabled()
* GstBaseTransform::accept_caps()
API deprecated since 0.10.29:
* gst_object_get_name_prefix()
* gst_object_set_name_prefix()
* gst_caps_load_thyself()
* gst_caps_save_thyself()
* gst_class_signal_emit_by_name()
* gst_object_save_thyself()
* gst_object_restore_thyself()
* gst_pad_load_and_link()
* gst_xml_get_element()
* gst_xml_get_topelements()
* gst_xml_get_type()
* gst_xml_make_element()
* gst_xml_new()
* gst_xml_parse_doc()
* gst_xml_parse_file()
* gst_xml_parse_memory()
* gst_xml_write()
* gst_xml_write_file()
Changes since 0.10.28:
* improve plugin loading robustness: do not ever unload a plugin after
calling into it: should fix mystery crashers during registry loading
when a plugin init function returns FALSE (e.g. when some supporting
library fails to initialise or a wrapper plugin found no features to
wrap and wrongly returned FALSE)
* configurable memory alignment for GstBuffers
* add QoS message to inform apps of lost data, dropped frames etc.
* basesink, basetransform: add support for new QoS message
* basetransform: accept non-fixed caps suggestions
* basesrc: fix gst_base_src_new_seamless_segment()
* GstController fixes and optimisations
* set thread name for pad tasks on Linux
* pipeline, bin: fix refcount issue when removing elements during a state change
* queue2: implement seeking in download mode
* queue2: implement flushing in download buffering
* queue2: improve buffer level measurement in download mode
* fdsrc: allow specifying the size in bytes on the uri
* build fixes: better checks for uint128_t, inline assembly on OSX, compilation
if HAVE_REGISTER_PRINTF_SPECIFIER is undefined, gobject-introspection
* two symbols were removed that had been exported but never been used or been
declared in any header file: gst_element_default_error and gst_element_request_compatible_pad
Bugs fixed since 0.10.28:
* 576234 : [basetransform] Suggesting non-fixed caps or no size doesn't work for upstream negotiation
* 520697 : [API] Add GST_TAG_USER_RATING
* 590718 : docs build failures with -jN: cp: cannot create regular file `build/image.entities': File exists
* 595958 : Position not updated after a backwards gst_event_new_step()
* 596832 : configurable buffer alignment
* 600718 : autoconf fails with gobject-introspection
* 600877 : [uridecodebin] Needs to disable download buffering for non-fast-start files
* 603710 : Can't compile with introspection support
* 603831 : build with libtool 1.x.y only works if --disable-shave is used
* 609046 : basetransform now ignores suggestions from capsfilter
* 609170 : basesrc pushes two newsegment
* 610256 : Use G_VALUE_COLLECT_INIT if available
* 611075 : Typo in debug_dump_pad function
* 611911 : Set thread names on pipeline threads
* 612370 : gstutils.c inline asm typo, compilation fails
* 612410 : [API][tags] add new geo tags
* 612733 : Build fails because HAVE_REGISTER_PRINTF_SPECIFIER is undefined
* 612881 : [utils] gst_pad_proxy_setcaps() doesn't handler iterator resyncs
* 613215 : delayed set in gst-launch are not recursive
* 613593 : git-update.sh script does not work on fresh git repository clones
* 614167 : gstinfo: no previous prototype for 'xxx' when buildign with --disable-gst-debug
* 614629 : utils: Use G_GNUC_CONST instead of G_GNUC_PURE for conversion functions
* 614767 : libgstreamer build failure on OS X x86_64
* 614833 : out of srcdir build fails for libs/gst/check
* 615698 : " warning: cast increases required alignment of target type " with gcc 4.2.1 on arm
* 615756 : [bin] refcount issue when removing element in error
* 615880 : Add some more custom flow returns
* 615881 : [LFOControlSource] Use correct setter for double GValues
* 616846 : Crash in gst_interpolation_control_source_find_control_point_iter
API additions since 0.10.28:
* GST_MESSAGE_QOS
* gst_message_new_qos()
* gst_message_parse_qos()
* gst_message_parse_qos_stats()
* gst_message_parse_qos_values()
* gst_message_set_qos_stats()
* gst_message_set_qos_values()
* GST_FLOW_CUSTOM_SUCCESS_1
* GST_FLOW_CUSTOM_SUCCESS_2
* GST_FLOW_CUSTOM_ERROR_1
* GST_FLOW_CUSTOM_ERROR_2
* GST_TAG_USER_RATING
* GST_TAG_GEO_LOCATION_COUNTRY
* GST_TAG_GEO_LOCATION_CITY
* GST_TAG_GEO_LOCATION_SUBLOCATION
API deprecated since 0.10.28:
* gst_element_class_set_details()
Changes since 0.10.27:
* parse "1/MAX" fraction strings
* no material changes compared to 0.10.27, this release is mostly to
keep core/base version numbers in sync
Changes since 0.10.26:
* basesrc: protect segment values from concurrent access from different threads
* typefind: protect internal fields from concurrent changes from different threads
* typefind: fix pad activation corner-case with have-type already having been emitted
* typefind: reset the working mode when going to READY/NULL, fixes re-use from
READY state as with decodebin2
* gstpoll: fix crash when logging is enabled for GST_POLL
* bytewriter: expose gst_byte_writer_put_{float32|float64}_*() properly in header
* basesink: fix emergency rendering timestamp tracking
* fdsink, fdsrc: fix compilation with MSVC
* memindex: avoid busy loop when doing EXACT lookup
Bugs fixed since 0.10.26:
* 610366 : [gstcollectpads][doc] Add a reminder for 'data' doc
* 605189 : gst_element_get_state has wrong introspection
* 607771 : [API] Add gst_byte_writer_fill
* 608036 : [typefind] deadlock when upstream puts caps on buffers on pull mode
* 608877 : [typefind] Access to internal fields not threadsafe
* 609941 : GStreamer-WARNING **: External plugin loader failed.
* 610210 : [PATCH] Fix compilation of fdsink and fdsrc with MSVC
* 610246 : [optimization] Speed up _get_range()
* 610367 : [memindex] might busy loop upon EXACT lookup
* 610444 : [controller] Interpolation control source passes NULL pointers to GSequence API
* 611087 : [basesink] emergency rendering of late buffers fails after resuming from PAUSE
* 611719 : GST_DEBUG_OBJECT macros not fed with GObject* in gstpoll.c
API additions since 0.10.26:
* gst_byte_writer_fill()
Changes since 0.10.25:
* registry: do plugin scanning (on *nix) using an external helper binary
* lots of performance improvements all over the place (ghostpads,
multiqueue, pad construction, superfluous type checks, registry loading)
* add GstByteWriter, a simple generic byte writer
* filesink: Use _wfopen on win32 to open files with non-ascii filenames correctly.
* queue2: add option to remove the temp-file (enabled by default)
* it is now allowed to use gst_caps_set_simple() on non-simple caps
* queue2: move from gst-plugins-base into the coreelements plugin in core
(this means you may need to remove libgstqueue2.so manually if you
installed from source and don't do make uninstall before upgrading, or
combine an older -base with a newer core)
* multiqueue: add support for buffering mode where we post BUFFERING
messages based on the level of the queues
* typefind: speed up typefinding a lot by first trying the typefinder for
the file's extension
* buffer: remove private/internal subbuffer subclass and keep track of
the parent buffer directly in the GstBuffer structure (this removes
quite a bit of special-casing and will allow for future improvements/
extensions that are harder to do if there's a separate subbuffer class.
* collectpads: add ability to install clipping functions
* new tags for TV/Radio shows/episodes, lyrics, composer sortname and
grouping
* miniobject: avoid race when recycling buffers
* basesrc: fix race in PLAYING->PAUSED->PLAYING
Bugs fixed since 0.10.25:
* 476514 : [multiqueue] Doesn't forward EOS event in all cases
* 590941 : API: add gst_pad_get_caps() variant that avoids unneeded caps copies
* 595602 : g_child_proxy_get_valist doesn't initialize GValue correctly
* 535069 : basesrc no longer support non-flushing seeks on itself
* 560442 : GNOME Goal: Remove deprecated GLib symbols
* 595511 : Annotations for gst_element_query_{position,duration}
* 595886 : gst_pad_fixate_caps() does not return fixed caps in case of multiple structures
* 595964 : [multiqueue] can hang pipeline during startup
* 596366 : proxy_getcaps reverses direction of getcaps
* 597407 : GstPipeline calculates base_time incorrectly when a new clock appears during PAUSED state
* 597550 : basesrc: sometimes no buffers produced after PLAYING - PAUSED - PLAYING
* 597690 : Improve caps setters API
* 598297 : make check fails when any --disable option which changes the API has been used
* 598526 : bytewriter: fails to compile with gcc 4.2.4 on Ubuntu Hardy 64 bits
* 598700 : scripts: Parallelise git-update.sh build script
* 598895 : [GstRegistry] Use hash table for feature lookups
* 598896 : [GstRegistry] Cache lists of ElementFactory and TypeFindFactory
* 599147 : typefind : Avoid having to re-sort the typefind factory list
* 599759 : [qtdemux] Add support for more tags
* 600313 : Visualisations stop updating after seek
* 600922 : gst-launch: wake up less often to check for Ctrl-C
* 601587 : MiniObject race condition
* 601668 : [gstregistry] gstregistry.c uses a variable from gst.c
* 601669 : [tests] tests/examples/manual depends on libgstcheck
* 602093 : libgstcheck fails to export some symbols when built under et_EE locale
* 602275 : [API] Add new sink-message event
* 602419 : [basesink] Regression with position reporting
* 603059 : Totem crashes when DVD is encrypted but libdvdcss isn't available
* 603787 : [registry] Doesn't use GMappedFile
* 604091 : tee: cleanup requestpads in dispose
* 604093 : gst-inspect/launch: move gst_tools_print_version to avoid glib warning
* 605251 : tee causes segfault if there is no source pad
* 605930 : [shave] common/shave not existing yet when configure checks need it
* 606435 : gsttee not threadsafe
* 607283 : segfaults and/or miniobject warnings with GLib > = 2.23.2
* 607317 : [PATCH] fix unaligned detection for x86-64 when cross compiling
* 607431 : update common modules before freeze
* 607481 : Should define G_THREADS_MANDATORY everywhere
* 607739 : [queue2] Temporary file is removed although code claims the opposite
* 607842 : Audio comes out with short breaks after resume pipeline (paused- > playing)
* 608136 : multiqueue handles UNEXPECTED flowreturn wrongly
* 608398 : Initializing the glib thread system seems not to work
* 608442 : [filesrc] typo in warning message
* 608726 : bytewriter: mistake in .h/.c function naming
* 609166 : Buffer list docs ascii art
* 590669 : [API] need GstByteWriter or GstChunkWriter
* 601698 : Rename new plugin-scanner helper executable before release
* 604565 : [gstcheck] Update check to 0.9.8
* 596877 : New internal libcheck breaks the Solaris build
API additions since 0.10.25:
* GST_DEBUG_REGISTER_FUNCPTR()
* gst_base_src_new_seamless_segment()
* gst_event_new_sink_message()
* gst_event_parse_sink_message()
* gst_util_fraction_add()
* gst_util_fraction_multiply()
* gst_util_greatest_common_divisor()
* gst_util_double_to_fraction()
* gst_util_fraction_to_double()
* gst_registry_get_feature_list_cookie()
* gst_default_registry_get_feature_list_cookie()
* gst_pad_get_caps_reffed()
* gst_pad_peer_get_caps_reffed()
* gst_structure_id_has_field()
* gst_structure_id_has_field_typed()
* gst_plugin_feature_list_copy()
* gst_caps_set_value()
* gst_byte_writer_ensure_free_space()
* gst_byte_writer_free()
* gst_byte_writer_free_and_get_buffer()
* gst_byte_writer_free_and_get_data()
* gst_byte_writer_get_remaining()
* gst_byte_writer_init()
* gst_byte_writer_init_with_buffer()
* gst_byte_writer_init_with_data()
* gst_byte_writer_init_with_size()
* gst_byte_writer_new()
* gst_byte_writer_new_with_buffer()
* gst_byte_writer_new_with_data()
* gst_byte_writer_new_with_size()
* gst_byte_writer_put_data()
* gst_byte_writer_put_float32_be()
* gst_byte_writer_put_float32_le()
* gst_byte_writer_put_float64_be()
* gst_byte_writer_put_float64_le()
* gst_byte_writer_put_int16_be()
* gst_byte_writer_put_int16_le()
* gst_byte_writer_put_int24_be()
* gst_byte_writer_put_int24_le()