Commit graph

3152 commits

Author SHA1 Message Date
Zaheer Abbas Merali
4ae4808bce sys/v4l/v4l_calls.c: Fix for some v4l cards which hang in v4lsrc
Original commit message from CVS:
2004-10-25  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

reviewed by: Ronald Bultje <rbultje at gnome dot org>

* sys/v4l/v4l_calls.c: (gst_v4l_get_chan_names):
Fix for some v4l cards which hang in v4lsrc
2004-10-25 18:42:47 +00:00
Wim Taymans
1e5de16c32 ext/ogg/gstoggdemux.c: Make sure to remove the pad when a new chain is encountered. Set some vars to NULL so we don't...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_remove),
(gst_ogg_demux_push), (gst_ogg_chains_clear):
Make sure to remove the pad when a new chain is
encountered. Set some vars to NULL so we don't try
to reference freed memory.
2004-10-25 17:46:03 +00:00
Wim Taymans
8657269f1e examples/seeking/: Added some more examples, update others.
Original commit message from CVS:
* examples/seeking/Makefile.am:
* examples/seeking/cdplayer.c: (update_scale):
* examples/seeking/chained.c: (unlinked), (new_pad), (main):
* examples/seeking/playbin.c: (make_playerbin_pipeline),
(format_value), (update_scale), (iterate), (start_seek),
(stop_seek), (print_media_info), (play_cb), (pause_cb), (stop_cb),
(print_usage), (main):
Added some more examples, update others.
2004-10-25 17:43:51 +00:00
Ronald S. Bultje
f2336fd22b ext/: Add codec-name metadata.
Original commit message from CVS:
* ext/flac/gstflacdec.c: (gst_flacdec_update_metadata):
* ext/speex/gstspeexdec.c: (speex_dec_chain):
* ext/theora/theoradec.c: (theora_dec_chain):
* ext/vorbis/vorbisdec.c: (vorbis_dec_chain):
Add codec-name metadata.
2004-10-25 16:10:58 +00:00
Ronald S. Bultje
8e13000e3b ALSA mixer track label internationalization (#154054).
Original commit message from CVS:
Reviewd by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* ext/alsa/gstalsamixer.c: (gst_alsa_mixer_build_list):
* ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_new):
* ext/alsa/gstalsamixertrack.h:
* po/POTFILES.in:
ALSA mixer track label internationalization (#154054).
2004-10-25 15:58:35 +00:00
Ronald S. Bultje
d9117ba704 ext/theora/theoradec.c: Export bitrate as metadata.
Original commit message from CVS:
* ext/theora/theoradec.c: (theora_dec_chain):
Export bitrate as metadata.
2004-10-25 15:31:50 +00:00
Ronald S. Bultje
4d4eae4e94 ext/alsa/: Fix names, fix loop.
Original commit message from CVS:
* ext/alsa/gstalsamixer.c: (gst_alsa_mixer_build_list):
* ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_new):
* ext/alsa/gstalsamixertrack.h:
Fix names, fix loop.
2004-10-25 13:51:40 +00:00
Ronald S. Bultje
9a1ce099b7 ext/speex/gstspeexdec.c: sinkconvert function so oggdemux can get the file length (totem).
Original commit message from CVS:
* ext/speex/gstspeexdec.c: (gst_speex_dec_init),
(speex_dec_convert):
sinkconvert function so oggdemux can get the file length (totem).
2004-10-25 09:56:12 +00:00
Ronald S. Bultje
ddaa429efb gst/asfdemux/gstasfdemux.c: Don't push incomplete packets.
Original commit message from CVS:
Reviewd by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_process_chunk):
Don't push incomplete packets.
* gst/typefind/gsttypefindfunctions.c: (m4a_type_find):
Fix MPEG-4 audio typefinding.
2004-10-25 09:01:43 +00:00
Ronald S. Bultje
8033e68ba9 sys/: Remove client-side overlay handling, use the X-server v4l plugin for that. Nicer overlay, less code. Also make ...
Original commit message from CVS:
* sys/v4l/Makefile.am:
* sys/v4l/gstv4l.c: (plugin_init):
* sys/v4l/gstv4lelement.c: (gst_v4lelement_get_type),
(gst_v4lelement_init), (gst_v4lelement_dispose),
(gst_v4lelement_change_state):
* sys/v4l/gstv4lelement.h:
* sys/v4l/gstv4lxoverlay.c: (gst_v4l_xoverlay_open),
(gst_v4l_xoverlay_close), (idle_refresh),
(gst_v4l_xoverlay_set_xwindow_id):
* sys/v4l/gstv4lxoverlay.h:
* sys/v4l/v4l-overlay_calls.c:
* sys/v4l/v4l_calls.h:
* sys/v4l2/Makefile.am:
* sys/v4l2/gstv4l2.c: (plugin_init):
* sys/v4l2/gstv4l2element.c: (gst_v4l2element_get_type),
(gst_v4l2element_init), (gst_v4l2element_dispose),
(gst_v4l2element_change_state):
* sys/v4l2/gstv4l2element.h:
* sys/v4l2/gstv4l2xoverlay.c: (gst_v4l2_xoverlay_open),
(gst_v4l2_xoverlay_close), (idle_refresh),
(gst_v4l2_xoverlay_set_xwindow_id):
* sys/v4l2/gstv4l2xoverlay.h:
* sys/v4l2/v4l2-overlay_calls.c:
* sys/v4l2/v4l2_calls.h:
Remove client-side overlay handling, use the X-server v4l plugin
for that. Nicer overlay, less code. Also make the plugin
compileable without X (but then without overlay, obviously).
Makes xwindowlistener obsolete, should we remove that?
2004-10-25 08:51:15 +00:00
Ronald S. Bultje
b41cdefc05 sys/oss/gstosssrc.*: OK, so people want offset in DEFAULT. This time, actually fix all cases.
Original commit message from CVS:
* sys/oss/gstosssrc.c: (gst_osssrc_get_time), (gst_osssrc_get),
(gst_osssrc_src_query):
* sys/oss/gstosssrc.h:
OK, so people want offset in DEFAULT. This time, actually fix all
cases.
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_getcaps):
Add FPS properly.
2004-10-25 08:40:07 +00:00
Ronald S. Bultje
7d1805fda4 gst/: Framerate.
Original commit message from CVS:
* gst/asfdemux/gstasfmux.c:
* gst/avi/gstavimux.c:
Framerate.
2004-10-24 21:22:07 +00:00
Ronald S. Bultje
c9e3a72521 sys/v4l2/gstv4l2element.c: Fix properties (channel, norm, frequency).
Original commit message from CVS:
* sys/v4l2/gstv4l2element.c: (gst_v4l2element_set_property):
Fix properties (channel, norm, frequency).
2004-10-24 19:37:32 +00:00
Ronald S. Bultje
a241ae070a sys/v4l2/gstv4l2element.c: Flag typo.
Original commit message from CVS:
* sys/v4l2/gstv4l2element.c: (gst_v4l2element_get_property):
Flag typo.
* sys/v4l2/v4l2_calls.c: (gst_v4l2_set_defaults):
No warnings.
2004-10-24 19:13:58 +00:00
Ronald S. Bultje
9826bfa5b4 sys/v4l2/v4l2src_calls.c: Fix hang.
Original commit message from CVS:
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_clear_format_list):
Fix hang.
2004-10-24 18:15:23 +00:00
Ronald S. Bultje
cdd824a3da sys/v4l2/gstv4l2element.h: Yet Another Hack (tm) for kernel header borkedness.
Original commit message from CVS:
* sys/v4l2/gstv4l2element.h:
Yet Another Hack (tm) for kernel header borkedness.
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_init),
(gst_v4l2src_v4l2fourcc_to_caps), (gst_v4l2_fourcc_from_structure),
(gst_v4l2src_link), (gst_v4l2src_getcaps),
(gst_v4l2src_change_state):
* sys/v4l2/gstv4l2src.h:
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_capture_init),
(gst_v4l2src_capture_start), (gst_v4l2src_capture_stop):
Fix caps, keep track of state, work.
2004-10-24 15:47:40 +00:00
Ronald S. Bultje
5c44182eb9 sys/v4l/gstv4lsrc.c: Quiet.
Original commit message from CVS:
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_getcaps):
Quiet.
2004-10-24 14:26:30 +00:00
Ronald S. Bultje
25a10db2e2 sys/oss/gstosssrc.c: Don't mix bytes and samples.
Original commit message from CVS:
* sys/oss/gstosssrc.c: (gst_osssrc_get):
Don't mix bytes and samples.
2004-10-24 14:04:38 +00:00
Ronald S. Bultje
4d4159166f ext/ogg/gstoggmux.c: Basic pad template which accepts OGM tracks, speex, flac, vorbis and theora. Any is incorrect.
Original commit message from CVS:
* ext/ogg/gstoggmux.c:
Basic pad template which accepts OGM tracks, speex, flac, vorbis
and theora. Any is incorrect.
* gst/asfdemux/gstasfmux.c: (gst_asfmux_vidsink_link):
Fix caps.
* sys/v4l/gstv4lmjpegsink.c: (gst_v4lmjpegsink_base_init):
* sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_base_init),
(gst_v4lmjpegsrc_init), (gst_v4lmjpegsrc_srcconnect),
(gst_v4lmjpegsrc_getcaps), (gst_v4lmjpegsrc_change_state):
* sys/v4l/gstv4lmjpegsrc.h:
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_src_link), (gst_v4lsrc_getcaps),
(gst_v4lsrc_change_state):
* sys/v4l/v4lmjpegsrc_calls.c: (gst_v4lmjpegsrc_capture_start),
(gst_v4lmjpegsrc_capture_stop):
Fix caps. Keep track of internal state. Work.
2004-10-24 13:41:17 +00:00
Ronald S. Bultje
88487ced85 ext/Makefile.am: Fix the build fixes.
Original commit message from CVS:
* ext/Makefile.am:
Fix the build fixes.
2004-10-23 11:38:24 +00:00
Ronald S. Bultje
63d9273740 ext/ogg/gstoggdemux.c: Check for pad availability before using it.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_src_query),
(gst_ogg_demux_src_event), (_find_chain_seek),
(gst_ogg_pad_push):
Check for pad availability before using it.
* ext/ogg/gstoggdemux.c: (_find_chain_process):
Fix parsing of chained ogg. Needs more work on the decoder side.
2004-10-23 10:06:31 +00:00
Benjamin Otte
7e5f9b2500 gst/spectrum/: Fix demo and reenable it. Yes, I'm currently playing with audio analysis tools
Original commit message from CVS:
* gst/spectrum/Makefile.am:
* gst/spectrum/demo-osssrc.c: (spectrum_chain), (main),
(idle_func):
Fix demo and reenable it. Yes, I'm currently playing with audio
analysis tools
2004-10-22 20:09:55 +00:00
Ronald S. Bultje
22fcd2185e ext/ogg/gstoggdemux.c: We love it if files that start at zero work too...
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_push):
We love it if files that start at zero work too...
2004-10-22 13:09:12 +00:00
Ronald S. Bultje
cb72b0e33e ext/ogg/gstoggdemux.c: Handle files with missing EOS headers.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_iterate):
Handle files with missing EOS headers.
2004-10-22 11:11:28 +00:00
Zaheer Abbas Merali
0aca8191cb gst/tcp/gsttcpserversink.c: Zero some variables first (need for accept not to return EINVAL)
Original commit message from CVS:
2004-10-21  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

* gst/tcp/gsttcpserversink.c:
(gst_tcpserversink_handle_server_read),
(gst_tcpserversink_init_send):
Zero some variables first (need for accept not to return EINVAL)
2004-10-21 10:53:20 +00:00
Wim Taymans
f055361637 I lied, I am the One True Buildmaster
Original commit message from CVS:
I lied, I am the One True Buildmaster
2004-10-20 16:48:57 +00:00
Ronald S. Bultje
001d4b9638 ext/: Seeking and querying finetune.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_src_query),
(gst_ogg_demux_src_event), (gst_ogg_pad_push):
* ext/theora/theoradec.c: (theora_dec_sink_convert),
(theora_dec_chain):
* ext/vorbis/vorbisdec.c: (vorbis_dec_get_formats),
(gst_vorbis_dec_init), (vorbis_dec_convert), (vorbis_dec_chain):
Seeking and querying finetune.
2004-10-20 16:24:18 +00:00
Thomas Vander Stichele
a4d5bde1dd fix the build
Original commit message from CVS:
fix the build
2004-10-20 13:51:27 +00:00
Ronald S. Bultje
6330ec5a58 ext/ogg/gstoggdemux.c: Wrong return.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_iterate):
Wrong return.
* gst/playback/Makefile.am:
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init):
* gst/playback/gstplay-marshal.list:
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init):
Fix marshallers.
2004-10-20 12:02:19 +00:00
Ronald S. Bultje
7fce9426a2 ext/ogg/gstoggdemux.c: Silence.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_src_event):
Silence.
2004-10-18 19:29:11 +00:00
Ronald S. Bultje
05b6b97538 ext/ogg/gstoggdemux.c: Yay for non-lineair granulepos in theora.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_src_query),
(gst_ogg_demux_src_event), (gst_ogg_pad_populate),
(gst_ogg_pad_push):
Yay for non-lineair granulepos in theora.
2004-10-18 19:12:32 +00:00
Wim Taymans
cda34e6a8d ext/dv/gstdvdec.*: Make sure we renegotiate aspect ratio when the camera switches.
Original commit message from CVS:
* ext/dv/gstdvdec.c: (gst_dvdec_init), (gst_dvdec_video_getcaps),
(gst_dvdec_video_link), (gst_dvdec_push), (gst_dvdec_loop):
* ext/dv/gstdvdec.h:
Make sure we renegotiate aspect ratio when the camera switches.
2004-10-18 17:49:09 +00:00
Ronald S. Bultje
cf398c5fad ext/ogg/gstoggdemux.c: Start at zero.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_src_query),
(gst_ogg_demux_src_event), (gst_ogg_pad_push):
Start at zero.
* ext/theora/theoradec.c: (theora_dec_chain):
Skip headers. Bad idea for chained ogg, but fixes seeking.
2004-10-18 15:49:00 +00:00
Wim Taymans
5aff377805 configure.ac: I swear, this is the last time I touch this.
Original commit message from CVS:
* configure.ac:
I swear, this is the last time I touch this.
2004-10-18 15:37:57 +00:00
Ronald S. Bultje
07f20e09e8 ext/ogg/gstoggdemux.c: Faster seeking.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_src_query),
(gst_ogg_demux_src_event), (gst_ogg_pad_populate),
(_read_bos_process), (gst_ogg_demux_iterate), (gst_ogg_pad_new):
Faster seeking.
* ext/theora/theoradec.c: (theora_dec_sink_convert):
Time-to-default conversion.
* ext/vorbis/vorbisdec.c: (vorbis_dec_chain):
Don't error on unknown packets, just skip. We should probably
read them if we want to support chained ogg.
2004-10-18 15:23:41 +00:00
Wim Taymans
9e9fdc81c9 configure.ac: Added cdaudio to wrong list.
Original commit message from CVS:
* configure.ac:
Added cdaudio to wrong list.
2004-10-18 15:18:18 +00:00
Wim Taymans
2e844fccc0 configure.ac: Revive cdaudio.
Original commit message from CVS:
* configure.ac:
Revive cdaudio.
2004-10-18 14:20:10 +00:00
Wim Taymans
b464238497 ext/: Fix mimetype on smoke encoder.
Original commit message from CVS:
* ext/dv/gstdvdec.c: (gst_dvdec_video_getcaps),
(gst_dvdec_video_link), (gst_dvdec_push):
* ext/jpeg/gstsmokeenc.c: (gst_smokeenc_class_init),
(gst_smokeenc_resync), (gst_smokeenc_chain):
Fix mimetype on smoke encoder.
Add aspect ratio to dvdec. Not sure if these
values are correct though....
2004-10-18 14:02:51 +00:00
Wim Taymans
85f417a19a ext/vorbis/vorbisenc.c: Fix vorbis property descriptions and ranges.
Original commit message from CVS:
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_class_init):
Fix vorbis property descriptions and ranges.
2004-10-18 13:55:47 +00:00
Wim Taymans
c1da22dd4e ext/ogg/gstoggdemux.c: Really do nothing when no data is available.
Original commit message from CVS:
* ext/ogg/gstoggdemux.c: (gst_ogg_demux_iterate):
Really do nothing when no data is available.
Go to the playing state when the stream is not seekable
instead of failing.
2004-10-18 13:52:15 +00:00
Wim Taymans
d4eb6d40a9 ext/cdaudio/gstcdaudio.c: Added uri handler for cd://
Original commit message from CVS:
* ext/cdaudio/gstcdaudio.c: (_do_init), (gst_cdaudio_base_init),
(gst_cdaudio_get_event_masks), (gst_cdaudio_send_event),
(gst_cdaudio_query), (plugin_init), (cdaudio_uri_get_type),
(cdaudio_uri_get_protocols), (cdaudio_uri_get_uri),
(cdaudio_uri_set_uri), (cdaudio_uri_handler_init):
Added uri handler for cd://
Port to new API.
2004-10-18 13:45:12 +00:00
Wim Taymans
96502fb6c0 gst/playback/: Add sink padtemplate to decodebin.
Original commit message from CVS:
* gst/playback/gstdecodebin.c: (gst_decode_bin_class_init),
(gst_decode_bin_init), (find_compatibles), (close_pad_link),
(try_to_link_1), (no_more_pads), (close_link), (type_found):
* gst/playback/gstplaybasebin.c: (gen_preroll_element),
(remove_prerolls), (unknown_type), (add_element_stream),
(new_decoded_pad), (setup_source), (gst_play_base_bin_add_element),
(gst_play_base_bin_remove_element),
(gst_play_base_bin_link_stream):
* gst/playback/gstplaybin.c: (gen_video_element),
(gen_vis_element), (remove_sinks), (setup_sinks):
* gst/playback/gststreaminfo.c: (gst_stream_type_get_type),
(gst_stream_info_get_type), (gst_stream_info_class_init),
(gst_stream_info_init), (gst_stream_info_new),
(gst_stream_info_dispose), (stream_info_mute_pad),
(gst_stream_info_set_property), (gst_stream_info_get_property):
* gst/playback/gststreaminfo.h:
Add sink padtemplate to decodebin.
Added some more comments.
Make queue size configurable in playbasebin.
Added possibility to use elements as sinks (ex cdaudio).
2004-10-18 13:40:48 +00:00
Wim Taymans
a98a98b5f3 ext/speex/gstspeexenc.c: Fix speex timestamps so that it gets muxed properly.
Original commit message from CVS:
* ext/speex/gstspeexenc.c: (gst_speexenc_class_init),
(gst_speexenc_chain):
Fix speex timestamps so that it gets muxed properly.
2004-10-18 10:57:45 +00:00
Wim Taymans
fe83f4c817 ext/raw1394/gstdv1394src.*: Added conversion/query functions.
Original commit message from CVS:
* ext/raw1394/gstdv1394src.c: (gst_dv1394src_get_type),
(gst_dv1394src_base_init), (gst_dv1394src_class_init),
(gst_dv1394src_init), (gst_dv1394src_dispose),
(gst_dv1394src_iso_receive), (gst_dv1394src_discover_avc_node),
(gst_dv1394src_change_state), (gst_dv1394src_get_event_mask),
(gst_dv1394src_event), (gst_dv1394src_get_formats),
(gst_dv1394src_convert), (gst_dv1394src_get_query_types),
(gst_dv1394src_query), (gst_dv1394src_uri_get_type),
(gst_dv1394src_uri_get_protocols), (gst_dv1394src_uri_get_uri),
(gst_dv1394src_uri_set_uri), (gst_dv1394src_uri_handler_init):
* ext/raw1394/gstdv1394src.h:
Added conversion/query functions.
Update buffer timestamps,
Added signals.
Added uri dv:// so it might play from the firewire in playbin.
Fix a possible leak.
Added debugging.
2004-10-15 14:35:54 +00:00
Wim Taymans
987cc3cfa0 ext/raw1394/gstdv1394src.*: Added AV/C VTR control support needed for some cameras.
Original commit message from CVS:
* ext/raw1394/gstdv1394src.c: (gst_dv1394src_class_init),
(gst_dv1394src_init), (gst_dv1394src_set_property),
(gst_dv1394src_get_property), (gst_dv1394src_iso_receive),
(gst_dv1394src_discover_avc_node), (gst_dv1394src_change_state):
* ext/raw1394/gstdv1394src.h:
Added AV/C VTR control support needed for some cameras.
Added automatic port detection.
Added properties for selecting the channel.
The configure.ac script is not yet updated to reflect the
new libavc1394 and librom1394 dependencies.
2004-10-15 09:59:01 +00:00
Wim Taymans
df4615ea20 gst/qtdemux/qtdemux.c: An esds box is not a container.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header),
(qtdemux_parse), (gst_qtdemux_handle_esds):
An esds box is not a container.
Fix parsing of mp4v boxes.
Do not try to renegotiate fps for each frame. Need to
find a better method. This should fix mp4 playback.
2004-10-15 09:19:37 +00:00
David Schleef
cc9a17b757 configure.ac: update for swfdec-0.3 and liboil-0.2
Original commit message from CVS:
* configure.ac: update for swfdec-0.3 and liboil-0.2
* ext/swfdec/gstswfdec.c: update for swfdec-0.3
* ext/swfdec/gstswfdec.h: same
* gst/videofilter/gstvideobalance.c: update for liboil-0.2
* gst/videotestsrc/videotestsrc.c: same
2004-10-14 23:19:58 +00:00
Wim Taymans
d4ef0029a6 gst/tcp/gstmultifdsink.c: Turn warnings into info.
Original commit message from CVS:
* gst/tcp/gstmultifdsink.c: (gst_multifdsink_add),
(gst_multifdsink_remove), (gst_multifdsink_remove_client_link),
(is_sync_frame), (gst_multifdsink_new_client),
(gst_multifdsink_handle_client_write),
(gst_multifdsink_recover_client), (gst_multifdsink_queue_buffer),
(gst_multifdsink_handle_clients), (gst_multifdsink_change_state):
Turn warnings into info.
Don't allow a state change in the streaming thread.
2004-10-14 11:28:20 +00:00
Thomas Vander Stichele
3d6c427f6d fix sample rate template
Original commit message from CVS:
fix sample rate template
2004-10-14 09:16:32 +00:00
Wim Taymans
3cb31e9abc ext/mad/gstmad.c: Decoding the header first fixes some problems in resyncing in more mp3s.
Original commit message from CVS:
* ext/mad/gstmad.c: (gst_mad_check_caps_reset), (gst_mad_chain):
Decoding the header first fixes some problems in resyncing
in more mp3s.
2004-10-13 14:21:01 +00:00