summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* gst/rtpmanager/gstrtpbin.c: Fix pad template name parsing.Wim Taymans2009-08-111-1/+1
| | | | | | Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_rtcp): Fix pad template name parsing.
* gst/rtpmanager/gstrtpjitterbuffer.c: Add some debug and comments.Wim Taymans2009-08-111-6/+15
| | | | | | | | | Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_jitter_buffer_sink_setcaps), (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): Add some debug and comments. Fix double unref() in error cases.
* gst/rtpmanager/gstrtpbin.*: Add debugging category.Wim Taymans2009-08-117-56/+446
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (find_session_by_id), (create_session), (find_stream_by_ssrc), (create_stream), (gst_rtp_bin_class_init), (new_payload_found), (new_ssrc_pad_found), (create_recv_rtp), (create_recv_rtcp), (create_send_rtp), (create_rtcp): * gst/rtpmanager/gstrtpbin.h: Add debugging category. Added RTPStream to manage stream per SSRC, each with its own jitterbuffer and ptdemux. Added SSRCDemux. Connect to various SSRC and PT signals and create ghostpads, link stuff. * gst/rtpmanager/gstrtpmanager.c: (plugin_init): Added rtpbin to elements. * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_chain): Fix caps and forward GstFlowReturn * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), (gst_rtp_session_event_recv_rtp_sink), (gst_rtp_session_chain_recv_rtp), (gst_rtp_session_event_recv_rtcp_sink), (gst_rtp_session_chain_recv_rtcp), (gst_rtp_session_event_send_rtp_sink), (gst_rtp_session_chain_send_rtp), (create_recv_rtp_sink), (create_recv_rtcp_sink), (create_send_rtp_sink), (create_rtcp_src), (gst_rtp_session_request_new_pad): Add debug category. Add event handling * gst/rtpmanager/gstrtpssrcdemux.c: (find_rtp_pad_for_ssrc), (create_rtp_pad_for_ssrc), (gst_rtp_ssrc_demux_class_init), (gst_rtp_ssrc_demux_init), (gst_rtp_ssrc_demux_chain), (gst_rtp_ssrc_demux_change_state): * gst/rtpmanager/gstrtpssrcdemux.h: Add debug category. Add new-pt-pad signal.
* gst/rtpmanager/: Added simple SSRC demuxer.Wim Taymans2009-08-114-0/+360
| | | | | | | | | | | | | | Original commit message from CVS: * gst/rtpmanager/Makefile.am: * gst/rtpmanager/gstrtpmanager.c: (plugin_init): * gst/rtpmanager/gstrtpssrcdemux.c: (find_pad_for_ssrc), (create_pad_for_ssrc), (gst_rtp_ssrc_demux_base_init), (gst_rtp_ssrc_demux_class_init), (gst_rtp_ssrc_demux_init), (gst_rtp_ssrc_demux_finalize), (gst_rtp_ssrc_demux_sink_event), (gst_rtp_ssrc_demux_chain), (gst_rtp_ssrc_demux_src_event), (gst_rtp_ssrc_demux_change_state): * gst/rtpmanager/gstrtpssrcdemux.h: Added simple SSRC demuxer.
* gst/rtpmanager/: Some more ghostpad magic.Wim Taymans2009-08-113-7/+350
| | | | | | | | | | | Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (find_session_by_id), (create_session), (gst_rtp_bin_base_init), (create_recv_rtp), (create_recv_rtcp), (create_send_rtp), (create_rtcp), (gst_rtp_bin_request_new_pad): * gst/rtpmanager/gstrtpbin.h: * gst/rtpmanager/gstrtpclient.c: Some more ghostpad magic.
* gst/rtpmanager/Makefile.am: Add .h file so it can be disted properly.Wim Taymans2009-08-111-0/+1
| | | | | | Original commit message from CVS: * gst/rtpmanager/Makefile.am: Add .h file so it can be disted properly.
* Add RTP session management elements. Still in progress.Wim Taymans2009-08-1114-0/+3841
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message from CVS: * configure.ac: * gst/rtpmanager/Makefile.am: * gst/rtpmanager/async_jitter_queue.c: (async_jitter_queue_new), (signal_waiting_threads), (async_jitter_queue_ref), (async_jitter_queue_ref_unlocked), (async_jitter_queue_set_low_threshold), (async_jitter_queue_set_high_threshold), (async_jitter_queue_set_max_queue_length), (async_jitter_queue_get_g_queue), (calculate_ts_diff), (async_jitter_queue_length_ts_units_unlocked), (async_jitter_queue_unref_and_unlock), (async_jitter_queue_unref), (async_jitter_queue_lock), (async_jitter_queue_unlock), (async_jitter_queue_push), (async_jitter_queue_push_unlocked), (async_jitter_queue_push_sorted), (async_jitter_queue_push_sorted_unlocked), (async_jitter_queue_insert_after_unlocked), (async_jitter_queue_pop_intern_unlocked), (async_jitter_queue_pop), (async_jitter_queue_pop_unlocked), (async_jitter_queue_length), (async_jitter_queue_length_unlocked), (async_jitter_queue_set_flushing_unlocked), (async_jitter_queue_unset_flushing_unlocked), (async_jitter_queue_set_blocking_unlocked): * gst/rtpmanager/async_jitter_queue.h: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_base_init), (gst_rtp_bin_class_init), (gst_rtp_bin_init), (gst_rtp_bin_finalize), (gst_rtp_bin_set_property), (gst_rtp_bin_get_property), (gst_rtp_bin_change_state), (gst_rtp_bin_request_new_pad), (gst_rtp_bin_release_pad): * gst/rtpmanager/gstrtpbin.h: * gst/rtpmanager/gstrtpclient.c: (new_pad), (create_stream), (free_stream), (find_stream_by_ssrc), (gst_rtp_client_base_init), (gst_rtp_client_class_init), (gst_rtp_client_init), (gst_rtp_client_finalize), (gst_rtp_client_set_property), (gst_rtp_client_get_property), (gst_rtp_client_change_state), (gst_rtp_client_request_new_pad), (gst_rtp_client_release_pad): * gst/rtpmanager/gstrtpclient.h: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_base_init), (gst_rtp_jitter_buffer_class_init), (gst_rtp_jitter_buffer_init), (gst_rtp_jitter_buffer_dispose), (gst_rtp_jitter_buffer_getcaps), (gst_jitter_buffer_sink_setcaps), (free_func), (gst_rtp_jitter_buffer_flush_start), (gst_rtp_jitter_buffer_flush_stop), (gst_rtp_jitter_buffer_src_activate_push), (gst_rtp_jitter_buffer_change_state), (priv_compare_rtp_seq_lt), (compare_rtp_buffers_seq_num), (gst_rtp_jitter_buffer_sink_event), (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_query), (gst_rtp_jitter_buffer_set_property), (gst_rtp_jitter_buffer_get_property): * gst/rtpmanager/gstrtpjitterbuffer.h: * gst/rtpmanager/gstrtpmanager.c: (plugin_init): * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_base_init), (gst_rtp_pt_demux_class_init), (gst_rtp_pt_demux_init), (gst_rtp_pt_demux_finalize), (gst_rtp_pt_demux_chain), (gst_rtp_pt_demux_getcaps), (find_pad_for_pt), (gst_rtp_pt_demux_setup), (gst_rtp_pt_demux_release), (gst_rtp_pt_demux_change_state): * gst/rtpmanager/gstrtpptdemux.h: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_base_init), (gst_rtp_session_class_init), (gst_rtp_session_init), (gst_rtp_session_finalize), (gst_rtp_session_set_property), (gst_rtp_session_get_property), (gst_rtp_session_change_state), (gst_rtp_session_chain_recv_rtp), (gst_rtp_session_chain_recv_rtcp), (gst_rtp_session_chain_send_rtp), (create_recv_rtp_sink), (create_recv_rtcp_sink), (create_send_rtp_sink), (create_rtcp_src), (gst_rtp_session_request_new_pad), (gst_rtp_session_release_pad): * gst/rtpmanager/gstrtpsession.h: Add RTP session management elements. Still in progress.
* avidemux: push mode; cater for chunk paddingMark Nauwelaerts2009-08-101-0/+7
|
* avidemux: only use stream's pad after having checked it existsMark Nauwelaerts2009-08-101-5/+8
|
* avidemux: sprinkle some more GST_DEBUG_FUNCPTRMark Nauwelaerts2009-08-101-5/+9
|
* avidemux: post error message if no pads to push EOS event onMark Nauwelaerts2009-08-101-3/+22
|
* avidemux: fix typo in warning messageMark Nauwelaerts2009-08-101-1/+1
|
* avidemux: fix some buffer ref handlingMark Nauwelaerts2009-08-101-5/+31
|
* avidemux: do not exceed maximum number of supported streamsMark Nauwelaerts2009-08-101-1/+12
|
* avidemux: prevent double unref; gst_avi_demux_parse_avih already unrefsMark Nauwelaerts2009-08-101-2/+0
|
* avidemux: verify size of INFO LIST to satisfy subsequent expectationsMark Nauwelaerts2009-08-101-5/+17
|
* avidemux: check video stream framerate against avi header frame durationMark Nauwelaerts2009-08-101-1/+18
| | | | | The former might be bogus in silly cases, and the latter seems to carry more weight.
* avidemux: streamline stream duration calculationMark Nauwelaerts2009-08-101-23/+23
|
* dv1394src: Fix element for live usage... which has been broken for 2 years :(Edward Hervey2009-08-101-131/+9
| | | | | | | | | This is a live source, therefore: * Use GST_FORMAT_TIME as the default format * set_timestamp to True * properly implement query latency. This allows expected live usage like : playbin2 uri=dv://
* raw1394: Remove unneeded variableEdward Hervey2009-08-101-2/+1
|
* matroska: remove dead assignmentsEdward Hervey2009-08-101-3/+2
|
* rtp: Remove dead assignments and resulting unneeded variables.Edward Hervey2009-08-104-97/+4
|
* wavpack: Use GLib GChecksum instead of our own MD5 implementationSebastian Dröge2009-08-106-315/+16
| | | | This requires GLib 2.16 but that version is already required by core anyway.
* matroska: Adds support to muxing/demuxing WMAThiago Santos2009-08-093-20/+92
| | | | | | Adds support for muxing wma audio family and fixes demuxing of wma family in matroskademux. matroskademux was broken because it missed codec_data.
* matroskamux: adds support for wmv familyThiago Santos2009-08-091-2/+20
| | | | | | Adds support to WMV1, WMV2, WMV3 and other family formats that are signaled by the 'format' field in the caps (i.e. WVC1). Partially fixes #576378
* v4l2src: if max == min width/height put an int in the probed caps, not an ↵Tim-Philipp Müller2009-08-091-8/+15
| | | | | | int range Fixes #560033.
* osxaudiosrc: if max_channels == min_channels, use an int instead of an int ↵Tim-Philipp Müller2009-08-091-3/+6
| | | | range in the caps
* id3demux: Try GST_*_TAG_ENCODING and locale encoding if tags are not UTF8LoneStar2009-08-091-2/+70
| | | | Fixes bug #499242.
* configure: bump core/base requirements to latest releaseTim-Philipp Müller2009-08-091-2/+2
| | | | To avoid confusion.
* check: fix flvmux unit test on big endian machinesTim-Philipp Müller2009-08-091-4/+8
| | | | | | | flvmux only accepts raw audio in little endian, but audiotestsrc produces audio in the native endianness, which makes linking between audiotestsrc and flvmux fail on big endian machines. Add an audioconvert element in between the two to fix this.
* matroska: add kate subtitle support to matroska muxer and demuxerVincent Penquerc'h2009-08-083-1/+185
| | | | See #525743.
* id3demux: add ID3 v2.3 spec as wellTim-Philipp Müller2009-08-071-0/+1422
|
* id3demux: sizes in ID3 v2.3 are unlikely to be sync-safe integersTim-Philipp Müller2009-08-071-1/+5
| | | | | | | In ID3 v2.3 compressed frames will have a 4-byte data length indicator after the frame header to indicate the size of the decompressed data. This integer is unlikely to be a sync-safe integer for v2.3 tags, only in v2.4 it's sync-safe.
* id3demux: fix typo in debug messageTim-Philipp Müller2009-08-071-1/+1
|
* id3demux: fix parsing of unsync'ed ID3 v2.4 tags and framesTim-Philipp Müller2009-08-076-12/+80
| | | | | | | | | | | | | | | | Reversing the unsynchronisation seems to work slightly differently for ID3 v2.3 tags and v2.4 tags: v2.3 tags don't have syncsafe frame sizes in the frame header, so the unsynchronisation is applied to the whole frame data including all the frame headers. v2.4 frames have sync-safe sizes, however, so the unsynchronisation only needs to be applied to the actual frame data, and it seems that's what's being done as well. So we need to undo the unsynchronisation on a per-frame basis for v2.4 tags for things to work properly. Fixes extraction of coverart/images from APIC frames in ID3 v2.4 tags (#588148). Add unit test for this as well.
* souphttpsrc: Use SOUP_METHOD_GET instead of "GET" stringSebastian Dröge2009-08-061-1/+1
| | | | Fixes bug #590970.
* pulsesrc: set the default slave method to skewWim Taymans2009-08-061-0/+4
| | | | | | Set the default slave method to the much better skew algorithm. This is the default in the new base class but we override this here as well for the upcomming release.
* pulsesrc: fix compilation with --disable-gst-debugTim-Philipp Müller2009-08-061-8/+3
|
* rtph264pay: use array instead of queueWim Taymans2009-08-062-9/+12
|
* rtph264pay: push NALs only after SPS/PPSMark Nauwelaerts2009-08-062-48/+74
| | | | | | parse complete (bytestream) buffer for SPS/PPS before pushing NALs. Fixes #564501.
* v4l2: Directly use GST_PTR_FORMAT for printing caps with the LOG_CAPS macroSebastian Dröge2009-08-041-9/+1
|
* rtpqdm2depay: Fix debug statement.Edward Hervey2009-08-041-1/+1
|
* v4l2: Remove some OMAP specific hacksSebastian Dröge2009-08-042-38/+1
| | | | They require special build flags and are not useful in general.
* v4l2sink: change where buffers get dequeuedRob Clark2009-08-044-52/+38
| | | | It seems to cause strange occasional high latencies (almost 200ms) when dequeuing buffers from _buffer_alloc(). It is simpler and seems to work much better to dqbuf from the same thread that is queuing the next buffer.
* v4l2: Add v4l2sink elementRob Clark2009-08-0414-1824/+3051
| | | | | | | | | | | This also does the following changes: (1) pull the bufferpool code out into gstv4l2bufferpool.c, and make a bit more generic so it can be used both for v4l2src and v4l2sink (2) move some of the device probing/configuration/caps stuff into gstv4l2object.c so it does not have to be duplicated between v4l2src and v4l2sink Fixes bug #590280.
* flvmux: Enable unit test now that it passesSebastian Dröge2009-08-041-2/+1
|
* rtpqdm2depay,rtpsv3vdepay: Add debugging category.Edward Hervey2009-08-032-0/+12
|
* rtpqdm2depay: Handle gaps in incoming packets.Edward Hervey2009-08-032-1/+18
| | | | | | Whenever we see a gap, we flush the temporary packets (but not the adapter). If we had some data temporarily stored it will be outputted (the sound will sound a bit garbled... but that's how it sounds on MacOSX :)
* rtpqdmdepay: Fix CRC calculation and remove commented code.Edward Hervey2009-08-031-25/+15
|
* rtp: New QDM2 rtp depayloader.Edward Hervey2009-08-034-0/+500
| | | | | | | | | | | Reverse-engineered by comparing: * A rtp hinted file provided by DarwinStreamingServer * The output procued by DSS for that same file Also used various streaming sources available on the internet to fine-tune the code. The header/codec_data extraction methods are from FFMpeg (LGPL).