-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
8971 lines (7072 loc) · 331 KB
/
ChangeLog
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
0.10.11:
2012-09-19 José Alburquerque <[email protected]>
Release 0.10.11.
* NEWS:
* configure.ac:
2012-09-19 José Alburquerque <[email protected]>
Regenerate the XML docs file.
* gstreamer/src/gst_docs.xml: Regenerate the docs file for updated
method and signal docs.
* gstreamer/src/bin.hg:
* gstreamer/src/bus.hg:
* gstreamer/src/childproxy.hg:
* gstreamer/src/colorbalance.hg:
* gstreamer/src/colorbalancechannel.hg:
* gstreamer/src/discoverer.hg:
* gstreamer/src/element.hg:
* gstreamer/src/index.hg:
* gstreamer/src/object.hg:
* gstreamer/src/pad.hg:
* gstreamer/src/padtemplate.hg:
* gstreamer/src/registry.hg:
* gstreamer/src/tuner.hg:
* gstreamer/src/tunerchannel.hg:
* gstreamer/src/urihandler.hg: Remove the handwritten signal docs from
these files so that the automatically generated ones (in the above
file) are used.
* examples/media_player_gtkmm/player_window.cc: Remove erroneous line.
2012-09-19 José Alburquerque <[email protected]>
Regenerate the enums and signal defs with 0.10.36 for a new release.
* gstreamer/src/gst_enums.defs:
* gstreamer/src/gst_signals.defs: Regenerated.
2012-09-19 José Alburquerque <[email protected]>
Init: Add the is_initialized() and the deinit() functions.
* gstreamer/gstreamermm/init.{cc,h}: Wrap the GStreamer
gst_is_initialized() and gst_deinit() functions.
Bug #684148 ([email protected]).
2012-09-14 José Alburquerque <[email protected]>
Plug-ins: Speed up initialization by avoiding their loading on startup.
* tools/extra_defs_gen/generate_plugin_gmmproc_file.cc
(generate_hg_file): Use the new _NO_WRAP_INIT_REGISTRATION macro to
signal that the plug-ins should not be registered on startup by the
wrap_init() function. Also use the new _CUSTOM_WRAP_FUNCTION in order
to implement a custom Glib::wrap() function for plug-ins that ensures
the registration of the wrap_new() function before calling
Glib::wrap_auto() to wrap a C object.
(generate_ccg_file): Modify the generation of the plug-in *_get_type()
functions so that when an object of the plug-in type is first created,
the plug-in's wrap_new() function is registered with the wrapping
system using the type obtained when the plug-in is first loaded. Also
generate a custom Glib::wrap() function that ensures the registration
of the plug-in's wrap_new() function before calling Glib::wrap_auto().
This ensures that even if there is a C type of the plug-in, that even
that object can be properly wrapped.
Bug #684006.
2012-09-12 José Alburquerque <[email protected]>
Event, Message, Query: Have create() methods return derived types.
* gstreamer/src/event.{ccg,hg}:
* gstreamer/src/message.{ccg,hg}:
* gstreamer/src/query.{ccg,hg}: Modify the create() methods of all the
Event, Message and Query derived classes so that the methods return
a reference pointer to the derived type and not to the base type. Add
protected templated inline wrap() methods to the base types (Event,
Message and Query) which convert a derived type wrapped as a reference
pointer to the base type to a reference pointer to the derived type
using a reference pointer dynamic cast and use the methods in the
derived classes create() methods for the conversions.
* tests/test-event-wrap.cc:
* tests/test-message-wrap.cc:
* tests/test-query-wrap.cc: Modify the event, message and query
wrapping tests to create an Event, Message and Query to ensure that
the new create() methods work.
Bug #683580 ([email protected]).
2012-09-11 José Alburquerque <[email protected]>
MiniObject derived classes: Correct wrapper memory leak.
* gstreamer/src/buffer.{ccg,hg}:
* gstreamer/src/bufferlist.{ccg,hg}:
* gstreamer/src/discovererinfo.{ccg,hg}: Add custom wrap_new()
functions to the Gst::MiniObject derived classes in these files so
that when the C objects are wrapped, a weak reference is added to the
miniobject and the newly created wrapper can be destroyed in the
specified callbacks. Also add the callbacks that destroy the wrappers
on weak referencing notification. Use the _CUSTOM_WRAP_NEW macro in
the class declarations to ensure that gmmproc knows that these classes
have custom wrap_new() functions.
* gstreamer/src/event.ccg:
* gstreamer/src/message.ccg:
* gstreamer/src/query.ccg: Modify the custom class wrap() methods to
add weak reference notification on the newly given GstMiniObject. Add
the callbacks which destroy the wrapper on weak reference
notification.
* gstreamer/gstreamermm/miniobject.cc (~MiniObject): Ensure that the
destructor does not try to unreference an object that is being
destroyed because of a weak reference (when the reference is already
zero).
Bug #608702 (Massimiliano).
2012-09-07 José Alburquerque <[email protected]>
Query: Correct the docs usage example so that its lines compile.
* gstreamer/src/query.hg: The example was not translated correctly
from the C code thus lines from the example would not compile
correctly. The error was discovered on the GStreamer mailing list.
2012-08-15 José Alburquerque <[email protected]>
Examples: Fix the media player example for MinGW.
* examples/media_player_gtkmm/main.cc:
* examples/media_player_gtkmm/player_window.cc:
* examples/media_player_gtkmm/player_window.h: Modify the code to not
use the XImageSink plugin (which is is specific to the Linux
Platform). Also include gdk/gdkwin32.h instead of gdk/gdkx.h when
compiling for the Windows platform.
2012-07-30 José Alburquerque <[email protected]>
Object: Add getter methods for the GMutex lock member.
* gstreamer/src/object.hg: Use _MEMBER_GET_PTR() to provide getter
methods for the GMutex lock member.
* gstreamer/src/object.ccg: Adapt the callbacks to use the new Thread
classes in Glib::Threads and not Glib::Thread which have been
deprecated.
* gstreamer/src/task.{ccg,hg}: Also use the new thread classes in
these files where possible.
2012-07-30 José Alburquerque <[email protected]>
ElementFactory: Add register_element() wrapping gst_element_register().
* gstreamer/src/elementfactory.hg: Add the register_element() static
method.
* gstreamer/src/plugin.hg (register_static): Correct the staticity of
this method (it should be a static method).
2012-07-23 José Alburquerque <[email protected]>
BaseAudioSink: Wrap new properties.
* gstreamer/src/baseaudiosink.hg: Wrap the "alignment-threshold" and
"discont-wait" new properties.
2012-07-23 José Alburquerque <[email protected]>
Fix the build with the latest GStreamer git sources.
* gstreamer/src/gst_enums.defs:
* gstreamer/src/gst_signals.defs: Regenerate these files so that the
new plug-in enums, properties and signals are found when they are
wrapped by the generator.
* gstreamer/src/gst_enums.defs.patch: Update the gst_enums.defs patch
file for easy regeneration.
* examples/media_player_gtkmm/player_window.cc (on_button_forward):
Cast the playbin to a Gst::Element to disambiguate the send_event()
method. Gst::PlayBin2 derives from both Gst::Navigation and
Gst::Element which both implement a send_event() method.
0.10.10.2:
2012-05-14 José Alburquerque <[email protected]>
Release 0.10.10.2.
* NEWS:
* configure.ac: Prepare for a new release.
2012-05-14 José Alburquerque <[email protected]>
Plugin Gen: Remove conflict with GStreamer *_get_type() function names.
* tools/extra_defs_gen/generate_plugin_gmmproc_file.cc
(generate_hg_file): Append a _GSTREAMERMM to the cast macro of the
_CLASS_GOBJECT() macro so that gmmproc uses the custom *_get_type()
function of the plug-in to get the base GType of the plug-in.
(generate_ccg_file): Use *_gstremaermm_get_type() for the name of the
custom *_get_type() functions of the plug-ins so that there is no
conflict with the actual GStreamer *_get_type() functions for any
reason.
* gstreamer/src/Makefile.am: Remove unnecessary line.
* gstreamer/src/mixer.hg: Remove unnecessary include.
0.10.10.1:
2012-02-19 José Alburquerque <[email protected]>
Release 0.10.10.1.
* NEWS:
* configure.ac:
2012-02-19 José Alburquerque <[email protected]>
Fix the distcheck.
* tests/test-plugin-signals.cc: Add an include to fix the build.
2012-02-19 José Alburquerque <[email protected]>
Allow the build to succeed for MinGW32.
* configure.ac: Add logic to define the GSTREAMERMM_STATIC_LIB macro
if the --enable-static option is passed to configure.
* gstreamer/gstreamermmconfig.h.in: Add logic to decide how to build
certain constants in Windows.
* gstreamer/src/clock.ccg:
* gstreamer/src/clock.hg: Correct the declaration and definition of
the ClockTime constants so that it uses the above logic (namely the
GSTREAMERMM_API macro) to decide how these constants should be linked
when building in Windows. Also correct the use of 'static' in the
declaration.
* gstreamer/gstreamermm/wrap.h: Use the new GSTREAMERMM_API macro here
also.
Bug #669045 (Joao Paulo Pizani Flor).
2012-01-31 José Alburquerque <[email protected]>
Regenerate signals and properties.
* gstreamer/src/gst_signals.defs: Regenerate to get the new properties
of plugins.
* gstreamer/src/gst_signals.defs.patch: Update the patch file to
include a fix for the "discovered" signal of GstDiscoverer.
S
2012-01-16 José Alburquerque <[email protected]>
Fix the build with the latest GStreamer sources and glibmm.
* examples/hello_world/main.cc:
* examples/media_player_gtkmm/player_window.cc:
* examples/media_player_gtkmm/player_window.h:
* examples/ogg_player/main.cc:
* examples/ogg_player_gtkmm/player_window.cc:
* examples/optiongroup/main.cc:
* examples/typefind/main.cc: Add needed includes to the example
sources so that they build with the latest glibmm.
* gstreamer/gstreamermm/wrap.cc:
* gstreamer/src/bus.hg:
* gstreamer/src/cddabasesrc.hg:
* gstreamer/src/element.hg:
* gstreamer/src/elementfactory.hg:
* gstreamer/src/format.hg:
* gstreamer/src/index.hg:
* gstreamer/src/mixer.hg:
* gstreamer/src/object.hg:
* gstreamer/src/pad.hg:
* gstreamer/src/plugin.hg:
* gstreamer/src/preset.hg:
* gstreamer/src/propertyprobe.hg:
* gstreamer/src/query.hg:
* gstreamer/src/ringbuffer.hg:
* gstreamer/src/structure.hg:
* gstreamer/src/task.hg:
* gstreamer/src/typefind.hg:
* gstreamer/src/typefindfactory.hg:
* gstreamer/src/urihandler.hg: Add needed includes to the sources so
that they also build with the latest glibmm.
* tools/m4/plugingen_gstreamermm.m4: Add a _TRANSLATION from
GstFraction to Gst::Fraction so that the plugin generation process
works with the latest GStreamer sources.
2011-11-02 José Alburquerque <[email protected]>
Examples: Add a "Hello World" example.
* examples/Makefile.am:
* examples/hello_world/main.cc: Add a translation of the GStreamer
helloworld example so that the GStreamer bindings page can be updated
correctly (see the e-mail:
http://lists.freedesktop.org/archives/gstreamer-devel/2011-October/033776.html)
2011-09-06 José Alburquerque <[email protected]>
Preset: Add an include to fix the build with git sources.
* gstreamer/src/preset.hg:
0.10.10:
2011-07-20 José Alburquerque <[email protected]>
0.10.10.
* NEWS:
* configure.ac: Prepare for a new release.
2011-07-20 José Alburquerque <[email protected]>
gstreamermm.h: Include discovererinfo.h.
* gstreamer/gstreamermm.h:
2011-07-18 José Alburquerque <[email protected]>
Regenerate signal and property defs file.
* gstreamer/src/gst_signals.defs: Regenerate to update the existing
properties and signals of plugins.
2011-07-18 José Alburquerque <[email protected]>
DiscovererInfo: Wrap methods and add related classes with methods.
* gstreamer/src/discovererinfo.{ccg,hg} (DiscovererInfo): Wrap the
methods.
(Discoverer[Audio|Container|Stream|Video]Info): Add these new classes
which are related to DiscovererInfo and wrap their methods.
DiscovererStreamInfo is a base class for the others.
* tools/m4/convert_gst.m4: Add necessary conversions.
* gstreamer/src/taglist.hg: Move a local conversion to this file from
the main convert file above.
2011-07-18 José Alburquerque <[email protected]>
Examples: Port to gtkmm-3.0.
* configure.ac: Require gtkmm-3.0 for examples.
* examples/ogg_player_gtkmm/player_window.cc (on_button_open): Use
FileFilter as a refcounted object (using Glib::RefPtr<>) because it is
so in gtkmm-3.0.
2011-07-15 José Alburquerque <[email protected]>
Discoverer: Complete a TODO.
* gstreamer/src/discoverer.hg (discovered): Use a Glib::Error instead
of a GError when wrapping this signal.
* tools/m4/convert_gst.m4: Add a GError conversion.
2011-07-15 José Alburquerque <[email protected]>
Discoverer: Wrap the methods, properties and signals.
* tools/extra_defs_gen/generate_defs_gst.cc: Alphabetize the
gst-plugins-base types and add the GST_TYPE_DISCOVERER GType to the
extra defs generation utility.
* gstreamer/src/gst_signals.defs: Regenerate with the utility to get
the properties and signals of GstDiscoverer.
* gstreamer/src/discoverer.{ccg,hg}: Wrap the constructor, the create
method, the other methods, the properties and the signals.
* tools/m4/convert_gst.m4: Add a GstDiscovererInfo conversion.
2011-07-15 José Alburquerque <[email protected]>
Add Gst::DiscovererInfo skeleton.
* gstreamer/src/discovererinfo.{ccg,hg}:
* gstreamer/src/filelist.am: Add the sources and mention them in the
build. The _STRUCT_NOT_HIDDEN macro was needed when defining the
class because otherwise gmmproc generates a 'typedef struct
_GstDiscovererInfoClass GstDiscovererInfoClass' which is not the same
typedef used in the C sources.
2011-07-13 José Alburquerque <[email protected]>
Discoverer: Use pkg-config to get the -lgstpbutils-0.10.
* configure.ac (GSTREAMERMM_MODULES): Require the
gstreamer-pbutils-0.10 package so that GSTREAMERMM_LIBS variable
includes the -lgstpbutils-0.10 automatically.
* examples/Makefile.am (LDDADD): Remove the extra (now unneeded)
-lgstpbutils-0.10.
* gstreamer/gstreamermm.pc.in (Libs): Remove it from here also because
it is included automatically from the "Requires:" section.
2011-07-13 José Alburquerque <[email protected]>
gstreamermm.h: Add forgotten includes from newly added API.
* gstreamer/gstreamermm.h:
2011-07-12 José Alburquerque <[email protected]>
Add Gst::Discoverer skeleton.
* gstreamer/src/discoverer.{ccg,hg}: Add the source files including
the Gst::Discoverer class definition though nothing is wrapped yet.
* gstreamer/src/filelist.am: Mention the new source files in the
build.
* examples/Makefile.am (LDDADD): Add a -lgstpbutils-0.10 because it
is needed when linking because it is not included in the
gstreamer-plugins-base-0.10.pc file and has to be included so that the
linker can find the GstDiscoverer related API.
* gstreamer/gstreamermm.pc.in (Libs): Do the same so that users don't
have to include the -lgstpbutils-0.10 themselves.
2011-07-12 José Alburquerque <[email protected]>
Element: Add request_pad() method overloads.
* gstreamer/src/element.hg (request_pad): Use the new gmmproc syntax
for specifying optional arguments in the _WRAP_METHOD macro to provide
method overloads not requiring the name or the caps.
2011-07-12 José Alburquerque <[email protected]>
configure.ac: Require glibmm-2.28.
* configure.ac: Require glibmm-2.28 because Gst::Mixer uses the
Glib::[Array|List]Handler<> API which was added in that version.
2011-07-12 José Alburquerque <[email protected]>
Caps: Correct a compile error.
* gstreamer/src/caps.ccg (set_simple): Use this->gobj() instead of
just gobj() because gcc 4.5.2 sees that as error for some reason.
2011-05-25 José Alburquerque <[email protected]>
Element: Add request_pad() and a link_pads() overload.
* gstreamer/src/pad.hg: Wrap the GstPadLinkCheck enum.
* gstreamer/src/element.hg: Add regquest_pad() and link_pads() which
wraps gst_element_link_pads_full().
* tools/m4/convert_gst.m4: Add necessary conversion.
2011-05-24 José Alburquerque <[email protected]>
ElementFactory: Added filter(), get_elements() and is_of_type().
* gstreamer/src/elementfactory.{ccg,hg}: Wrapped the
GstElementFactoryListType as an enum as in TagList. Added the missing
new methods.
* tools/m4/convert_gst.m4: Added a GstRank enum conversion.
2011-05-24 José Alburquerque <[email protected]>
Value: Glib::Value<> specializations: Derive from ValueBase_Boxed.
* gstreamer/src/value.hg: Make sure the Glib::Value<> specializations
for the range classes derive from ValueBase_Boxed so that the classes
can be used as properties.
2011-05-23 José Alburquerque <[email protected]>
Structure: Remove the need of conversions when setting fields.
* gstreamer/src/value.{ccg,hg}: Add Glib::Value<> specializations for
the helper classes so that they can be properly translated by the
Glib::ValueBase system when setting/getting the values to/from the C
API.
* gstreamer/src/structure.{ccg,hg} (_set_gstructure_field): Remove
this method because translation is now done by the Glib::ValueBase
system.
(set_field): Rewritten so it doesn't use the above deleted method.
* gstreamer/src/caps.ccg (set_simple): Also rewritten.
2011-05-22 José Alburquerque <[email protected]>
ElementFactory: Add some new methods.
* gstreamer/src/elementfactory.hg: Add can_[sink|src]_[all|any]_caps()
get_documentation_uri(), and get_icon_name() methods.
2011-05-17 José Alburquerque <[email protected]>
Caps: Add new methods.
* gstreamer/src/caps.{ccg,hg}: Add the steal_structure() method and
get_intersect() method accepting a Gst::CapsIntersectMode enum. Wrap
the get_structure() method instead of handwriting it.
* tests/test-caps-structures.cc: Adapt the test to use the new
steal_structure() method.
* tools/m4/convert_gst.m4: Added a GstCapsIntersect enum conversion.
2011-05-12 José Alburquerque <[email protected]>
BaseAudioSink, BaseSink, XOverlay: Add new methods.
* gstreamer/src/baseaudiosink.hg: Add get_drift_tolerance() and
set_drift_tolerance().
* gstreamer/src/basesink.hg: Add set_last_buffer_enabled(),
is_last_buffer_enabled(), get_throttle_time() and set_throttle_time().
* gstreamer/src/xoverlay.hg: Add got_window_handle() and
set_window_handle().
2011-05-12 José Alburquerque <[email protected]>
Plugins: Add the funnel plug-in.
* configure.ac:
* gstreamer/src/filelist.am: Add the new funnel plug-in and mention
it in the build.
2011-05-12 José Alburquerque <[email protected]>
Regenerate the defs files.
* gstreamer/src/gst_enums.defs:
* gstreamer/src/gst_methods.defs: Regenerate all the defs files (the
extra defs file has not changed) as of GStreamer 0.10.33.
2011-05-12 José Alburquerque <[email protected]>
Docs: Regenerate the docs and update the generation script.
* gstreamer/src/generate-docs.sh: Update the script to use the new
--no-since option of the doc generation tool.
* gstreamer/src/gst_docs.xml: Regenerate to remove the "Since: ..."
lines from the doc.
2011-05-08 José Alburquerque <[email protected]>
XOverlay: Wrap the set_render_rectangle() method.
* gstreamer/src/xoverlay.hg:
2011-05-08 José Alburquerque <[email protected]>
Wrap new properties in classes as of GStreamer 0.10.32.
* gstreamer/src/baseaudiosink.hg:
* gstreamer/src/basesink.hg:
* gstreamer/src/bin.hg:
* gstreamer/src/ghostpad.hg:
* gstreamer/src/object.hg:
* gstreamer/src/padtemplate.hg: Wrap the properties.
* gstreamer/src/gst_extra_objects.defs: Add GstStructure to the list
of extra objects to avoid a gmmproc documentation parsing error.
2011-05-05 José Alburquerque <[email protected]>
Clean up the build output.
* gstreamer/src/filelist.am:
* gstreamer/src/gst.defs:
* gstreamer/src/gst_extra_objects.defs: Add this file and mention it
in the build (as is done in glibmm) so that gmmproc does not complain
about missing object definitions when parsing the documentation. This
makes the gmmproc output a little cleaner.
* gstreamer/src/gst_signals.defs:
* gstreamer/src/gst_signals.defs.patch: Regenerated the extra defs
file containing the signal and property defs (and its patch file) with
the patch in bug #649519 applied to glibmm's extra defs generation
utility to clean up the build. Hopefully the patch will be accepted
so gmmproc's output is cleaner for this module.
2011-05-04 José Alburquerque <[email protected]>
BaseSrc: Wrap the virtual functions.
* gstreamer/src/basesrc.hg: Wrap the boolean virtual functions that
were commented out.
* tests/Makefile.am:
* tests/test-base-src.cc: Added a small test to make sure that the
newly wrapped virtual functions do not cause execution errors. The
AlsaSrc element derives from BaseSrc and if there were problems with
the virtual functions they would most likely show up while using that
element. Carlo Wood should be thanked for providing a similar example
on the list. This test was adapted from his sources. Thanks Carlo.
2011-04-28 José Alburquerque <[email protected]>
Mixer: Use std::vector<> instead of Glib::[Array|List]Handle<>.
* gstreamer/src/mixer.{ccg,hg}: Wrap the
MessageMixerVolumeChanged::parse() method taking a track and an array
of volumes output parameter. Use std::vector<> for the parameters and
return of methods instead of Glib::ArrayHandle<> throughout for
consistency.
* gstreamer/gstreamermm.h: Corrected a couple of TODO's.
2011-04-28 José Alburquerque <[email protected]>
AudioSink, AudioSrc: Wrap the virtual functions.
* gstreamer/src/audiosink.hg:
* gstreamer/src/audiosrc.hg: Wrap the virtual functions checking that
it doesn't break the examples. The ogg_player_gtkmm uses the AlsaSink
plug-in which derives from the AudioSink class and the example runs
fine. The virtual functions of the AudioSrc class are wrapped just
like the ones in the AudioSink class because they are parallel
classes.
0.10.9.1:
2011-04-27 José Alburquerque <[email protected]>
0.10.9.1
* NEWS:
* configure.ac: Make a new release with the ogg_player_gtkmm example
running successfully.
2011-04-26 José Alburquerque <[email protected]>
Fix the build with GStreamer 0.10.32.
* configure.ac:
* gstreamer/src/filelist.am: Remove the funnel plug-in because it is
not included in GStreamer 0.10.32. Also increase the GStreamer
version requirement to 0.10.32.
* gstreamer/src/gst_enums.defs: Regenerate with the 0.10.32 sources to
fix the build.
2011-04-26 José Alburquerque <[email protected]>
BaseTransform: Revisit the virtual functions.
* gstreamer/src/basetransform.ccg:
* gstreamer/src/basetransform.hg: Review the wrapping of the virtual
functions because the ogg_player_gtkmm example was failing to execute
properly.
* configure.ac: Tiny correction of the plug-in name extraction in the
plug-in processing section.
2011-04-24 José Alburquerque <[email protected]>
Use the latest mm-common.
* configure.ac: Update the mm-common prerequisite to 0.9.5.
2011-04-18 José Alburquerque <[email protected]>
Plugin Generator: Remove the C struct class definition for signals.
* tools/extra_defs_gen/generate_plugin_gmmproc_file.cc: Remove code
related to the class declaration of plugins for wrapping the signals
since no default handlers are generated anymore which was done to
avoid accidentally including a C++ keyword for a signal name in the
class definition.
2011-04-18 José Alburquerque <[email protected]>
configure.ac: Restore accidentally deleted comment text.
* configure.ac:
2011-04-18 José Alburquerque <[email protected]>
Plugins: Wrap new core plugins.
* configure.ac: Modify the format of the plugin definitions to include
the target .hg basename along with the plugin name because some
plugins (like the new input-selector and output-selector plugins) use
dashes in the plugin name while the target .hg filename generally does
not.
* gstreamer/src/filelist.am: Add the new funnel, inpput-selector,
output-selector and valve core plugins.
* gstreamer/src/Makefile.am: Adapt to the above change.
* gstreamer/src/gst_enums.defs:
* gstreamer/src/gst_enums.defs.patch: Update the enum defs patch and
regenerate the enum defs file for the enums of the new plugins.
* tools/extra_defs_gen/generate_defs_gst.cc:
* gstreamer/src/gst_signals.defs: Add the new plugins to the extra
defs generation utility and regenerate the extra defs file for the
properties and signals of the new plugins.
* tools/extra_defs_gen/generate_plugin_gmmproc_file.cc: Modified so
that there are no build errors if a signal name of a plugin happens to
be a C++ keyword (such as the "switch" signal of the input-selector
plugin).
2011-04-17 José Alburquerque <[email protected]>
Plugin Generator: Use Glib::OptionContext instead of GOptionContext.
* tools/extra_defs_gen/generate_plugin_gmmproc_file.cc: Use the
available glibmm API for option parsing instead of the C API where
possible.
2011-04-15 Murray Cumming <[email protected]>
Require a newer gmmproc.
* configure.ac: Require giomm 2.26.0, so we require a more recent
gmmproc from glibmm, to fix an m4 bug with some property descriptions.
This fixes bug #647799 (Sebastian Dröge)
0.10.9:
2011-04-14 Murray Cumming <[email protected]>
Dist the documentation scripts.
* configure.ac: Require the latest mm-common (when building from git)
and call MM_CONFIG_DOCTOOL_DIR() so we include the mm-common scripts
in the tarball.
2010-10-21 José Alburquerque <[email protected]>
Fix the build with the latest GStreamer repositories.
* gstreamer/src/gst_enums.defs.patch: Fixed the enums defs patch file
with the latest GStreamer sources.
* gstreamer/src/gst_enums.defs: Regenerated (specifically to get the
theoraenc plugin's GstTheoraEncMultipassMode enum).
* gstreamer/src/gst_signals.defs: Regenerated to get the new
properties and signals of plugins.
* gstreamer/src/bufferlist.hg (BufferList::n_groups): Wrote out the
docs because, as the TODO comment says, the C function is not
recognized by h2def.py and thus the docs is not generated.
2010-10-21 José Alburquerque <[email protected]>
BaseTransform: Wrote out bool vfuncs to avoid execution errors.
* gstreamer/src/basetransform.ccg:
* gstreamer/src/basetransform.hg: Wrote out the boolean virtual
functions ensuring that both the functions and their callbacks return
true at the end by default. This is to make sure that if the C API
expects a true result on successful execution of the callbacks it gets
it even if it is a default return. This ensures proper application
execution. I suspect that if any should return false by default, it
may be easier to catch those than the ones that should return true by
default.
2010-10-18 José Alburquerque <[email protected]>
Update the README and the Doxygen main page documentation.
* README: Updated to describe more precisely where the documentation
can be found.
* gstreamer/gstreamermm.h: Updated the Doxygen main page docs to
explain that most of the core and base plug-ins have been wrapped (so
it is not thought that more than a few are not wrapped). Re-worded
the sentence about initializing the library.
2010-10-17 José Alburquerque <[email protected]>
Tests: BufferListIterator: Make sure the GType system is initialized.
* tests/test-buffer-list-iterator.cc: Initialize gstreamermm so that
the test executes successfully. The code used for the last release
was slightly different and the new code seemed more correct, however
it was missing the initialization statement to make sure the GType
system was also initialized.
0.10.8:
2010-10-15 José Alburquerque <[email protected]>
Release 0.10.8.
* NEWS:
* configure.ac: Prepare for a new release.
2010-10-15 José Alburquerque <[email protected]>
Audio[Sink,Src], BaseSrc, BaseTransform: Comment out bool vfuncs.
* gstreamer/src/audiosink.hg:
* gstreamer/src/audiosrc.hg:
* gstreamer/src/basesrc.hg:
* gstreamer/src/basetransform.hg: Comment out the wrapped boolean
virtual functions because in fact they still do cause problems with
the execution of applications. The ogg_player_gtkmm example, for
example, does not run correctly with the virtual functions wrapped.
These vfuncs will have to be handwritten (at least the ones that cause
the problems) to make sure they return true by default.
2010-10-15 José Alburquerque <[email protected]>
Tests: Add simple buffer list iterator test.
* tests/Makefile.am:
* tests/test-buffer-list-iterator.cc: Add a simple test just to
confirm the successful creation/destruction of a BufferListIterator.
2010-10-15 José Alburquerque <[email protected]>
BufferList: Wrap the iterate() method.
* gstreamer/src/bufferlist.ccg:
* gstreamer/src/bufferlist.hg: Wrap the BufferList::iterate() method.
Also correct the logic of the foreach callback.
* gstreamer/gstreamermm.h: Include the buffer list header file in the
main includes.
2010-10-14 José Alburquerque <[email protected]>
Regenerate the docs.
* gstreamer/src/generate-docs.sh: Correct docs generation script.
* gstreamer/src/gst_docs.xml: Regenerate.
2010-10-14 José Alburquerque <[email protected]>
BufferList, BufferListIterator: Wrap most methods.
* gstreamer/src/bufferlist.ccg:
* gstreamer/src/bufferlist.hg: Wrap most BufferList and
BufferListIterator methods.
* gstreamer/src/gst_methodsdefs: Regenerate.
* gstreamer/src/basesink.ccg:
* gstreamer/src/basesink.hg:
* gstreamer/src/gst_vfuncs.defs: Wrap the render_list_vfunc().
* tools/m4/convert_gst.m4: Add necessary conversions.
2010-10-14 José Alburquerque <[email protected]>
Virtual functions: const corrections.
* gstreamer/src/audiosink.hg:
* gstreamer/src/audiosrc.hg:
* gstreamer/src/cddabasesrc.hg:
* gstreamer/src/preset.ccg:
* gstreamer/src/preset.hg: Const corrections.
* gstreamer/src/bin.hg: Typo.
2010-09-02 José Alburquerque <[email protected]>
AudioSrc, BaseSrc: Wrap boolean virtual functions.
* gstreamer/src/basesrc.hg: Uncomment boolean virtual functions that
were previously wrapped. The ogg_player_gtkmm example, which uses a
plug-in derived from this class (Gst::FileSrc), runs fine with the
virtual functions uncommented.
* gstreamer/src/audiosrc.hg: Uncomment the virtual functions here
also, although it's not easy to test because no examples use the only
plug-in derived from this class, Gst::AlsaSrc.
2010-08-31 José Alburquerque <[email protected]>
AudioSink: Wrap boolean virtual functions.
* gstreamer/src/audiosink.hg: Uncomment commented out boolean virtual
functions which don't appear to be a problem with the execution of the
examples that use plugins that inherit from this class (such as the
Gst::AlsaSink plugin).
2010-08-24 José Alburquerque <[email protected]>
Add initial implementation of BufferList and BufferListIterator.
* gstreamer/src/bufferlist.ccg:
* gstreamer/src/bufferlist.hg:
* gstreamer/src/filelist.am: Add new source files and mention the .hg
file so that they are built.
2010-08-10 José Alburquerque <[email protected]>
BaseTransform: Wrap virtual functions.
* gstreamer/src/basetransform.hg: Uncomment the virtual functions so
that they are wrapped. Wrapped the new "accept_caps" virtual
function. The boolean virtual functions here don't seem to cause
problems if they don't return true as the BaseSink ones do. The
ogg_player_gtkmm example works fine even if it uses the AudioConvert
element which derives from BaseTransform.
The media_player_gtkmm example, on the other hand, crashes if the
BaseSink boolean virtual functions do not return true because it uses
the XimageSink element which derives from BaseSink.
* gstreamer/src/gst_vfuncs.defs: Added the BaseTransform "accept_caps"
virtual function.
2010-08-06 José Alburquerque <[email protected]>
BaseSink: Wrap remaining virtual functions.
* gstreamer/src/basesink.ccg:
* gstreamer/src/basesink.hg: Manually wrap the remaining boolean
virtual functions making sure that they return true by default.
The C API does not set default handlers for the virtual functions (in
the init function) causing our virtual functions to return false by
default which apparently is considered an error by the underlying API.
2010-08-06 José Alburquerque <[email protected]>
Fix the build with GCC 4.5.
* gstreamer/src/message.ccg (wrap): Store the message type as a
GstMixerMessage type for testing in the second switch clause to avoid
a compiler warning.
2010-08-06 José Alburquerque <[email protected]>
Mixer: Use correct syntax for object construction.
* gstreamer/src/mixer.ccg (get_volume): Use ArrayHandle<>() for
constructing the list instead of Glib::ArrayHandle<>::ArrayHandle<>()
which is incorrect.
Fixes bug #626203 (Diego E. Flameeyes Pettenò)
2010-07-21 José Alburquerque <[email protected]>
BaseSink: Wrap the "enable-last-buffer" property.
* gstreamer/src/basesink.hg: Wrap the "enable-last-buffer" property
which a lot of derived classes (including plugins) inherit.
2010-07-20 José Alburquerque <[email protected]>
Fix the build with the 0.10.30 version of GStreamer.
* configure.ac: Update the GStreamer version requirement to 0.10.30
which is the latest release.
* gstreamer/src/gst_signals.defs: Regenerate extra defs to get the new
properties for the decodebin2, playbin2, and uridecodebin plugins,
added in the GStreamer 0.10.30 release.
2010-06-06 José Alburquerque <[email protected]>
Remove the optional API #ifdefs.
As in gtkmm, remove the #ifdefs related to optional API like
exceptions, virtual functions, etc. because now the API is not
optional.
0.10.7.3:
2010-05-30 José Alburquerque <[email protected]>
0.10.7.3.
* configure.ac: New release that compiles with GCC 4.5.
2010-05-30 José Alburquerque <[email protected]>
Iterator: Correct casts and code order.
* gstreamer/src/iterator.hg: Use C++ style casts instead of C ones.
(IteratorBase): Reorder method definitions so that constructors come
before methods. Apparently they were defined as in the class
declaration (where they are declared protected after the method
declarations), but it might be better to define them first for
readability.
2010-05-30 Daniel Elstner <[email protected]>
Correct wrong syntax for object construction
* tools/m4/convert_gst.m4 (GstIterator): Change conversions to use
the correct C++ syntax for constructing objects; Iterator() instead
of Iterator::Iterator(). The latter fails with GCC 4.5. Reported
by Kacper Kowalik, GNOME bug #618565.
* gstreamer/src/format.ccg (iterate_format_definitions): As above.
2010-05-25 José Alburquerque <[email protected]>
Correct some typos.
* gstreamer/src/event.hg:
* gstreamer/src/message.hg:
* gstreamer/src/query.hg: Remove unnecessary '*' in docs.
* gstreamer/src/element.hg: Typo.
0.10.7.2:
2010-05-24 José Alburquerque <[email protected]>
Release 0.10.7.2.
* NEWS:
* configure.ac: Make a new release with a better Doxygen main page (I
really should double check things before releasing).
2010-05-24 José Alburquerque <[email protected]>
Refine the Doxygen main page.