summaryrefslogtreecommitdiffstats
path: root/gst/avi/gstavidemux.c
Commit message (Collapse)AuthorAgeFilesLines
...
* avidemux: don't post an error if EOS can't be pushed downstream.Alessandro Decina2009-03-241-6/+1
| | | | | This aligns avidemux with other demuxers and fixes a bug using avidemux with a recent gnonlin.
* avidemux: fix SEEK event handling in push modeJulien Moutte2009-02-261-3/+10
| | | | | When in push mode we should not try to handle the SEEK event as there's no code to handle it properly. Propagate upstream.
* avidemux: avoid crashing on subtitlesWim Taymans2009-02-251-2/+9
| | | | | Avoid a crash in avi with subtitles by only dereferencing the video description when we actually are dealing with video in the _invert function.
* avidemux: Fix alignment issues by using GST_READ_*Sebastian Dröge2009-02-221-5/+5
| | | | | | | | Reading integers from random memory addresses will result in SIGBUS on some architectures if the memory address is not correctly aligned. This can happen at two places in avidemux so we should use GST_READ_UINT32_LE and friends here. Fixes bug #572256.
* Remove useless processing for non-raw formatsEdward Hervey2009-01-301-10/+8
|
* Update and add documentation for plugins with no deps (gst).Stefan Kost2009-01-281-10/+5
| | | | Link to properties. Correct titles for examples. Document a few trivial cases. Keep lists in section file and docs/plugins/Makefile.am alphabetically ordered.
* gst/avi/gstavidemux.c: More logging.Stefan Kost2008-12-091-1/+6
| | | | | | | | | | Original commit message from CVS: * gst/avi/gstavidemux.c: More logging. * gst/avi/gstavimux.c: Handle more metadata fields. Better estimate of metadata size. Don't merge received tags, if application has specified tags using GST_TAG_MERGE_REPLACE_ALL. Fixes #563221 for avi.
* gst/avi/gstavidemux.c: Invert other uncompressed RGB formats. Fixes #558554.Nick Haddad2008-10-311-5/+17
| | | | | | | | | Original commit message from CVS: Patch by: Nick Haddad <nick at haddads dot net> * gst/avi/gstavidemux.c: (gst_avi_demux_is_uncompressed), (gst_avi_demux_invert), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data): Invert other uncompressed RGB formats. Fixes #558554.
* gst/avi/gstavidemux.c: Skip entries for streams that don't have a output pad ↵Edward Hervey2008-10-151-0/+6
| | | | | | | | | | yet, thereby avoiding calling pad functi... Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_stream_scan): Skip entries for streams that don't have a output pad yet, thereby avoiding calling pad functions with a NULL pad. Fixes #556424
* gst/avi/gstavidemux.c: Reset header state. Fixes #555321.Wim Taymans2008-10-081-0/+1
| | | | | | | Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_reset), (gst_avi_demux_parse_subindex), (gst_avi_demux_parse_index): Reset header state. Fixes #555321.
* gst/avi/gstavidemux.*: For timestamping audio packets we need to take into ↵Wim Taymans2008-10-081-5/+32
| | | | | | | | | | | | account the amount of blocks in one entry ... Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_parse_subindex), (gst_avi_demux_parse_stream), (gst_avi_demux_parse_index): * gst/avi/gstavidemux.h: For timestamping audio packets we need to take into account the amount of blocks in one entry using the blockalign. Fixes some sync issues with zero-padded audio blocks in the beginning of avi files.
* Make stuff compile with GST_DISABLE_GST_DEBUG.Tim-Philipp Müller2008-08-301-5/+3
| | | | | | | | | | | | | Original commit message from CVS: * ext/raw1394/gsthdv1394src.c: (gst_hdv1394src_create): * gst/alpha/gstalpha.c: (gst_alpha_get_unit_size): * gst/audiofx/audiocheblimit.c: (generate_coefficients): * gst/avi/gstavidemux.c: (gst_avi_demux_src_convert): * gst/matroska/ebml-read.c: (gst_ebml_read_element_id), (gst_ebml_read_element_length): * gst/matroska/matroska-demux.c: (gst_matroska_demux_check_subtitle_buffer): Make stuff compile with GST_DISABLE_GST_DEBUG.
* gst/avi/gstavidemux.c: Some AVI 2.0 (ODML) files don't respect the ↵Edward Hervey2008-08-161-4/+10
| | | | | | | | | | | | '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.
* gst/avi/gstavidemux.c: Fix build of avidemux on big endian architectures.Alessandro Decina2008-07-141-3/+3
| | | | | | | 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.
* gst/avi/avi-ids.h: Add vprp chunk related structures.Mark Nauwelaerts2008-06-291-1/+163
| | | | | | | | | | | | | | 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.
* gst/avi/gstavidemux.c: Try to ignore unparsable/unknown streams and give a ↵Wim Taymans2008-06-101-13/+21
| | | | | | | | | | | | | warning instead of erroring out. Fixes #53... Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream), (gst_avi_demux_parse_index), (gst_avi_demux_massage_index), (gst_avi_demux_calculate_durations_from_index), (gst_avi_demux_stream_header_push), (gst_avi_demux_stream_header_pull): Try to ignore unparsable/unknown streams and give a warning instead of erroring out. Fixes #537377.
* gst/avi/gstavidemux.c: Catch UNEXPECTED when downstream has reached end of ↵Thijs Vermeir2008-06-051-24/+60
| | | | | | | | | segment in reverse mode. Original commit message from CVS: * gst/avi/gstavidemux.c: Catch UNEXPECTED when downstream has reached end of segment in reverse mode.
* gst/avi/gstavidemux.c: Fix typo in commentThijs Vermeir2008-06-041-1/+1
| | | | | | Original commit message from CVS: * gst/avi/gstavidemux.c: Fix typo in comment
* gst/avi/gstavidemux.c: Because we don't know the frame order we need to push ↵Thijs Vermeir2008-06-041-4/+14
| | | | | | | | | till the next keyframe Original commit message from CVS: * gst/avi/gstavidemux.c: Because we don't know the frame order we need to push till the next keyframe
* gst/avi/gstavidemux.c: Set EOS when going out of the segment in reverse playbackThijs Vermeir2008-06-041-4/+19
| | | | | | Original commit message from CVS: * gst/avi/gstavidemux.c: Set EOS when going out of the segment in reverse playback
* gst/avi/gstavidemux.*: Implement reverse playback. Fixes #535300.Thijs Vermeir2008-06-021-48/+152
| | | | | | | | | | | | Original commit message from CVS: Patch by: Thijs Vermeir <thijsvermeir at gmail dot com> * gst/avi/gstavidemux.c: (gst_avi_demux_index_next), (gst_avi_demux_index_prev), (gst_avi_demux_index_entry_for_time), (gst_avi_demux_do_seek), (gst_avi_demux_handle_seek), (gst_avi_demux_process_next_entry): * gst/avi/gstavidemux.h: Implement reverse playback. Fixes #535300. Small cleanups.
* gst/avi/gstavidemux.c: Fix typo in comments.Wim Taymans2008-04-251-1/+1
| | | | | | | | | | | | | | | | | | Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_combine_flows): Fix typo in comments. * tests/examples/rtp/client-H263p-PCMA.sdp: * tests/examples/rtp/client-H263p-PCMA.sh: * tests/examples/rtp/client-H264-PCMA.sdp: * tests/examples/rtp/client-H264-PCMA.sh: * tests/examples/rtp/client-H264.sdp: * tests/examples/rtp/client-H264.sh: * tests/examples/rtp/client-PCMA.sdp: * tests/examples/rtp/client-PCMA.sh: * tests/examples/rtp/server-alsasrc-PCMA.sh: * tests/examples/rtp/server-v4l2-H263p-alsasrc-AMR.sh: * tests/examples/rtp/server-v4l2-H264-alsasrc-PCMA.sh: Add some more docs and fix examples.
* gst/avi/gstavidemux.c: Erm, the buffer-size is just guint, no need for the ↵Stefan Kost2008-03-161-1/+1
| | | | | | | | | special format specifier. Original commit message from CVS: * gst/avi/gstavidemux.c: Erm, the buffer-size is just guint, no need for the special format specifier.
* gst/avi/gstavidemux.c: Fix up my last commit. Use G_GUINT32_FORMAT for the ↵Stefan Kost2008-03-161-3/+4
| | | | | | | | | guint32 debug log. Original commit message from CVS: * gst/avi/gstavidemux.c: Fix up my last commit. Use G_GUINT32_FORMAT for the guint32 debug log. Also downgrade a GST_WARNING to GST_DEBUG and add a comment.
* gst/avi/gstavidemux.c: Chunksize is uint32. Fix format specifier.Stefan Kost2008-03-151-3/+3
| | | | | | Original commit message from CVS: * gst/avi/gstavidemux.c: Chunksize is uint32. Fix format specifier.
* gst/avi/gstavidemux.c: Revert patch which sends timestamps only on ↵Jan Schmidt2008-02-111-13/+3
| | | | | | | | | | keyframes, as it breaks playback with current gst-... Original commit message from CVS: * gst/avi/gstavidemux.c: Revert patch which sends timestamps only on keyframes, as it breaks playback with current gst-ffmpeg. Fixes: #515562
* gst/avi/gstavidemux.c: If there's no entries in the subindex, don't try to ↵Edward Hervey2008-02-041-0/+4
| | | | | | | | | do anything stupid, just return. Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_parse_subindex): If there's no entries in the subindex, don't try to do anything stupid, just return.
* gst/avi/gstavidemux.c: GStreamer timestamps are PTS values while AVI only ↵Wim Taymans2008-01-291-3/+13
| | | | | | | | | | | knows about DTS timestamps. Make sure we on... Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data): GStreamer timestamps are PTS values while AVI only knows about DTS timestamps. Make sure we only copy the DTS as the buffer timestamp when we are dealing with a key frame.
* Fix 'xyz may be used uninitialized' compiler warnings caused by broken ↵Tim-Philipp Müller2007-12-261-1/+3
| | | | | | | | | | | | g_assert_not_reached() macro in GLib-2.15.x (i... Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_loop): * gst/wavparse/gstwavparse.c: (gst_wavparse_chain): * sys/ximage/gstximagesrc.c: (composite_pixel): Fix 'xyz may be used uninitialized' compiler warnings caused by broken g_assert_not_reached() macro in GLib-2.15.x (it's not really nice to abort in any case). Fixes #505745.
* gst/: Return the result in _activate_pull(). Don't ref element there.Stefan Kost2007-11-131-6/+5
| | | | | | | Original commit message from CVS: * gst/avi/gstavidemux.c: * gst/wavparse/gstwavparse.c: Return the result in _activate_pull(). Don't ref element there.
* gst/: Drop EOS in _handle_src_event(). Fix the refcount in qtdemux that ↵Stefan Kost2007-11-121-0/+5
| | | | | | | | | | previous commit messed up. Original commit message from CVS: * gst/avi/gstavidemux.c: * gst/qtdemux/qtdemux.c: Drop EOS in _handle_src_event(). Fix the refcount in qtdemux that previous commit messed up.
* gst/: Sync _handle_src_event() with oggdemux. In avidemux also ref the ↵Stefan Kost2007-11-121-12/+9
| | | | | | | | | | element when we should, but not when we its no... Original commit message from CVS: * gst/avi/gstavidemux.c: * gst/qtdemux/qtdemux.c: Sync _handle_src_event() with oggdemux. In avidemux also ref the element when we should, but not when we its not needed.
* gst/avi/gstavidemux.c: Plug a little leak. Little code cleanups.Stefan Kost2007-09-101-5/+8
| | | | | | Original commit message from CVS: * gst/avi/gstavidemux.c: Plug a little leak. Little code cleanups.
* gst/avi/gstavidemux.c: Implement seek-query.Stefan Kost2007-09-031-0/+26
| | | | | | Original commit message from CVS: * gst/avi/gstavidemux.c: Implement seek-query.
* gst/avi/gstavidemux.*: Parse subtitle text streams instead of erroring out ↵Tim-Philipp Müller2007-05-301-2/+21
| | | | | | | | | | | (#442034). Still needs a parser for the su... Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_base_init), (gst_avi_demux_reset), (gst_avi_demux_parse_stream): * gst/avi/gstavidemux.h: Parse subtitle text streams instead of erroring out (#442034). Still needs a parser for the subtitles to actually show up.
* gst/avi/gstavidemux.c: Make _push_event() return TRUE if the event could be ↵Tim-Philipp Müller2007-05-301-8/+9
| | | | | | | | | | | | pushed on at least one pad and not only i... Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_push_event), (gst_avi_demux_loop): Make _push_event() return TRUE if the event could be pushed on at least one pad and not only if it could be pushed on all pads, otherwise we'll end up posting an error message on EOS if one or more source pads are not connected.
* gst/: Fix some compiler warnings. Fixes #428182.Peter Kjellerstedt2007-04-101-1/+1
| | | | | | | | | | | | | | Original commit message from CVS: Patch by: Peter Kjellerstedt <pkj at axis com> * gst/avi/gstavidemux.c: (gst_avi_demux_massage_index): * gst/rtp/gstrtpL16depay.c: * gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_process): * gst/rtp/gstrtpspeexdepay.c: (gst_rtp_speex_depay_get_mode), (gst_rtp_speex_depay_setcaps): * gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_media_to_caps), (gst_rtspsrc_stream_configure_transport), (gst_rtspsrc_loop_udp): * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_init_send): Fix some compiler warnings. Fixes #428182.
* gst/avi/gstavidemux.c: Don't leave the offsets defined by upstream element ↵Julien Moutte2007-04-051-0/+2
| | | | | | | | | | | | on the compressed data buffer we are pushi... Original commit message from CVS: 2007-04-05 Julien MOUTTE <julien@moutte.net> * gst/avi/gstavidemux.c: (gst_avi_demux_process_next_entry): Don't leave the offsets defined by upstream element on the compressed data buffer we are pushing downstream. Make them GST_BUFFER_OFFSET_NONE.
* gst/avi/: Don't abort on out-of-memory. Use stream-nr as unsigned integer only.Stefan Kost2007-04-041-40/+76
| | | | | | | | | | | | | | Original commit message from CVS: * gst/avi/README: * gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_query), (gst_avi_demux_parse_stream), (gst_avi_demux_parse_index), (gst_avi_demux_stream_index), (gst_avi_demux_sync), (gst_avi_demux_stream_scan), (gst_avi_demux_massage_index), (gst_avi_demux_calculate_durations_from_index), (gst_avi_demux_stream_header_push), (gst_avi_demux_stream_header_pull), (gst_avi_demux_combine_flows), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data): Don't abort on out-of-memory. Use stream-nr as unsigned integer only.
* Printf format fixes; also add some missing quotes in translated strings. ↵Tim-Philipp Müller2007-03-101-10/+10
| | | | | | | | | | | | Fixes #416728 and #416727. Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_parse_subindex), (gst_avi_demux_parse_index): * sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists): * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_grab_frame): Printf format fixes; also add some missing quotes in translated strings. Fixes #416728 and #416727.
* gst/avi/gstavidemux.c: Fix stream position reporting after a seek. Fixes ↵Wim Taymans2007-03-091-0/+2
| | | | | | | | | | | #416445. Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream), (gst_avi_demux_push_event), (gst_avi_demux_do_seek), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data), (gst_avi_demux_chain): Fix stream position reporting after a seek. Fixes #416445.
* gst/avi/gstavidemux.c: Make avidemux accept optional header chunks in any order.René Stadler2007-03-081-58/+71
| | | | | | | | | | Original commit message from CVS: Patch by: René Stadler <mail at renestadler dot de> * gst/avi/gstavidemux.c: (gst_avi_demux_parse_stream), (gst_avi_demux_push_event), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data), (gst_avi_demux_chain): Make avidemux accept optional header chunks in any order. Fixes #415446.
* gst/avi/gstavidemux.c: Fix combined flow return. Fixes #412608.Wim Taymans2007-02-281-52/+41
| | | | | | | | Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_combine_flows), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data), (gst_avi_demux_loop), (gst_avi_demux_chain): Fix combined flow return. Fixes #412608.
* gst/avi/gstavidemux.c: Put debug stuff into #ifndef GST_DISABLE_DEBUG #endifStefan Kost2007-02-131-7/+15
| | | | | | | | | | | | Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_handle_src_query), (gst_avi_demux_parse_index), (gst_avi_demux_stream_index), (gst_avi_demux_sync), (gst_avi_demux_massage_index), (gst_avi_demux_calculate_durations_from_index), (gst_avi_demux_push_event), (gst_avi_demux_stream_header_pull), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data), (gst_avi_demux_loop): Put debug stuff into #ifndef GST_DISABLE_DEBUG #endif
* gst/avi/gstavidemux.*: Save some memory (8%) by repacking the index entry ↵Stefan Kost2007-02-121-195/+290
| | | | | | | | | | | | | | | | | | | | structure (more to come). Add more FIXMEs t... Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_class_init), (gst_avi_demux_reset), (gst_avi_demux_index_entry_for_time), (gst_avi_demux_handle_src_query), (gst_avi_demux_parse_superindex), (gst_avi_demux_parse_subindex), (gst_avi_demux_parse_stream), (gst_avi_demux_parse_index), (gst_avi_demux_stream_index), (gst_avi_demux_sync), (gst_avi_demux_next_data_buffer), (gst_avi_demux_stream_scan), (gst_avi_demux_massage_index), (gst_avi_demux_calculate_durations_from_index), (gst_avi_demux_push_event), (gst_avi_demux_stream_header_pull), (gst_avi_demux_do_seek), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data), (gst_avi_demux_loop): * gst/avi/gstavidemux.h: Save some memory (8%) by repacking the index entry structure (more to come). Add more FIXMEs to questionable parts.
* gst/avi/gstavidemux.c: Error out properly when pull_range fails while we're ↵Tim-Philipp Müller2007-01-221-9/+13
| | | | | | | | | reading the headers, instead of just paus... Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_stream_header_pull): Error out properly when pull_range fails while we're reading the headers, instead of just pausing the task silently. Fixes #399338.
* gst/avi/gstavidemux.c: Fix docs.Wim Taymans2007-01-091-2/+4
| | | | | | Original commit message from CVS: * gst/avi/gstavidemux.c: Fix docs.
* gst/avi/gstavidemux.c: remove dead code, tweak debugs statements, add ↵Stefan Kost2006-11-241-75/+171
| | | | | | | | | | | | | | | | | | | | | comments, use _uint64_scale instead _uint64_sca... Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_index_entry_for_time), (gst_avi_demux_src_convert), (gst_avi_demux_handle_src_query), (gst_avi_demux_peek_chunk), (gst_avi_demux_parse_subindex), (gst_avi_demux_read_subindexes_push), (gst_avi_demux_read_subindexes_pull), (gst_avi_demux_parse_stream), (gst_avi_demux_parse_index), (gst_avi_demux_stream_index), (gst_avi_demux_sync), (gst_avi_demux_next_data_buffer), (gst_avi_demux_massage_index), (gst_avi_demux_calculate_durations_from_index), (gst_avi_demux_stream_header_pull), (gst_avi_demux_do_seek), (gst_avi_demux_handle_seek), (gst_avi_demux_process_next_entry), (gst_avi_demux_stream_data), (gst_avi_demux_loop): remove dead code, tweak debugs statements, add comments, use _uint64_scale instead _uint64_scale_int when using guint64 values, small optimizations, reflow some error handling
* gst/avi/gstavidemux.c: Initialise variable to get rid of bogus compiler warning.Tim-Philipp Müller2006-11-161-1/+1
| | | | | | Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_stream_scan): Initialise variable to get rid of bogus compiler warning.
* gst/avi/gstavidemux.c: Disable init_frames delay timestamp adjustment, it ↵Wim Taymans2006-11-141-2/+9
| | | | | | | | | does not seem to be needed at all. Fixes #3... Original commit message from CVS: * gst/avi/gstavidemux.c: (gst_avi_demux_massage_index): Disable init_frames delay timestamp adjustment, it does not seem to be needed at all. Fixes #369621.