0.9.9: 2009-02-01 José Alburquerque * README: Rewrote slightly so that the first section (General Information) might be used for release e-mails if that is appropriate. 2009-01-30 José Alburquerque * examples/element_link/element_link.cc: * examples/media_player_gtkmm/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/main.cc: * examples/ogg_player_gtkmm/player_window.cc: * examples/ogg_player_gtkmm/player_window.h: * examples/optiongroup/main.cc: * tools/extra_defs_gen/generate_defs_gst.cc: * tools/extra_defs_gen/generate_plugin_gmmproc_file.cc: * tools/extra_defs_gen/get_plugin_defs.cc: * tools/extra_defs_gen/get_plugin_defs.h: * tools/extra_defs_gen/gst_type_is_a_pointer.cc: * tools/extra_defs_gen/gst_type_is_a_pointer.h: License corrections. 2009-01-30 José Alburquerque * Makefile.am: Disted COPYING.examples. 2009-01-30 José Alburquerque * COPYING.examples: Added to avoid license disparities as reported in bug #545892. 2009-01-30 José Alburquerque * tools/extra_defs_gen/generate_plugin_gmmproc_file.cc: Optimized generated *_get_type() methods of plug-in enums so that they type is gotten once, kept and then returned each time when the functions are called. * configure.ac: Updated minimum requirements of gstreamermm dependencies. 2009-01-29 José Alburquerque * tools/extra_defs_gen/generate_plugin_gmmproc_file.cc: Modified so that plug-in enum generated *_get_type() functions are static to the *.cc file (only callable within the generated .cc file) to fix Gst::init() related warnings when gst_dp_init() tries to call the GStreamer gst_dp_version_get_type() to initialize its GstDPVersion enum and winds up calling the generated one in gdppay.cc. 2009-01-28 José Alburquerque * gstreamer/gstreamermm.h: * gstreamer/src/Makefile_list_of_hg.am_fragment: * gstreamer/src/propertyprobe.ccg: * gstreamer/src/propertyprobe.hg: * gstreamer/src/videoorientation.ccg: * gstreamer/src/videoorientation.hg: Added the last two interfaces, PropertyProbe and VideoOrientation, from the gst-plugins-base module. PropertyProbe, however, has methods that are difficult to wrap because some return GValueArray* and GParamSpec* and require GParamSpec* parameters. * tools/extra_defs_gen/generate_plugin_gmmproc_file.cc: Included commented code to have plug-ins extend the interfaces they implement. Made sure that the extra code generation is included only if the parent type has not already extended the interface. * tools/m4/ctocpp.m4: Added C to C++ conversions for interfaces that some plug-ins implement. * gstreamer/src/bin.hg: * gstreamer/src/element.hg: * gstreamer/src/pipeline.hg: Added these classes to Doxygen GstBaseClasses group. * gstreamer/src/childproxy.hg: * gstreamer/src/interface.hg: * gstreamer/src/tagsetter.hg: * gstreamer/src/urihandler.hg: Added these interfaces to Doxygen GstInterfaces group. * examples/ogg_player_gtkmm/player_window.cc: Modified so that the audio URI is set on 'm_source_element' instead of the filename (now that Gst::FileSrc properly extends Gst::URIHandler). * tests/Makefile.am: Marked TODO completed. 2009-01-27 José Alburquerque * gstreamer/src/colorbalancechannel.hg: * gstreamer/src/mixeroptions.hg: * gstreamer/src/mixertrack.hg: Added these to the GstInterface group because they are used with interfaces. * gstreamer/src/value.ccg: * gstreamer/src/value.hg: Added GValue& constructors for GStreamer internal type helper classes. Placed the classes in a Doxygen group. * gstreamer/gstreamermm.h: * gstreamer/src/Makefile_list_of_hg.am_fragment: * gstreamer/src/tuner.ccg: * gstreamer/src/tuner.hg: * gstreamer/src/tunerchannel.ccg: * gstreamer/src/tunerchannel.hg: * gstreamer/src/tunernorm.ccg: * gstreamer/src/tunernorm.hg: * tools/m4/convert_gst.m4: Added Gst::Tuner, Gst::TunerChannel and Gst::TunerNorm. Added necessary conversions. * tests/test-caps.cc: * tests/test-taglist.cc: Use quotes when printing strings only in tests. * tests/test-structure.cc: Add clarification that values printed are values obtained from the Gst::Structure. 2009-01-26 José Alburquerque * gstreamer/src/preset.hg: Typo. 2009-01-24 José Alburquerque * build_shared/Makefile_gensrc.am_fragment: Add license header to plug-in .hg and .ccg files. 2009-01-23 José Alburquerque * gstreamer/gstreamermm.h: * gstreamer/src/Makefile_list_of_hg.am_fragment: * gstreamer/src/preset.ccg: * gstreamer/src/preset.hg: Added GstPreset. 2009-01-23 José Alburquerque Forgot to remove (unused) modelines mostly from *.ccg files in 2009-01-22 commit. 2009-01-23 José Alburquerque * Makefile.am: Dist the COPYING.tools file (the COPYING file is already included by automake). 2009-01-23 José Alburquerque * COPYING.tools: Added for licensing disparities as in bug #550789. * tools/extra_defs_gen/generate_defs_gst.cc: Typo. 2009-01-22 José Alburquerque Fixed license disparities in source files by running script submitted by Deng Xiyue[1]. iterator.hg and filter.hg suffered some damage, but after repairing them, all is okay. At the same time, removed (unused) modelines and changed character '—' in class doc headers to '-' to avoid bug #568072. [1] http://mail.gnome.org/archives/gtkmm-list/2009-January/msg00055.html 2009-01-21 José Alburquerque const corrections in [p-z]*.{hg,ccg} source files: * gstreamer/src/query.ccg: * gstreamer/src/query.hg: * gstreamer/src/registry.ccg: * gstreamer/src/registry.hg: * gstreamer/src/segment.hg: * gstreamer/src/taglist.ccg: * gstreamer/src/taglist.hg: * gstreamer/src/tagsetter.hg: Wrapped reset_tags(). Corrected get_tag_merge_mode() method name. * gstreamer/src/task.ccg: * gstreamer/src/task.hg: * gstreamer/src/urihandler.hg: Added TODO. * gstreamer/src/value.ccg: * gstreamer/src/value.hg: Renamed Fourcc::get_ccs() to Fourcc::set_ccs() because it is in fact a "setting" method. Removed unneeded explicit in Fraction constructor. * gstreamer/src/xml.ccg: Re-ordered method definitions according to the order in the .hg file. * gstreamer/src/xml.hg: Added TODO. * gstreamer/src/xoverlay.hg: Added TODO. * tools/m4/convert_gst.m4: Const correction of Gst::TagList conversion. 2009-01-20 José Alburquerque * tools/m4/convert_gst.m4: * gstreamer/src/bin.hg: * gstreamer/src/clock.hg: * gstreamer/src/element.hg: * gstreamer/src/index.hg: Moved signal and vfunc specific conversions into individual *.hg files instead of in central convert file. 2009-01-20 José Alburquerque const corrections in [j-p]*.{hg,ccg} source files: * gstreamer/src/message.ccg: * gstreamer/src/message.hg: * gstreamer/src/mixer.ccg: * gstreamer/src/mixer.hg: * gstreamer/src/mixeroptions.hg: * tools/m4/convert_gst.m4: * gstreamer/src/pad.ccg: * gstreamer/src/pad.hg: Added iterate_internal_links*() methods. * gstreamer/src/plugin.hg: * gstreamer/src/pluginfeature.hg: Unwrapped (removed) gst_plugin*_list_free() methods because Glib::ListHandle<> already takes care of freeing lists (the lists are used in Gst::Registry). * gstreamer/src/registry.hg: w/s. 2009-01-19 José Alburquerque const correction in [a-i]*.{hg,ccg} source files: * gstreamer/src/audioclock.ccg: * gstreamer/src/audioclock.hg: * gstreamer/src/baseaudiosink.hg: * gstreamer/src/baseaudiosrc.hg: * gstreamer/src/basesrc.hg: * gstreamer/src/basetransform.hg: * gstreamer/src/bin.hg: * gstreamer/src/buffer.hg: * gstreamer/src/caps.ccg: * gstreamer/src/caps.hg: * gstreamer/src/childproxy.ccg: * gstreamer/src/childproxy.hg: * gstreamer/src/clock.hg: * gstreamer/src/colorbalance.hg: * gstreamer/src/element.ccg: * gstreamer/src/element.hg: * gstreamer/src/elementfactory.hg: * gstreamer/src/event.ccg: * gstreamer/src/event.hg: * gstreamer/src/index.hg: * tools/m4/convert_gst.m4: * gstreamer/src/basesink.ccg: * gstreamer/src/basesink.hg: Added wait_clock() and wait_eos() overloads. * gstreamer/src/caps.hg: Renamed make_writable() to create_writable(). * gstreamer/src/element.ccg: * gstreamer/src/element.hg: Wrapped create_compatible_pad() and get_compatible_pad_template() (instead of handwriting them). * gstreamer/src/bus.hg: * gstreamer/src/error.hg: * tests/test-plugin-signals.cc: Used sink instead of source for signal testing. * gstreamer/src/indexfactory.hg: whitespace. 2009-01-12 José Alburquerque * gstreamer/src/ghostpad.ccg: Corrected template constructors' warnings. Reformatted code to fit in 80 char width editor. 2009-01-12 José Alburquerque * tests/test-ghost-pad.cc: Uncommented warning lines to show that ghost pad constructors warn on construction failure (parallel C code produces same results). 2009-01-12 José Alburquerque * gstreamer/gstreamermm.h: * gstreamer/src/Makefile_list_of_hg.am_fragment: * gstreamer/src/ghostpad.ccg: * gstreamer/src/ghostpad.hg: Re-added ghostpad.hg (Bug #539108 has been resolved). * tests/Makefile.am: Re-added ghost pad test. Fixes Bug #539063 (Marcus Brinkmann). 2009-01-09 José Alburquerque * gstreamer/src/basesrc.hg: Correction of Gst::Segment usages. 2009-01-08 José Alburquerque * gstreamer/src/mixer.ccg: * gstreamer/src/mixer.hg: * gstreamer/src/gst_vfuncs.defs: Added vfuncs. Handwrote the get_volume_vfunc() one (adapted from gtkmm) because the C++ version returns the array (Glib::ArrayHandle) instead of requiring a pointer in which to store the result. 2009-01-07 José Alburquerque * configure.ac: * gstreamer/gstreamermm-0.10.pc.in: * tools/extra_defs_gen/generate_defs_gst.cc: * gstreamer/src/gst_signals.defs: Forgot to add one dependency and type to extra defs gen. utility. Added dependency and type and regenerated. * gstreamer/src/Makefile_list_of_hg.am_fragment: * gstreamer/src/navigation.ccg: * gstreamer/src/navigation.hg: Added Gst::Navigation interface. Wrapped its vfuncs. * gstreamer/src/basesink.hg: * gstreamer/src/basesrc.hg: * gstreamer/src/basetransform.hg: Corrected vfunc m4 conversions to take referecences. * gstreamer/src/colorbalance.hg: * gstreamer/src/gst_vfuncs.defs: Wrapped vfuncs. * gstreamer/src/baseaudiosink.hg: * gstreamer/src/cddabasesrc.hg: * gstreamer/src/mixer.ccg: * gstreamer/src/mixer.hg: * gstreamer/src/mixertrack.hg: * tools/m4/convert_gst.m4: Completed some TODO's. 2009-01-06 José Alburquerque * configure.ac: * gstreamer/gstreamermm-0.10.pc.in: Added all possible GStreamer dependencies to gstreamermm. * tools/extra_defs_gen/generate_defs_gst.cc: * gstreamer/src/gst_signals.defs: Added all possible GStreamer types to extra defs gen. utility and regenerated signals defs (all is included so no need to add things bit by bit and regenerate). * gstreamer/gstreamermm.h: * gstreamer/src/Makefile_list_of_hg.am_fragment: * gstreamer/src/mixer.ccg: * gstreamer/src/mixer.hg: * gstreamer/src/mixeroptions.ccg: * gstreamer/src/mixeroptions.hg: * gstreamer/src/mixertrack.ccg: * gstreamer/src/mixertrack.hg: * tools/m4/convert_gst.m4: Added Gst::Mixer interface and related classes. * gstreamer/gstreamermm/object.h: * gstreamer/src/baseaudiosrc.hg: * gstreamer/src/basetransform.hg: * gstreamer/src/cddabasesrc.hg: * gstreamer/src/colorbalance.hg: * gstreamer/src/colorbalancechannel.ccg: * gstreamer/src/colorbalancechannel.hg: * examples/ogg_player_gtkmm/player_window.cc: Completed some TODO's, filed bugs about non-public enums in GStreamer and fixed some typos/whitespace. 2009-01-05 José Alburquerque * tests/test-plugin-signals.cc: Modified test so that Gst::FakeSrc is used instead of Gst::FileSrc. 2009-01-05 José Alburquerque * configure.ac: * gstreamer/src/Makefile_list_of_hg.am_fragment: Added GDPDepay and GDPPay plug-ins. * gstreamer/gstreamermm/object.cc: * tools/extra_defs_gen/generate_plugin_gmmproc_file.cc: Added floating reference aversion to ConstructParam Gst::Object constructor and removed it from plug-in constructors. Also removed code in plug-in generator to ensure that certain base classes are interpreted as belonging to the Gst namespace because the gstreamerbase branch has been merged into gstreamer and there's no possibility of these base classes being interpreted as belonging to the GstBase namespace or existing in the gstreamerbasemm directory anymore. 2009-01-05 José Alburquerque * Makefile.am: * configure.ac: * docs/reference/Makefile.am: * examples/Makefile.am: * examples/Makefile.am_fragment: * examples/media_player_gtkmm/main.cc: * examples/media_player_gtkmm/player_window.cc: * examples/media_player_gtkmm/player_window.h: * examples/ogg_player_gtkmm/main.cc: * gstreamer/gstreamermm-0.10.pc.in: * gstreamer/gstreamermm.h: * gstreamer/gstreamermm/init.h: * gstreamer/gstreamermmconfig.h.in: * gstreamer/src/Makefile_list_of_hg.am_fragment: * gstreamer/src/audioclock.ccg: * gstreamer/src/audioclock.hg: * gstreamer/src/audiofilter.ccg: * gstreamer/src/audiofilter.hg: * gstreamer/src/audiosink.ccg: * gstreamer/src/audiosink.hg: * gstreamer/src/audiosrc.ccg: * gstreamer/src/audiosrc.hg: * gstreamer/src/baseaudiosink.ccg: * gstreamer/src/baseaudiosink.hg: * gstreamer/src/baseaudiosrc.ccg: * gstreamer/src/baseaudiosrc.hg: * gstreamer/src/cddabasesrc.ccg: * gstreamer/src/cddabasesrc.hg: * gstreamer/src/colorbalance.ccg: * gstreamer/src/colorbalance.hg: * gstreamer/src/colorbalancechannel.ccg: * gstreamer/src/colorbalancechannel.hg: * gstreamer/src/element.hg: * gstreamer/src/generate-docs.sh: * gstreamer/src/generate-enums.sh: * gstreamer/src/generate-extra-defs.sh: * gstreamer/src/generate-methods.sh: * gstreamer/src/gst_docs.xml: * gstreamer/src/gst_enums.defs: * gstreamer/src/gst_enums.defs.patch: * gstreamer/src/gst_methods.defs: * gstreamer/src/gst_methods.defs.patch: * gstreamer/src/gst_signals.defs: * gstreamer/src/gst_signals.defs.patch: * gstreamer/src/videosink.ccg: * gstreamer/src/videosink.hg: * gstreamer/src/xoverlay.ccg: * gstreamer/src/xoverlay.hg: * gstreamerbase/Makefile.am: * gstreamerbase/README: * gstreamerbase/gstreamerbasemm-0.10.pc.in: * gstreamerbase/gstreamerbasemm.h: * gstreamerbase/gstreamerbasemm/Makefile.am: * gstreamerbase/gstreamerbasemm/gst_wrap_init.h: * gstreamerbase/gstreamerbasemm/init.cc: * gstreamerbase/gstreamerbasemm/init.h: * gstreamerbase/gstreamerbasemm/private/Makefile.am: * gstreamerbase/gstreamerbasemm/wrap_init.h: * gstreamerbase/gstreamerbasemmconfig.h.in: * gstreamerbase/src/Makefile.am: * gstreamerbase/src/Makefile_list_of_hg.am_fragment: * gstreamerbase/src/audioclock.ccg: * gstreamerbase/src/audioclock.hg: * gstreamerbase/src/audiofilter.ccg: * gstreamerbase/src/audiofilter.hg: * gstreamerbase/src/audiosink.ccg: * gstreamerbase/src/audiosink.hg: * gstreamerbase/src/audiosrc.ccg: * gstreamerbase/src/audiosrc.hg: * gstreamerbase/src/baseaudiosink.ccg: * gstreamerbase/src/baseaudiosink.hg: * gstreamerbase/src/baseaudiosrc.ccg: * gstreamerbase/src/baseaudiosrc.hg: * gstreamerbase/src/cddabasesrc.ccg: * gstreamerbase/src/cddabasesrc.hg: * gstreamerbase/src/colorbalance.ccg: * gstreamerbase/src/colorbalance.hg: * gstreamerbase/src/colorbalancechannel.ccg: * gstreamerbase/src/colorbalancechannel.hg: * gstreamerbase/src/generate-docs.sh: * gstreamerbase/src/generate-enums.sh: * gstreamerbase/src/generate-extra-defs.sh: * gstreamerbase/src/generate-methods.sh: * gstreamerbase/src/gstbase.defs: * gstreamerbase/src/gstbase_docs.xml: * gstreamerbase/src/gstbase_docs_override.xml: * gstreamerbase/src/gstbase_enums.defs: * gstreamerbase/src/gstbase_enums.defs.patch: * gstreamerbase/src/gstbase_methods.defs: * gstreamerbase/src/gstbase_signals.defs: * gstreamerbase/src/gstbase_signals.defs.patch: * gstreamerbase/src/videosink.ccg: * gstreamerbase/src/videosink.hg: * gstreamerbase/src/xoverlay.ccg: * gstreamerbase/src/xoverlay.hg: * tests/Makefile.am: * tests/test-init-check-noargs.cc: * tests/test-init-check.cc: * tests/test-init-noargs.cc: * tests/test-init.cc: * tests/test-interface.cc: * tools/extra_defs_gen/Makefile.am: * tools/extra_defs_gen/generate_defs_gst.cc: * tools/extra_defs_gen/generate_defs_gstbase.cc: * tools/m4/Makefile_list_of_sources.am_fragment: * tools/m4/convert.m4: * tools/m4/convert_gst.m4: * tools/m4/convert_gstbase.m4: Merged gstreamerbase into gstreamer, i.e. the GstBase namespace into the Gst namespace. 2009-01-05 Sebastian Dröge * gstreamerbase/gstreamerbasemm/Makefile.am: Link gstreamerbasemm to gstreamermm as it uses symbols from it. Fixes bug #560600 again. 2009-01-03 José Alburquerque * examples/ogg_player_gtkmm/main.cc: Modified example to use plug-ins. I'm wondering if it wouldn't be easier if all classes and plug-ins would be in the Gst namespace. It seems that just because there's a packaging separation between core and base in GStreamer, it doesn't have to "seep" into the logic of namespaces, etc. I may have to ask on the list or get a better opinion from others with more experience. 2009-01-03 José Alburquerque * tools/extra_defs_gen/generate_plugin_gmmproc_file.cc: Changed so that plug-in constructors avert the GstObject floating reference. Setting properties of bins to a plug-in with a floating reference (as is done in the media player example) causes warnings when the plug-in's RefPtr goes out of scope because the referencing is not right because of the floating reference. 2009-01-02 José Alburquerque * configure.ac: Modified so that C preprocessor symbols are defined for each existing plug-in from two lists (the core list and the base list) of all possible plug-ins. * gstreamer/gstreamermmconfig.h.in: * gstreamerbase/gstreamerbasemmconfig.h.in: Modified so that if plug-ins exist, a C preprocessor symbol for the plug-in is defined in the two configuration files. * gstreamer/gstreamermm/wrap_init.h: * gstreamerbase/gstreamerbasemm/wrap_init.h: Modified to include the configuration files so that wrap_init()s know if plug-ins exist. * tools/generate_wrap_init.pl.in: Added local copy so that #ifdefs are included in wrap_init() methods. * tools/extra_defs_gen/generate_plugin_gmmproc_file.cc: * tools/m4/Makefile_list_of_sources.am_fragment: * tools/m4/convert.m4: * tools/m4/shared.m4: Modified plug-in generation tool to include a "marking" m4 macro (_IS_GSTREAMERMM_PLUGIN) so that wrap_init generation tool knows and can include proper #ifdefs for each plug-in. Defined the macro in the shared.m4 file so that it is simply removed from the .hg when generating the .h file (much like what happens with the optional windows wrapping macro in gtkmm). * build_shared/Makefile_gensrc.am_fragment: * gstreamer/src/Makefile_list_of_hg.am_fragment: * gstreamerbase/src/Makefile_list_of_hg.am_fragment: Modified so that all plug-ins are always generated, but only in maintainer mode and so the local copy of generate_wrap_init.pl is used to generate wrap_init() functions. * build_shared/Makefile_build_gensrc.am_fragment: * build_shared/Makefile_build.am_fragment: * gstreamer/gstreamermm/Makefile.am: * gstreamer/gstreamermm/private/Makefile.am: * gstreamerbase/gstreamerbasemm/Makefile.am: * gstreamerbase/gstreamerbasemm/private/Makefile.am: Modified build files so that only the plug-ins that exist are built, installed and included in the shared object libraries, but so that all plug-in files are distributed in the tarballs whether the plug-ins exist or not. * docs/reference/Makefile.am: Modified to make sure that the distcheck is successful. Added tarball building targets. * gstreamerbase/src/colorbalance.hg: Commented unused enum for now to fix the build with most recent changes to GStreamer sources in cvs. * gstreamer/src/Makefile.am: * gstreamerbase/src/Makefile.am: Whitespace. 2009-01-01 José Alburquerque * AUTHORS: Aparently with checkin confusion names were not ordered in alphabetical order by last name. 2008-12-22 José Alburquerque * gstreamer/src/element.hg: * gstreamerbase/src/audioclock.hg: Moved gstreamerbasemm specific Doxygen group definitions to a gstreamerbasemm class. Added a group for gstreamerbasemm interfaces. * gstreamerbase/src/colorbalance.hg: * gstreamerbase/src/xoverlay.hg: Added existing interfaces to defined Doxyen interface group. * tools/m4/ctocpp.m4: * tools/m4/ctocpp_base.m4: Modified C to C++ translation macros to allow translations from the C to the C++ type. Three types of translation are now possible: 1) type, 2) parameter and 3) return. The type translation is needed so that the classes of the plug-ins that implement interfaces can be extended with the C to C++ type translation. * tools/extra_defs_gen/generate_plugin_gmmproc_file.cc: Modified the plug-in generation tool to include code to extend classes that implement interfaces with the C++ type of the interface. Also modified the tool to include an _IMPLEMENTS_INTERFACE macro call for each interface the plug-in implements. The code is commented for now because the rest of the gstreamerbasemm interfaces have to be wrapped before the build is successful with the code uncommented.