summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2004-01-03Update xvid plugin to latest xvid (1.0.0-beta3) API.Ronald S. Bultje7-304/+591
Original commit message from CVS: 2004-01-03 Ronald Bultje <rbultje@ronald.bitfreak.net> reviewed by: <delete if not using a buddy> * configure.ac: * ext/xvid/gstxvid.c: (gst_xvid_init), (gst_xvid_error), (gst_xvid_structure_to_csp), (gst_xvid_csp_to_caps): * ext/xvid/gstxvid.h: * ext/xvid/gstxviddec.c: (gst_xviddec_class_init), (gst_xviddec_init), (gst_xviddec_setup), (gst_xviddec_chain), (gst_xviddec_src_link), (gst_xviddec_sink_link), (gst_xviddec_change_state): * ext/xvid/gstxviddec.h: * ext/xvid/gstxvidenc.c: (gst_xvidenc_profile_get_type), (gst_xvidenc_base_init), (gst_xvidenc_class_init), (gst_xvidenc_init), (gst_xvidenc_setup), (gst_xvidenc_chain), (gst_xvidenc_link), (gst_xvidenc_set_property), (gst_xvidenc_get_property), (gst_xvidenc_change_state): * ext/xvid/gstxvidenc.h: Update xvid plugin to latest xvid (1.0.0-beta3) API.
2004-01-03gst/rtp/rtp-packet.c: Add sys/types.h include, since OS X doesn't define ↵Ronald S. Bultje1-0/+6
in_addr_t in netinet/in.h, like it does on L... Original commit message from CVS: 2004-01-03 Ronald Bultje <rbultje@ronald.bitfreak.net> * gst/rtp/rtp-packet.c: Add sys/types.h include, since OS X doesn't define in_addr_t in netinet/in.h, like it does on Linux (see #129600).
2004-01-03ext/alsa/gstalsamixer.c: Correct logic of dispose function (see #129306).Ronald S. Bultje1-0/+7
Original commit message from CVS: 2004-01-03 Thomas Canty <tommydal@optushome.com.au> reviewed by: Ronald Bultje <rbultje@ronald.bitfreak.net> * ext/alsa/gstalsamixer.c: (gst_alsa_mixer_dispose): Correct logic of dispose function (see #129306).
2004-01-03gst/mpegstream/: and also fix integer overflows at high PTS values (see ↵Ronald S. Bultje1-0/+9
#126967). Original commit message from CVS: 2004-01-03 Ronald Bultje <rbultje@ronald.bitfreak.net> * gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_parse_pes): * gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_class_init), (gst_mpeg_parse_init): * gst/mpegstream/gstmpegparse.h: Remove clock (which was never provided, i.e. dead code), and also fix integer overflows at high PTS values (see #126967).
2004-01-03ext/: OS X fixes (see #126628).Ronald S. Bultje1-0/+7
Original commit message from CVS: 2004-01-03 Ronald Bultje <rbultje@ronald.bitfreak.net> * ext/flac/gstflacdec.c: * ext/libpng/gstpngenc.h: * ext/mikmod/gstmikmod.h: OS X fixes (see #126628).
2004-01-03Change sink pad template caps to "video/quicktime"David Schleef1-1/+1
Original commit message from CVS: Change sink pad template caps to "video/quicktime"
2004-01-03ext/alsa/gstalsasrc.c: Remove bogus "src" request pad.David Schleef1-0/+9
Original commit message from CVS: * ext/alsa/gstalsasrc.c: (gst_alsa_src_pad_factory), (gst_alsa_src_base_init): Remove bogus "src" request pad. * gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_base_init), (gst_mpeg_parse_class_init): Move pad template registration to class_init, since the derived class (mpegdemux) doesn't want them.
2004-01-02sys/: Move interface libs from LDFLAGS to LIBADD, fix relocation errors ↵Ronald S. Bultje1-0/+8
after installation (see #127664). Original commit message from CVS: 2004-01-03 Ronald Bultje <rbultje@ronald.bitfreak.net> * sys/ximage/Makefile.am: * sys/xvideo/Makefile.am: * sys/xvimage/Makefile.am: Move interface libs from LDFLAGS to LIBADD, fix relocation errors after installation (see #127664).
2004-01-02ext/ffmpeg/gstffmpegenc.c: Negotiation fixes.David Schleef1-0/+10
Original commit message from CVS: * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_init), (gst_ffmpegenc_connect): Negotiation fixes. * ext/mpeg2dec/gstmpeg2dec.c: (gst_mpeg2dec_negotiate_format): Remove inappropriate gst_caps_free(). * sys/ximage/ximagesink.c: (gst_ximagesink_sinkconnect): Reenable Ronald's internal resize code, since the core handles it correctly now.
2004-01-02sys/v4l/: Fix pad template stuff.Ronald S. Bultje1-0/+7
Original commit message from CVS: 2004-01-02 Ronald Bultje <rbultje@ronald.bitfreak.net> * sys/v4l/gstv4lmjpegsink.c: (gst_v4lmjpegsink_init): * sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_init): * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_base_init), (gst_v4lsrc_init): Fix pad template stuff.
2004-01-02gst/matroska/: fix signed integer reading/writing.Ronald S. Bultje1-0/+6
Original commit message from CVS: 2004-01-02 Ronald Bultje <rbultje@ronald.bitfreak.net> * gst/matroska/ebml-read.c: (gst_ebml_read_sint): * gst/matroska/ebml-write.c: (gst_ebml_write_sint): fix signed integer reading/writing.
2004-01-02ext/alsa/README: Remove outdated documentBenjamin Otte1-0/+5
Original commit message from CVS: 2004-01-02 Benjamin Otte <in7y118@public.uni-hamburg.de> * ext/alsa/README: Remove outdated document
2004-01-02src pad was being created twice - oops.Jan Schmidt1-0/+5
Original commit message from CVS: src pad was being created twice - oops.
2004-01-02sys/ximage/ximagesink.c: Comment out internal resize. It doesn't handle the ↵Ronald S. Bultje1-0/+8
resulting Original commit message from CVS: 2004-01-02 Ronald Bultje <rbultje@ronald.bitfreak.net> * sys/ximage/ximagesink.c: (gst_ximagesink_sinkconnect): Comment out internal resize. It doesn't handle the resulting XEvent internally, does another try_set_caps() which leads to a really nice loop. Real fix will come when Julien and Dave are awake. ;).
2004-01-02ext/mpeg2enc/gstmpeg2enc.cc: fix const/nonconst compile issue.Ronald S. Bultje2-2/+8
Original commit message from CVS: 2004-01-02 Ronald Bultje <rbultje@ronald.bitfreak.net> * ext/mpeg2enc/gstmpeg2enc.cc: fix const/nonconst compile issue.
2004-01-02Add fixate function and test for bad capsDavid Schleef1-0/+6
Original commit message from CVS: Add fixate function and test for bad caps
2004-01-02Negotiation fixesDavid Schleef3-29/+26
Original commit message from CVS: Negotiation fixes
2004-01-02Convert elements to use gst_pad_use_explicit_caps() where appropriate.David Schleef8-112/+77
Original commit message from CVS: Convert elements to use gst_pad_use_explicit_caps() where appropriate.
2004-01-01Remove left-over g_printRonald S. Bultje1-3/+0
Original commit message from CVS: Remove left-over g_print
2004-01-01configure.ac: Fix configure check for mpeg2enc. We need 1.6.1.93 instead of ↵Ronald S. Bultje59-9707/+1123
1.6.1.92, since the pkg-config file of 1.... Original commit message from CVS: 2004-01-01 Ronald Bultje <rbultje@ronald.bitfreak.net> * configure.ac: Fix configure check for mpeg2enc. We need 1.6.1.93 instead of 1.6.1.92, since the pkg-config file of 1.6.1.92 is borked and it therefore uses the wrong include paths. Too bad... Note that 1.6.1.93 is not release yet. ;). Also add a check for mplex, which is now using the lib'ified mplex from mjpegtools, too. * ext/ffmpeg/gstffmpegcodecmap.c: Add codec_tag for 3ivx/xvid. For xvid, this should fix playback issues. I don't think ffmpeg handles 3ivx correctly, so this probably won't work. But it won't hurt either. * ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_connect), (gst_ffmpegdec_chain): * ext/ffmpeg/gstffmpegenc.c: (gst_ffmpegenc_connect), (gst_ffmpegenc_chain_audio): Fix memleak in audio encoding. Close codec if open fails, this calls the cleanup routines so we can re-use the context. * ext/mpeg2enc/gstmpeg2enc.cc: Fix pad template names/types, fix memory issue with getcaps(). * ext/mpeg2enc/gstmpeg2encoder.cc: * ext/mpeg2enc/gstmpeg2encoder.hh: Fix compile issue with new caps system (const thingy). * ext/mpeg2enc/gstmpeg2encpicturereader.cc: * ext/mpeg2enc/gstmpeg2encpicturereader.hh: We read a first frame right on initing, so that we have a caps when we init the output. This caps is cached in padprivate and read as first frame. * ext/mplex/Makefile.am: * ext/mplex/gstmplex.cc: * ext/mplex/gstmplex.h: * ext/mplex/gstmplex.hh: * ext/mplex/gstmplexibitstream.cc: * ext/mplex/gstmplexibitstream.hh: * ext/mplex/gstmplexjob.cc: * ext/mplex/gstmplexjob.hh: * ext/mplex/gstmplexoutputstream.cc: * ext/mplex/gstmplexoutputstream.hh: We wrap mjpegtools mplex. So I rewrote the plugin. The old plugin had issues, didn't do capsnego, supported only a subset of the mplex features and required a mplex fork in our local CVS. Plus that it worked agaist a very old mplex version. Rewriting was faster than updating it. * gst-libs/ext/Makefile.am: * gst-libs/ext/mplex/INSTRUCT: * gst-libs/ext/mplex/Makefile.am: * gst-libs/ext/mplex/README: * gst-libs/ext/mplex/TODO: * gst-libs/ext/mplex/ac3strm_in.cc: * gst-libs/ext/mplex/audiostrm.hh: * gst-libs/ext/mplex/audiostrm_out.cc: * gst-libs/ext/mplex/aunit.hh: * gst-libs/ext/mplex/bits.cc: * gst-libs/ext/mplex/bits.hh: * gst-libs/ext/mplex/buffer.cc: * gst-libs/ext/mplex/buffer.hh: * gst-libs/ext/mplex/fastintfns.h: * gst-libs/ext/mplex/format_codes.h: * gst-libs/ext/mplex/inputstrm.cc: * gst-libs/ext/mplex/inputstrm.hh: * gst-libs/ext/mplex/lpcmstrm_in.cc: * gst-libs/ext/mplex/mjpeg_logging.cc: * gst-libs/ext/mplex/mjpeg_logging.h: * gst-libs/ext/mplex/mjpeg_types.h: * gst-libs/ext/mplex/mpastrm_in.cc: * gst-libs/ext/mplex/mpegconsts.cc: * gst-libs/ext/mplex/mpegconsts.h: * gst-libs/ext/mplex/mplexconsts.hh: * gst-libs/ext/mplex/multplex.cc: * gst-libs/ext/mplex/outputstream.hh: * gst-libs/ext/mplex/padstrm.cc: * gst-libs/ext/mplex/padstrm.hh: * gst-libs/ext/mplex/stillsstream.cc: * gst-libs/ext/mplex/stillsstream.hh: * gst-libs/ext/mplex/systems.cc: * gst-libs/ext/mplex/systems.hh: * gst-libs/ext/mplex/vector.cc: * gst-libs/ext/mplex/vector.hh: * gst-libs/ext/mplex/videostrm.hh: * gst-libs/ext/mplex/videostrm_in.cc: * gst-libs/ext/mplex/videostrm_out.cc: * gst-libs/ext/mplex/yuv4mpeg.cc: * gst-libs/ext/mplex/yuv4mpeg.h: * gst-libs/ext/mplex/yuv4mpeg_intern.h: * gst-libs/ext/mplex/yuv4mpeg_ratio.cc: We don't fork mjpegtools' mplex in our CVS anymore. * gst/avi/gstavidemux.c: (gst_avi_demux_src_getcaps), (gst_avi_demux_add_stream): * gst/avi/gstavidemux.h: Add getcaps() function for proper caps nego. This makes some parts of AVI playback/reading work. * sys/ximage/ximagesink.c: (gst_ximagesink_sinkconnect): Resize window on new capsnego. This is probably wrong, but I'm still committing it because with current capsnego, the first successfull capsnego is auto-fixated, therefore rounded down to the lowest values in the caps. this results in a 16x16 XWindow that is not reized when real capsnego finishes. Dave, I see more cases of this, do you know a proper solution? * tools/gst-launch-ext.in: Fix MPEG-4 AAC (Apple iPod/iTunes) file commandline.
2003-12-31Change gst_pad_proxy_link() to gst_pad_try_set_caps()David Schleef1-0/+6
Original commit message from CVS: Change gst_pad_proxy_link() to gst_pad_try_set_caps()
2003-12-31Negotiation fixes.David Schleef1-0/+29
Original commit message from CVS: Negotiation fixes.
2003-12-30ext/esd/esdsink.c (gst_esdsink_link): Fix typo; get depth instead of signed.Colin Walters1-0/+5
Original commit message from CVS: 2003-12-29 Colin Walters <walters@verbum.org> * ext/esd/esdsink.c (gst_esdsink_link): Fix typo; get depth instead of signed.
2003-12-29Fix warning about discarding const qualifierJan Schmidt2-1/+6
Original commit message from CVS: Fix warning about discarding const qualifier
2003-12-27Changelog updateJeremy Simon1-0/+9
Original commit message from CVS: Changelog update
2003-12-27Fix warningsJeremy Simon2-6/+6
Original commit message from CVS: Fix warnings
2003-12-27ext/alsa/gstalsa.c: Don't send ALSA debugging to stderr.Benjamin Otte1-0/+7
Original commit message from CVS: 2003-12-27 Benjamin Otte <in7y118@public.uni-hamburg.de> * ext/alsa/gstalsa.c: (gst_alsa_open_audio): Don't send ALSA debugging to stderr. * ext/alsa/gstalsa.h: Use GST_WARNING instead of g_warning when ALSA functions fail.
2003-12-27sys/xvimage/xvimagesink.c: Free XVAdapterInfo correctly.Benjamin Otte1-0/+5
Original commit message from CVS: 2003-12-27 Benjamin Otte <in7y118@public.uni-hamburg.de> * sys/xvimage/xvimagesink.c: (gst_xvimagesink_get_xv_support): Free XVAdapterInfo correctly.
2003-12-27ext/mad/gstid3tag.c: Make id3tag use correct caps nego.Benjamin Otte1-0/+6
Original commit message from CVS: 2003-12-27 Benjamin Otte <in7y118@public.uni-hamburg.de> * ext/mad/gstid3tag.c: (gst_id3_tag_add_src_pad), (gst_id3_tag_do_caps_nego), (gst_id3_tag_src_link): Make id3tag use correct caps nego.
2003-12-27make tremor work againAmaury Jacquot4-86/+98
Original commit message from CVS: make tremor work again
2003-12-27testsuite/spider/: Make tests compile again. They probably don't work.Benjamin Otte1-0/+7
Original commit message from CVS: 2003-12-27 Benjamin Otte <in7y118@public.uni-hamburg.de> * testsuite/spider/spider1.c: (main): * testsuite/spider/spider2.c: (main): * testsuite/spider/spider3.c: (main): Make tests compile again. They probably don't work.
2003-12-24Return NULL if we can't fixate the caps anymore.Colin Walters1-0/+5
Original commit message from CVS: Return NULL if we can't fixate the caps anymore.
2003-12-24gst/volume/gstvolume.c: Proxy getcaps.David Schleef1-0/+6
Original commit message from CVS: * gst/volume/gstvolume.c: (volume_init): Proxy getcaps. * sys/oss/gstosssink.c: (gst_osssink_init), (gst_osssink_sink_fixate): Add fixate function.
2003-12-24ext/ffmpeg/: fix typo in RGB masks, and move back to "old" colorspace ↵Ronald S. Bultje1-0/+15
capsnego code until whoever wrote this new crap... Original commit message from CVS: 2003-12-24 Ronald Bultje <rbultje@ronald.bitfreak.net> * ext/ffmpeg/gstffmpegcodecmap.c: * ext/ffmpeg/gstffmpegcolorspace.c: (gst_ffmpegcsp_getcaps), (gst_ffmpegcsp_srcconnect_func), (gst_ffmpegcsp_sinkconnect), (gst_ffmpegcsp_srcconnect), (gst_ffmpegcsp_get_type), (gst_ffmpegcsp_base_init), (gst_ffmpegcsp_class_init), (gst_ffmpegcsp_init), (gst_ffmpegcsp_chain), (gst_ffmpegcsp_change_state), (gst_ffmpegcsp_set_property), (gst_ffmpegcsp_get_property), (gst_ffmpegcsp_register): fix typo in RGB masks, and move back to "old" colorspace capsnego code until whoever wrote this new crap has actually tested it so that it works. And yes, this works, keep it that way please.
2003-12-23Fix caps breakage after Dave's caps branch merge.Ronald S. Bultje11-401/+366
Original commit message from CVS: 2003-12-23 Ronald Bultje <rbultje@ronald.bitfreak.net> * ext/divx/gstdivxdec.c: (gst_divxdec_base_init), (gst_divxdec_init), (gst_divxdec_negotiate): * ext/divx/gstdivxdec.h: * ext/divx/gstdivxenc.c: (gst_divxenc_base_init), (gst_divxenc_init): * ext/faac/gstfaac.c: (gst_faac_base_init), (gst_faac_init), (gst_faac_sinkconnect), (gst_faac_srcconnect): * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mpeg2enc/gstmpeg2encoder.cc: * ext/mpeg2enc/gstmpeg2encpicturereader.cc: * sys/dxr3/dxr3audiosink.c: (dxr3audiosink_base_init), (dxr3audiosink_init), (dxr3audiosink_pcm_sinklink): * sys/dxr3/dxr3spusink.c: (dxr3spusink_base_init), (dxr3spusink_init): * sys/dxr3/dxr3videosink.c: (dxr3videosink_base_init), (dxr3videosink_init): Fix caps breakage after Dave's caps branch merge.
2003-12-23Fix 24bppLE RGBRonald S. Bultje1-0/+5
Original commit message from CVS: Fix 24bppLE RGB
2003-12-23I'm too lazy to comment thisColin Walters1-1/+1
Original commit message from CVS: *** empty log message ***
2003-12-23Add ARG_HANDLE property that takes a GnomeVFSHandle directly.Colin Walters1-0/+5
Original commit message from CVS: Add ARG_HANDLE property that takes a GnomeVFSHandle directly.
2003-12-22gst/volume/: Reenable volume element and fix to work with new caps stuff.Benjamin Otte1-0/+8
Original commit message from CVS: 2003-12-22 Benjamin Otte <in7y118@public.uni-hamburg.de> * gst/volume/Makefile.am: * gst/volume/gstvolume.c: (volume_connect), (volume_parse_caps), (volume_base_init), (volume_init): Reenable volume element and fix to work with new caps stuff. Rhythmbox needs this.
2003-12-22gst/qtdemux/qtdemux.c: qtdemux requires bytestreamBenjamin Otte2-0/+8
Original commit message from CVS: 2003-12-22 Benjamin Otte <in7y118@public.uni-hamburg.de> * gst/qtdemux/qtdemux.c: (plugin_init): qtdemux requires bytestream
2003-12-22ext/alsa/gstalsa.c: Fix remaining caps handling errors due to CAPS merge.Benjamin Otte1-0/+5
Original commit message from CVS: 2003-12-22 Benjamin Otte <in7y118@public.uni-hamburg.de> * ext/alsa/gstalsa.c: (gst_alsa_get_caps), (gst_alsa_link): Fix remaining caps handling errors due to CAPS merge.
2003-12-22compile fixThomas Vander Stichele1-1/+1
Original commit message from CVS: compile fix
2003-12-22messed up the template caps on first tryBenjamin Otte1-5/+5
Original commit message from CVS: messed up the template caps on first try
2003-12-22ext/faad/gstfaad.c: Port to new caps system.Benjamin Otte2-151/+129
Original commit message from CVS: 2003-12-22 Benjamin Otte <in7y118@public.uni-hamburg.de> * ext/faad/gstfaad.c: (gst_faad_base_init), (gst_faad_init), (gst_faad_sinkconnect), (gst_faad_srcgetcaps), (gst_faad_srcconnect): Port to new caps system.
2003-12-22Merge CAPS branchDavid Schleef84-3279/+2656
Original commit message from CVS: Merge CAPS branch
2003-12-21Fix error in my previous commit - NULL was accidentily removed, leading to a ↵Ronald S. Bultje1-1/+2
segfault in gst-register Original commit message from CVS: Fix error in my previous commit - NULL was accidentily removed, leading to a segfault in gst-register
2003-12-21examples/gstplay/player.c: using g_print instead of g_message.Julien Moutte4-13/+28
Original commit message from CVS: * examples/gstplay/player.c: (got_time_tick), (got_stream_length), (got_video_size), (main): using g_print instead of g_message. * gst-libs/gst/play/gstplay.c: (gst_play_pipeline_setup): Fixing EOS signal which was not emitted because of "switch" element added to the bin but not connected. (Removing from the bin temporarily)
2003-12-21fix BBB's configure.ac changesThomas Vander Stichele1-4/+5
Original commit message from CVS: fix BBB's configure.ac changes
2003-12-21configure.ac: X_DISPLAY_MISSING is set to 1 if AC_PATH_XTRA fails to find X ↵Julien Moutte5-5/+37
development files. I don't understand the... Original commit message from CVS: * configure.ac: X_DISPLAY_MISSING is set to 1 if AC_PATH_XTRA fails to find X development files. I don't understand the previous tests and they fail on my debian/ppc unstable. This one works. * examples/gstplay/player.c: (main): Set the pipeline to READY before exiting. * gst-libs/gst/play/gstplay.c: (gst_play_get_length_callback), (gst_play_set_video_sink), (gst_play_set_audio_sink), (gst_play_set_visualization): Add some safety checks in set_ methods and state_change. This was throwing some ugly CRITICAL messages when pipeline was getting disposed and casts were failing.
2003-12-21configure.ac: Improve mpeg2enc detection. This is for distributions that do ↵Ronald S. Bultje5-58/+189
ship mjpegtools, but without mpeg2enc. Al... Original commit message from CVS: 2003-12-21 Ronald Bultje <rbultje@ronald.bitfreak.net> * configure.ac: Improve mpeg2enc detection. This is for distributions that do ship mjpegtools, but without mpeg2enc. Also does object check for might there ever be ABI incompatibility. * ext/mpeg2enc/gstmpeg2enc.cc: Add Andrew as second maintainer (he's helping me), and also add an error if no caps was set. This happens if I pull before capsnego and that's something I should solve sometime else. * gst/matroska/matroska-demux.c: (gst_matroska_demux_parse_blockgroup): Fix time parsing. * gst/matroska/matroska-mux.c: (gst_matroska_mux_audio_pad_link), (gst_matroska_mux_track_header): Add caps to templates. * gst/mpegaudioparse/gstmpegaudioparse.c: (mp3_sink_factory): Add mpegversion=1 to prevent confusion with MPEG/AAC. * gst/mpegstream/gstmpegdemux.c: Remove layer since it causes warnings about unfixed caps. * gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_get): Fix obvious typo (we error out if caps were set, we should of course error out if *no* caps were set). * sys/oss/gstosselement.c: (gst_osselement_convert): Fix format conversion, we confused bits/bytes. * sys/oss/gstosselement.h: Improve documentation for 'bps'. * sys/v4l/TODO: Remove stuff about plugins that need removing - this was done ages ago. * sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_init), (gst_v4lmjpegsrc_src_convert), (gst_v4lmjpegsrc_src_query): * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_init), (gst_v4lsrc_src_convert), (gst_v4lsrc_src_query): * sys/v4l2/gstv4l2src.c: (gst_v4l2src_init), (gst_v4l2src_src_convert), (gst_v4l2src_src_query): Add get_query_types(), get_formats() and query() functions.