Commit graph

949 commits

Author SHA1 Message Date
Sebastian Dröge
47db2fe547 mxf: Add example application to output the structural metadata tree into a GtkTreeView 2009-02-26 18:47:23 +01:00
Jan Schmidt
3ee87fa8f2 build: Update shave init statement for changes in common. Bump common. 2009-02-25 15:06:07 +00:00
Stefan Kost
b2188c8685 docs: update docs to add camerabin and its figure 2009-02-25 11:38:58 +02:00
Sebastian Dröge
f0ae68d944 Move examples directory to tests/examples as in every other GStreamer module 2009-02-24 16:33:51 +01:00
Sebastian Dröge
da040c2a35 dtsdec: Use new DCA functions/constants as not all distros package the compat dts.h
For backward compatibility we define the DCA functions/constants to the
old DTS functions/constants if we're building against libdts.
2009-02-24 16:21:18 +01:00
Sebastian Dröge
ab1c576ec2 xdgmime: Add new typefinder based on xdgmime
This typefinder is mostly useful to filter out any false positives
by the other typefinders like the usual Word document misdetected as
MP3 file.
2009-02-24 15:26:27 +01:00
Sebastian Dröge
27f19cf92f dts: Prefer libdca over libdts as it's the successor 2009-02-24 13:38:53 +01:00
Jan Schmidt
0456f92b77 build: Add soundtouch's -lBPM to _LIBS, not _CFLAGS 2009-02-23 11:49:07 +00:00
Jan Schmidt
98dccb65bf Detect libsoundtouch 1.4 and higher.
In libsoundtouch 1.4, libBPM appears to have been subsumed into
libSoundTouch, and into the soundtouch namespace.
2009-02-22 19:18:36 +00:00
Jan Schmidt
731bf5d26e Use shave for the build output 2009-02-22 19:18:35 +00:00
Andoni Morales
7992233522 camerabin: Fix compilation on Windows with Visual Studio
Windows doesn't have strcasecmp so we should use
g_ascii_strcasecmp here instead.

Also Windows doesn't have sys/time.h so we first
need to check if it actually exists and if not
we should not include it.

Fixes bug #572315.
2009-02-22 18:41:08 +01:00
Olivier Crête
00a155333c Moved rtpmux from gst-p-farsight to -bad 2009-02-21 17:50:35 +01:00
Olivier Crête
0df90ed395 Moved dtmf elements from gst-plugins-farsight to -bad 2009-02-21 17:48:08 +01:00
Olivier Crête
15c74af4d0 Moved valve from gst-plugins-farsight to -bad 2009-02-17 19:29:59 +01:00
Olivier Crête
b1efc2f9aa Moved siren from gst-p-farsight to -bad 2009-02-17 19:29:40 +01:00
Olivier Crête
6edfec64ee Moved liveadder from gst-plugins-farsight to -bad
Re-indent liveadder in gst style and add it to configure
2009-02-17 19:29:06 +01:00
Nokia Corporation
3751eaeb79 Add camerabin element. 2009-02-09 10:22:09 +02:00
Nokia Corporation
f081d3e7b6 Add photography interface. 2009-02-09 10:22:08 +02:00
Benjamin Schmitz
0bc20cb186 Add assrender plugin for rendering ASS/SSA subtitles
This element has the advantage over subparse's ASS/SSA
support that more features are supported, like fading,
by using libass. Fixes bug #481075.
2009-02-05 17:52:38 +01:00
Tim-Philipp Müller
837a4012b0 configure.ac: bump core/base requirements to released versions 2009-02-03 22:28:44 +00:00
Hans de Goede
bf7ccbe0f8 Build the modplug plugin against the modplug library and remove our copy
Always build the modplug plugin against the system modplug library
and remove our own copy. Using the system version has advantages
if security issues or other critical bugs are found in libmodplug
and our own copy wasn't really maintained anyway.

Also our copy only contained some patches to use GLib types and functions.
Fixes bug #568837.
2009-01-24 18:13:39 +01:00
Sebastian Dröge
e4e3b44e04 Rename audioresample files and types to legacyresample
Finish the move/rename of audioresample to legacyresample
to prevent any confusion.
2009-01-23 12:47:19 +01:00
Hans de Goede
20b715ac79 Add seeking support to mmssrc. Fixes bug #469930.
Add proper seeking support to mmssrc and clean
up some code. This requires libmms >= 0.4.
2009-01-23 11:50:29 +01:00
Brian Cameron
486d76b454 Fix build on Solaris. Fixes bug #568480.
Fix linking on Solaris by checking for the nsl and socket
libraries which are needed for socket() and gethostbyname().

Don't initialize some fields of struct mh to NULL/0, they're
already set to NULL/0 by a memset(). Also this fields don't
exist on Solaris.
2009-01-23 10:11:52 +01:00
Sebastian Dröge
1b49a094fe Disable the filter plugin from the build
The filter plugin only contains a limited IIR filter element
which is now obsoleted by the audioiirfilter element from
gst-plugins-good/audiofx.
2009-01-22 13:12:59 +01:00
Jan Schmidt
751a76c5e1 Back to devel -> 0.10.10.1 2009-01-22 11:56:34 +00:00
Andy Wingo
4d85e93cf9 Revert "add audiobuffer to the build"
This reverts commit 1c6ac170b9.
2009-01-21 12:22:54 +01:00
Andy Wingo
1c6ac170b9 add audiobuffer to the build
* configure.ac: Add audiobuffer to the build.
2009-01-21 12:18:49 +01:00
Jan Schmidt
e0237fb6e8 Release 0.10.10
Original commit message from CVS:
Release 0.10.10
2009-01-19 23:15:36 +00:00
Jan Schmidt
9d6cdd8e61 configure.ac: 0.10.9.3 pre-release
Original commit message from CVS:
* configure.ac:
0.10.9.3 pre-release
2009-01-09 23:44:38 +00:00
Jan Schmidt
a2b410a595 Remove AppSrc/AppSink that are moving to -base. Partially fixes #564421
Original commit message from CVS:
* configure.ac:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* docs/plugins/inspect/plugin-app.xml:
* examples/Makefile.am:
* examples/app/.cvsignore:
* examples/app/Makefile.am:
* examples/app/appsink-src.c:
* examples/app/appsrc-ra.c:
* examples/app/appsrc-seekable.c:
* examples/app/appsrc-stream.c:
* examples/app/appsrc-stream2.c:
* examples/app/appsrc_ex.c:
* gst-libs/gst/Makefile.am:
* gst-libs/gst/app/.cvsignore:
* gst-libs/gst/app/Makefile.am:
* gst-libs/gst/app/gstapp-marshal.list:
* gst-libs/gst/app/gstappbuffer.c:
* gst-libs/gst/app/gstappbuffer.h:
* gst-libs/gst/app/gstappsink.c:
* gst-libs/gst/app/gstappsink.h:
* gst-libs/gst/app/gstappsrc.c:
* gst-libs/gst/app/gstappsrc.h:
* gst/app/Makefile.am:
* gst/app/gstapp.c:
Remove AppSrc/AppSink that are moving to -base. Partially fixes
#564421
2009-01-05 23:03:31 +00:00
Mark Nauwelaerts
6a44cf9c1e configure.ac: Also mention jp2kenc as a jp2k plugin feature.
Original commit message from CVS:
* configure.ac:
Also mention jp2kenc as a jp2k plugin feature.
2009-01-05 10:00:21 +00:00
Sebastian Dröge
b0e94e354f configure.ac: Apparently AC_CONFIG_MACRO_DIR breaks when using more than one macro directory, reverting last change.
Original commit message from CVS:
* configure.ac:
Apparently AC_CONFIG_MACRO_DIR breaks when using more
than one macro directory, reverting last change.
2008-12-04 20:11:17 +00:00
Sebastian Dröge
e15dccd50c configure.ac: Set AC_CONFIG_MACRO_DIR to common/m4 to point autoconf to our M4 macros.
Original commit message from CVS:
* configure.ac:
Set AC_CONFIG_MACRO_DIR to common/m4 to point autoconf to
our M4 macros.
2008-12-04 19:50:10 +00:00
Sebastian Dröge
cb6f639efb Require gettext 0.17 because older versions don't mix with libtool 2.2. At build time an older gettext version will s...
Original commit message from CVS:
Patch by: Cygwin Ports maintainer
<yselkowitz at users dot sourceforge dot net>
* autogen.sh:
* configure.ac:
Require gettext 0.17 because older versions don't mix with libtool
2.2. At build time an older gettext version will still work.
Fixes bug #556091.
2008-11-29 13:33:30 +00:00
Sebastian Dröge
1ef77b20f7 configure.ac: Remove speexresample from the build system too.
Original commit message from CVS:
* configure.ac:
Remove speexresample from the build system too.
2008-11-27 19:27:04 +00:00
Sebastian Dröge
5da03609e5 Integrate the moved audioresample into the build system and rename it to legacyresample. Fixes bug #558124.
Original commit message from CVS:
* configure.ac:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* docs/plugins/gst-plugins-bad-plugins.args:
* docs/plugins/gst-plugins-bad-plugins.hierarchy:
* docs/plugins/gst-plugins-bad-plugins.interfaces:
* docs/plugins/gst-plugins-bad-plugins.prerequisites:
* docs/plugins/gst-plugins-bad-plugins.signals:
* docs/plugins/inspect/plugin-aacparse.xml:
* docs/plugins/inspect/plugin-alsaspdif.xml:
* docs/plugins/inspect/plugin-amrparse.xml:
* docs/plugins/inspect/plugin-app.xml:
* docs/plugins/inspect/plugin-bayer.xml:
* docs/plugins/inspect/plugin-bz2.xml:
* docs/plugins/inspect/plugin-cdaudio.xml:
* docs/plugins/inspect/plugin-cdxaparse.xml:
* docs/plugins/inspect/plugin-celt.xml:
* docs/plugins/inspect/plugin-dccp.xml:
* docs/plugins/inspect/plugin-dfbvideosink.xml:
* docs/plugins/inspect/plugin-dtsdec.xml:
* docs/plugins/inspect/plugin-dvb.xml:
* docs/plugins/inspect/plugin-dvdspu.xml:
* docs/plugins/inspect/plugin-faad.xml:
* docs/plugins/inspect/plugin-fbdevsink.xml:
* docs/plugins/inspect/plugin-festival.xml:
* docs/plugins/inspect/plugin-filter.xml:
* docs/plugins/inspect/plugin-freeze.xml:
* docs/plugins/inspect/plugin-gsm.xml:
* docs/plugins/inspect/plugin-gstinterlace.xml:
* docs/plugins/inspect/plugin-gstrtpmanager.xml:
* docs/plugins/inspect/plugin-h264parse.xml:
* docs/plugins/inspect/plugin-jack.xml:
* docs/plugins/inspect/plugin-ladspa.xml:
* docs/plugins/inspect/plugin-metadata.xml:
* docs/plugins/inspect/plugin-mms.xml:
* docs/plugins/inspect/plugin-modplug.xml:
* docs/plugins/inspect/plugin-mpeg4videoparse.xml:
* docs/plugins/inspect/plugin-mpegvideoparse.xml:
* docs/plugins/inspect/plugin-musepack.xml:
* docs/plugins/inspect/plugin-musicbrainz.xml:
* docs/plugins/inspect/plugin-mve.xml:
* docs/plugins/inspect/plugin-mythtv.xml:
* docs/plugins/inspect/plugin-nas.xml:
* docs/plugins/inspect/plugin-neon.xml:
* docs/plugins/inspect/plugin-nsfdec.xml:
* docs/plugins/inspect/plugin-nuvdemux.xml:
* docs/plugins/inspect/plugin-oss4.xml:
* docs/plugins/inspect/plugin-rawparse.xml:
* docs/plugins/inspect/plugin-real.xml:
* docs/plugins/inspect/plugin-rfbsrc.xml:
* docs/plugins/inspect/plugin-scaletempo.xml:
* docs/plugins/inspect/plugin-sdl.xml:
* docs/plugins/inspect/plugin-sdp.xml:
* docs/plugins/inspect/plugin-selector.xml:
* docs/plugins/inspect/plugin-sndfile.xml:
* docs/plugins/inspect/plugin-soundtouch.xml:
* docs/plugins/inspect/plugin-speed.xml:
* docs/plugins/inspect/plugin-speexresample.xml:
* docs/plugins/inspect/plugin-stereo.xml:
* docs/plugins/inspect/plugin-subenc.xml:
* docs/plugins/inspect/plugin-tta.xml:
* docs/plugins/inspect/plugin-twolame.xml:
* docs/plugins/inspect/plugin-vcdsrc.xml:
* docs/plugins/inspect/plugin-videosignal.xml:
* docs/plugins/inspect/plugin-vmnc.xml:
* docs/plugins/inspect/plugin-wildmidi.xml:
* docs/plugins/inspect/plugin-y4menc.xml:
* gst/audioresample/gstaudioresample.c: (plugin_init):
* gst/audioresample/Makefile.am:
* tests/check/Makefile.am:
* tests/check/elements/audioresample.c: (setup_audioresample),
(GST_START_TEST):
Integrate the moved audioresample into the build system and
rename it to legacyresample. Fixes bug #558124.
2008-11-27 16:58:31 +00:00
Michael Smith
a485e4c252 Add new directory for new acmmp3dec plugin
Original commit message from CVS:
* configure.ac:
* sys/Makefile.am:
Add new directory for new acmmp3dec plugin
* sys/acmenc/Makefile.am:
* sys/acmenc/acmmp3dec.c:
Add new acmmp3dec plugin, which uses ACM for decoding mp3 on windows.
2008-11-25 00:20:22 +00:00
Sebastian Dröge
b1e0560a51 configure.ac: Remove the "experimental" flag from the deinterlace2 plugin.
Original commit message from CVS:
* configure.ac:
Remove the "experimental" flag from the deinterlace2 plugin.
2008-11-21 10:37:13 +00:00
Sebastian Dröge
e76ea1ca88 Add first version of an MXF demuxer. Currently it supports
Original commit message from CVS:
* configure.ac:
* gst/mxf/Makefile.am:
* gst/mxf/mxf.c: (plugin_init):
* gst/mxf/mxfaes-bwf.c:
(mxf_metadata_wave_audio_essence_descriptor_parse),
(mxf_metadata_wave_audio_essence_descriptor_reset),
(mxf_is_aes_bwf_essence_track), (mxf_bwf_handle_essence_element),
(mxf_bwf_create_caps), (mxf_aes_bwf_create_caps):
* gst/mxf/mxfaes-bwf.h:
* gst/mxf/mxfdemux.c: (gst_mxf_pad_finalize),
(gst_mxf_pad_class_init), (gst_mxf_pad_init),
(gst_mxf_demux_flush), (gst_mxf_demux_remove_pad),
(gst_mxf_demux_reset_mxf_state), (gst_mxf_demux_reset_metadata),
(gst_mxf_demux_reset), (gst_mxf_demux_pull_range),
(gst_mxf_demux_push_src_event),
(gst_mxf_demux_handle_partition_pack),
(gst_mxf_demux_handle_primer_pack),
(gst_mxf_demux_handle_metadata_preface),
(gst_mxf_demux_handle_metadata_identification),
(gst_mxf_demux_handle_metadata_content_storage),
(gst_mxf_demux_handle_metadata_essence_container_data),
(gst_mxf_demux_handle_metadata_material_package),
(gst_mxf_demux_handle_metadata_source_package),
(gst_mxf_demux_handle_metadata_track),
(gst_mxf_demux_handle_metadata_sequence),
(gst_mxf_demux_handle_metadata_structural_component),
(gst_mxf_demux_handle_metadata_generic_descriptor),
(gst_mxf_demux_handle_metadata_file_descriptor),
(gst_mxf_demux_handle_metadata_multiple_descriptor),
(gst_mxf_demux_handle_metadata_generic_picture_essence_descriptor),
(gst_mxf_demux_handle_metadata_cdci_picture_essence_descriptor),
(gst_mxf_demux_handle_metadata_mpeg_video_descriptor),
(gst_mxf_demux_handle_metadata_generic_sound_essence_descriptor),
(gst_mxf_demux_handle_metadata_wave_audio_essence_descriptor),
(gst_mxf_demux_handle_metadata_locator),
(gst_mxf_demux_handle_header_metadata_resolve_references),
(gst_mxf_demux_handle_header_metadata_update_streams),
(gst_mxf_demux_handle_metadata),
(gst_mxf_demux_handle_generic_container_system_item),
(gst_mxf_demux_handle_generic_container_essence_element),
(gst_mxf_demux_handle_random_index_pack),
(gst_mxf_demux_handle_index_table_segment),
(gst_mxf_demux_pull_klv_packet),
(gst_mxf_demux_parse_footer_metadata),
(gst_mxf_demux_handle_klv_packet),
(gst_mxf_demux_pull_and_handle_klv_packet), (gst_mxf_demux_loop),
(gst_mxf_demux_chain), (gst_mxf_demux_src_event),
(gst_mxf_demux_src_query_type), (gst_mxf_demux_src_query),
(gst_mxf_demux_sink_activate), (gst_mxf_demux_sink_activate_push),
(gst_mxf_demux_sink_activate_pull), (gst_mxf_demux_sink_event),
(gst_mxf_demux_change_state), (gst_mxf_demux_finalize),
(gst_mxf_demux_base_init), (gst_mxf_demux_class_init),
(gst_mxf_demux_init):
* gst/mxf/mxfdemux.h:
* gst/mxf/mxfmpeg.c: (mxf_metadata_mpeg_video_descriptor_parse),
(mxf_metadata_mpeg_video_descriptor_reset),
(mxf_is_mpeg_video_essence_track),
(mxf_mpeg_video_handle_essence_element),
(mxf_mpeg_video_create_caps):
* gst/mxf/mxfmpeg.h:
* gst/mxf/mxfparse.c: (mxf_is_mxf_packet), (mxf_is_partition_pack),
(mxf_is_header_partition_pack), (mxf_is_body_partition_pack),
(mxf_is_footer_partition_pack), (mxf_is_fill),
(mxf_is_primer_pack), (mxf_is_metadata),
(mxf_is_random_index_pack), (mxf_is_index_table_segment),
(mxf_is_generic_container_system_item),
(mxf_is_generic_container_essence_element),
(mxf_is_generic_container_essence_container_label),
(mxf_ul_is_equal), (mxf_ul_is_zero), (mxf_ul_to_string),
(mxf_umid_is_equal), (mxf_umid_is_zero), (mxf_umid_to_string),
(gst_mxf_ul_hash), (gst_mxf_ul_equal), (mxf_timestamp_parse),
(mxf_timestamp_is_unknown), (mxf_timestamp_compare),
(mxf_fraction_parse), (mxf_utf16_to_utf8),
(mxf_product_version_parse), (mxf_partition_pack_parse),
(mxf_partition_pack_reset), (_mxf_mapping_ul_free),
(mxf_primer_pack_parse), (mxf_primer_pack_reset),
(mxf_local_tag_parse), (gst_mxf_local_tag_free),
(gst_metadata_add_custom_tag), (mxf_metadata_preface_parse),
(mxf_metadata_preface_reset), (mxf_metadata_identification_parse),
(mxf_metadata_identification_reset),
(mxf_metadata_content_storage_parse),
(mxf_metadata_content_storage_reset),
(mxf_metadata_essence_container_data_parse),
(mxf_metadata_essence_container_data_reset),
(mxf_metadata_generic_package_parse),
(mxf_metadata_generic_package_reset), (mxf_metadata_track_parse),
(mxf_metadata_track_reset), (mxf_metadata_track_identifier_parse),
(mxf_metadata_sequence_parse), (mxf_metadata_sequence_reset),
(mxf_metadata_structural_component_parse),
(mxf_metadata_structural_component_reset),
(mxf_metadata_generic_descriptor_parse),
(mxf_metadata_generic_descriptor_reset),
(mxf_metadata_file_descriptor_parse),
(mxf_metadata_file_descriptor_reset),
(mxf_metadata_generic_sound_essence_descriptor_parse),
(mxf_metadata_generic_sound_essence_descriptor_reset),
(mxf_metadata_generic_picture_essence_descriptor_parse),
(mxf_metadata_generic_picture_essence_descriptor_reset),
(mxf_metadata_cdci_picture_essence_descriptor_parse),
(mxf_metadata_cdci_picture_essence_descriptor_reset),
(mxf_metadata_multiple_descriptor_parse),
(mxf_metadata_multiple_descriptor_reset),
(mxf_metadata_locator_parse), (mxf_metadata_locator_reset):
* gst/mxf/mxfparse.h:
* gst/mxf/mxftypes.h:
Add first version of an MXF demuxer. Currently it supports
MPEG video and raw audio and OP 1a/b/c.
2008-11-21 10:27:15 +00:00
Christian Schaller
c363ecdf67 no more egging the pudding
Original commit message from CVS:
no more egging the pudding
2008-11-14 16:15:43 +00:00
Stefan Kost
7f42b7856b Add two new baseparse based parsers (aac and amr) from Bug #518857.
Original commit message from CVS:
* configure.ac:
* gst/aacparse/Makefile.am:
* gst/aacparse/gstaacparse.c:
* gst/aacparse/gstaacparse.h:
* gst/aacparse/gstbaseparse.c:
* gst/aacparse/gstbaseparse.h:
* gst/amrparse/Makefile.am:
* gst/amrparse/gstamrparse.c:
* gst/amrparse/gstamrparse.h:
* gst/amrparse/gstbaseparse.c:
* gst/amrparse/gstbaseparse.h:
Add two new baseparse based parsers (aac and amr) from Bug #518857.
2008-11-13 12:59:34 +00:00
Thiago Sousa Santos
e8d0f5e3b3 Copy qtmux from revision 148 of the gst-qtmux repository.
Original commit message from CVS:
patch by: Thiago Sousa Santos <thiagossantos@gmail.com>
* configure.ac:
* gst/qtmux/Makefile.am:
* gst/qtmux/atoms.c:
* gst/qtmux/atoms.h:
* gst/qtmux/descriptors.c:
* gst/qtmux/descriptors.h:
* gst/qtmux/fourcc.h:
* gst/qtmux/ftypcc.h:
* gst/qtmux/gstqtmux.c:
* gst/qtmux/gstqtmux.h:
* gst/qtmux/gstqtmuxmap.c:
* gst/qtmux/gstqtmuxmap.h:
* gst/qtmux/properties.c:
* gst/qtmux/properties.h:
Copy qtmux from revision 148 of the gst-qtmux repository.
Fixes #550280.
2008-11-08 02:00:58 +00:00
Thijs Vermeir
862cc7ddd2 Fix basic navigation events
Original commit message from CVS:
* configure.ac:
* gst/librfb/Makefile.am:
* gst/librfb/gstrfbsrc.c:
Fix basic navigation events
2008-11-06 22:54:39 +00:00
Sebastian Dröge
89b5a74b86 configure.ac: Use AC_TRY_COMPILE instead of AC_TRY_RUN as the result of the linking is what is interesting, not that ...
Original commit message from CVS:
* configure.ac:
Use AC_TRY_COMPILE instead of AC_TRY_RUN as the result of the linking
is what is interesting, not that it actually runs.
Fixes cross-compilation and fixes bug #558639.
2008-10-31 18:39:37 +00:00
Tim-Philipp Müller
aa67ed1d14 configure.ac: Require at least Gtk 2.8.0 for the demos (that's the oldest I can test with; I'm fairly certain Gtk 2.0...
Original commit message from CVS:
* configure.ac:
Require at least Gtk 2.8.0 for the demos (that's the oldest I can
test with; I'm fairly certain Gtk 2.0.0 is not good enough any
longer); clean up some unused Gtk-related configure cruft.
* examples/scaletempo/demo-gui.c:
Define Gtk 2.12 function to noop when compiling against older Gtk.
2008-10-30 15:31:59 +00:00
Sebastian Dröge
1a0b218006 configure.ac: Require CVS of core for the last change.
Original commit message from CVS:
* configure.ac:
Require CVS of core for the last change.
2008-10-27 09:42:55 +00:00
Jan Schmidt
b1c91d7ebe configure.ac: Back to development -> 0.10.9.1
Original commit message from CVS:
* configure.ac:
Back to development -> 0.10.9.1
2008-10-26 20:07:51 +00:00
Jan Schmidt
9bb4caf90e Release 0.10.9
Original commit message from CVS:
Release 0.10.9
2008-10-24 22:45:11 +00:00
Jan Schmidt
38d5251c01 configure.ac: Commit 0.10.8.4 pre-release
Original commit message from CVS:
* configure.ac:
Commit 0.10.8.4 pre-release
2008-10-24 16:41:33 +00:00