Commit graph

334 commits

Author SHA1 Message Date
Wim Taymans
227563fe37 gst/qtdemux/qtdemux.c: Use duration as segment stop position if none is explicitly configured.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_perform_seek),
(gst_qtdemux_do_seek), (gst_qtdemux_loop_state_movie),
(gst_qtdemux_loop):
Use duration as segment stop position if none is
explicitly configured.
Also perform EOS when we run past the segment stop.
2006-04-05 08:36:55 +00:00
Wim Taymans
378bcc051d gst/qtdemux/qtdemux.c: More cleanups, added comments.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_go_back),
(gst_qtdemux_perform_seek), (gst_qtdemux_do_seek),
(gst_qtdemux_loop_state_movie), (gst_qtdemux_loop),
(gst_qtdemux_chain), (qtdemux_parse_tree), (qtdemux_parse_trak):
More cleanups, added comments.
Mark discontinuities on outgoing buffers.
Post better errors when something goes wrong.
Handle EOS and segment end properly.
2006-04-04 11:20:58 +00:00
Wim Taymans
075303cf8e gst/qtdemux/qtdemux.*: Handle stss boxes so we can mark and find keyframes.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_init),
(gst_qtdemux_push_event), (gst_qtdemux_go_back),
(gst_qtdemux_perform_seek), (gst_qtdemux_do_seek),
(gst_qtdemux_handle_src_event), (plugin_init),
(gst_qtdemux_change_state), (gst_qtdemux_loop_state_movie),
(gst_qtdemux_loop), (gst_qtdemux_chain),
(qtdemux_sink_activate_pull), (gst_qtdemux_add_stream),
(qtdemux_parse), (qtdemux_parse_tree), (qtdemux_parse_trak),
(qtdemux_parse_udta), (qtdemux_tag_add_str), (qtdemux_tag_add_num),
(qtdemux_tag_add_gnre), (gst_qtdemux_handle_esds):
* gst/qtdemux/qtdemux.h:
Handle stss boxes so we can mark and find keyframes.
Implement correct accurate and keyframe seeking.
Use _DEBUG_OBJECT when possible.
2006-04-04 08:31:10 +00:00
Thomas Vander Stichele
1940330e19 rework build; add translations for v4l2
Original commit message from CVS:
rework build; add translations for v4l2
2006-04-01 10:09:11 +00:00
Edward Hervey
cd1bbadf59 gst/qtdemux/qtdemux.c: Let's not forget to chain up to the parent dispose.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_dispose):
Let's not forget to chain up to the parent dispose.
2006-03-15 15:08:20 +00:00
Edward Hervey
3424048158 gst/qtdemux/qtdemux.c: Series of memleak fixes:
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_class_init),
(gst_qtdemux_init), (gst_qtdemux_dispose),
(gst_qtdemux_add_stream), (qtdemux_parse_trak):
Series of memleak fixes:
- Unref the GstAdapter in finalize.
- Use gst_pad_new_from_static_template(), shorter and safer.
- Free unused QtDemuxStream when not used.
2006-03-15 14:39:25 +00:00
Tim-Philipp Müller
1807bd210f gst/qtdemux/qtdemux.c: Fix build with gcc-4.1 (#327355).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_send_event):
Fix build with gcc-4.1 (#327355).
2006-03-09 20:02:44 +00:00
Tim-Philipp Müller
1ec94df29d gst/qtdemux/qtdemux.c: Extract disc number and count from files that use 'disk' instead of 'disc' as node identifier ...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_udta):
Extract disc number and count from files that use
'disk' instead of 'disc' as node identifier for that
(fixes #332066).
2006-03-08 12:16:14 +00:00
Tim-Philipp Müller
b2d9090014 gst/qtdemux/qtdemux.c: Add support for '3IVD' fourcc (#333403).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_video_caps):
Add support for '3IVD' fourcc (#333403).
2006-03-05 13:03:40 +00:00
Edward Hervey
6be283efae gst/qtdemux/qtdemux.c: Use GST_WARNING instead of GST_ERROR for all the too short/long atoms when parsing.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse), (qtdemux_parse_trak):
Use GST_WARNING instead of GST_ERROR for all the too short/long atoms
when parsing.
Also let's be a bit less vulgar in our warning messages :)
2006-03-03 11:07:41 +00:00
Tim-Philipp Müller
559094e26c gst/qtdemux/qtdemux.c: Can't divide through zero (suppress warning in case of stream with one single still picture) (...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak):
Can't divide through zero (suppress warning in case of
stream with one single still picture) (see #327083)
2006-02-28 11:59:49 +00:00
Fabrizio Gennari
96c1cd6e0a gst/qtdemux/qtdemux.c: Add support for palettised Apple SMC videos (#327075, based on
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream),
(qtdemux_parse_trak), (qtdemux_video_caps):
Add support for palettised Apple SMC videos (#327075, based on
patch by: Fabrizio Gennari <fabrizio dot ge at tiscali dot it>).
2006-02-24 19:49:32 +00:00
Edward Hervey
7eed67bb6b gst/qtdemux/qtdemux.c: Add 'dvsd' and 'dv25' to list of possible fourcc values for DV Video.
Original commit message from CVS:
Reviewed by : Edward Hervey <edward@fluendo.com>
* gst/qtdemux/qtdemux.c: (qtdemux_video_caps):
Add 'dvsd' and 'dv25' to list of possible fourcc values for DV Video.
Add image/png for fourcc 'png '
2006-02-22 09:33:25 +00:00
Tim-Philipp Müller
495d5c58a7 gst/qtdemux/qtdemux.c: Don't GST_LOG timestamps from nonexistent index entries (#331582).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_state_movie):
Don't GST_LOG timestamps from nonexistent index
entries (#331582).
2006-02-17 18:25:42 +00:00
Edward Hervey
027f62e625 gst/qtdemux/qtdemux.c: Check that the size of the returned buffer is of the correct size because the parser assumes t...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_state_header):
Check that the size of the returned buffer is of the correct size
because the parser assumes that.
Fixes #331543.
2006-02-17 16:28:29 +00:00
Edward Hervey
160649c051 gst/qtdemux/qtdemux.c: Don't stop the task if the pad isn't linked.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_src_event),
(gst_qtdemux_loop), (qtdemux_sink_activate_pull):
Don't stop the task if the pad isn't linked.
2006-02-16 14:02:57 +00:00
Tim-Philipp Müller
7531337e94 gst/qtdemux/qtdemux.c: It appears 100% equals 1/1 and not 100/1 ...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_chain):
It appears 100% equals 1/1 and not 100/1 ...
2006-02-15 12:13:47 +00:00
Tim-Philipp Müller
484c2cc160 gst/qtdemux/qtdemux.c: When buffering MDAT data, show the user something is happening by posting 'buffering' messages...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_post_buffering),
(gst_qtdemux_chain):
When buffering MDAT data, show the user something is
happening by posting 'buffering' messages on the bus.
2006-02-15 09:45:27 +00:00
Edward Hervey
45dd1af710 gst/qtdemux/qtdemux.*: Make push-based work if mdat atom is before moov atom.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_init),
(gst_qtdemux_handle_src_query), (gst_qtdemux_change_state),
(next_entry_size), (gst_qtdemux_chain):
* gst/qtdemux/qtdemux.h:
Make push-based work if mdat atom is before moov atom.
Don't answer duration query. This should be transformed into replying
FALSE to seek events.
2006-02-14 18:50:13 +00:00
Edward Hervey
44cded3b2f gst/qtdemux/qtdemux.c: Handle the case where data atoms are before moov atoms in push-based mode.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (next_entry_size), (gst_qtdemux_chain):
Handle the case where data atoms are before moov atoms in push-based mode.
Errors out gracefully.
2006-02-14 11:24:53 +00:00
Edward Hervey
7e2a049670 gst/qtdemux/: QtDemux can now work push-based.
Original commit message from CVS:
* gst/qtdemux/Makefile.am:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_init),
(gst_qtdemux_handle_sink_event), (gst_qtdemux_change_state),
(extract_initial_length_and_fourcc),
(gst_qtdemux_loop_state_header), (gst_qtdemux_loop_state_movie),
(gst_qtdemux_loop_header), (next_entry_size), (gst_qtdemux_chain),
(qtdemux_sink_activate), (qtdemux_sink_activate_pull),
(qtdemux_sink_activate_push), (qtdemux_parse_trak):
* gst/qtdemux/qtdemux.h:
QtDemux can now work push-based.
It still needs some love for seeking.
2006-02-13 22:04:42 +00:00
Thomas Vander Stichele
8a4adb4ab9 remove unused var
Original commit message from CVS:
remove unused var
2006-02-07 18:31:31 +00:00
Thomas Vander Stichele
6342cdf0ec gst/qtdemux/qtdemux.c: use the correct variable to check if we can calculate the last chunk. Looks like an obvious b...
Original commit message from CVS:

* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header),
(qtdemux_parse_trak):
use the correct variable to check if we can calculate
the last chunk.  Looks like an obvious bug, and makes
the dump of offsets comparable to other tools
2006-02-07 18:01:17 +00:00
Thomas Vander Stichele
6aac14d041 gst/qtdemux/qtdemux.c: clean up some debugging, using _OBJECT, moving recurring messages to LOG level
Original commit message from CVS:

* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header),
(qtdemux_parse_trak):
clean up some debugging, using _OBJECT, moving recurring
messages to LOG level
2006-02-07 17:54:42 +00:00
Wim Taymans
2651b40adf gst/qtdemux/qtdemux.*: Some QT demux loving.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_src_query),
(gst_qtdemux_handle_src_event), (gst_qtdemux_loop_header),
(qtdemux_inflate), (qtdemux_parse), (qtdemux_parse_trak),
(qtdemux_parse_udta), (qtdemux_tag_add_str), (qtdemux_tag_add_num),
(qtdemux_tag_add_gnre), (gst_qtdemux_handle_esds),
(qtdemux_video_caps), (qtdemux_audio_caps):
* gst/qtdemux/qtdemux.h:
Some QT demux loving.
Handle seeking in a less broken way.
Fix AMR caps to match the AMR decoder.
Set first timestamp on AMR samples to 0 for now.
Remove some \n in DEBUG strings.
Use _scale_int for maximum precision.
2006-02-06 15:41:25 +00:00
Tim-Philipp Müller
7814b56eee gst/qtdemux/qtdemux.c: Fix wrong memcpy source pointer.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak):
Fix wrong memcpy source pointer.
2006-01-26 16:23:42 +00:00
Edward Hervey
98acdd1dc3 gst/qtdemux/qtdemux.c: More coherent framerate setting on caps.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header),
(gst_qtdemux_add_stream), (qtdemux_parse_trak):
More coherent framerate setting on caps.
If sample_size is available, use that for the samples' duration in
the index. This enables single frame streams to work (and I imagine
fixes some other cases).
Tested on testsuite, no regression.
2006-01-24 11:58:53 +00:00
Edward Hervey
07d2fd89cb gst/qtdemux/qtdemux.c: Added codec recognition for: _ VP31 : video/x-vp3 _ AVDJ : image/jpeg _ dvcp, dvc : video/x-d...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak),
(qtdemux_video_caps), (qtdemux_audio_caps):
Added codec recognition for:
_ VP31 : video/x-vp3
_ AVDJ : image/jpeg
_ dvcp, dvc  : video/x-dv, systemstream=(boolean)false
_ 0x6d730017 : audio/x-adpcm, layout=(string)quicktime
2006-01-23 15:10:55 +00:00
Fabrizio
e3ba1c0fd5 gst/qtdemux/qtdemux.c: 'twos' and 'sowt' fourcc can be 16bit or 8bit audio.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak),
(qtdemux_audio_caps):
'twos' and 'sowt' fourcc can be 16bit or 8bit audio.
Fix 8bit case (#327133, based on patch by: Fabrizio
Gennari <fabrizio dot ge at tiscali dot it>).
Also, "G_LITTLE_ENDIAN" and "G_BIG_ENDIAN" are not
valid literals for endianness in caps strings,
only "LITTLE_ENDIAN" and "BIG_ENDIAN" are valid.
2006-01-21 11:43:53 +00:00
Edgard Lima
83b6cbc438 Ronald's patch applied. see bug #326318.
Original commit message from CVS:
Ronald's patch applied. see bug #326318.
2006-01-18 18:54:02 +00:00
Tim-Philipp Müller
2a789d3ded gst/qtdemux/qtdemux.*: Fix seeking for quicktime files. Could still use some more love and sophistication.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_init),
(gst_qtdemux_send_event), (gst_qtdemux_handle_src_event),
(gst_qtdemux_change_state), (gst_qtdemux_loop_header):
* gst/qtdemux/qtdemux.h:
Fix seeking for quicktime files. Could still use some more
love and sophistication.
2006-01-17 16:45:43 +00:00
Edward Hervey
9c40ff11f5 gst/qtdemux/qtdemux.c: Add support for Indeo3 video in Quicktime files.
Original commit message from CVS:
reviewed by: Edward Hervey  <edward@fluendo.com>
* gst/qtdemux/qtdemux.c: (qtdemux_video_caps):
Add support for Indeo3 video in Quicktime files.
Closes #326524
2006-01-11 11:04:03 +00:00
Edward Hervey
0deb191d3e ext/swfdec/gstswfdec.c: Add debugging category and return GstFlowReturn in the right places
Original commit message from CVS:
* ext/swfdec/gstswfdec.c: (gst_swfdec_class_init),
(gst_swfdec_chain), (gst_swfdec_render):
Add debugging category and return GstFlowReturn in the right places
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_link):
Get something from the peer pad once we've checked if there is a peer pad.
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state),
(qtdemux_tree_get_child_by_type), (qtdemux_parse_trak),
(qtdemux_video_caps):
Couple of fixes
2005-12-19 15:19:44 +00:00
Jan Schmidt
85dfaeb2ce ext/faad/gstfaad.c: Assume that an unknown channel mapping with 2 channels is stereo and play it that way instead of ...
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_chanpos_to_gst),
(gst_faad_update_caps):
Assume that an unknown channel mapping with 2 channels
is stereo and play it that way instead of erroring.

* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header),
(gst_qtdemux_add_stream), (qtdemux_parse_trak):
Handle e.g. jpeg streams with 0 duration frames as having 0 framerate.
Debug fixes. Some 64 bit variable fixes
2005-12-09 15:30:21 +00:00
Edward Hervey
82d3a26a56 gst/qtdemux/qtdemux.c: Memleak fixes.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header),
(gst_qtdemux_add_stream):
Memleak fixes.
Send out EOS for valid reasons (couldn't pull_range() from upstream
for example).
2005-12-07 11:46:15 +00:00
Thomas Vander Stichele
b6540959e6 expand tabs
Original commit message from CVS:
expand tabs
2005-12-06 19:55:58 +00:00
Edward Hervey
2a46b7cf76 ext/faad/gstfaad.c: Handle gracefully the consequence of "Maximum number of scalefactor bands exceeded", which result...
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_srcgetcaps):
Handle gracefully the consequence of "Maximum number of scalefactor
bands exceeded", which results in 0 channels with samplerates of 0.
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state):
Do upward transitions, then call parent state_change, then do
downward transitions.
2005-11-28 15:43:29 +00:00
Jan Schmidt
d253f41afd gst/qtdemux/qtdemux.c: Convert to fractional framerates
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header),
(gst_qtdemux_add_stream), (qtdemux_dump_mvhd),
(qtdemux_parse_trak):
Convert to fractional framerates
2005-11-23 11:57:51 +00:00
Andy Wingo
cb825feb2c ext/faad/gstfaad.c (gst_faad_event) ext/ivorbis/vorbisfile.c (gst_ivorbisfile_loop) gst/qtdemux/qtdemux.c (gst_qtdemu...
Original commit message from CVS:
2005-11-22  Andy Wingo  <wingo@pobox.com>

* ext/faad/gstfaad.c (gst_faad_event)
* ext/ivorbis/vorbisfile.c (gst_ivorbisfile_loop)
* gst/qtdemux/qtdemux.c (gst_qtdemux_loop_header)
* gst/speed/gstspeed.c (speed_sink_event)
* gst/tta/gstttaparse.c (gst_tta_parse_src_event)
(gst_tta_parse_parse_header): Run update-funcnames.
2005-11-22 11:57:51 +00:00
Wim Taymans
b99bef3e58 Fix for stream lock updates.
Original commit message from CVS:
* ext/faac/gstfaac.c: (gst_faac_sink_event):
* gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_src_event):
* gst/tta/gstttaparse.c: (gst_tta_parse_src_event):
Fix for stream lock updates.
2005-11-21 17:37:41 +00:00
Tim-Philipp Müller
e48904d47f gst/qtdemux/qtdemux.c: j@bootlab.org, #321903).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_video_caps):
Add DX50, DIVX and DIV3 fourccs (patch by
j@bootlab.org, #321903).
2005-11-21 16:45:46 +00:00
Tim-Philipp Müller
09eabf5cf9 Update for GST_FOURCC_FORMAT API change.
Original commit message from CVS:
* ext/directfb/dfbvideosink.c:
(gst_dfbvideosink_get_format_from_caps):
* ext/sdl/sdlvideosink.c: (gst_sdlvideosink_create):
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header),
(qtdemux_parse), (qtdemux_type_get), (qtdemux_node_dump_foreach),
(qtdemux_dump_hdlr), (qtdemux_dump_dref), (qtdemux_dump_stsd),
(qtdemux_dump_dcom), (qtdemux_parse_trak), (qtdemux_video_caps),
(qtdemux_audio_caps):
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_v4l2fourcc_to_caps):
* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list),
(gst_v4l2src_capture_init), (gst_v4l2src_get_size_limits):
Update for GST_FOURCC_FORMAT API change.
2005-11-21 14:39:04 +00:00
Tim-Philipp Müller
9c38390e83 gst/qtdemux/qtdemux.c: Add support for custom genre tags.
Original commit message from CVS:
Reviewed by: Tim-Philipp Müller  <tim at centricular dot net>
* gst/qtdemux/qtdemux.c: (qtdemux_parse_udta):
Add support for custom genre tags.
2005-11-10 12:34:26 +00:00
Tim-Philipp Müller
e3b9734659 gst/qtdemux/qtdemux.c: Remove 'got-redirect' signal and post element message on the bus instead.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_class_init),
(qtdemux_parse_tree):
Remove 'got-redirect' signal and post element message
on the bus instead.
2005-10-27 11:25:19 +00:00
Wim Taymans
3ab46f21f0 gst/: API change fix.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_get_src_query_types),
(gst_qtdemux_handle_src_query):
* gst/speed/gstspeed.c: (speed_get_query_types), (speed_src_query):
* gst/tta/gstttaparse.c: (gst_tta_parse_src_event),
(gst_tta_parse_get_query_types), (gst_tta_parse_query):
API change fix.
2005-10-19 15:58:00 +00:00
Wim Taymans
b0e9b53bb7 gst/: newsegment API update.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header):
* gst/tta/gstttaparse.c: (gst_tta_parse_src_event),
(gst_tta_parse_parse_header):
newsegment API update.
2005-10-11 16:34:36 +00:00
Wim Taymans
240fc75fba gst/qtdemux/qtdemux.c: No need to take stream lock here.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header):
No need to take stream lock here.
2005-09-28 13:38:02 +00:00
Thomas Vander Stichele
bcf4791a47 cleaning up bad
Original commit message from CVS:
cleaning up bad
2005-09-05 15:10:18 +00:00
Ronald S. Bultje
51a630d417 gst/: Uncomment metadata and codec-name handling.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream),
(gst_avi_demux_stream_header):
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state),
(gst_qtdemux_add_stream), (qtdemux_parse_tree):
Uncomment metadata and codec-name handling.
2005-08-16 16:30:23 +00:00
Ronald S. Bultje
2ba9064bf8 Handle _push() return values.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_event), (gst_faad_chain):
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header):
Handle _push() return values.
2005-08-16 09:54:10 +00:00
Ronald S. Bultje
79b78818c8 Fix debug.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_event):
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header):
Fix debug.
2005-08-15 15:58:49 +00:00
Ronald S. Bultje
0df0fa7a35 gst/qtdemux/qtdemux.c: Forwardport from 0.8 to implement RLE.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak),
(qtdemux_video_caps):
Forwardport from 0.8 to implement RLE.
2005-08-15 13:44:50 +00:00
Ronald S. Bultje
1d185d4127 ext/faad/gstfaad.c: Add debug category, remove Close() call that made it crash whenever reusing, renegotiating or any...
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_class_init), (gst_faad_setcaps):
Add debug category, remove Close() call that made it crash
whenever reusing, renegotiating or anything; Close() actually
free()s the handle and should only be called on READY->NULL.
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header):
Actually set caps on buffer (in addition to pad), also.
2005-08-10 09:33:58 +00:00
Ronald S. Bultje
53ba9736e8 ext/faad/gstfaad.c: Sign/unsign mismatch.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_event):
Sign/unsign mismatch.
* configure.ac:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_class_init),
(gst_qtdemux_init), (gst_qtdemux_get_src_query_types),
(gst_qtdemux_handle_src_query), (gst_qtdemux_handle_src_event),
(plugin_init), (gst_qtdemux_handle_sink_event),
(gst_qtdemux_change_state), (gst_qtdemux_loop_header),
(qtdemux_sink_activate), (qtdemux_sink_activate_pull),
(gst_qtdemux_add_stream), (qtdemux_parse), (qtdemux_parse_tree),
(qtdemux_parse_trak), (qtdemux_video_caps), (qtdemux_audio_caps):
* gst/qtdemux/qtdemux.h:
Half-assed port (hey, it works).
2005-08-09 14:43:48 +00:00
Ronald S. Bultje
d99719d80a gst/qtdemux/qtdemux.c: Change caps on MJPEG-B so it doesn't interfere with MJPEG/JPEG.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_video_caps):
Change caps on MJPEG-B so it doesn't interfere with MJPEG/JPEG.
2005-02-02 17:22:59 +00:00
Ronald S. Bultje
a344cdce4d gst/qtdemux/qtdemux.c: Add 3IV2 fourcc.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_video_caps):
Add 3IV2 fourcc.
2005-01-29 20:31:47 +00:00
Ronald S. Bultje
0e5276ed14 gst/qtdemux/qtdemux.c: Re-apply patch from #142272 that allows non-seekable sources,
Original commit message from CVS:
Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state),
(gst_qtdemux_loop_header):
Re-apply patch from #142272 that allows non-seekable sources,
re-proposed by Daniel Drake <dsd@gentoo.org>.
2005-01-29 12:55:18 +00:00
Ronald S. Bultje
d1fc8e9747 Add support for AMR-NB (mobile phone audio format; #155163, #163286).
Original commit message from CVS:
* configure.ac:
* ext/Makefile.am:
* ext/amrnb/Makefile.am:
* ext/amrnb/amrnb.c: (plugin_init):
* ext/amrnb/amrnbdec.c: (gst_amrnbdec_get_type),
(gst_amrnbdec_base_init), (gst_amrnbdec_class_init),
(gst_amrnbdec_init), (gst_amrnbdec_link), (gst_amrnbdec_chain),
(gst_amrnbdec_state_change):
* ext/amrnb/amrnbdec.h:
* ext/amrnb/amrnbparse.c: (gst_amrnbparse_get_type),
(gst_amrnbparse_base_init), (gst_amrnbparse_class_init),
(gst_amrnbparse_init), (gst_amrnbparse_formats),
(gst_amrnbparse_querytypes), (gst_amrnbparse_query),
(gst_amrnbparse_handle_event), (gst_amrnbparse_reserve),
(gst_amrnbparse_loop), (gst_amrnbparse_state_change):
* ext/amrnb/amrnbparse.h:
Add support for AMR-NB (mobile phone audio format; #155163, #163286).
* gst/typefind/gsttypefindfunctions.c: (plugin_init):
Add AMR-NB/-WB raw formats.
* ext/alsa/gstalsa.c: (gst_alsa_link):
Keep valid time when changing format.
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header),
(qtdemux_parse_trak):
Add some more format-specific options (#140141, #143555, #155163).
2005-01-28 10:36:12 +00:00
Ronald S. Bultje
20a14f8b13 gst/qtdemux/qtdemux.c: More memory leak fixes (#149162).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state),
(gst_qtdemux_loop_header), (gst_qtdemux_handle_esds):
More memory leak fixes (#149162).
2005-01-18 12:30:05 +00:00
Ronald S. Bultje
28215a31c1 gst/qtdemux/qtdemux.c: Fix two memleaks.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state),
(gst_qtdemux_add_stream):
Fix two memleaks.
2005-01-17 23:44:06 +00:00
Ronald S. Bultje
b3f034287c 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
73fdfd3298 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
eef19db944 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
a0f3fb2a36 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
Stéphane Loeuillet
77f52f2943 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
David Schleef
928610009f 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
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
Ronald S. Bultje
89e2912bad 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
40cec75c3f 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
David Schleef
09bf152f96 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
fcf36c760a 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
914e95a5dc 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
Ronald S. Bultje
45b9c25415 gst/qtdemux/qtdemux.*: Bitch. Also known as seeking, querying & co.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_init),
(gst_qtdemux_handle_src_query), (gst_qtdemux_handle_src_event),
(gst_qtdemux_handle_sink_event), (gst_qtdemux_change_state),
(gst_qtdemux_loop_header), (qtdemux_dump_mvhd),
(qtdemux_parse_trak):
* gst/qtdemux/qtdemux.h:
Bitch. Also known as seeking, querying & co.
* sys/oss/gstosssink.c: (gst_osssink_init), (gst_osssink_chain),
(gst_osssink_change_state):
* sys/oss/gstosssink.h:
Resyncing is for weenies, this hack is no longer needed and was
broken anyway (since it - unintendedly - always leaves resync to
TRUE).
2004-06-05 18:50:48 +00:00
Stéphane Loeuillet
ec8a1bb76c first batch : remove ',' at end of enums as they could confuse older gcc, foreign compilers (forte) and gtk-doc
Original commit message from CVS:

first batch :
remove ',' at end of enums as they could confuse older gcc, foreign compilers (forte) and gtk-doc
2004-05-21 22:39:30 +00:00
David Moore
7a9127835c gst/qtdemux/qtdemux.c: Patch from dcm@acm.org (David Moore) to allow qtdemux to use non-seekable streams. (bug #142272)
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state),
(gst_qtdemux_loop_header):  Patch from dcm@acm.org (David Moore)
to allow qtdemux to use non-seekable streams. (bug #142272)
2004-05-19 06:23:38 +00:00
David Schleef
63d2359147 ext/esd/esdsink.c: Fix crash when ESD is killed while we're playing.
Original commit message from CVS:
* ext/esd/esdsink.c: (gst_esdsink_chain): Fix crash when ESD
is killed while we're playing.
* gst/qtdemux/qtdemux.c: (qtdemux_parse): call
gst_element_no_more_pads().
2004-05-14 19:26:35 +00:00
David Schleef
cdfd00d33e gst/qtdemux/qtdemux.c: More qtdemux hackage -- parse a lot more atoms, extract a few tags. One might even mistake th...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header),
(gst_qtdemux_add_stream), (qtdemux_parse), (qtdemux_type_get),
(qtdemux_dump_stsz), (qtdemux_dump_stco), (qtdemux_dump_co64),
(qtdemux_dump_unknown), (qtdemux_parse_tree), (qtdemux_parse_udta),
(qtdemux_tag_add), (get_size), (gst_qtdemux_handle_esds): More qtdemux
hackage -- parse a lot more atoms, extract a few tags.  One might even
mistake this for tag support.  Maybe it is.
* gst/qtdemux/qtdemux.h:
2004-05-01 01:46:16 +00:00
David Schleef
971c2a18cd gst/qtdemux/qtdemux.c: Hacked up qtdemux to make it spit out codec_data. Do _not_ look at this code; you will no lon...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream), (qtdemux_parse),
(qtdemux_parse_trak), (get_size), (gst_qtdemux_handle_esds): Hacked
up qtdemux to make it spit out codec_data.  Do _not_ look at this
code; you will no longer respect me.
2004-04-30 02:19:16 +00:00
Thomas Vander Stichele
0a4089343d ext/jpeg/: move format setting to inner loop
Original commit message from CVS:
* ext/jpeg/gstjpegdec.c: (gst_jpegdec_get_type):
* ext/jpeg/gstjpegenc.c: (gst_jpegenc_get_type),
(gst_jpegenc_getcaps):
move format setting to inner loop
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
(gst_ffmpegcolorspace_getcaps):
use GST_PAD_CAPS if available so that we use already negotiated
caps
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header),
(qtdemux_parse_moov), (qtdemux_parse):
extra debugging
* sys/qcam/qcam-Linux.c: (qc_lock_wait), (qc_unlock):
* sys/qcam/qcam-os.c: (qc_lock_wait), (qc_unlock):
move hardcoded path to DEFINE
2004-04-29 17:37:01 +00:00
Ronald S. Bultje
9e67f51a37 ext/divx/gstdivxdec.c: Remove comment that makes no sense.
Original commit message from CVS:
* ext/divx/gstdivxdec.c: (plugin_init):
Remove comment that makes no sense.
* ext/mad/gstid3tag.c: (gst_id3_tag_set_property):
Fix for obvious typo that resulted in warnings during gst-register.
* ext/xvid/gstxviddec.c: (gst_xviddec_src_link),
(gst_xviddec_sink_link):
Fix caps negotiation a bit better.
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak):
We call this 'codec_data', not 'esds'.
2004-04-28 03:13:48 +00:00
David Schleef
51c2962476 configure.ac: bump required gstreamer version to 0.8.1.1 because of following changes [--ds]
Original commit message from CVS:
reviewed by David Schleef
* configure.ac: bump required gstreamer version to 0.8.1.1
because of following changes [--ds]
* gst-libs/gst/riff/riff-read.c:  Include gst/gstutils.h.
(gst_riff_peek_head, gst_riff_peek_list, gst_riff_read_list)
(gst_riff_read_header):  Use GST_READ_UINT*
macros to access possibly unaligned memory.
* gst/typefind/gsttypefindfunctions.c: Include gst/gstutils.h.
(mp3_type_find):  Use GST_READ_UINT*
macros to access possibly unaligned memory.
(mp3_type_find, mpeg1_parse_header, qt_type_find)
(speex_type_find): Likewise
* gst/tags/gstvorbistag.c: (ADVANCE): Likewise
* gst/qtdemux/qtdemux.c: Include stdlib.h (needed by realloc).
(QTDEMUX_GUINT32_GET, QTDEMUX_GUINT16_GET, QTDEMUX_FP32_GET)
(QTDEMUX_FP16_GET, QTDEMUX_FOURCC_GET)
(gst_qtdemux_loop_header, gst_qtdemux_loop_header)
(qtdemux_node_dump_foreach, qtdemux_tree_get_child_by_type)
(qtdemux_tree_get_sibling_by_type):  Use GST_READ_UINT*
macros to access possibly unaligned memory.
* gst/mpegstream/gstmpegpacketize.c: (parse_generic, parse_chunk):
Likewise.
* gst/mpegstream/gstmpegdemux.c: (gst_mpeg_demux_parse_syshead)
(gst_mpeg_demux_parse_packet, gst_mpeg_demux_parse_pes): Likewise.
* gst/mpegaudioparse/gstmpegaudioparse.c: (gst_mp3parse_chain):
Likewise.
* gst/mpeg2sub/gstmpeg2subt.c: (GST_BUFFER_DATA)
(gst_mpeg2subt_chain_subtitle): Likewise.
* gst/mpeg1videoparse/gstmp1videoparse.c: (mp1videoparse_parse_seq)
(gst_mp1videoparse_time_code, gst_mp1videoparse_real_chain):
Likewise.
* gst/mpeg1sys/buffer.c: (mpeg1mux_buffer_update_audio_info):
Likewise.
* gst/cdxaparse/gstcdxaparse.c: (gst_bytestream_peek_bytes):
Likewise.
* gst/asfdemux/gstasfdemux.c: (_read_var_length, _read_uint):
Likewise.
2004-04-20 21:04:21 +00:00
David Schleef
13d3bec095 gst/qtdemux/qtdemux.c: A number of new features and hacks to extract the esds atom and put it into the caps. (bug #1...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_sink_event),
(qtdemux_parse), (qtdemux_type_get), (qtdemux_dump_mvhd),
(qtdemux_dump_tkhd), (qtdemux_dump_stsd), (qtdemux_dump_unknown),
(qtdemux_parse_trak), (qtdemux_video_caps), (qtdemux_audio_caps):
A number of new features and hacks to extract the esds atom and
put it into the caps.  (bug #137724)
2004-04-20 08:27:15 +00:00
Ronald S. Bultje
2d0b40d77c ext/gsm/gstgsmdec.c: Fix capsnego, simplify chain function slightly.
Original commit message from CVS:
* ext/gsm/gstgsmdec.c: (gst_gsmdec_init), (gst_gsmdec_getcaps),
(gst_gsmdec_link), (gst_gsmdec_chain):
Fix capsnego, simplify chain function slightly.
* gst/qtdemux/qtdemux.c: (qtdemux_audio_caps):
Add GSM.
2004-04-19 02:00:24 +00:00
Ronald S. Bultje
26fe995a13 gst/: Add MS RLE support. I added some functions to read out strf chunks into strf chunks and the data behind it. Thi...
Original commit message from CVS:
reviewed by: <delete if not using a buddy>
* gst-libs/gst/riff/riff-media.c:
(gst_riff_create_video_caps_with_data),
(gst_riff_create_video_caps), (gst_riff_create_audio_caps),
(gst_riff_create_video_template_caps),
(gst_riff_create_audio_template_caps):
* gst-libs/gst/riff/riff-media.h:
* gst-libs/gst/riff/riff-read.c:
(gst_riff_read_strf_vids_with_data), (gst_riff_read_strf_vids):
* gst-libs/gst/riff/riff-read.h:
* gst/avi/gstavidemux.c: (gst_avi_demux_add_stream):
Add MS RLE support. I added some functions to read out strf chunks
into strf chunks and the data behind it. This is usually color
palettes (as in RLE, but also in 8-bit RGB). Also use those during
caps creation. Lastly, add ADPCM (similar to wavparse - which
should eventually be rifflib based).
* gst/matroska/matroska-demux.c: (gst_matroska_demux_class_init),
(gst_matroska_demux_init), (gst_matroska_demux_reset):
* gst/matroska/matroska-demux.h:
Remove placeholders for some prehistoric tagging system. Didn't add
support for any tag system really anyway.
* gst/qtdemux/qtdemux.c:
Add support for audio/x-m4a (MPEG-4) through spider.
* gst/wavparse/gstwavparse.c: (gst_wavparse_parse_fmt),
(gst_wavparse_loop):
ADPCM support (#135862). Increase max. buffer size because we
cannot split buffers for ADPCM (screws references) and I've seen
files with 2048 byte chunks. 4096 seems safe for now.
2004-04-16 01:20:44 +00:00
David Schleef
4e902f5346 gst/qtdemux/qtdemux.c: Fix debugging messages. Divide the chunk size by the compression ratio (needed for MACE audio)
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_sink_event),
(gst_qtdemux_loop_header), (qtdemux_parse_moov), (qtdemux_parse),
(qtdemux_node_dump_foreach), (qtdemux_dump_mvhd),
(qtdemux_dump_tkhd), (qtdemux_dump_elst), (qtdemux_dump_mdhd),
(qtdemux_dump_hdlr), (qtdemux_dump_vmhd), (qtdemux_dump_dref),
(qtdemux_dump_stsd), (qtdemux_dump_stts), (qtdemux_dump_stss),
(qtdemux_dump_stsc), (qtdemux_dump_stsz), (qtdemux_dump_stco),
(qtdemux_dump_co64), (qtdemux_dump_dcom), (qtdemux_dump_cmvd),
(qtdemux_parse_tree), (qtdemux_parse_trak):  Fix debugging
messages.  Divide the chunk size by the compression ratio
(needed for MACE audio)
2004-03-24 08:33:06 +00:00
Thomas Vander Stichele
6cc1c73d2b don't mix tabs and spaces
Original commit message from CVS:
don't mix tabs and spaces
2004-03-15 19:32:27 +00:00
Thomas Vander Stichele
5d25c00e4b gst-indent
Original commit message from CVS:
gst-indent
2004-03-14 22:34:33 +00:00
Ronald S. Bultje
9a78b5acf6 gst/qtdemux/qtdemux.c: Fix for obvious mistake, where we first shift the offset and then read a samplesize element as...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak):
Fix for obvious mistake, where we first shift the offset and then
read a samplesize element assuming the old offset. Note that this
part still has something weird, i.e. my movies containing those
don't actually play well, but at least there's something that looks
like sound now.
2004-03-14 05:43:33 +00:00
David Schleef
7193017158 gst/qtdemux/qtdemux.c: Added Cinepak format (bug #136470)
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_video_caps):  Added Cinepak
format (bug #136470)
2004-03-07 22:07:20 +00:00
Ronald S. Bultje
9665e6768f gst/qtdemux/qtdemux.c: Fix crash (j might be greater than n_samples, in which case we're writing outside the allocate...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream),
(qtdemux_parse_trak):
Fix crash (j might be greater than n_samples, in which case we're
writing outside the allocated space for the array) and memleak.
2004-03-07 04:03:27 +00:00
David Schleef
9331801a62 ext/faad/gstfaad.c: Fix negotiation.
Original commit message from CVS:
* ext/faad/gstfaad.c: (gst_faad_init), (gst_faad_srcgetcaps),
(gst_faad_chain): Fix negotiation.
* ext/librfb/gstrfbsrc.c: (gst_rfbsrc_handle_src_event): Add
key and button events.
* gst-libs/gst/floatcast/floatcast.h: Fix a minor bug in this
dung heap of code.
* gst-libs/gst/gconf/gstreamer-gconf-uninstalled.pc.in: gstgconf
depends on gconf
* gst-libs/gst/gconf/gstreamer-gconf.pc.in: same
* gst-libs/gst/play/play.c: (gst_play_pipeline_setup),
(gst_play_video_fixate), (gst_play_audio_fixate): Add a fixate
function to encourage better negotiation, particularly between
audioconvert and osssink.
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_chain):
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak):  Make some debugging
more important.
* gst/typefind/gsttypefindfunctions.c:  Fix mistake in flash
typefinding.
* gst/vbidec/vbiscreen.c:  Add glib header
* pkgconfig/gstreamer-play.pc.in:  Depends on gst-interfaces.
2004-03-06 00:42:19 +00:00
David Schleef
29926c75c5 gst/qtdemux/qtdemux.c: Add prototype code for handling seeking and querying.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_get_src_formats),
(gst_qtdemux_src_convert), (gst_qtdemux_get_src_query_types),
(gst_qtdemux_get_event_mask), (gst_qtdemux_handle_src_query),
(gst_qtdemux_handle_src_event), (gst_qtdemux_add_stream):
Add prototype code for handling seeking and querying.
2004-03-05 08:37:01 +00:00
David Schleef
e913ff5a5a gst/qtdemux/qtdemux.c: Cleanups. Convert g_prints to GST_LOGs. Add qtdemux debug category. Attempt to fix timestam...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (plugin_init), (gst_qtdemux_loop_header),
(qtdemux_parse_moov), (qtdemux_parse), (qtdemux_node_dump_foreach),
(qtdemux_dump_mvhd), (qtdemux_dump_tkhd), (qtdemux_dump_elst),
(qtdemux_dump_mdhd), (qtdemux_dump_hdlr), (qtdemux_dump_vmhd),
(qtdemux_dump_dref), (qtdemux_dump_stsd), (qtdemux_dump_stts),
(qtdemux_dump_stss), (qtdemux_dump_stsc), (qtdemux_dump_stsz),
(qtdemux_dump_stco), (qtdemux_dump_co64), (qtdemux_dump_dcom),
(qtdemux_dump_cmvd), (qtdemux_parse_tree), (qtdemux_parse_trak):
Cleanups.  Convert g_prints to GST_LOGs.  Add qtdemux debug
category.  Attempt to fix timestamp calculation.
2004-02-24 17:17:56 +00:00
Benjamin Otte
3923455478 ext/xine/: add first version of xine plugin wrapper. Currently only wraps the
Original commit message from CVS:
2004-02-20  Benjamin Otte  <otte@gnome.org>

* ext/xine/Makefile.am:
* ext/xine/gstxine.h:
* ext/xine/xine.c:
* ext/xine/xineaudiodec.c:
* ext/xine/xinecaps.c:
add first version of xine plugin wrapper. Currently only wraps the
QDM2 win32 DLL, and even that only in proof-of-concept quality.
* configure.ac:
* ext/Makefile.am:
add xine plugin wrapper, disabled by default. Use --enable-xine to
build. Note that it'll segfault on gst-register if you don't remove
the goom and tvtime post plugins from xine.
* gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_sink_event),
(qtdemux_parse), (qtdemux_parse_trak), (qtdemux_audio_caps):
add extradata parsing for QDM2.
change around debugging prints.
2004-02-20 00:52:07 +00:00
Benjamin Otte
801b7221ac gst/qtdemux/qtdemux.c: set explicit caps before adding the element, so the autopluggers can plug correctly.
Original commit message from CVS:
2004-02-03  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream):
set explicit caps before adding the element, so the autopluggers can
plug correctly.
* gst/typefind/gsttypefindfunctions.c: (mp3_type_find),
(mpeg2_sys_type_find), (mpeg1_sys_type_find),
(mpeg_video_type_find), (mpeg_video_stream_type_find),
(dv_type_find):
fix memleaks in typefind functions. gst_type_find_suggest takes a const
argument.
2004-02-03 18:42:48 +00:00
Jeremy Simon
98fc4bf118 Add SVQ3 specific flags to qtdemux and ffmpeg
Original commit message from CVS:
2004-01-26  Jeremy Simon  <jesimon@libertysurf.fr>
* ext/ffmpeg/gstffmpegcodecmap.c: (gst_ffmpeg_codecid_to_caps),
(gst_ffmpeg_caps_to_extradata), (gst_ffmpeg_caps_to_pixfmt):
* gst/qtdemux/qtdemux.c: (plugin_init), (qtdemux_parse_trak),
(qtdemux_video_caps):
* gst/qtdemux/qtdemux.h:
Add SVQ3 specific flags to qtdemux and ffmpeg
2004-01-26 20:01:35 +00:00
David Schleef
51db8f1fe2 ext/esd/esdsink.c: Remove property that handles osssink fallback.
Original commit message from CVS:
* ext/esd/esdsink.c: (gst_esdsink_class_init): Remove property
that handles osssink fallback.
* gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_init),
(gst_audio_convert_getcaps):
* gst/qtdemux/qtdemux.c: (qtdemux_audio_caps):
Add audio/x-qdm2 for QDM2 audio.
* gst/sine/gstsinesrc.c: (gst_sinesrc_get):
* gst/sine/gstsinesrc.h: Add example of how to implement tags.
* gst/videoscale/gstvideoscale.c: (gst_videoscale_getcaps):
Decrease minimum size to 16x16.
* gst/wavparse/gstwavparse.c:
Convert disabled pad template caps to new caps.
* sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_get):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xcontext_get),
(gst_xvimagesink_chain): Throw element error when display cannot
be opened.  Increase minimum framerate to 1.0.  Check the data
free function on a buffer to make sure it is the type we expect
before manipulating it.
2004-01-15 21:05:17 +00:00
Benjamin Otte
b6b01d96ac gst/qtdemux/qtdemux.c: fix audio chunk size/timestamp calculation
Original commit message from CVS:
2004-01-11  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header),
(qtdemux_parse_trak):
fix audio chunk size/timestamp calculation
2004-01-11 17:49:56 +00:00
David Schleef
7a85d6c13a Change sink pad template caps to "video/quicktime"
Original commit message from CVS:
Change sink pad template caps to "video/quicktime"
2004-01-03 11:18:56 +00:00
David Schleef
6c1b114eed Convert elements to use gst_pad_use_explicit_caps() where appropriate.
Original commit message from CVS:
Convert elements to use gst_pad_use_explicit_caps() where appropriate.
2004-01-02 07:09:23 +00:00
Benjamin Otte
07a0396381 gst/qtdemux/qtdemux.c: qtdemux requires bytestream
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-22 19:05:34 +00:00
David Schleef
ce51f6173c Merge CAPS branch
Original commit message from CVS:
Merge CAPS branch
2003-12-22 01:47:09 +00:00
Ronald S. Bultje
76a5c85de7 Sorry Dave... Add mpegversion=1 to mp3 caps everywhere so that the autoplugger uses mad and not faad for mp3 decoding...
Original commit message from CVS:
Sorry Dave... Add mpegversion=1 to mp3 caps everywhere so that the autoplugger uses mad and not faad for mp3 decoding. This should fix mp3 playback.
2003-12-18 09:31:49 +00:00
Andy Wingo
e46d34995d remove copyright field from plugins
Original commit message from CVS:
remove copyright field from plugins
2003-12-04 10:37:38 +00:00
David Schleef
f1d94660c5 Change everyone to video/x-msvideo
Original commit message from CVS:
Change everyone to video/x-msvideo
2003-11-27 21:49:39 +00:00
Iain Holmes
9c81eec41c Added audio/x-m4a to the sink caps
Original commit message from CVS:
Added audio/x-m4a to the sink caps
2003-11-27 17:35:00 +00:00
Benjamin Otte
8b4dbbc044 add a rank to allow autoplugging
Original commit message from CVS:
add a rank to allow autoplugging
2003-11-24 15:25:21 +00:00
David Schleef
e9b809fdba change video/x-jpeg to image/jpeg
Original commit message from CVS:
change video/x-jpeg to image/jpeg
2003-11-10 22:47:38 +00:00
Jeremy Simon
a8fcbcd43b Do not demux only 2 trak atoms
Original commit message from CVS:
Do not demux only 2 trak atoms
2003-11-07 20:36:47 +00:00
Ronald S. Bultje
fbdc88a45f Quicktime demuxer ported to new interface
Original commit message from CVS:
Quicktime demuxer ported to new interface
2003-11-02 21:45:18 +00:00
Benjamin Otte
c9ae463a4f merge TYPEFIND branch. Major changes:
Original commit message from CVS:
merge TYPEFIND branch. Major changes:
- totally reworked type(find) system
- all typefind functions are in gst/typefind now
- more typefind functions then before
- some plugins might fail to compile now because I don't have them installed and they
a) require bytestream or
b) haven't had their typefind fixed.
Please fix those plugins and put the typefind functions into gst/typefind if they don't have dependencies
2003-10-28 20:52:41 +00:00
Andy Wingo
f2d5cae8da /GstBuffer/GstData/ in the API where you can pass events. Fix the plugins to deal with that. Fixes #113488.
Original commit message from CVS:
/GstBuffer/GstData/ in the API where you can pass events. Fix the plugins to deal with that. Fixes #113488.
2003-10-08 16:08:18 +00:00
Ronald S. Bultje
38946080fd New typefind system: bytestream is now part of the core all plugins have been modified to use this new typefind syste...
Original commit message from CVS:
New typefind system:
* bytestream is now part of the core
* all plugins have been modified to use this new typefind system
* asf typefinding added
* mpeg video stream typefiding removed because it's broken
* duplicate typefind entries removed
* extra id3 typefinding added, because we've seen 4 types of files
(riff/wav, flac, vorbis, mp3) with id3 headers and each of these needs
to work. Instead, I've added an id3 element and let it redo typefiding
after the id3 header. this needs a hack because spider only typefinds
once. We can remove this hack once spider supports multiple typefinds.
* with all this, mp3 typefinding is semi-rewritten
* id3 typefinding in flac/vorbis is removed, it's no longer needed
* fixed spider and gst-typefind to use this, too.
* Other general cleanups
2003-10-01 13:14:52 +00:00
Leif Johnson
7b0389b09c + the last of the float caps changes ... these are a bit more pervasive
Original commit message from CVS:
+ the last of the float caps changes ... these are a bit more pervasive
2003-07-19 23:47:41 +00:00
Ronald S. Bultje
292fec2a0b New mimetypes gone into effect today - this commit changes all old mimetypes over to the new mimetypes spec as descri...
Original commit message from CVS:
New mimetypes gone into effect today - this commit changes all old mimetypes over to the new mimetypes spec as described in the previous commit's document. Note: some plugins will break, some pipelines will break, expect HEAD to be broken or at least not 100% working for a few days, but don't forget to report bugs
2003-07-06 20:49:52 +00:00
Benjamin Otte
90da904f1e compatibility fix for new GST_DEBUG stuff.
Original commit message from CVS:
compatibility fix for new GST_DEBUG stuff.
Includes fixes for missing includes for config.h and unistd.h

I only ensured for plugins I can build that they work, so if some of them are still broken, you gotta fix them yourselves unfortunately.
2003-06-29 19:46:12 +00:00
David Schleef
bbf74571a7 "My way" turned out to cause seg faults. :) Fixed, and added more fourcc to caps conversions.
Original commit message from CVS:
"My way" turned out to cause seg faults.  :)  Fixed, and added
more fourcc to caps conversions.
2003-06-23 07:04:40 +00:00
David Schleef
d1b4db094c Revert last two changes and do it my way. :)
Original commit message from CVS:
Revert last two changes and do it my way.  :)
2003-06-19 19:36:26 +00:00
Brian Cameron
f46b1af7c2 Support ISO-style variable argument macros.
Original commit message from CVS:
Support ISO-style variable argument macros.
2003-06-19 17:27:23 +00:00
Ronald S. Bultje
98db832871 which causes a segfault. I'm working on that
Original commit message from CVS:
This adds width/height properties to qtdemux, so that it connects to ffdec_*... still doesn't work, because the buffer allocation in ffdec_ allocs too small buffers (edge emulation failure or so?), which causes a segfault. I'm working on that
2003-06-17 10:46:32 +00:00
David Schleef
7951409932 Handle compressed headers. Fix inappropriate use of bytestream_flush().
Original commit message from CVS:
Handle compressed headers.  Fix inappropriate use of bytestream_flush().
Code cleanup.  Added getcaps and _link functions for src pads.  Extract
and set the size,rate,channels correctly.  Fix some of the caps to
agree with avidemux and/or ffmpeg.
2003-06-16 17:39:26 +00:00
David Schleef
f75ff8a6e7 Fix some of the fourcc to caps conversions. reenable setting of rate and n channels on audio caps.
Original commit message from CVS:
Fix some of the fourcc to caps conversions.  reenable setting of rate
and n channels on audio caps.
2003-06-15 02:57:53 +00:00
David Schleef
d6decc3112 Complete rewrite. Not finished, nothing to see here.
Original commit message from CVS:
Complete rewrite.  Not finished, nothing to see here.
2003-06-10 06:23:42 +00:00
Brian Cameron
1bc371768a Removed needless ; at the end of GST_PAD_TEMPLATE_FACTORY calls, which were causing non-gcc compilers to break.
Original commit message from CVS:
Removed needless ; at the end of GST_PAD_TEMPLATE_FACTORY calls, which
were causing non-gcc compilers to break.
2003-05-22 11:04:31 +00:00
David Schleef
df0b94aae4 Change %lld, %llu to G_G[U]INT64_FORMAT globally. Fix bad pointer->integer conversion.
Original commit message from CVS:
Change %lld, %llu to G_G[U]INT64_FORMAT globally.  Fix bad pointer->integer
conversion.
2003-02-02 05:26:29 +00:00
Thomas Vander Stichele
b19d0bd840 don't segfault when data didn't make it in
Original commit message from CVS:
don't segfault when data didn't make it in
2003-01-18 18:10:53 +00:00
Thomas Vander Stichele
be876ae577 another batch of connect->link fixes please let me know about issues and please refrain of making them yourself, so t...
Original commit message from CVS:
another batch of connect->link fixes
please let me know about issues
and please refrain of making them yourself, so that I don't spend double
the time resolving conflicts
2003-01-10 10:22:25 +00:00
Christian Schaller
2ff64d483e plugins part of license field patch
Original commit message from CVS:
plugins part of license field patch
2002-09-18 19:02:51 +00:00
Thomas Vander Stichele
4ec41347e2 removing warnings (approved by wtay)
Original commit message from CVS:
removing warnings (approved by wtay)
2002-09-09 23:24:29 +00:00
Steve Baker
0db159065c qtdemux.c:315: warning: implicit declaration of function `free' qtdemux.c:331: warning: implicit declaration of funct...
Original commit message from CVS:
qtdemux.c:315: warning: implicit declaration of function `free'
qtdemux.c:331: warning: implicit declaration of function `malloc'
2002-08-11 11:31:42 +00:00
Thomas Vander Stichele
b237a49772 rearranging element tree
Original commit message from CVS:
rearranging element tree
2002-06-08 09:15:07 +00:00
Steve Baker
afd592b066 add ranks only for plugins who participate in autoplugging. If you have a file that used to autoplug but doesn't any...
Original commit message from CVS:
add ranks only for plugins who participate in autoplugging.  If you have a file that used to autoplug but doesn't anymore, then let me know or add a rank to the missing element.
2002-05-31 08:24:31 +00:00
Steve Baker
163076dd9e use new bytestream api
Original commit message from CVS:
use new bytestream api
2002-05-15 19:08:49 +00:00
Artyom Baginski
56efeff3b4 adding new quicktime parser:
Original commit message from CVS:
adding new quicktime parser:
- openquicktime free (hense gst/qtdemux)
- no more seeks for parsing -> better for network streams
- uses GstByteStream
- less memcpy's
- long ChangeLog record in pompous style
2002-05-01 18:41:59 +00:00