Commit graph

387 commits

Author SHA1 Message Date
Ronald S. Bultje
e71c5eb038 Some work on tags - still doesn't work in playbin...
Original commit message from CVS:
* ext/musepack/gstmusepackreader.cpp:
* gst/apetag/apedemux.c: (gst_ape_demux_stream_data):
Some work on tags - still doesn't work in playbin...
* gst/audioscale/gstaudioscale.c: (gst_audioscale_chain):
Handle events...
2005-01-10 16:42:26 +00:00
Ronald S. Bultje
c246ab4641 gst/qtdemux/qtdemux.c: Also shove tags on kid pads.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_tree):
Also shove tags on kid pads.
2005-01-10 16:24:14 +00:00
Ronald S. Bultje
d1ba429d91 gst/qtdemux/qtdemux.c: Fix warning (#161191).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_sink_event):
Fix warning (#161191).
2005-01-09 20:51:18 +00:00
Ronald S. Bultje
fd8b04a8e7 gst/tta/gstttaparse.c: Fix gcc-2.95 compile (#163485).
Original commit message from CVS:
Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* gst/tta/gstttaparse.c: (gst_tta_src_event):
Fix gcc-2.95 compile (#163485).
2005-01-09 20:08:45 +00:00
Benjamin Otte
d94ba1f15a gst/games/gstpuzzle.c: - handle nav events differently: forward every event no matter if it was handled or not.
Original commit message from CVS:
* gst/games/gstpuzzle.c: (nav_event_handler):
- handle nav events differently: forward every event no matter if it
was handled or not.
- translate events
You can now cheat by using navigationtest ! puzzle and moving the
mouse close to the edge of a tile. ;)
2005-01-08 18:27:07 +00:00
Benjamin Otte
33a8594b55 gst/games/gstpuzzle.c: don't draw a puzzle if either width or height of tiles would be 0.
Original commit message from CVS:
* gst/games/gstpuzzle.c: (draw_puzzle):
don't draw a puzzle if either width or height of tiles would be 0.
2005-01-06 20:19:04 +00:00
Benjamin Otte
5bddeb9d5b gst/games/gstpuzzle.c: no memleaks, please change initialization code around so we don't reshuffle on resize fix anot...
Original commit message from CVS:
* gst/games/gstpuzzle.c: (gst_puzzle_get_type),
(gst_puzzle_class_init), (gst_puzzle_finalize):
no memleaks, please
(gst_puzzle_create), (gst_puzzle_init),
(gst_puzzle_set_property), (gst_puzzle_setup):
change initialization code around so we don't reshuffle on resize
(draw_puzzle):
fix another stupid typo
2005-01-06 18:44:08 +00:00
Benjamin Otte
37f6d73af6 gst/games/gstvideoimage.c: fix stupid typo that borked copying on YUY2
Original commit message from CVS:
* gst/games/gstvideoimage.c: (copy_hline_YUY2):
fix stupid typo that borked copying on YUY2
2005-01-06 18:17:35 +00:00
Benjamin Otte
2ed845fcad gst/games/gstpuzzle.c: fix edges when image sizes aren't multiples of tile sizes
Original commit message from CVS:
* gst/games/gstpuzzle.c: (draw_puzzle):
fix edges when image sizes aren't multiples of tile sizes
2005-01-06 16:37:30 +00:00
Benjamin Otte
6a0908113e gst/games/gstpuzzle.c: make RGB endianness work correctly refactor and fix race with initial shuffling allow using th...
Original commit message from CVS:
* gst/games/gstpuzzle.c: (gst_puzzle_base_init):
make RGB endianness work correctly
(gst_puzzle_show), (gst_puzzle_swap), (gst_puzzle_move):
refactor and fix race with initial shuffling
(nav_event_handler):
allow using the mouse to puzzle
(draw_puzzle):
insist on tiles having width and height as multiples of 4 to get
clean YUV image handling
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xvimage_new),
(gst_xvimagesink_handle_xevents), (gst_xvimagesink_buffer_alloc):
s/DEBUG/LOG/ for common messages
(gst_xvimagesink_navigation_send_event):
fix mouse event translation to not include screen PAR
* sys/ximage/ximagesink.c: (gst_ximagesink_navigation_send_event):
fix mouse event translation to actually work
2005-01-06 16:08:11 +00:00
Stéphane Loeuillet
c9832b6d74 gst/asfdemux/gstasfdemux.c: Extract TrackNumber metadata + clean up code
Original commit message from CVS:
* gst/asfdemux/gstasfdemux.c:
(gst_asf_demux_process_ext_content_desc):
Extract TrackNumber metadata + clean up code

* gst/games/gstvideoimage.c: (gst_video_image_draw_rectangle):
Hope this is the good fix (var used unitialised)
2005-01-06 12:41:13 +00:00
Benjamin Otte
5e19f0229d add a puzzle game with...
Original commit message from CVS:
* configure.ac:
* gst/games/Makefile.am:
* gst/games/gstpuzzle.c:
add a puzzle game with...
* gst/games/gstvideoimage.c:
* gst/games/gstvideoimage.h:
... full colorspace support (that includes YUV9 and RGB16)) stolen
from videotestsrc and made into something that would be a nice
library for a lot of other plugins.
2005-01-06 06:48:01 +00:00
Ronald S. Bultje
2878450876 examples/gstplay/player.c: Don't iterate.
Original commit message from CVS:
* examples/gstplay/player.c: (main):
Don't iterate.
* examples/seeking/seek.c: (fixate), (make_playerbin_pipeline):
Add visualizations.
* ext/a52dec/gsta52dec.c: (gst_a52dec_push),
(gst_a52dec_handle_frame):
Set duration.
* ext/dvdnav/gst-dvd:
Add audioconvert. Fixes #161325.
* ext/dvdread/dvdreadsrc.c: (dvdreadsrc_get):
Explicitely case to gint64. Possible valgrind error.
* gst-libs/gst/play/play.c: (caps_set), (setup_size),
(gst_play_tick_callback), (gst_play_change_state),
(gst_play_dispose), (gst_play_init), (gst_play_class_init),
(gst_play_set_location), (gst_play_get_location),
(gst_play_seek_to_time), (gst_play_set_data_src),
(gst_play_set_video_sink), (gst_play_set_audio_sink),
(gst_play_set_visualization), (gst_play_connect_visualization),
(gst_play_get_framerate), (gst_play_get_all_by_interface),
(gst_play_new):
Use playbin. Fixes #139749 and #147744.
* gst/apetag/apedemux.c: (gst_ape_demux_parse_tags):
Add genre tag.
* gst/audioscale/gstaudioscale.c: (gst_audioscale_method_get_type),
(audioscale_get_type), (gst_audioscale_base_init),
(gst_audioscale_class_init), (gst_audioscale_expand_caps),
(gst_audioscale_getcaps), (gst_audioscale_fixate),
(gst_audioscale_link), (gst_audioscale_get_buffer),
(gst_audioscale_decrease_rate), (gst_audioscale_increase_rate),
(gst_audioscale_init), (gst_audioscale_dispose),
(gst_audioscale_chain), (gst_audioscale_set_property),
(gst_audioscale_get_property), (plugin_init):
Indent properly.
* gst/mpegstream/gstdvddemux.c: (gst_dvd_demux_process_private):
Fix LPCM.
* gst/qtdemux/qtdemux.c: (qtdemux_parse_udta),
(qtdemux_tag_add_str), (qtdemux_tag_add_num),
(qtdemux_tag_add_gnre), (qtdemux_video_caps):
Add more metadata (fixes #162656).
2005-01-05 14:56:27 +00:00
Ronald S. Bultje
7081dd936f gst/: Add 3GP (variables name Q3GP because they can't start with a decoder is work in progress. Also do a GST_WARNING...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_type_get), (qtdemux_audio_caps):
* gst/typefind/gsttypefindfunctions.c: (q3gp_type_find),
(plugin_init):
Add 3GP (variables name Q3GP because they can't start with a
number). Add samr audio fourcc (used in .3gp files), decoder
is work in progress. Also do a GST_WARNING instead of ERROR
in case of unknown nodes, to decrease output.
2004-12-24 12:58:17 +00:00
David Schleef
b25b66b9a8 gst/tta/gstttadec.c: And yet another portability fix.
Original commit message from CVS:
* gst/tta/gstttadec.c: (gst_tta_dec_link): And yet another
portability fix.
2004-12-19 03:51:12 +00:00
David Schleef
231c16577e gst/tta/ttadec.h: Disable some header code that isn't used and clearly isn't portable.
Original commit message from CVS:
* gst/tta/ttadec.h: Disable some header code that isn't used
and clearly isn't portable.
2004-12-19 03:47:48 +00:00
Ronald S. Bultje
143e26e9ea gst/deinterlace/gstdeinterlace.c: Rowstride fixes. Fixes #161039.
Original commit message from CVS:
Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* gst/deinterlace/gstdeinterlace.c: (gst_deinterlace_link),
(gst_deinterlace_chain):
Rowstride fixes. Fixes #161039.
* gst/videocrop/gstvideocrop.c: (gst_video_crop_init),
(gst_video_crop_get_property), (gst_video_crop_add_to_struct_val),
(gst_video_crop_getcaps), (gst_video_crop_link),
(gst_video_crop_i420), (gst_video_crop_chain),
(gst_video_crop_change_state):
Rework of negotiation. Actually works now. Fixes #158650.
2004-12-18 23:43:47 +00:00
Ronald S. Bultje
9663158bfa ext/musepack/gstmusepackdec.cpp: Fetch error return values. Fixes #161624.
Original commit message from CVS:
* ext/musepack/gstmusepackdec.cpp:
Fetch error return values. Fixes #161624.
* gst/apetag/apedemux.c: (gst_ape_demux_stream_data):
Really EOS.
2004-12-18 21:56:46 +00:00
David Schleef
b30b813a35 gst/festival/gstfestival.c: Set the output rate to 16000. Should fix #160235.
Original commit message from CVS:
* gst/festival/gstfestival.c: (gst_festival_chain): Set the
output rate to 16000.  Should fix #160235.
2004-12-15 03:59:26 +00:00
Stéphane Loeuillet
82ccc32e94 add s263 4CC code to qtdemux too
Original commit message from CVS:
add s263 4CC code to qtdemux too
2004-12-13 00:54:14 +00:00
Arwed v. Merkatz
db9e3b6d92 set correct buffer durations in mp3parse, set default_duration in matroskamux for mpeg1 audio
Original commit message from CVS:
set correct buffer durations in mp3parse, set default_duration in matroskamux for mpeg1 audio
2004-12-06 19:32:33 +00:00
Ronald S. Bultje
0c3cca89fc gst/apetag/apedemux.c: Forward tags, too.
Original commit message from CVS:
* gst/apetag/apedemux.c: (gst_ape_demux_parse_tags),
(gst_ape_demux_stream_init):
Forward tags, too.
2004-12-04 12:05:34 +00:00
Ronald S. Bultje
4f3815cb3a gst/apetag/apedemux.c: Let's make sure we're done typefinding when detecting tags.
Original commit message from CVS:
* gst/apetag/apedemux.c: (gst_ape_demux_stream_init):
Let's make sure we're done typefinding when detecting tags.
2004-12-04 11:44:47 +00:00
Arwed v. Merkatz
aeb09d35ab added TTA parser and decoder
Original commit message from CVS:
added TTA parser and decoder
2004-11-26 23:10:28 +00:00
Ronald S. Bultje
a9434b9d75 APE v1/2 tag reader plus typefind function.
Original commit message from CVS:
* configure.ac:
* gst/apetag/Makefile.am:
* gst/apetag/apedemux.c: (gst_ape_demux_get_type),
(gst_ape_demux_base_init), (gst_ape_demux_class_init),
(gst_ape_demux_init), (gst_ape_demux_get_src_formats),
(gst_ape_demux_get_src_query_types),
(gst_ape_demux_handle_src_query), (gst_ape_demux_get_event_mask),
(gst_ape_demux_handle_src_event), (gst_ape_demux_handle_event),
(gst_ape_demux_typefind_peek), (gst_ape_demux_typefind_get_length),
(gst_ape_demux_typefind_suggest), (gst_ape_demux_typefind),
(gst_ape_demux_parse_tags), (gst_ape_demux_stream_init),
(gst_ape_demux_stream_data), (gst_ape_demux_loop),
(gst_ape_demux_change_state):
* gst/apetag/apedemux.h:
* gst/apetag/apetag.c: (plugin_init):
* gst/typefind/gsttypefindfunctions.c: (apetag_type_find),
(plugin_init):
APE v1/2 tag reader plus typefind function.
2004-11-25 20:14:32 +00:00
Ronald S. Bultje
97aeaa8eb0 gst/cdxaparse/: SVCD/VCD header stripping separated from CDXA image parsing.
Original commit message from CVS:
* gst/cdxaparse/Makefile.am:
* gst/cdxaparse/gstcdxaparse.c: (gst_cdxaparse_get_type),
(gst_cdxaparse_class_init), (gst_cdxaparse_init),
(gst_cdxaparse_loop), (gst_cdxaparse_change_state), (plugin_init):
* gst/cdxaparse/gstcdxaparse.h:
* gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_get_type),
(gst_cdxastrip_base_init), (gst_cdxastrip_class_init),
(gst_cdxastrip_init), (gst_cdxastrip_get_src_formats),
(gst_cdxastrip_get_src_query_types),
(gst_cdxastrip_handle_src_query), (gst_cdxastrip_get_event_mask),
(gst_cdxastrip_handle_src_event), (gst_cdxastrip_strip),
(gst_cdxastrip_sync), (gst_cdxastrip_handle_event),
(gst_cdxastrip_chain), (gst_cdxastrip_change_state):
* gst/cdxaparse/gstcdxastrip.h:
SVCD/VCD header stripping separated from CDXA image parsing.
* gst/typefind/gsttypefindfunctions.c: (mp3_type_find),
(plugin_init):
Add VCD/SVCD header typefinding for VCD/SVCD.
* sys/vcd/vcdsrc.c: (gst_vcdsrc_get_type), (gst_vcdsrc_base_init),
(gst_vcdsrc_class_init), (gst_vcdsrc_init),
(gst_vcdsrc_set_property), (gst_vcdsrc_get_property),
(gst_vcdsrc_get_event_mask), (gst_vcdsrc_get_query_types),
(gst_vcdsrc_get_formats), (gst_vcdsrc_srcpad_event),
(gst_vcdsrc_srcpad_query), (gst_vcdsrc_get),
(gst_vcdsrc_open_file), (gst_vcdsrc_close_file),
(gst_vcdsrc_change_state), (gst_vcdsrc_msf),
(gst_vcdsrc_recalculate), (gst_vcdsrc_uri_get_type),
(gst_vcdsrc_uri_get_protocols), (gst_vcdsrc_uri_get_uri),
(gst_vcdsrc_uri_set_uri), (gst_vcdsrc_uri_handler_init):
* sys/vcd/vcdsrc.h:
Fix up, add seeking, querying, URI interface. Works in totem now.
2004-11-25 20:03:51 +00:00
Jan Schmidt
352cb6fef9 Update libvisual to 0.1.7. Link in the debug handling to gstreamer
Original commit message from CVS:
* configure.ac:
* ext/libvisual/visual.c: (gst_visual_get_type),
(libvisual_log_handler), (gst_visual_getcaps),
(gst_visual_srclink), (gst_visual_change_state), (make_valid_name),
(plugin_init):
Update libvisual to 0.1.7. Link in the debug handling to gstreamer
* ext/smoothwave/Makefile.am:
* ext/smoothwave/demo-osssrc.c: (main):
* ext/smoothwave/gstsmoothwave.c: (gst_smoothwave_class_init),
(gst_smoothwave_init), (gst_smoothwave_dispose), (gst_sw_sinklink),
(gst_sw_srclink), (gst_smoothwave_chain), (gst_sw_change_state),
(plugin_init):
* ext/smoothwave/gstsmoothwave.h:
Make gstsmoothwave a working element in the 20th century.
* gst/chart/gstchart.c: (gst_chart_init), (gst_chart_srcconnect):
Fix incorrect link function
2004-11-12 17:37:49 +00:00
David Schleef
57b8d0d698 gst/qtdemux/qtdemux.c: Change all g_print()s to debugging. Add a bunch of consistency checks.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header),
(gst_qtdemux_add_stream), (qtdemux_parse), (qtdemux_parse_tree),
(qtdemux_parse_udta), (qtdemux_tag_add), (gst_qtdemux_handle_esds):
Change all g_print()s to debugging.  Add a bunch of consistency
checks.
2004-11-02 23:50:15 +00:00
Jan Schmidt
172eaade07 Fixes a bunch of problems with finalize and dispose functions, either assumptions that dispose is only called once, o...
Original commit message from CVS:
* ext/alsa/gstalsa.c: (gst_alsa_class_init), (gst_alsa_dispose),
(gst_alsa_finalize):
* ext/cdaudio/gstcdaudio.c: (gst_cdaudio_class_init),
(gst_cdaudio_finalize):
* ext/cdparanoia/gstcdparanoia.c: (cdparanoia_class_init),
(cdparanoia_finalize):
* ext/divx/gstdivxdec.c: (gst_divxdec_dispose):
* ext/divx/gstdivxenc.c: (gst_divxenc_dispose):
* ext/dvdread/dvdreadsrc.c: (dvdreadsrc_class_init),
(dvdreadsrc_finalize):
* ext/flac/gstflacdec.c: (gst_flacdec_class_init),
(gst_flacdec_finalize):
* ext/flac/gstflacenc.c: (gst_flacenc_class_init),
(gst_flacenc_finalize):
* ext/gnomevfs/gstgnomevfssink.c: (gst_gnomevfssink_class_init),
(gst_gnomevfssink_finalize):
* ext/gnomevfs/gstgnomevfssrc.c: (gst_gnomevfssrc_class_init),
(gst_gnomevfssrc_finalize):
* ext/libfame/gstlibfame.c: (gst_fameenc_class_init),
(gst_fameenc_finalize):
* ext/nas/nassink.c: (gst_nassink_class_init),
(gst_nassink_finalize):
* ext/sdl/sdlvideosink.c: (gst_sdlvideosink_finalize),
(gst_sdlvideosink_class_init):
* ext/sndfile/gstsf.c: (gst_sf_dispose):
* gst-libs/gst/mixer/mixertrack.c: (gst_mixer_track_dispose):
* gst-libs/gst/tuner/tunerchannel.c: (gst_tuner_channel_dispose):
* gst-libs/gst/tuner/tunernorm.c: (gst_tuner_norm_dispose):
* gst-libs/gst/xwindowlistener/xwindowlistener.c:
(gst_x_window_listener_dispose):
* gst/audioscale/gstaudioscale.c:
* gst/playondemand/gstplayondemand.c: (play_on_demand_class_init),
(play_on_demand_finalize):
* gst/videofilter/gstvideobalance.c: (gst_videobalance_dispose):
* gst/videoscale/gstvideoscale.c: (gst_videoscale_chain):
* sys/cdrom/gstcdplayer.c: (cdplayer_class_init),
(cdplayer_finalize):
* sys/glsink/glimagesink.c: (gst_glimagesink_finalize),
(gst_glimagesink_class_init):
* sys/oss/gstosselement.c: (gst_osselement_class_init),
(gst_osselement_finalize):
* sys/oss/gstosssink.c: (gst_osssink_dispose):
* sys/oss/gstosssrc.c: (gst_osssrc_dispose):
* sys/v4l/gstv4lelement.c: (gst_v4lelement_dispose):
Fixes a bunch of problems with finalize and dispose functions,
either assumptions that dispose is only called once, or not calling
the parent class dispose/finalize function
2004-11-01 14:43:38 +00:00
Benjamin Otte
9f6a8d8654 gst-libs/gst/audio/gstaudiofilter.c: fix link function to always query channels and query width for floats
Original commit message from CVS:
* gst-libs/gst/audio/gstaudiofilter.c: (gst_audiofilter_link):
fix link function to always query channels and query width for
floats
* configure.ac:
add equalizer dir
* gst/equalizer/Makefile.am:
* gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_get_type),
(gst_iir_equalizer_base_init), (gst_iir_equalizer_class_init),
(gst_iir_equalizer_init), (gst_iir_equalizer_finalize),
(arg_to_scale), (setup_filter),
(gst_iir_equalizer_compute_frequencies),
(gst_iir_equalizer_set_property), (gst_iir_equalizer_get_property),
(gst_iir_equalizer_filter_inplace), (gst_iir_equalizer_setup),
(plugin_init):
add an equalizer
2004-10-28 02:33:48 +00:00
Benjamin Otte
75eed41545 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
Wim Taymans
9b6e65d537 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
Wim Taymans
a18ff866aa gst/flx/gstflxdec.c: Actually _do_ negotiation. Pass gdouble as arg instead of guint64 for the framerate.
Original commit message from CVS:
* gst/flx/gstflxdec.c: (gst_flxdec_init), (gst_flxdec_loop):
Actually _do_ negotiation. Pass gdouble as arg instead
of guint64 for the framerate.
2004-10-06 13:56:07 +00:00
Ronald S. Bultje
da9c830916 gst-libs/gst/riff/riff-media.c: Add DIB fourcc (raw, palettized 8-bit RGB).
Original commit message from CVS:
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_video_caps_with_data),
(gst_riff_create_video_template_caps):
Add DIB fourcc (raw, palettized 8-bit RGB).
* gst-libs/gst/riff/riff-read.c:
(gst_riff_read_strf_vids_with_data):
Oops, fix strf_data reading bug.
* gst/avi/gstavidemux.c: (gst_avi_demux_add_stream):
Use a non-NULL tag.
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak):
Time for hacks. Sorry Dave. At least one quicktime movie (a
trailer) that I've encountered contains multiple video tracks.
One of those is the actual video track, the other are one-frame
tracks (images). Unfortunately, the number of frames according
to the trak header is 1 for each, so that doesn't help. So
instead, I look at the duration and discard tracks with a
duration shorter than 20% of the length of the stream. Better
than nothing.
2004-10-02 14:10:19 +00:00
Ronald S. Bultje
2b6b70f42c ext/flac/gstflacdec.c: Only return true if we actually filled something in. Prevents player applications from showing...
Original commit message from CVS:
* ext/flac/gstflacdec.c: (gst_flacdec_src_query):
Only return true if we actually filled something in. Prevents
player applications from showing a random length for flac files.
* gst-libs/gst/riff/riff-read.c: (gst_riff_read_class_init),
(gst_riff_read_use_event), (gst_riff_read_handle_event),
(gst_riff_read_seek), (gst_riff_read_skip), (gst_riff_read_strh),
(gst_riff_read_strf_vids_with_data),
(gst_riff_read_strf_auds_with_data), (gst_riff_read_strf_iavs):
OK, ok, so I implemented event handling. Apparently it's normal
that we receive random events at random points without asking
for it.
* gst/avi/gstavidemux.c: (gst_avi_demux_reset),
(gst_avi_demux_src_convert), (gst_avi_demux_handle_src_query),
(gst_avi_demux_handle_src_event), (gst_avi_demux_stream_index),
(gst_avi_demux_sync), (gst_avi_demux_stream_scan),
(gst_avi_demux_massage_index), (gst_avi_demux_stream_header),
(gst_avi_demux_handle_seek), (gst_avi_demux_process_next_entry),
(gst_avi_demux_stream_data), (gst_avi_demux_loop):
* gst/avi/gstavidemux.h:
Implement non-lineair chunk handling and subchunk processing.
The first solves playback of AVI files where the audio and video
data of individual buffers that we read are not synchronized.
This should not happen according to the wonderful AVI specs, but
of course it does happen in reality. It is also a prerequisite for
the second. Subchunk processing allows us to cut chunks in small
pieces and process each of these pieces separately. This is
required because I've seen several AVI files with incredibly large
audio chunks, even some files with only one audio chunk for the
whole file. This allows for proper playback including seeking.
This patch is supposed to fix all AVI A/V sync issues.
* gst/flx/gstflxdec.c: (gst_flxdec_class_init),
(flx_decode_chunks), (flx_decode_color), (gst_flxdec_loop):
Work.
* gst/modplug/gstmodplug.cc:
Proper return value setting for the query() function.
* gst/playback/gstplaybasebin.c: (setup_source):
Being in non-playing state (after, e.g., EOS) is not necessarily
a bad thing. Allow for that. This fixes playback of short files.
They don't actually playback fully now, because the clock already
runs. This means that small files (<500kB) with a small length
(<2sec) will still not or barely play. Other files, such as mod
or flx, will work correctly, however.
2004-09-29 09:45:40 +00:00
Ronald S. Bultje
0771c17fed ext/dirac/: Do something. Don't actually know if this works because I don't have a demuxer yet.
Original commit message from CVS:
* ext/dirac/Makefile.am:
* ext/dirac/gstdirac.cc:
* ext/dirac/gstdiracdec.cc:
* ext/dirac/gstdiracdec.h:
Do something. Don't actually know if this works because I don't
have a demuxer yet.
* ext/gsm/gstgsmdec.c: (gst_gsmdec_getcaps):
Add channels=1 to caps returned from _getcaps().
* ext/ogg/gstogmparse.c: (gst_ogm_audio_parse_get_type),
(gst_ogm_video_parse_get_type), (gst_ogm_audio_parse_base_init),
(gst_ogm_video_parse_base_init), (gst_ogm_parse_init),
(gst_ogm_audio_parse_init), (gst_ogm_video_parse_init),
(gst_ogm_parse_sink_convert), (gst_ogm_parse_chain),
(gst_ogm_parse_change_state):
Separate between audio/video so ogmaudioparse actually uses the
audio pad templates. Both audio and video work now, including
autoplugging. Also use sometimes-srcpad hack.
* gst-libs/gst/riff/riff-read.c: (gst_riff_read_seek):
Handle events better. Don't hang on infinite loops.
* gst/avi/gstavidemux.c: (gst_avi_demux_class_init),
(gst_avi_demux_init), (gst_avi_demux_reset),
(gst_avi_demux_src_convert), (gst_avi_demux_handle_src_query),
(gst_avi_demux_stream_header), (gst_avi_demux_stream_data),
(gst_avi_demux_change_state):
* gst/avi/gstavidemux.h:
Improve A/V sync. Still not perfect.
* gst/matroska/ebml-read.c: (gst_ebml_read_seek),
(gst_ebml_read_skip):
Handle events better.
* gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_sink_event),
(gst_qtdemux_loop_header), (qtdemux_parse_trak),
(qtdemux_audio_caps):
Add IMA4. Improve event handling. Save offset after a seek when
the headers are at the end of the file so that we don't end up in
an infinite loop.
* gst/typefind/gsttypefindfunctions.c: (qt_type_find):
Add low-priority typefind support for files with no length.
2004-09-23 14:59:22 +00:00
Zaheer Abbas Merali
245fb79909 ext/: remove explicit newmedia support from oggmux and vorbisenc add debug category to vorbisenc
Original commit message from CVS:
2004-09-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

* ext/ogg/gstoggmux.c: (gst_ogg_mux_init),
(gst_ogg_mux_next_buffer), (gst_ogg_mux_loop):
* ext/vorbis/vorbis.c: (plugin_init):
* ext/vorbis/vorbisenc.c: (gst_vorbisenc_init),
(gst_vorbisenc_chain):
* ext/vorbis/vorbisenc.h:
remove explicit newmedia support from oggmux and vorbisenc
add debug category to vorbisenc
* gst/multifilesink/gstmultifilesink.c:
(gst_multifilesink_class_init), (gst_multifilesink_init),
(gst_multifilesink_dispose), (gst_multifilesink_set_location),
(gst_multifilesink_set_property), (gst_multifilesink_next_file),
(gst_multifilesink_handle_event), (gst_multifilesink_chain),
(plugin_init):
* gst/multifilesink/gstmultifilesink.h:
add support for streamheader in multifilesink
2004-09-22 14:35:13 +00:00
David Schleef
bbccf23eed configure.ac: remove NASM check, since we don't use it. Update dirac check to 0.4
Original commit message from CVS:
* configure.ac: remove NASM check, since we don't use it.  Update
dirac check to 0.4
* ext/dirac/gstdiracdec.cc: update to current 0.4 API
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_link):
Initialized variables.
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state),
(gst_qtdemux_loop_header), (qtdemux_parse), (qtdemux_parse_trak),
(gst_qtdemux_handle_esds), (qtdemux_audio_caps): Fix seeking, add
SVQ3 format
2004-09-15 19:29:24 +00:00
Ronald S. Bultje
84f449bd4b gst/qtdemux/qtdemux.c: Don't crash by dividing by zero (see sample movie in #126922).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream),
(qtdemux_parse_trak):
Don't crash by dividing by zero (see sample movie in #126922).
2004-09-13 20:13:32 +00:00
Ronald S. Bultje
fe20ee4218 gst/qtdemux/qtdemux.c: Don't touch non-existing data (fixes crash on file in #140147).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_audio_caps):
Don't touch non-existing data (fixes crash on file in #140147).
2004-09-13 19:38:42 +00:00
David Schleef
0d59696171 gst/mpeg1sys/gstmpeg1systemencode.c: Oops, this was correct before.
Original commit message from CVS:
* gst/mpeg1sys/gstmpeg1systemencode.c: Oops, this was correct
before.
2004-08-11 21:42:18 +00:00
David Schleef
b14c2fe0df ext/pango/gsttextoverlay.c: Add copyright block and fix plugin license field
Original commit message from CVS:
* ext/pango/gsttextoverlay.c: Add copyright block and fix plugin
license field
* gst-libs/gst/idct/Makefile.am: Remove mmx/sse code
* gst-libs/gst/video/gstvideosink.c: Change copyright block to
LGPL.
* gst/auparse/gstauparse.c: Fix plugin license field.
* gst/monoscope/gstmonoscope.c: Fix plugin license field.
* gst/mpeg1sys/gstmpeg1systemencode.c: Fix plugin license field.
* gst/rtp/gstrtp.c: Fix plugin license field.
2004-08-11 21:06:48 +00:00
Jan Schmidt
2c2d4de527 ext/dvdnav/README: Update the README to use dvddemux
Original commit message from CVS:
* ext/dvdnav/README:
Update the README to use dvddemux
* ext/gdk_pixbuf/pixbufscale.c: (gst_pixbufscale_getcaps):
Ensure getcaps returns a subset of the template caps
* gst/mpeg2sub/gstmpeg2subt.c: (gst_mpeg2subt_base_init),
(gst_mpeg2subt_init):
Ensure getcaps returns a subset of the template caps
* gst/mpegstream/gstdvddemux.c: (gst_dvd_demux_class_init),
(gst_dvd_demux_init), (gst_dvd_demux_get_video_stream),
(gst_dvd_demux_get_subpicture_stream),
(gst_dvd_demux_send_subbuffer), (gst_dvd_demux_set_cur_subpicture):
* gst/mpegstream/gstdvddemux.h:
Set the explicit caps on the current_video pad before pushing
anything
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_get_video_stream),
(gst_mpeg_demux_get_audio_stream):
Free caps used to gst_pad_set_explicit_caps, which takes a const
GstCaps *
2004-07-28 13:47:59 +00:00
Steve Lhomme
8f041cc752 fix local includes and 64 bits constants
Original commit message from CVS:
fix local includes and 64 bits constants
2004-07-27 21:51:30 +00:00
Steve Lhomme
5012fef332 more working plugins
Original commit message from CVS:
more working plugins
2004-07-27 21:41:30 +00:00
Steve Lhomme
7af92d22f2 rename GStreamer-0.8.lib to libgstreamer.lib
Original commit message from CVS:
rename GStreamer-0.8.lib to libgstreamer.lib
2004-07-27 09:57:33 +00:00
Steve Lhomme
017c7b22b8 avoid problems with math.h, fix release dependancy
Original commit message from CVS:
avoid problems with math.h, fix release dependancy
2004-07-27 09:48:51 +00:00
Steve Lhomme
2efe042ed5 local include fixes
Original commit message from CVS:
local include fixes
Fix some 64 bits constants to be glib friendly
issue for a vararg macro with MSVC
2004-07-26 22:11:21 +00:00
Steve Lhomme
a2a9aa01a4 more plugins supported under windows
Original commit message from CVS:
more plugins supported under windows
2004-07-26 13:20:11 +00:00
Zaheer Abbas Merali
26faa6d555 multifilesink plugin for creating new files every time a new media discontinuity event occurs
Original commit message from CVS:
2004-07-22  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

* configure.ac:
* gst/Makefile.am:
* gst/multifilesink/Makefile.am:
* gst/multifilesink/gstmultifilesink.c:
(gst_multifilesink_get_formats),
(gst_multifilesink_get_query_types), (_do_init),
(gst_multifilesink_base_init), (gst_multifilesink_class_init),
(gst_multifilesink_init), (gst_multifilesink_dispose),
(gst_multifilesink_set_location), (gst_multifilesink_set_property),
(gst_multifilesink_get_property), (gst_multifilesink_open_file),
(gst_multifilesink_close_file), (gst_multifilesink_next_file),
(gst_multifilesink_pad_query), (gst_multifilesink_handle_event),
(gst_multifilesink_chain), (gst_multifilesink_change_state),
(gst_multifilesink_uri_get_type),
(gst_multifilesink_uri_get_protocols),
(gst_multifilesink_uri_get_uri), (gst_multifilesink_uri_set_uri),
(gst_multifilesink_uri_handler_init), (plugin_init):
* gst/multifilesink/gstmultifilesink.h:
* testsuite/Makefile.am:
* testsuite/multifilesink/Makefile.am:
* testsuite/multifilesink/fakesrc_test.c: (gst_newmedia_base_init),
(gst_newmedia_class_init), (gst_newmedia_init),
(gst_newmedia_chain), (gst_newmedia_trigger), (test_format),
(newfile_signal), (test_signal), (main):
multifilesink plugin for creating new files every time a new media
discontinuity event occurs
2004-07-22 17:57:04 +00:00