Commit graph

2276 commits

Author SHA1 Message Date
Sebastian Dröge
51cc968198 gst/matroska/matroska-demux.c: Don't calculate the default duration of a frame from the audio sampling rate. This onl...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream):
Don't calculate the default duration of a frame from the audio sampling
rate. This only works for raw audio if every frame contains a single
sample and results in broken buffer durations for other formats
if no specified default duration is given or the blocks have no
duration. Fixes bug #548831.
2008-08-21 12:52:47 +00:00
Sebastian Dröge
812954d1e9 gst/matroska/matroska-demux.c: Allow zero sized blocks instead of returning GST_FLOW_OK. Such blocks are used for tex...
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_blockgroup_or_simpleblock):
Allow zero sized blocks instead of returning GST_FLOW_OK. Such blocks
are used for text/plain subtitles as a gap-filler in some files.
2008-08-21 12:34:33 +00:00
Wim Taymans
7f88043553 gst/rtsp/gstrtspgoogle.c: Things that can happen when your brain is in google mode trying to deal with their google r...
Original commit message from CVS:
* gst/rtsp/gstrtspgoogle.c:
Things that can happen when your brain is in google mode trying to
deal with their google rtsp server extensions and trying to type your
google mail account.
2008-08-20 17:42:21 +00:00
Wim Taymans
dd54e000ea gst/rtsp/: Add google RTSP extension, it can only handle udp and responds with unsupported if we do anything else. Fi...
Original commit message from CVS:
* gst/rtsp/Makefile.am:
* gst/rtsp/gstrtsp.c: (plugin_init):
* gst/rtsp/gstrtspgoogle.c: (gst_rtsp_google_before_send),
(gst_rtsp_google_after_send), (gst_rtsp_google_get_transports),
(_do_init), (gst_rtsp_google_base_init),
(gst_rtsp_google_class_init), (gst_rtsp_google_init),
(gst_rtsp_google_finalize), (gst_rtsp_google_change_state),
(gst_rtsp_google_extension_init):
* gst/rtsp/gstrtspgoogle.h:
Add google RTSP extension, it can only handle udp and responds with
unsupported if we do anything else. Fixes #546465.
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_connection_send),
(gst_rtspsrc_connection_receive), (gst_rtspsrc_loop_send_cmd),
(gst_rtspsrc_create_transports_string),
(gst_rtspsrc_setup_streams), (gst_rtspsrc_open),
(gst_rtspsrc_close), (gst_rtspsrc_pause):
Make transport setup code a bit better using GString.
Add some more debug.
Check for closed connections before doing anything on them.
2008-08-20 17:30:19 +00:00
Peter Kjellerstedt
7431491470 gst/udp/: Avoid leaking internally allocated file descriptors when setting custom file descriptors. Fixes #543101.
Original commit message from CVS:
Patch by: Peter Kjellerstedt <pkj at axis com>
* gst/udp/gstdynudpsink.c: (gst_dynudpsink_init),
(gst_dynudpsink_finalize), (gst_dynudpsink_set_property),
(gst_dynudpsink_init_send), (gst_dynudpsink_close):
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_init),
(gst_multiudpsink_finalize), (gst_multiudpsink_set_property):
* gst/udp/gstudpsrc.c: (gst_udpsrc_finalize),
(gst_udpsrc_set_property):
Avoid leaking internally allocated file descriptors when setting
custom file descriptors. Fixes #543101.
2008-08-20 11:51:38 +00:00
Wim Taymans
0dfa54f450 gst/rtsp/gstrtspsrc.c: Don't try to configure RTCP back to the server when the server did not give us a valid port nu...
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_configure_udp_sink):
Don't try to configure RTCP back to the server when the server did not
give us a valid port number.
2008-08-20 11:48:46 +00:00
Wim Taymans
3033108c05 gst/videobox/gstvideobox.c: Use new basetransform method to renegotiate. Fixes #544956.
Original commit message from CVS:
* gst/videobox/gstvideobox.c: (gst_video_box_set_property):
Use new basetransform method to renegotiate. Fixes #544956.
* tests/icles/Makefile.am:
* tests/icles/videobox-test.c: (make_pipeline), (main):
Add videobox renegotiation example.
2008-08-20 10:59:52 +00:00
David Schleef
de44b9743b gst/wavenc/gstwavenc.c: Remove depth ranges and replace with sane values. Fixes #548530.
Original commit message from CVS:
* gst/wavenc/gstwavenc.c: Remove depth ranges and replace
with sane values.  Fixes #548530.
2008-08-19 21:03:22 +00:00
Edward Hervey
25665a0df3 gst/avi/gstavidemux.c: Some AVI 2.0 (ODML) files don't respect the 'specifications' completely and instead of using t...
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_read_subindexes_pull),
(gst_avi_demux_read_subindexes_push):
Some AVI 2.0 (ODML) files don't respect the 'specifications' completely
and instead of using the 'ix##' nomenclature, use '##ix'.
They're still valid though, this fixes the duration and indexes for
virtually all the ODML files I have.
2008-08-16 14:54:56 +00:00
Olivier Crete
87fd8ada34 gst/rtp/: Update the vorbis RTP pay/depay to RFC 5215.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/rtp/gstrtpvorbisdepay.c: (gst_rtp_vorbis_depay_setcaps),
(gst_rtp_vorbis_depay_process):
* gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_finish_headers):
Update the vorbis RTP pay/depay to RFC 5215.
Fixes #547842.
2008-08-15 17:26:18 +00:00
David Schleef
62491dcb74 gst/qtdemux/qtdemux.c: Add 'hdv6' as a HDV format for 1080i/60 with 3:2 pulldown, i.e., 24p.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: Add 'hdv6' as a HDV format for 1080i/60
with 3:2 pulldown, i.e., 24p.
2008-08-14 22:07:02 +00:00
Stefan Kost
a12235aec7 gst/spectrum/gstspectrum.c: Don't terminate on fabs(in)>1.0. Init doubles as doubles.
Original commit message from CVS:
* gst/spectrum/gstspectrum.c:
Don't terminate on fabs(in)>1.0. Init doubles as doubles.
2008-08-13 09:17:20 +00:00
Edward Hervey
9b7172ae9e gst/level/gstlevel.c: Fix compilation (also known as the classic 'fix code that someone committed without compiling i...
Original commit message from CVS:
* gst/level/gstlevel.c: (gst_level_message_new):
Fix compilation (also known as the classic 'fix code that someone
committed without compiling it first').
2008-08-11 10:53:06 +00:00
Stefan Kost
20b5b4c2d9 gst/level/gstlevel.c: Little renaming (l -> level).
Original commit message from CVS:
* gst/level/gstlevel.c:
Little renaming (l -> level).
* gst/spectrum/gstspectrum.c:
* gst/spectrum/gstspectrum.h:
Also send full timestamp/duration details here.
2008-08-10 15:52:42 +00:00
Stefan Kost
cac09e5a1b gst/level/gstlevel.*: Send same timestamp/duration details as videoanalysis. This gives applications better chance to...
Original commit message from CVS:
* gst/level/gstlevel.c:
* gst/level/gstlevel.h:
Send same timestamp/duration details as videoanalysis. This gives
applications better chance to sync analysis results with playback.
2008-08-10 11:32:03 +00:00
Sebastian Dröge
b7dcc19084 gst/matroska/matroska-mux.c: We need to drop one additional buffer for FLAC as the fLaC marker and STREAMINFO block a...
Original commit message from CVS:
* gst/matroska/matroska-mux.c:
(gst_matroska_mux_handle_sink_event),
(flac_streamheader_to_codecdata):
We need to drop one additional buffer for FLAC as the fLaC
marker and STREAMINFO block are merged into one buffer in the caps.
Also don't pretend to support NEWSEGMENT events, otherwise we
will most probably write some invalid data.
2008-08-09 14:02:27 +00:00
Sebastian Dröge
b6f5226f04 gst/matroska/matroska-mux.c: Add support for muxing FLAC into Matroska containers.
Original commit message from CVS:
* gst/matroska/matroska-mux.c: (flac_streamheader_to_codecdata),
(gst_matroska_mux_audio_pad_setcaps):
Add support for muxing FLAC into Matroska containers.
Fixes bug #311586.
2008-08-09 13:48:22 +00:00
Sebastian Dröge
ba69194f33 gst/matroska/matroska-demux.*: Close the current segment if we're doing a non-flushing seek and send the close-segmen...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_element_send_event),
(gst_matroska_demux_handle_seek_event), (gst_matroska_demux_loop):
* gst/matroska/matroska-demux.h:
Close the current segment if we're doing a non-flushing seek and send
the close-segment and the new segment of the seek from the streaming
thread.
2008-08-08 16:20:26 +00:00
Stefan Kost
dfd580b207 gst/qtdemux/qtdemux.c: Use audio/x-qdm for caps. Collect some info - mplayer has a decoder for it but ffmpeg does not.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c:
Use audio/x-qdm for caps. Collect some info - mplayer has a decoder
for it but ffmpeg does not.
2008-08-06 13:12:07 +00:00
Stefan Kost
1a9699c487 gst/wavparse/gstwavparse.c: Handle the list chunk and use gst_riff_parse_info() to parse the info sub-chunk.
Original commit message from CVS:
* gst/wavparse/gstwavparse.c:
Handle the list chunk and use gst_riff_parse_info() to parse the info
sub-chunk.
2008-08-05 15:05:44 +00:00
Stefan Kost
8e98d264cd gst/wavparse/gstwavparse.c: Handle the acid chunk and send tempo as part of tags. Other fields are interesting too, b...
Original commit message from CVS:
* gst/wavparse/gstwavparse.c:
Handle the acid chunk and send tempo as part of tags. Other fields are
interesting too, but need more tag-definitions. Fixes #545433.
2008-08-05 14:22:12 +00:00
Stefan Kost
6d0e3ac396 gst/wavparse/gstwavparse.c: Refactor wavparse. Call _reset() from dispose() and move old code from dispose into reset...
Original commit message from CVS:
* gst/wavparse/gstwavparse.c:
Refactor wavparse. Call _reset() from dispose() and move old code from
dispose into reset. This way we don't leak taglists when we abort
parsing. Fix some comments. Move code for skipping a chunk into extra
function. Replace chunk sizes with a const to ease readability.
2008-08-05 14:16:32 +00:00
Aurelien Grimaud
1e64691186 gst/rtsp/gstrtspsrc.c: Improve udp port setup. Fixes #545710.
Original commit message from CVS:
Patch by: Aurelien Grimaud <gstelzz at yahoo dot fr>
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_alloc_udp_ports):
Improve udp port setup. Fixes #545710.
2008-08-05 13:57:57 +00:00
Wim Taymans
8f0079c7e2 gst/rtp/: Add MP1S depayloader.
Original commit message from CVS:
* gst/rtp/Makefile.am:
* gst/rtp/gstrtp.c: (plugin_init):
* gst/rtp/gstrtpmp1sdepay.c: (gst_rtp_mp1s_depay_base_init),
(gst_rtp_mp1s_depay_class_init), (gst_rtp_mp1s_depay_init),
(gst_rtp_mp1s_depay_setcaps), (gst_rtp_mp1s_depay_process),
(gst_rtp_mp1s_depay_set_property),
(gst_rtp_mp1s_depay_get_property),
(gst_rtp_mp1s_depay_change_state),
(gst_rtp_mp1s_depay_plugin_init):
* gst/rtp/gstrtpmp1sdepay.h:
Add MP1S depayloader.
* gst/rtsp/URLS:
Some more sample rtsp streams.
2008-08-05 13:54:18 +00:00
Wim Taymans
0f4317db20 gst/rtsp/URLS: Add another URL.
Original commit message from CVS:
* gst/rtsp/URLS:
Add another URL.
* tests/check/elements/id3v2mux.c: (test_taglib_id3mux_with_tags):
* tests/check/elements/rglimiter.c: (GST_START_TEST):
Add some more debug info.
2008-08-05 08:43:45 +00:00
Mark Nauwelaerts
19bee306fe gst/avi/gstavimux.c: Provide cbSize field for audio extra_data size, and take care to pad extra_data.
Original commit message from CVS:
* gst/avi/gstavimux.c: (gst_avi_mux_riff_get_avi_header):
Provide cbSize field for audio extra_data size, and take care to
pad extra_data.
2008-08-04 09:16:40 +00:00
Stefan Kost
815eb01af1 gst/qtdemux/qtdemux.c: Return the result of gst_pad_{start,stop}_task instead of hard-coded
Original commit message from CVS:
* gst/qtdemux/qtdemux.c:
Return the result of gst_pad_{start,stop}_task instead of hard-coded
TRUE.
2008-08-04 07:23:07 +00:00
Stefan Kost
115636d6d6 gst/qtdemux/: Add keyword tag support. Fixes #520694 for qtdemux.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c:
* gst/qtdemux/qtdemux_fourcc.h:
Add keyword tag support. Fixes #520694 for qtdemux.
2008-08-04 07:17:38 +00:00
Stefan Kost
aa7a44190e gst/qtdemux/qtdemux.c: Add support for tmpo tag (BPM).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c:
Add support for tmpo tag (BPM).
2008-08-04 07:05:33 +00:00
Sebastian Dröge
d0bb024e11 gst/matroska/matroska-demux.c: When receiving a SEEK event on a specific pad first search for a seek table entry for ...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroskademux_do_index_seek),
(gst_matroska_demux_element_send_event),
(gst_matroska_demux_handle_seek_event),
(gst_matroska_demux_handle_src_event):
When receiving a SEEK event on a specific pad first search for a seek
table entry for the stream of the pad and then fall back to an entry
for a different stream.
2008-08-02 18:35:21 +00:00
Sebastian Dröge
25bc74b8a6 Build depend on core CVS for the attachment tag.
Original commit message from CVS:
* configure.ac:
* gst/matroska/matroska-ids.c: (gst_matroska_register_tags):
* gst/matroska/matroska-ids.h:
Build depend on core CVS for the attachment tag.
2008-08-02 18:20:44 +00:00
Sebastian Dröge
c4912dac78 Decode the codec private data and following ContentEncoding if necessary.
Original commit message from CVS:
* configure.ac:
* gst/matroska/Makefile.am:
* gst/matroska/lzo.c: (get_byte), (get_len), (copy),
(copy_backptr), (lzo1x_decode), (main):
* gst/matroska/lzo.h:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_read_track_encoding),
(gst_matroska_decompress_data), (gst_matroska_decode_data),
(gst_matroska_decode_buffer),
(gst_matroska_decode_content_encodings),
(gst_matroska_demux_read_track_encodings),
(gst_matroska_demux_add_stream),
(gst_matroska_demux_parse_blockgroup_or_simpleblock):
* gst/matroska/matroska-ids.h:
Decode the codec private data and following ContentEncoding if
necessary.
Support bzip2, lzo and header stripped compression. For lzo use the
ffmpeg lzo implementation as liblzo is GPL licensed.
Fix zlib decompression.
2008-08-02 18:18:05 +00:00
Sebastian Dröge
aedf04f957 gst/matroska/matroska-mux.c: Fix muxing of MP3/MP2 with different MPEG versions by calculating the duration of a fram...
Original commit message from CVS:
* gst/matroska/matroska-mux.c:
(gst_matroska_mux_audio_pad_setcaps):
Fix muxing of MP3/MP2 with different MPEG versions by calculating the
duration of a frame with the new mpegaudioversion caps field.
2008-08-02 18:11:32 +00:00
Sebastian Dröge
d43e67fa70 gst/matroska/matroska-demux.*: Allow an infinite number of stream inside Matroska containers and use a GPtrArray for ...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_finalize),
(gst_matroska_demux_class_init), (gst_matroska_demux_init),
(gst_matroska_demux_combine_flows), (gst_matroska_demux_reset),
(gst_matroska_demux_stream_from_num),
(gst_matroska_demux_tracknumber_unique),
(gst_matroska_demux_add_stream), (gst_matroska_demux_send_event),
(gst_matroska_demux_handle_seek_event),
(gst_matroska_demux_sync_streams),
(gst_matroska_demux_parse_blockgroup_or_simpleblock),
(gst_matroska_demux_loop):
* gst/matroska/matroska-demux.h:
Allow an infinite number of stream inside Matroska containers and use
a GPtrArray for storing them instead of allowing "only" 127 streams.
2008-08-02 18:06:20 +00:00
Sebastian Dröge
4ed1d36b7d gst/matroska/: Fix indention everywhere. A broken indent version has added newlines after every single declaration so...
Original commit message from CVS:
* gst/matroska/ebml-read.c: (gst_ebml_read_class_init),
(gst_ebml_read_change_state), (gst_ebml_read_element_level_up),
(gst_ebml_read_peek_bytes), (gst_ebml_read_element_id),
(gst_ebml_read_element_length), (gst_ebml_peek_id),
(gst_ebml_read_get_length), (gst_ebml_read_skip),
(gst_ebml_read_buffer), (gst_ebml_read_bytes),
(gst_ebml_read_uint), (gst_ebml_read_sint), (_ext2dbl),
(gst_ebml_read_float), (gst_ebml_read_ascii), (gst_ebml_read_date),
(gst_ebml_read_master), (gst_ebml_read_binary),
(gst_ebml_read_header):
* gst/matroska/ebml-write.c: (gst_ebml_write_element_id),
(gst_ebml_write_element_size), (gst_ebml_write_uint),
(gst_ebml_write_sint), (gst_ebml_write_ascii),
(gst_ebml_write_master_start), (gst_ebml_write_master_finish),
(gst_ebml_replace_uint):
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_read_track_encoding),
(gst_matroska_demux_read_track_encodings),
(gst_matroska_demux_add_stream), (gst_matroskademux_do_index_seek),
(gst_matroska_demux_send_event),
(gst_matroska_demux_element_send_event),
(gst_matroska_demux_handle_seek_event),
(gst_matroska_demux_handle_src_event),
(gst_matroska_demux_init_stream),
(gst_matroska_demux_parse_tracks),
(gst_matroska_demux_parse_index_cuetrack),
(gst_matroska_demux_parse_index_pointentry),
(gst_matroska_demux_parse_index), (gst_matroska_demux_parse_info),
(gst_matroska_demux_parse_metadata_id_simple_tag),
(gst_matroska_demux_parse_metadata_id_tag),
(gst_matroska_demux_parse_metadata),
(gst_matroska_demux_parse_attached_file),
(gst_matroska_demux_parse_attachments),
(gst_matroska_demux_parse_chapters), (gst_matroska_ebmlnum_uint),
(gst_matroska_ebmlnum_sint), (gst_matroska_demux_push_hdr_buf),
(gst_matroska_demux_push_flac_codec_priv_data),
(gst_matroska_demux_push_xiph_codec_priv_data),
(gst_matroska_demux_push_dvd_clut_change_event),
(gst_matroska_demux_add_mpeg_seq_header),
(gst_matroska_demux_add_wvpk_header),
(gst_matroska_demux_check_subtitle_buffer),
(gst_matroska_decode_buffer),
(gst_matroska_demux_parse_blockgroup_or_simpleblock),
(gst_matroska_demux_parse_cluster),
(gst_matroska_demux_parse_contents_seekentry),
(gst_matroska_demux_parse_contents),
(gst_matroska_demux_loop_stream_parse_id),
(gst_matroska_demux_loop_stream), (gst_matroska_demux_loop),
(gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps),
(gst_matroska_demux_subtitle_caps),
(gst_matroska_demux_change_state):
* gst/matroska/matroska-ids.c:
* gst/matroska/matroska-mux.c: (gst_matroska_mux_class_init),
(gst_matroska_mux_reset), (gst_matroska_mux_handle_sink_event),
(gst_matroska_mux_video_pad_setcaps),
(xiph3_streamheader_to_codecdata),
(vorbis_streamheader_to_codecdata),
(theora_streamheader_to_codecdata),
(gst_matroska_mux_audio_pad_setcaps),
(gst_matroska_mux_request_new_pad), (gst_matroska_mux_release_pad),
(gst_matroska_mux_track_header), (gst_matroska_mux_start),
(gst_matroska_mux_write_simple_tag), (gst_matroska_mux_finish),
(gst_matroska_mux_best_pad), (gst_matroska_mux_write_data),
(gst_matroska_mux_collected), (gst_matroska_mux_change_state):
Fix indention everywhere. A broken indent version has added newlines
after every single declaration some time ago.
2008-08-02 18:01:36 +00:00
Sebastian Dröge
9cb2a4f461 gst/matroska/matroska-demux.c: If no Tracks are found error out instead of trying it again until the end of time.
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_loop_stream_parse_id):
If no Tracks are found error out instead of trying it again until the
end of time.
2008-08-02 17:59:05 +00:00
Sebastian Dröge
f5fdbfd416 gst/matroska/matroska-demux.c: Fix demuxing of raw integer audio. The samples are unsigned only for 8 bit and signed ...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_audio_caps):
Fix demuxing of raw integer audio. The samples are unsigned only for 8
bit and signed otherwise, not the other way around.
2008-08-02 17:57:31 +00:00
Sebastian Dröge
cbc3df738b gst/matroska/matroska-mux.c: Add more raw YUV formats to the list of supported formats.
Original commit message from CVS:
* gst/matroska/matroska-mux.c:
Add more raw YUV formats to the list of supported formats.
2008-08-02 17:54:04 +00:00
Sebastian Dröge
266c0bf8bf gst/matroska/matroska-mux.c: Add support for muxing raw float audio now that the spec defines the endianness and add ...
Original commit message from CVS:
* gst/matroska/matroska-mux.c:
(gst_matroska_mux_audio_pad_setcaps):
Add support for muxing raw float audio now that the spec defines the
endianness and add support for muxing raw integer audio with 24 and
32 bits.
Allow muxing of more than 8 audio channels.
2008-08-02 17:52:16 +00:00
Sebastian Dröge
0767ed3351 gst/matroska/matroska-mux.c: Add locking to the global array of used track UIDs to prevent random crashes if more tha...
Original commit message from CVS:
* gst/matroska/matroska-mux.c: (gst_matroska_mux_create_uid),
(gst_matroska_mux_reset), (gst_matroska_mux_start):
Add locking to the global array of used track UIDs to prevent random
crashes if more than a single matrosmux instance is used.
Use 64 bit values for the track UIDs.
Use the global GRandom of GLib instead of creating our own one
for the few random numbers we need every single time.
2008-08-02 17:47:32 +00:00
Edward Hervey
637854d725 gst/qtdemux/qtdemux.c: Fix segment-stop regression.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_activate_segment):
Fix segment-stop regression.
Add documentation regarding segments in quicktime files by Wim Taymans.
Fixes #544509
2008-07-25 14:50:03 +00:00
Michael Smith
90fdf92640 gst/goom/: Fix build with MSVC: include glib.h to define inline appropriately, use header guards where needed.
Original commit message from CVS:
* gst/goom/convolve_fx.c:
* gst/goom/filters.c:
* gst/goom/goom_config.h:
* gst/goom/goom_core.c:
* gst/goom/goom_tools.h:
Fix build with MSVC: include glib.h to define inline appropriately,
use header guards where needed.
* gst/udp/gstudpnetutils.c:
* gst/udp/gstudpsrc.c:
Fix build with MSVC: use WSA* constants/functions where appropriate, use
g_snprintf rather than snprintf.
Fixes #544433.
2008-07-23 22:01:20 +00:00
Stefan Kost
da2d6b62e9 gst/debug/gsttaginject.*: Sent tags in _transform_ip() instead of _start(). Fixes #543404 partially.
Original commit message from CVS:
* gst/debug/gsttaginject.c:
* gst/debug/gsttaginject.h:
Sent tags in _transform_ip() instead of _start(). Fixes #543404
partially.
2008-07-22 06:32:03 +00:00
Mark Nauwelaerts
964f855f8b gst/qtdemux/qtdemux.c: Revert ISO base media spec based pixel-aspect-ratio calculation.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream),
(qtdemux_parse_trak):
Revert ISO base media spec based pixel-aspect-ratio calculation.
Fixes #543300.
2008-07-18 20:03:07 +00:00
Sebastian Dröge
54b1c496d6 gst/debug/gsttaginject.c: Don't pass NULL taglists to gst_tag_list_is_empty().
Original commit message from CVS:
* gst/debug/gsttaginject.c: (gst_tag_inject_start):
Don't pass NULL taglists to gst_tag_list_is_empty().
2008-07-14 17:17:47 +00:00
Sebastian Dröge
0aa90f93f0 gst/udp/gstudpnetutils.c: EAI_ADDRFAMILY was obsoleted in BSD at some point. Define it to the old value (1) if it's n...
Original commit message from CVS:
* gst/udp/gstudpnetutils.c:
EAI_ADDRFAMILY was obsoleted in BSD at some point. Define it to the
old value (1) if it's not defined which should not cause any problems
as we're using it internal only anyway.
2008-07-14 13:11:14 +00:00
Alessandro Decina
365186956d gst/avi/gstavidemux.c: Fix build of avidemux on big endian architectures.
Original commit message from CVS:
Patch by: Alessandro Decina <alessandro at nnva dot org>
* gst/avi/gstavidemux.c: (gst_avi_demux_riff_parse_vprp):
Fix build of avidemux on big endian architectures.
2008-07-14 13:02:48 +00:00
Thiago Sousa Santos
a0bc9e69fe gst/qtdemux/qtdemux.c: Correctly distinguish 8bit vs 16bit raw audio. Fixes #542410.
Original commit message from CVS:
Patch by: Thiago Sousa Santos <thiagoss at lcc dot ufcg dot edu dot br>
* gst/qtdemux/qtdemux.c: (qtdemux_audio_caps):
Correctly distinguish 8bit vs 16bit raw audio.  Fixes #542410.
2008-07-10 20:47:56 +00:00
Mark Nauwelaerts
2c11fa8bb6 gst/qtdemux/qtdemux.c: Set pixel-aspect-ratio in caps using display width and height provided in track.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream),
(qtdemux_parse_trak):
Set pixel-aspect-ratio in caps using display width and height
provided in track.
2008-07-08 21:05:18 +00:00
Sebastian Dröge
0db3e69da9 gst/rtp/gstrtpspeexdepay.*: Revert last change: Only the jitterbuffer is able to convert RTP to
Original commit message from CVS:
* gst/rtp/gstrtpspeexdepay.c: (gst_rtp_speex_depay_init),
(gst_rtp_speex_depay_process):
* gst/rtp/gstrtpspeexdepay.h:
Revert last change: Only the jitterbuffer is able to convert RTP to
Gstreamer timestamps and normal (de)payloaders should simply copy it.
Reopens bug #541787.
2008-07-07 15:34:12 +00:00
Stefan Kost
9f886ee1f2 gst/rtp/gstrtpvrawdepay.c: Include stdlib.h for atoi().
Original commit message from CVS:
* gst/rtp/gstrtpvrawdepay.c:
Include stdlib.h for atoi().
* gst/rtsp/gstrtspsrc.c:
Use floating point math for latencies < 0 sec in log output.
2008-07-07 10:30:51 +00:00
Tomasz Grobelny
5e2a462789 gst/rtp/gstrtpspeexdepay.*: Take timestamp from the RTP packet as a first step to fix problems with transmission over...
Original commit message from CVS:
Patch by: Tomasz Grobelny <tomasz at grobelny dot oswiecenia dot net>
* gst/rtp/gstrtpspeexdepay.c: (gst_rtp_speex_depay_init),
(gst_rtp_speex_depay_process):
* gst/rtp/gstrtpspeexdepay.h:
Take timestamp from the RTP packet as a first step to fix problems
with transmission over RTP when the network is not reliable.
Fixes bug #541787.
2008-07-07 10:16:07 +00:00
Tero Saarni
cf3286dac7 gst/udp/gstudpsrc.c: Fix parsing of udp:// URIs containing IPv6 addresses.
Original commit message from CVS:
Patch by: Tero Saarni <tero dot saarni at gmail dot com>
* gst/udp/gstudpsrc.c: (gst_udpsrc_set_uri):
Fix parsing of udp:// URIs containing IPv6 addresses.
Fixes bug #541650.
2008-07-05 19:01:28 +00:00
Sebastian Dröge
33e0d064a5 gst/matroska/matroska-demux.c: Handle position and duration query in DEFAULT format if the pad's track has a default ...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_class_init),
(gst_matroska_demux_add_stream), (gst_matroska_demux_query),
(gst_matroska_demux_element_query),
(gst_matroska_demux_handle_src_query),
(gst_matroska_demux_handle_seek_event):
Handle position and duration query in DEFAULT format if the
pad's track has a default frame duration set.
Fix seeking now that the segment's duration doesn't contain the
(possibly wrong or inaccurate) duration of the Matroska file.
2008-07-02 09:51:16 +00:00
Sebastian Dröge
2c38fcd1e6 gst/matroska/ebml-read.c: Use NAN constant instead of 0.0/0.0 if possible. NAN is defined in math.h except on MSVC wh...
Original commit message from CVS:
* gst/matroska/ebml-read.c: (_ext2dbl):
Use NAN constant instead of 0.0/0.0 if possible. NAN is defined
in math.h except on MSVC where it is defined in xmath.h.
Fixes compilation with MSVC.
2008-07-02 09:04:50 +00:00
Sebastian Dröge
35bcb8d8b0 gst/matroska/matroska-demux.*: Don't set the segment duration to the duration from the Matroska header as this value ...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_handle_src_query),
(gst_matroska_demux_parse_info),
(gst_matroska_demux_loop_stream_parse_id):
* gst/matroska/matroska-demux.h:
Don't set the segment duration to the duration from the Matroska
header as this value could be wrong and is just informational.
2008-07-02 08:57:04 +00:00
Sebastian Dröge
5b68f28c94 gst/matroska/matroska-demux.c: If no Tracks element is found until the first Cluster is found search it and error out...
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_loop_stream_parse_id):
If no Tracks element is found until the first Cluster is found
search it and error out if none is found in the complete file.
2008-07-02 08:47:00 +00:00
Sebastian Dröge
b7bd5d283b gst/matroska/matroska-demux.c: Resync non-subtitle tracks too if a too large gap compared to other tracks is detected.
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_sync_streams):
Resync non-subtitle tracks too if a too large gap compared to other
tracks is detected.
2008-07-02 08:14:35 +00:00
Wim Taymans
41e206534c gst/rtp/: Add raw video pay and depayloaders, see RFC4175.
Original commit message from CVS:
* gst/rtp/Makefile.am:
* gst/rtp/gstrtp.c: (plugin_init):
* gst/rtp/gstrtpvrawdepay.c: (gst_rtp_vraw_depay_base_init),
(gst_rtp_vraw_depay_class_init), (gst_rtp_vraw_depay_init),
(gst_rtp_vraw_depay_setcaps), (gst_rtp_vraw_depay_process),
(gst_rtp_vraw_depay_change_state),
(gst_rtp_vraw_depay_plugin_init):
* gst/rtp/gstrtpvrawdepay.h:
* gst/rtp/gstrtpvrawpay.c: (gst_rtp_vraw_pay_get_type),
(gst_rtp_vraw_pay_base_init), (gst_rtp_vraw_pay_class_init),
(gst_rtp_vraw_pay_init), (gst_rtp_vraw_pay_finalize),
(gst_rtp_vraw_pay_setcaps), (gst_rtp_vraw_pay_handle_buffer),
(gst_rtp_vraw_pay_plugin_init):
* gst/rtp/gstrtpvrawpay.h:
Add raw video pay and depayloaders, see RFC4175.
2008-07-01 13:28:02 +00:00
Mark Nauwelaerts
ae82126a56 gst/avi/avi-ids.h: Add vprp chunk related structures.
Original commit message from CVS:
* gst/avi/avi-ids.h:
Add vprp chunk related structures.
* gst/avi/gstavidemux.c: (gst_avi_demux_riff_parse_vprp),
(gst_avi_demux_parse_stream):
Parse optional vprp chunk and add calculated pixel-aspect-ratio
to caps.  Fixes #539482.
* gst/avi/gstavimux.h:
* gst/avi/gstavimux.c: (gst_avi_mux_pad_reset),
(gst_avi_mux_vidsink_set_caps), (gst_avi_mux_riff_get_avi_header):
Add a vprp chunk if non-trival pixel-aspect-ratio provided in caps.
2008-06-29 19:52:51 +00:00
David Schleef
3665725eaf gst/qtdemux/qtdemux.c: Add Dirac stream type
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: Add Dirac stream type
2008-06-27 18:11:01 +00:00
Mark Nauwelaerts
5e6696db9d gst/avi/gstavimux.*: Add 8 bytes to current streamheader to make for a complete one and to make more players happy. ...
Original commit message from CVS:
* gst/avi/gstavimux.c: (gst_avi_mux_riff_get_avi_header):
* gst/avi/gstavimux.h:
Add 8 bytes to current streamheader to make for a complete one
and to make more players happy.  Fixes #519460.
2008-06-27 15:25:00 +00:00
Sebastian Dröge
8ca7dbfae5 gst/udp/gstudpsrc.c: Call getsockname() after the call to bind() to get updated values for the port, etc. This fixes ...
Original commit message from CVS:
* gst/udp/gstudpsrc.c: (gst_udpsrc_start):
Call getsockname() after the call to bind() to get updated values
for the port, etc. This fixes the usage of udpsrc on anonymous
binding and it's usage by rtspsrc. Fixes bugs #539372, #539548.
Thanks to Aurelien Grimaud for pointing out the obvious fix.
2008-06-25 08:12:18 +00:00
Julien Moutte
75c5d2e4ef gst/matroska/matroska-demux.c: Fix buggy format strings in macros. (makes it build on OS X again...)
Original commit message from CVS:
2008-06-23  Julien Moutte  <julien@fluendo.com>

* gst/matroska/matroska-demux.c:
(gst_matroska_demux_read_track_encoding),
(gst_matroska_demux_parse_blockgroup_or_simpleblock): Fix buggy
format strings in macros. (makes it build on OS X again...)
2008-06-23 16:13:40 +00:00
Thomas Vander Stichele
b3ac90d9e8 gst/: Added debug.
Original commit message from CVS:
* gst/rtp/gstrtptheorapay.c:
* gst/udp/gstmultiudpsink.c:
Added debug.
2008-06-20 16:24:11 +00:00
Wim Taymans
ed0c7a04b1 gst/rtp/gstrtpg726pay.c: Remove unused variable so that we can compile again.
Original commit message from CVS:
* gst/rtp/gstrtpg726pay.c: (gst_rtp_g726_pay_setcaps):
Remove unused variable so that we can compile again.
2008-06-19 11:24:54 +00:00
Peter Kjellerstedt
67e87defd6 gst/rtp/gstrtpg726pay.c: No need to check for audio/G723 and audio/32KADPCM here as they are no longer supported.
Original commit message from CVS:
* gst/rtp/gstrtpg726pay.c: (gst_rtp_g726_pay_setcaps):
No need to check for audio/G723 and audio/32KADPCM here as they are
no longer supported.
2008-06-19 11:06:29 +00:00
Sebastian Dröge
96da520095 gst/matroska/: Fix demuxing of WavPack files. Muxing is still broken.
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_add_wvpk_header),
(gst_matroska_demux_audio_caps):
* gst/matroska/matroska-ids.h:
Fix demuxing of WavPack files. Muxing is still broken.
2008-06-19 10:48:57 +00:00
Sebastian Dröge
7afcb8068a gst/matroska/: Add a "vfunc" to the track context for postprocessing frames and convert the wavpack and subtitle post...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_track_free),
(gst_matroska_demux_add_mpeg_seq_header),
(gst_matroska_demux_add_wvpk_header),
(gst_matroska_demux_check_subtitle_buffer),
(gst_matroska_demux_parse_blockgroup_or_simpleblock),
(gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps),
(gst_matroska_demux_subtitle_caps):
* gst/matroska/matroska-ids.h:
Add a "vfunc" to the track context for postprocessing frames and
convert the wavpack and subtitle postprocessing to this vfunc.
Copy buffer flags in those functions to the new buffers too.
Parse CodecState elements of Blocks.
Add a postprocessing function for MPEG video that adds the sequence
header from the codec private data or codec state to the frames if
it's not already there.
2008-06-19 09:12:55 +00:00
Sebastian Dröge
2d79914948 gst/matroska/matroska-demux.c: If a gap of more than 1/2 second is found in one stream send a
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_blockgroup_or_simpleblock):
If a gap of more than 1/2 second is found in one stream send a
NEWSEGMENT event to not stall the pipeline if the gap is too large.
This also fixes Matroska files where the first buffer doesn't start
at timestamp 0. Fixes bug #429322.
The duration of a block is the default duration multiplied with the
number of laces. Every lace is one frame and the default duration
is the duration of one frame. This fixes playback of files that use
lacing for some tracks.
2008-06-19 08:22:16 +00:00
Sebastian Dröge
0865a6019e gst/matroska/matroska-demux.c: Update FIXME/TODOs and only ignore EOS at the central, important place instead of seve...
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_contents_seekentry):
Update FIXME/TODOs and only ignore EOS at the central, important place
instead of several places.
2008-06-18 20:09:28 +00:00
Wim Taymans
54f515d2c8 gst/rtp/gstrtpg726pay.c: Fix caps, See #538891.
Original commit message from CVS:
* gst/rtp/gstrtpg726pay.c:
Fix caps, See #538891.
2008-06-18 16:55:05 +00:00
Sebastian Dröge
6cf110c1e3 gst/matroska/matroska-demux.c: Improve debug output everywhere and fix the EOS logic.
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_stream_from_num),
(gst_matroska_demux_encoding_cmp),
(gst_matroska_demux_encoding_order_unique),
(gst_matroska_demux_read_track_encoding),
(gst_matroska_demux_read_track_encodings),
(gst_matroska_demux_tracknumber_unique),
(gst_matroska_demux_add_stream), (gst_matroska_demux_init_stream),
(gst_matroska_demux_parse_tracks),
(gst_matroska_demux_parse_index_cuetrack),
(gst_matroska_demux_parse_index_pointentry),
(gst_matroska_demux_parse_index), (gst_matroska_demux_parse_info),
(gst_matroska_demux_parse_metadata_id_simple_tag),
(gst_matroska_demux_parse_metadata_id_tag),
(gst_matroska_demux_parse_metadata),
(gst_matroska_demux_parse_attached_file),
(gst_matroska_demux_parse_attachments),
(gst_matroska_demux_parse_chapters),
(gst_matroska_demux_sync_streams), (gst_matroska_decode_buffer),
(gst_matroska_demux_parse_blockgroup_or_simpleblock),
(gst_matroska_demux_parse_cluster),
(gst_matroska_demux_parse_contents_seekentry),
(gst_matroska_demux_parse_contents),
(gst_matroska_demux_loop_stream_parse_id),
(gst_matroska_demux_loop):
Improve debug output everywhere and fix the EOS logic.
Check the values of the ContentEncoding elements more strictly and
don't use tracks for which it's invalid.
Check that the track number is unique for this stream.
Check that seek positions are below G_MAXINT64 as our seeks are
int64-based and overflows will fail badly.
After seeks also don't push SimpleBlocks until the first one
containing a keyframe is found. Before this was done only for normal
Blocks.
Update some FIXME/TODOs.
* gst/matroska/ebml-read.c: (gst_ebml_read_peek_bytes),
(gst_ebml_read_utf8), (gst_ebml_read_header):
Improve debug output.
* gst/matroska/matroska-ids.c:
(gst_matroska_track_init_video_context):
* gst/matroska/matroska-ids.h:
* gst/matroska/matroska-mux.c:
(gst_matroska_mux_video_pad_setcaps):
Remove eye mode and don't parse it anymore. We can't use that
information in GStreamer yet so it's useless.
2008-06-18 10:28:20 +00:00
mersad
e3141bbb49 gst/rtp/: Added G726 pay/depayloaders. Fixes #538891.
Original commit message from CVS:
Patch by: mersad <mersad at axis dot com>
* gst/rtp/Makefile.am:
* gst/rtp/gstrtp.c: (plugin_init):
* gst/rtp/gstrtpg726depay.c: (gst_rtp_g726_depay_base_init),
(gst_rtp_g726_depay_class_init), (gst_rtp_g726_depay_init),
(gst_rtp_g726_depay_setcaps), (gst_rtp_g726_depay_process),
(gst_rtp_g726_depay_plugin_init):
* gst/rtp/gstrtpg726depay.h:
* gst/rtp/gstrtpg726pay.c: (gst_rtp_g726_pay_base_init),
(gst_rtp_g726_pay_class_init), (gst_rtp_g726_pay_init),
(gst_rtp_g726_pay_setcaps), (gst_rtp_g726_pay_plugin_init):
* gst/rtp/gstrtpg726pay.h:
Added G726 pay/depayloaders. Fixes #538891.
2008-06-18 10:12:57 +00:00
Wim Taymans
198224ef58 gst/rtsp/URLS: Some more urls.
Original commit message from CVS:
* gst/rtsp/URLS:
Some more urls.
* gst/smpte/barboxwipes.c:
Add a comment
* tests/examples/rtp/server-v4l2-H264-alsasrc-PCMA.sh:
Fix typo, add audioresample to the pipeline.
2008-06-17 10:14:47 +00:00
Sebastian Dröge
a5f813b90a gst/matroska/matroska-demux.c: When comparing index elements with the same time compare their block number.
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_index_compare):
When comparing index elements with the same time compare their
block number.
2008-06-16 11:34:54 +00:00
Tim-Philipp Müller
350df6326d gst/matroska/matroska-demux.c: (gst_matroska_demux_parse_attached_file)
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_attached_file)
Init variable to NULL to avoid compiler warning.
2008-06-16 11:31:06 +00:00
Sebastian Dröge
8c6d2c506a gst/matroska/: Parse Attachments and post them as GST_TAG_IMAGE if we detect it as image and otherwise as GST_TAG_ATT...
Original commit message from CVS:
* gst/matroska/Makefile.am:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_parse_attached_file),
(gst_matroska_demux_parse_attachments),
(gst_matroska_demux_parse_contents_seekentry),
(gst_matroska_demux_loop_stream_parse_id):
* gst/matroska/matroska-demux.h:
* gst/matroska/matroska-ids.c: (gst_matroska_register_tags):
* gst/matroska/matroska-ids.h:
* gst/matroska/matroska.c: (plugin_init):
Parse Attachments and post them as GST_TAG_IMAGE if we detect
it as image and otherwise as GST_TAG_ATTACHMENT. Include filename
and description of the attachments in the caps. Fixes bug #537622.
2008-06-16 10:59:39 +00:00
Sebastian Dröge
5e606453c0 gst/matroska/ebml-read.c: Return GST_FLOW_UNEXPECTED instead of GST_FLOW_ERROR on short reads.
Original commit message from CVS:
* gst/matroska/ebml-read.c: (gst_ebml_read_peek_bytes):
Return GST_FLOW_UNEXPECTED instead of GST_FLOW_ERROR on short reads.
If we get less bytes than requested we can't do anything except doing
our EOS logic.
2008-06-16 09:54:27 +00:00
Sebastian Dröge
94f778f952 gst/matroska/: Use a GArray for storing the Cue (i.e. seek) information, store the CueTrackPositions for every track,...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroskademux_do_index_seek),
(gst_matroska_demux_parse_index_cuetrack),
(gst_matroska_demux_parse_index_pointentry),
(gst_matroska_index_compare), (gst_matroska_demux_parse_index),
(gst_matroska_demux_parse_metadata):
* gst/matroska/matroska-demux.h:
* gst/matroska/matroska-ids.h:
Use a GArray for storing the Cue (i.e. seek) information, store
the CueTrackPositions for every track, store the block number
and optimize searching in the array by sorting it after the last
element was added.
Fix a small memory leak when trying to parse a tags element that was
already parsed.
2008-06-15 19:09:54 +00:00
Sebastian Dröge
25e2770edf gst/matroska/matroska-mux.*: Don't write another SeekHead which indexes all Clusters to the end of the file. This isn...
Original commit message from CVS:
* gst/matroska/matroska-mux.c: (gst_matroska_mux_reset),
(gst_matroska_mux_start), (gst_matroska_mux_finish),
(gst_matroska_mux_write_data):
* gst/matroska/matroska-mux.h:
Don't write another SeekHead which indexes all Clusters to the end of
the file. This isn't useful for anything and just increases filesize.
2008-06-15 15:29:29 +00:00
Sebastian Dröge
99f206c055 gst/matroska/ebml-read.c: Prevent unaligned memory access when reading floats.
Original commit message from CVS:
* gst/matroska/ebml-read.c: (_ext2dbl), (gst_ebml_read_float):
Prevent unaligned memory access when reading floats.
2008-06-15 15:01:30 +00:00
Sebastian Dröge
8012622e1b gst/matroska/: Make sure that every Tags element is only parsed once and it's containing tags are only posted once.
Original commit message from CVS:
* gst/matroska/ebml-read.c:
* gst/matroska/ebml-read.h:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_parse_metadata):
* gst/matroska/matroska-demux.h:
Make sure that every Tags element is only parsed once and it's
containing tags are only posted once.
2008-06-15 14:08:41 +00:00
Sebastian Dröge
3a99102c49 gst/matroska/: Handle EBML elements like Void or CRC32 in the EbmlRead base class already. They're not useful in the ...
Original commit message from CVS:
* gst/matroska/ebml-read.c: (gst_ebml_peek_id),
(gst_ebml_read_header):
* gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream),
(gst_matroska_demux_parse_tracks),
(gst_matroska_demux_parse_index_cuetrack),
(gst_matroska_demux_parse_index_pointentry),
(gst_matroska_demux_parse_index), (gst_matroska_demux_parse_info),
(gst_matroska_demux_parse_metadata_id_simple_tag),
(gst_matroska_demux_parse_metadata_id_tag),
(gst_matroska_demux_parse_metadata),
(gst_matroska_demux_parse_attachments),
(gst_matroska_demux_parse_chapters),
(gst_matroska_demux_parse_blockgroup_or_simpleblock),
(gst_matroska_demux_parse_cluster),
(gst_matroska_demux_parse_contents_seekentry),
(gst_matroska_demux_parse_contents),
(gst_matroska_demux_loop_stream_parse_id):
Handle EBML elements like Void or CRC32 in the EbmlRead base class
already. They're not useful in the matroska parser and only cause
additional code.
2008-06-15 09:43:25 +00:00
Sebastian Dröge
1051e57b36 gst/matroska/: Reverse the level list as we usually are only interested in the first element or want to add a new fir...
Original commit message from CVS:
* gst/matroska/ebml-read.c: (gst_ebml_level_free),
(gst_ebml_finalize), (gst_ebml_read_change_state),
(gst_ebml_read_element_level_up), (gst_ebml_read_master):
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_contents_seekentry):
Reverse the level list as we usually are only interested in the
first element or want to add a new first element. Having the
first element stored at the end and calling g_list_last() and
g_list_append() is more expensive.
Also use GSlice for allocating the GstEbmlLevel structs.
2008-06-14 15:51:25 +00:00
Tim-Philipp Müller
7a118610ed gst/debug/gsttaginject.c: Don't unref NULL taglist in finalize. Don't use c++ style comments.
Original commit message from CVS:
* gst/debug/gsttaginject.c: (gst_tag_inject_finalize),
(gst_tag_inject_class_init), (gst_tag_inject_init):
Don't unref NULL taglist in finalize. Don't use c++ style
comments.
2008-06-13 21:13:46 +00:00
Sebastian Dröge
70ceffb790 gst/matroska/: Use gst_value_serialize() and gst_value_deserialize() for transforming tags from some GType to a strin...
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_metadata_id_simple_tag):
* gst/matroska/matroska-mux.c: (gst_matroska_mux_write_simple_tag),
(gst_matroska_mux_write_data):
Use gst_value_serialize() and gst_value_deserialize() for transforming
tags from some GType to a string and the other way around. The default
transformations in GLib don't include transformations from string to
number types.
2008-06-13 19:14:41 +00:00
Sebastian Dröge
04d1c49ef7 gst/matroska/matroska-demux.*: Only parse Tracks, SeekHead and SegmentInfo elements once but allow
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_parse_tracks),
(gst_matroska_demux_parse_index), (gst_matroska_demux_parse_info),
(gst_matroska_demux_parse_attachments),
(gst_matroska_demux_parse_chapters),
(gst_matroska_demux_parse_contents_seekentry),
(gst_matroska_demux_loop_stream_parse_id):
* gst/matroska/matroska-demux.h:
Only parse Tracks, SeekHead and SegmentInfo elements once but allow
Tags multiple times. The first ones can appear more than once but must
contain the same content as the first for backup purposes so we ignore
all but the first one. Tags can appear multiple times with different
content.
Jump to all elements except Clusters that are available from a
SeekHead to make it more likely to have all required informations
before getting to the first Clusters.
Add dummy functions for parsing Attachments and Chapters.
2008-06-13 19:07:03 +00:00
Stefan Kost
764f5106a5 gst/replaygain/: More doc updates.
Original commit message from CVS:
* gst/replaygain/gstrganalysis.c:
* gst/replaygain/gstrglimiter.c:
* gst/replaygain/gstrgvolume.c:
More doc updates.
2008-06-13 14:33:52 +00:00
Stefan Kost
b442ba6f55 docs/plugins/: docs/plugins/inspect/plugin-mythtv.xml
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* docs/plugins/gst-plugins-bad-plugins.args:
* docs/plugins/gst-plugins-bad-plugins.hierarchy:
* docs/plugins/gst-plugins-bad-plugins.interfaces:
* docs/plugins/gst-plugins-bad-plugins.prerequisites:
* docs/plugins/gst-plugins-bad-plugins.signals:
* docs/plugins/inspect/plugin-alsaspdif.xml:
* docs/plugins/inspect/plugin-amrwb.xml:
* docs/plugins/inspect/plugin-app.xml:
* docs/plugins/inspect/plugin-bayer.xml:
* docs/plugins/inspect/plugin-bz2.xml:
* docs/plugins/inspect/plugin-cdaudio.xml:
* docs/plugins/inspect/plugin-cdxaparse.xml:
* docs/plugins/inspect/plugin-dtsdec.xml:
* docs/plugins/inspect/plugin-dvb.xml:
* docs/plugins/inspect/plugin-dvdspu.xml:
* docs/plugins/inspect/plugin-faac.xml:
* docs/plugins/inspect/plugin-faad.xml:
* docs/plugins/inspect/plugin-fbdevsink.xml:
* docs/plugins/inspect/plugin-festival.xml:
* docs/plugins/inspect/plugin-filter.xml:
* docs/plugins/inspect/plugin-flvdemux.xml:
* docs/plugins/inspect/plugin-freeze.xml:
* docs/plugins/inspect/plugin-gsm.xml:
* docs/plugins/inspect/plugin-gstinterlace.xml:
* docs/plugins/inspect/plugin-gstrtpmanager.xml:
* docs/plugins/inspect/plugin-h264parse.xml:
* docs/plugins/inspect/plugin-interleave.xml:
* docs/plugins/inspect/plugin-jack.xml:
* docs/plugins/inspect/plugin-ladspa.xml:
* docs/plugins/inspect/plugin-metadata.xml:
* docs/plugins/inspect/plugin-mms.xml:
* docs/plugins/inspect/plugin-modplug.xml:
* docs/plugins/inspect/plugin-mpeg2enc.xml:
* docs/plugins/inspect/plugin-mpeg4videoparse.xml:
* docs/plugins/inspect/plugin-mpegtsparse.xml:
* docs/plugins/inspect/plugin-mpegvideoparse.xml:
* docs/plugins/inspect/plugin-musepack.xml:
* docs/plugins/inspect/plugin-musicbrainz.xml:
* docs/plugins/inspect/plugin-mve.xml:
* docs/plugins/inspect/plugin-mythtv.xml
* docs/plugins/inspect/plugin-nas.xml:
* docs/plugins/inspect/plugin-neon.xml:
* docs/plugins/inspect/plugin-nsfdec.xml:
* docs/plugins/inspect/plugin-nuvdemux.xml:
* docs/plugins/inspect/plugin-oss4.xml
* docs/plugins/inspect/plugin-rawparse.xml:
* docs/plugins/inspect/plugin-real.xml:
* docs/plugins/inspect/plugin-replaygain.xml:
* docs/plugins/inspect/plugin-rfbsrc.xml:
* docs/plugins/inspect/plugin-sdl.xml:
* docs/plugins/inspect/plugin-sdp.xml:
* docs/plugins/inspect/plugin-selector.xml:
* docs/plugins/inspect/plugin-sndfile.xml:
* docs/plugins/inspect/plugin-soundtouch.xml:
* docs/plugins/inspect/plugin-spcdec.xml:
* docs/plugins/inspect/plugin-speed.xml:
* docs/plugins/inspect/plugin-speexresample.xml:
* docs/plugins/inspect/plugin-stereo.xml:
* docs/plugins/inspect/plugin-subenc.xml
* docs/plugins/inspect/plugin-timidity.xml:
* docs/plugins/inspect/plugin-tta.xml:
* docs/plugins/inspect/plugin-vcdsrc.xml:
* docs/plugins/inspect/plugin-videosignal.xml:
* docs/plugins/inspect/plugin-vmnc.xml:
* docs/plugins/inspect/plugin-wildmidi.xml:
* docs/plugins/inspect/plugin-x264.xml:
* docs/plugins/inspect/plugin-xvid.xml:
* docs/plugins/inspect/plugin-y4menc.xml:
* ext/amrwb/gstamrwbdec.c:
* ext/amrwb/gstamrwbenc.c:
* ext/amrwb/gstamrwbparse.c:
* ext/dc1394/gstdc1394.c:
* ext/directfb/dfbvideosink.c:
* ext/ivorbis/vorbisdec.c:
* ext/jack/gstjackaudiosink.c:
* ext/mpeg2enc/gstmpeg2enc.cc:
* ext/mplex/gstmplex.cc:
* ext/musicbrainz/gsttrm.c:
* ext/mythtv/gstmythtvsrc.c:
* ext/theora/theoradec.c:
* ext/timidity/gsttimidity.c:
* ext/timidity/gstwildmidi.c:
* gst-libs/gst/app/gstappsink.c:
* gst/deinterlace/gstdeinterlace.c:
* gst/dvdspu/gstdvdspu.c:
* gst/festival/gstfestival.c:
* gst/freeze/gstfreeze.c:
* gst/interleave/deinterleave.c:
* gst/interleave/interleave.c:
* gst/modplug/gstmodplug.cc:
* gst/nuvdemux/gstnuvdemux.c:
Add missing elements to docs. Fix doc-markup: use convinience syntax
for examples (produces valid docbook), add several refsec2 when we
have several titles. Fix some types.
2008-06-13 11:59:23 +00:00
Wim Taymans
ccddfc5da7 gst/udp/gstudpsrc.*: Add property to control automatic join/leave of multicast groups.
Original commit message from CVS:
* gst/udp/gstudpsrc.c: (gst_udpsrc_class_init), (gst_udpsrc_init),
(gst_udpsrc_create), (gst_udpsrc_set_property),
(gst_udpsrc_get_property), (gst_udpsrc_start), (gst_udpsrc_stop):
* gst/udp/gstudpsrc.h:
Add property to control automatic join/leave of multicast groups.
Add G_LIKELY.
Remove setting caps on buffers explicitly, basesrc does that for us now.
Improve debug info.
Convert some non-fatal error into warnings.
Use g_ntohs for better portability.
Leave multicast groups when stopping.
When using external sockets, use getsockname() on them to fill up the
addr structure before calling methods that use the structure.
Should all fix #536903.
API: GstUDPSrc::auto-multicast property
2008-06-13 11:54:05 +00:00
Wim Taymans
5b751d0290 gst/udp/gstudpnetutils.c: Use g_ntohl for better portability.
Original commit message from CVS:
* gst/udp/gstudpnetutils.c: (gst_udp_is_multicast):
Use g_ntohl for better portability.
2008-06-13 11:47:28 +00:00
Wim Taymans
ab58eeec2e gst/udp/gstmultiudpsink.c: Fix a typo and do some small cleanups.
Original commit message from CVS:
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_init_send),
(gst_multiudpsink_remove):
Fix a typo and do some small cleanups.
2008-06-13 11:45:54 +00:00
Olivier Crete
2ba1de92a4 gst/rtp/gstrtptheoradepay.c: Make the delivery-method mandatory on the caps and only accept inline for now.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/rtp/gstrtptheoradepay.c: (gst_rtp_theora_depay_setcaps):
Make the delivery-method mandatory on the caps and only accept inline
for now.
Reverse strcmp checks for delivery-method.
* gst/rtp/gstrtpvorbisdepay.c: (gst_rtp_vorbis_depay_setcaps):
Make delivery method optional when parsing caps and note this in the
caps.
Reverse strcmp checks for delivery-method.
* gst/rtp/gstrtpvorbispay.c:
Update a comment to note that the delivery-method is optional,
Fixes #537675.
2008-06-13 09:39:41 +00:00
Wim Taymans
8d901b4bfc gst/rtsp/gstrtspsrc.c: Set udpsrc for receiving data from multicast groups to PAUSED instead of leaving them in READY...
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_configure_mcast):
Set udpsrc for receiving data from multicast groups to PAUSED instead of
leaving them in READY. Fixes #537832.
2008-06-12 17:30:06 +00:00
Stefan Kost
8fc46085b3 gst/avi/gstavimux.c: Simplify code. gst_tag_list_merge() does the NULL checks. Add a FIXME for a random constant in t...
Original commit message from CVS:
* gst/avi/gstavimux.c:
Simplify code. gst_tag_list_merge() does the NULL checks. Add a FIXME
for a random constant in tagmuxing code.
2008-06-12 12:14:38 +00:00
Stefan Kost
b3cfa35a6f gst/debug/gsttaginject.*: Now actually adding the new element.
Original commit message from CVS:
* gst/debug/gsttaginject.c:
* gst/debug/gsttaginject.h:
Now actually adding the new element.
2008-06-11 14:28:44 +00:00
Stefan Kost
a3a8b70762 Remove dummy plugin_init. Remove some undefined entries from doc- section file. Add taginject element and rebuild doc...
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-good-plugins-docs.sgml:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* docs/plugins/gst-plugins-good-plugins.args:
* docs/plugins/gst-plugins-good-plugins.hierarchy:
* docs/plugins/gst-plugins-good-plugins.interfaces:
* docs/plugins/gst-plugins-good-plugins.prerequisites:
* docs/plugins/inspect/plugin-aasink.xml:
* docs/plugins/inspect/plugin-alaw.xml:
* docs/plugins/inspect/plugin-alpha.xml:
* docs/plugins/inspect/plugin-alphacolor.xml:
* docs/plugins/inspect/plugin-annodex.xml:
* docs/plugins/inspect/plugin-apetag.xml:
* docs/plugins/inspect/plugin-audiofx.xml:
* docs/plugins/inspect/plugin-auparse.xml:
* docs/plugins/inspect/plugin-autodetect.xml:
* docs/plugins/inspect/plugin-avi.xml:
* docs/plugins/inspect/plugin-cacasink.xml:
* docs/plugins/inspect/plugin-cairo.xml:
* docs/plugins/inspect/plugin-cdio.xml:
* docs/plugins/inspect/plugin-cutter.xml:
* docs/plugins/inspect/plugin-debug.xml:
* docs/plugins/inspect/plugin-dv.xml:
* docs/plugins/inspect/plugin-efence.xml:
* docs/plugins/inspect/plugin-effectv.xml:
* docs/plugins/inspect/plugin-equalizer.xml:
* docs/plugins/inspect/plugin-esdsink.xml:
* docs/plugins/inspect/plugin-flac.xml:
* docs/plugins/inspect/plugin-flxdec.xml:
* docs/plugins/inspect/plugin-gamma.xml:
* docs/plugins/inspect/plugin-gconfelements.xml:
* docs/plugins/inspect/plugin-gdkpixbuf.xml:
* docs/plugins/inspect/plugin-goom.xml:
* docs/plugins/inspect/plugin-goom2k1.xml:
* docs/plugins/inspect/plugin-halelements.xml:
* docs/plugins/inspect/plugin-icydemux.xml:
* docs/plugins/inspect/plugin-id3demux.xml:
* docs/plugins/inspect/plugin-jpeg.xml:
* docs/plugins/inspect/plugin-level.xml:
* docs/plugins/inspect/plugin-matroska.xml:
* docs/plugins/inspect/plugin-monoscope.xml:
* docs/plugins/inspect/plugin-mulaw.xml:
* docs/plugins/inspect/plugin-multifile.xml:
* docs/plugins/inspect/plugin-multipart.xml:
* docs/plugins/inspect/plugin-navigationtest.xml:
* docs/plugins/inspect/plugin-ossaudio.xml:
* docs/plugins/inspect/plugin-png.xml:
* docs/plugins/inspect/plugin-quicktime.xml:
* docs/plugins/inspect/plugin-rtp.xml:
* docs/plugins/inspect/plugin-rtsp.xml:
* docs/plugins/inspect/plugin-smpte.xml:
* docs/plugins/inspect/plugin-soup.xml:
* docs/plugins/inspect/plugin-spectrum.xml:
* docs/plugins/inspect/plugin-speex.xml:
* docs/plugins/inspect/plugin-taglib.xml:
* docs/plugins/inspect/plugin-udp.xml:
* docs/plugins/inspect/plugin-video4linux2.xml:
* docs/plugins/inspect/plugin-videobalance.xml:
* docs/plugins/inspect/plugin-videobox.xml:
* docs/plugins/inspect/plugin-videocrop.xml:
* docs/plugins/inspect/plugin-videoflip.xml:
* docs/plugins/inspect/plugin-videomixer.xml:
* docs/plugins/inspect/plugin-wavenc.xml:
* docs/plugins/inspect/plugin-wavpack.xml:
* docs/plugins/inspect/plugin-wavparse.xml:
* docs/plugins/inspect/plugin-ximagesrc.xml:
* gst/debug/Makefile.am:
* gst/debug/breakmydata.c:
* gst/debug/efence.c:
* gst/debug/gstdebug.c:
* gst/debug/gstnavseek.c:
* gst/debug/gstpushfilesrc.c:
* gst/debug/gstpushfilesrc.h:
* gst/debug/negotiation.c:
* gst/debug/progressreport.c:
* gst/debug/progressreport.h:
* gst/debug/rndbuffersize.c:
* gst/debug/testplugin.c:
Remove dummy plugin_init. Remove some undefined entries from doc-
section file. Add taginject element and rebuild docs for it.
2008-06-11 14:11:16 +00:00
Sebastian Dröge
1ad81019a2 gst/matroska/matroska-mux.c: Update the counter for the number of streams when pads are added or removed. This will m...
Original commit message from CVS:
* gst/matroska/matroska-mux.c: (gst_matroska_mux_request_new_pad),
(gst_matroska_mux_release_pad), (gst_matroska_mux_write_data):
Update the counter for the number of streams when pads are added or
removed. This will make sure that a seek table is generated for
files with just one audio stream.
2008-06-11 11:27:46 +00:00
Sebastian Dröge
4c46ceb4cb gst/matroska/: Add some more tags, improve debugging a bit and make sure that
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_metadata_id_simple_tag):
* gst/matroska/matroska-ids.h:
* gst/matroska/matroska-mux.c: (gst_matroska_mux_write_simple_tag):
Add some more tags, improve debugging a bit and make sure that
GValue transformation has succeeded before using the result
as a tag.
2008-06-11 11:18:23 +00:00