summaryrefslogtreecommitdiffstats
path: root/gst
AgeCommit message (Collapse)AuthorFilesLines
2007-04-25gst/rtpmanager/gstrtpjitterbuffer.c: Report NO_PREROLL when going to PAUSED.Wim Taymans6-42/+161
Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_change_state): Report NO_PREROLL when going to PAUSED. * gst/rtpmanager/gstrtpsession.c: (rtcp_thread): Don't send RTCP right before we are shutting down. * gst/rtpmanager/rtpsession.c: (rtp_session_process_rtp), (rtp_session_process_sr), (session_report_blocks), (rtp_session_perform_reporting): Improve report blocks. * gst/rtpmanager/rtpsource.c: (calculate_jitter), (init_seq), (rtp_source_process_rtp), (rtp_source_process_sr), (rtp_source_process_rb), (rtp_source_get_last_sr), (rtp_source_get_last_rb): * gst/rtpmanager/rtpsource.h: * gst/rtpmanager/rtpstats.h: Cleanups, add methods to access stats.
2007-04-25gst/rtpmanager/gstrtpbin.c: fix for pad name changeWim Taymans8-86/+625
Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_rtcp): fix for pad name change * gst/rtpmanager/gstrtpsession.c: (rtcp_thread), (gst_rtp_session_send_rtcp), (gst_rtp_session_clock_rate): Fix for renamed methods. * gst/rtpmanager/rtpsession.c: (rtp_session_init), (rtp_session_finalize), (rtp_session_set_cname), (rtp_session_get_cname), (rtp_session_set_name), (rtp_session_get_name), (rtp_session_set_email), (rtp_session_get_email), (rtp_session_set_phone), (rtp_session_get_phone), (rtp_session_set_location), (rtp_session_get_location), (rtp_session_set_tool), (rtp_session_get_tool), (rtp_session_set_note), (rtp_session_get_note), (source_push_rtp), (obtain_source), (rtp_session_add_source), (rtp_session_get_source_by_ssrc), (rtp_session_create_source), (rtp_session_process_rtp), (rtp_session_process_sr), (rtp_session_process_sdes), (rtp_session_process_rtcp), (rtp_session_send_rtp), (rtp_session_get_reporting_interval), (session_report_blocks), (session_sdes), (rtp_session_perform_reporting): * gst/rtpmanager/rtpsession.h: Prepare for implementing SSRC sampling. Create SSRC for the session. Add methods to set the SDES entries. fix accounting of senders/receivers. Implement SR/RR/SDES RTCP reporting. * gst/rtpmanager/rtpsource.c: (rtp_source_init), (init_seq), (rtp_source_process_rtp), (rtp_source_process_sr): * gst/rtpmanager/rtpsource.h: Implement extended sequence number. * gst/rtpmanager/rtpstats.c: (rtp_stats_calculate_rtcp_interval): * gst/rtpmanager/rtpstats.h: Rename some fields.
2007-04-24Plug some leaks; try to make build bot happy again.Tim-Philipp Müller1-10/+11
Original commit message from CVS: * gst/y4m/gsty4mencode.c: (gst_y4m_encode_init), (gst_y4m_encode_setcaps): * tests/check/elements/y4menc.c: (GST_START_TEST): Plug some leaks; try to make build bot happy again.
2007-04-21gst/Makefile.am: Fix distcheck, hopefully (rtpmanager is already in ↵Tim-Philipp Müller1-1/+1
GST_PLUGINS_ALL). Original commit message from CVS: * gst/Makefile.am: Fix distcheck, hopefully (rtpmanager is already in GST_PLUGINS_ALL).
2007-04-21gst/rtpmanager/rtpsession.c: Don't use GLib-2.10 API, we only require GLib ↵Tim-Philipp Müller1-2/+2
2.8 at the moment. Original commit message from CVS: * gst/rtpmanager/rtpsession.c: (rtp_session_finalize): Don't use GLib-2.10 API, we only require GLib 2.8 at the moment.
2007-04-21gst/audioresample/gstaudioresample.c: Make more functions static, just ↵Tim-Philipp Müller1-9/+9
because we can. Original commit message from CVS: * gst/audioresample/gstaudioresample.c: Make more functions static, just because we can.
2007-04-18gst/Makefile.am: Add rtpmanager dir to dist.Wim Taymans1-1/+1
Original commit message from CVS: * gst/Makefile.am: Add rtpmanager dir to dist.
2007-04-18configure.ac: Disable rtpmanager for now because it depends on CVS -base.Wim Taymans11-35/+2477
Original commit message from CVS: * configure.ac: Disable rtpmanager for now because it depends on CVS -base. * gst/rtpmanager/Makefile.am: Added new files for session manager. * gst/rtpmanager/gstrtpjitterbuffer.h: * gst/rtpmanager/gstrtpbin.c: (create_session), (get_pt_map), (create_stream), (pt_map_requested), (new_ssrc_pad_found): Some cleanups. the session manager can now also request a pt-map. * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_base_init), (gst_rtp_session_class_init), (gst_rtp_session_init), (gst_rtp_session_finalize), (rtcp_thread), (start_rtcp_thread), (stop_rtcp_thread), (gst_rtp_session_change_state), (gst_rtp_session_process_rtp), (gst_rtp_session_send_rtp), (gst_rtp_session_send_rtcp), (gst_rtp_session_clock_rate), (gst_rtp_session_get_time), (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_send_rtcp_src), (gst_rtp_session_request_new_pad): * gst/rtpmanager/gstrtpsession.h: We can ask for pt-map now too when the session manager needs it. Hook up to the new session manager, implement the needed callbacks for pushing data, getting clock time and requesting clock-rates. Rename rtcp_src to send_rtcp_src to make it clear that this RTCP is to be send to clients. Add code to start and stop the thread that will schedule RTCP through the session manager. * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), (rtp_session_init), (rtp_session_finalize), (rtp_session_set_property), (rtp_session_get_property), (on_new_ssrc), (on_ssrc_collision), (on_ssrc_validated), (on_bye_ssrc), (rtp_session_new), (rtp_session_set_callbacks), (rtp_session_set_bandwidth), (rtp_session_get_bandwidth), (rtp_session_set_rtcp_bandwidth), (rtp_session_get_rtcp_bandwidth), (source_push_rtp), (source_clock_rate), (check_collision), (obtain_source), (rtp_session_add_source), (rtp_session_get_num_sources), (rtp_session_get_num_active_sources), (rtp_session_get_source_by_ssrc), (rtp_session_get_source_by_cname), (rtp_session_create_source), (update_arrival_stats), (rtp_session_process_rtp), (rtp_session_process_sr), (rtp_session_process_rr), (rtp_session_process_sdes), (rtp_session_process_bye), (rtp_session_process_app), (rtp_session_process_rtcp), (rtp_session_send_rtp), (rtp_session_get_rtcp_interval), (rtp_session_produce_rtcp): * gst/rtpmanager/rtpsession.h: The advanced beginnings of the main session manager that handles the participant database of RTPSources, SSRC probation, SSRC collisions, parse RTCP to update source stats. etc.. * gst/rtpmanager/rtpsource.c: (rtp_source_class_init), (rtp_source_init), (rtp_source_finalize), (rtp_source_new), (rtp_source_set_callbacks), (rtp_source_set_as_csrc), (rtp_source_set_rtp_from), (rtp_source_set_rtcp_from), (push_packet), (get_clock_rate), (calculate_jitter), (rtp_source_process_rtp), (rtp_source_process_bye), (rtp_source_send_rtp), (rtp_source_process_sr), (rtp_source_process_rb): * gst/rtpmanager/rtpsource.h: Object that encapsulates an SSRC and its state in the database. Calculates the jitter and transit times of data packets. * gst/rtpmanager/rtpstats.c: (rtp_stats_init_defaults), (rtp_stats_calculate_rtcp_interval), (rtp_stats_add_rtcp_jitter): * gst/rtpmanager/rtpstats.h: Various stats regarding the session and sources. Used to calculate the RTCP interval.
2007-04-17gst/app/Makefile.am: Fix CFLAGS and hopefully #430594.Tim-Philipp Müller1-3/+1
Original commit message from CVS: * gst/app/Makefile.am: Fix CFLAGS and hopefully #430594.
2007-04-17gst/nsf/types.h: Rename #ifndef header guard symbol to something less ↵Tim-Philipp Müller1-11/+23
generic, so types.h doesn't get skipped over wh... Original commit message from CVS: * gst/nsf/types.h: Rename #ifndef header guard symbol to something less generic, so types.h doesn't get skipped over when compiling on MingW. Include GLib headers and use those to set the endianness and the basic types so that this isn't entirely broken for non-x86 architectures.
2007-04-17gst/mve/gstmvedemux.c: Use G_LITTLE_ENDIAN instead of LITTLE_ENDIAN, so ↵Tim-Philipp Müller1-1/+1
stuff compiles on Original commit message from CVS: * gst/mve/gstmvedemux.c: (gst_mve_audio_init): Use G_LITTLE_ENDIAN instead of LITTLE_ENDIAN, so stuff compiles on MingW (no idea though why we add a BYTE_ORDER endianness field if the audio is compressed).
2007-04-16ext/pango/gstclockoverlay.c: Fix unused variable warning if HAVE_LOCALTIME_R ↵Vincent Torri1-1/+1
is undefinied Original commit message from CVS: Patch by: Vincent Torri <vtorri at univ-evry dot fr> * ext/pango/gstclockoverlay.c: (gst_clock_overlay_render_time): Fix unused variable warning if HAVE_LOCALTIME_R is undefinied * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): * gst/audioresample/gstaudioresample.c: (audioresample_do_output): Use the correct format strings for integer formats.
2007-04-13gst/rtpmanager/: Protect lists and structures with locks.Wim Taymans4-12/+71
Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_session), (get_pt_map), (gst_rtp_bin_init), (gst_rtp_bin_finalize), (new_ssrc_pad_found), (create_recv_rtp), (gst_rtp_bin_request_new_pad): * gst/rtpmanager/gstrtpbin.h: * gst/rtpmanager/gstrtpclient.c: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), (gst_rtp_session_init), (gst_rtp_session_finalize), (gst_rtp_session_event_recv_rtp_sink), (gst_rtp_session_event_recv_rtcp_sink), (gst_rtp_session_chain_recv_rtcp), (gst_rtp_session_request_new_pad): Protect lists and structures with locks. Return FLOW_OK from RTCP messages for now.
2007-04-12gst/qtdemux/qtdemux.c: Make timescale 32 bits again so we don't screw up the ↵Wim Taymans1-1/+1
pts_offset calculations. Original commit message from CVS: * gst/qtdemux/qtdemux.c: Make timescale 32 bits again so we don't screw up the pts_offset calculations.
2007-04-12gst/rtpmanager/gstrtpbin.c: Emit pt map requests and cache results.Wim Taymans4-91/+162
Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_session), (get_pt_map), (create_stream), (gst_rtp_bin_class_init), (pt_map_requested): Emit pt map requests and cache results. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_class_init), (gst_jitter_buffer_sink_parse_caps), (gst_jitter_buffer_sink_setcaps), (gst_rtp_jitter_buffer_get_clock_rate), (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): * gst/rtpmanager/gstrtpjitterbuffer.h: * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_chain): Emit request-pt-map signals.
2007-04-11gst/rtpmanager/gstrtpbin-marshal.list: Some more custom marshallers.Wim Taymans7-27/+191
Original commit message from CVS: * gst/rtpmanager/gstrtpbin-marshal.list: Some more custom marshallers. * gst/rtpmanager/gstrtpbin.c: (create_session), (get_pt_map), (clock_rate_request), (create_stream), (gst_rtp_bin_class_init), (pt_map_requested), (new_ssrc_pad_found), (create_recv_rtp): * gst/rtpmanager/gstrtpbin.h: Prepare for caching pt maps. Connect to signals to collect pt maps. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_class_init), (gst_jitter_buffer_sink_setcaps), (gst_rtp_jitter_buffer_loop): * gst/rtpmanager/gstrtpjitterbuffer.h: Add request_clock_rate signal. Use scale insteat of scale_int because the later does not deal with negative numbers. * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_class_init), (gst_rtp_pt_demux_chain): * gst/rtpmanager/gstrtpptdemux.h: Implement request-pt-map signal.
2007-04-11gst/qtdemux/: Handle version 1 mdhd atoms to get extended precision durations.Wim Taymans2-21/+52
Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_get_duration), (qtdemux_parse_samples), (qtdemux_parse_segments), (qtdemux_parse_trak), (qtdemux_parse_tree): * gst/qtdemux/qtdemux_dump.c: (qtdemux_dump_mdhd): Handle version 1 mdhd atoms to get extended precision durations. Fixes #426972.
2007-04-10gst/rtpmanager/: Added custom marshallers for signals.Wim Taymans7-9/+42
Original commit message from CVS: * gst/rtpmanager/.cvsignore: * gst/rtpmanager/Makefile.am: * gst/rtpmanager/gstrtpbin-marshal.list: Added custom marshallers for signals. * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_class_init): * gst/rtpmanager/gstrtpbin.h: Prepare for emiting pt map signals. * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_class_init): * gst/rtpmanager/gstrtpssrcdemux.c: (gst_rtp_ssrc_demux_class_init): Fix signals.
2007-04-06gst/rtpmanager/gstrtpbin.*: Provide a clock.Wim Taymans2-0/+15
Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_class_init), (gst_rtp_bin_init), (gst_rtp_bin_provide_clock): * gst/rtpmanager/gstrtpbin.h: Provide a clock.
2007-04-06gst/rtpmanager/gstrtpbin.c: Fix pad template name parsing.Wim Taymans1-1/+1
Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_rtcp): Fix pad template name parsing.
2007-04-05gst/rtpmanager/gstrtpjitterbuffer.c: Add some debug and comments.Wim Taymans1-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.
2007-04-05gst/qtdemux/gstrtpxqtdepay.*: Try to recover from packet loss a little better.Wim Taymans2-1/+25
Original commit message from CVS: * gst/qtdemux/gstrtpxqtdepay.c: (gst_rtp_xqt_depay_process), (gst_rtp_xqt_depay_change_state): * gst/qtdemux/gstrtpxqtdepay.h: Try to recover from packet loss a little better.
2007-04-05gst/rtpmanager/gstrtpbin.*: Add debugging category.Wim Taymans7-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.
2007-04-04gst/rtpmanager/: Added simple SSRC demuxer.Wim Taymans4-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.
2007-04-03gst/rtpmanager/: Some more ghostpad magic.Wim Taymans3-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.
2007-04-03gst/rtpmanager/Makefile.am: Add .h file so it can be disted properly.Wim Taymans1-0/+1
Original commit message from CVS: * gst/rtpmanager/Makefile.am: Add .h file so it can be disted properly.
2007-04-03Add RTP session management elements. Still in progress.Wim Taymans14-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.
2007-03-28gst/qtdemux/: Process 'ctts' atoms, which are present in AVC ISO files (.mov ↵Edward Hervey5-4/+53
files with h264 video). Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_prepare_current_sample), (gst_qtdemux_chain), (qtdemux_parse_samples): * gst/qtdemux/qtdemux_dump.c: (qtdemux_dump_ctts): * gst/qtdemux/qtdemux_dump.h: * gst/qtdemux/qtdemux_fourcc.h: * gst/qtdemux/qtdemux_types.c: Process 'ctts' atoms, which are present in AVC ISO files (.mov files with h264 video). Use the offset present in 'ctts' to calculate the PTS for each packet and set the PTS on outgoing buffers. Fixes #423283
2007-03-24gst/interleave/deinterleave.c: Remove 'channel-positions' field when munging ↵Tim-Philipp Müller1-0/+1
input caps into 1-channel output caps (I... Original commit message from CVS: * gst/interleave/deinterleave.c: (gst_deinterleave_sink_setcaps): Remove 'channel-positions' field when munging input caps into 1-channel output caps (I guess technically we should set the position for each channel on the output caps if it's non-NONE, but I'll save that as a task for another day).
2007-03-23gst/vmnc/vmncdec.c: Redesign to include a parser for raw files (no ↵Michael Smith2-88/+273
timestamps in that mode yet, though). Original commit message from CVS: * gst/vmnc/vmncdec.c: (gst_vmnc_dec_class_init), (gst_vmnc_dec_init), (vmnc_dec_finalize), (gst_vmnc_dec_reset), (vmnc_handle_wmvi_rectangle), (render_colour_cursor), (render_cursor), (vmnc_make_buffer), (vmnc_handle_wmvd_rectangle), (vmnc_handle_wmve_rectangle), (vmnc_handle_wmvf_rectangle), (vmnc_handle_wmvg_rectangle), (vmnc_handle_wmvh_rectangle), (vmnc_handle_wmvj_rectangle), (render_raw_tile), (render_subrect), (vmnc_handle_raw_rectangle), (vmnc_handle_copy_rectangle), (vmnc_handle_hextile_rectangle), (vmnc_handle_packet), (vmnc_dec_setcaps), (vmnc_dec_chain_frame), (vmnc_dec_chain), (vmnc_dec_set_property), (vmnc_dec_get_property): Redesign to include a parser for raw files (no timestamps in that mode yet, though).
2007-03-22gst/interleave/deinterleave.c: Don't leak input buffer in chain function; ↵Tim-Philipp Müller1-28/+26
maintain our own list of source pads - ther... Original commit message from CVS: * gst/interleave/deinterleave.c: (gst_deinterleave_add_new_pads), (gst_deinterleave_remove_pads), (gst_deinterleave_process), (gst_deinterleave_chain): Don't leak input buffer in chain function; maintain our own list of source pads - there are no guarantees about the order of the list in the GstElement struct, and we want a very specific order; lastly, some more debugging.
2007-03-16gst/mpegvideoparse/: Move the MPEG specific byte parsing into the ↵Jan Schmidt4-173/+294
mpegpacketiser code. Original commit message from CVS: * gst/mpegvideoparse/mpegpacketiser.c: (mpeg_util_find_start_code), (collect_packets), (set_par_from_dar), (set_fps_from_code), (mpeg_util_parse_extension_packet), (mpeg_util_parse_sequence_hdr), (mpeg_util_parse_picture_hdr): * gst/mpegvideoparse/mpegpacketiser.h: * gst/mpegvideoparse/mpegvideoparse.c: (mpegvideoparse_handle_sequence), (mpegvideoparse_handle_picture), (mpegvideoparse_drain_avail), (gst_mpegvideoparse_chain), (mpv_parse_sink_event), (plugin_init): * gst/mpegvideoparse/mpegvideoparse.h: Move the MPEG specific byte parsing into the mpegpacketiser code. Add parsing of picture types, that just feeds into a debug message for now. Fix some 64-bit format strings.
2007-03-16gst/equalizer/gstiirequalizer10bands.c: A 10 band EQ should be initialized ↵Stefan Kost1-1/+18
to 1 bands and not to 3. Original commit message from CVS: * gst/equalizer/gstiirequalizer10bands.c: (gst_iir_equalizer_10bands_init): A 10 band EQ should be initialized to 1 bands and not to 3.
2007-03-15Port mpeg1videoparse to 0.10 and give it rank SECONDARY-1, so that it's ↵Jan Schmidt9-680/+1281
below existing decoders. Original commit message from CVS: * configure.ac: * gst/mpeg1videoparse/Makefile.am: * gst/mpeg1videoparse/gstmp1videoparse.c: * gst/mpeg1videoparse/gstmp1videoparse.h: * gst/mpeg1videoparse/mp1videoparse.vcproj: * gst/mpegvideoparse/Makefile.am: * gst/mpegvideoparse/mpegpacketiser.c: (mpeg_packetiser_init), (mpeg_packetiser_free), (mpeg_packetiser_add_buf), (mpeg_packetiser_flush), (mpeg_find_start_code), (get_next_free_block), (complete_current_block), (append_to_current_block), (start_new_block), (handle_packet), (collect_packets), (mpeg_packetiser_handle_eos), (mpeg_packetiser_get_block), (mpeg_packetiser_next_block): * gst/mpegvideoparse/mpegpacketiser.h: * gst/mpegvideoparse/mpegvideoparse.c: (mpegvideoparse_get_type), (gst_mpegvideoparse_base_init), (gst_mpegvideoparse_class_init), (mpv_parse_reset), (gst_mpegvideoparse_init), (gst_mpegvideoparse_dispose), (set_par_from_dar), (set_fps_from_code), (mpegvideoparse_parse_seq), (gst_mpegvideoparse_time_code), (gst_mpegvideoparse_flush), (mpegvideoparse_drain_avail), (gst_mpegvideoparse_chain), (mpv_parse_sink_event), (gst_mpegvideoparse_change_state), (plugin_init): * gst/mpegvideoparse/mpegvideoparse.h: * gst/mpegvideoparse/mpegvideoparse.vcproj: Port mpeg1videoparse to 0.10 and give it rank SECONDARY-1, so that it's below existing decoders. Rename it to mpegvideoparse to reflect that it handles MPEG-1 and MPEG-2 now. Re-write the parsing code so that it collects packets differently and timestamps Picture packets correctly. Add a list of FIXME's at the top.
2007-03-15gst/audioresample/gstaudioresample.c: Don't trigger discontinuities for very ↵Michael Smith1-16/+34
small imperfections; a filter flush will... Original commit message from CVS: * gst/audioresample/gstaudioresample.c: (audioresample_check_discont), (audioresample_transform): Don't trigger discontinuities for very small imperfections; a filter flush will sound bad, and many plugins have rounding errors leading to these.
2007-03-14gst/audioresample/gstaudioresample.c: Handle discontinuous streams.Julien Moutte2-9/+48
Original commit message from CVS: 2007-03-14 Julien MOUTTE <julien@moutte.net> * gst/audioresample/gstaudioresample.c: (gst_audioresample_init), (audioresample_transform_size), (audioresample_do_output), (audioresample_transform), (audioresample_pushthrough): Handle discontinuous streams. * gst/audioresample/gstaudioresample.h: * tests/check/elements/audioresample.c: (test_discont_stream_instance), (GST_START_TEST), (audioresample_suite): Add a test for discontinuous streams. * win32/common/config.h: Updated.
2007-03-14gst/audioresample/: Since I really am not interested in a debug line for ↵Thomas Vander Stichele2-2/+6
each sample being processed, move the librar... Original commit message from CVS: * gst/audioresample/debug.h: * gst/audioresample/resample.c: (resample_init): Since I really am not interested in a debug line for each sample being processed, move the library's debugging to its own category, libaudioresample
2007-03-14gst/equalizer/: Add 3 and 10 band version and add missing ↵Stefan Kost8-24/+541
gst_object_sync_values. Original commit message from CVS: * gst/equalizer/Makefile.am: * gst/equalizer/gstiirequalizer.c: (_do_init), (gst_iir_equalizer_band_set_property), (gst_iir_equalizer_band_class_init), (gst_iir_equalizer_band_get_type), (gst_iir_equalizer_child_proxy_get_child_by_index), (gst_iir_equalizer_child_proxy_get_children_count), (gst_iir_equalizer_child_proxy_interface_init), (setup_filter), (gst_iir_equalizer_compute_frequencies), (gst_iir_equalizer_transform_ip), (plugin_init): * gst/equalizer/gstiirequalizer10bands.c: (gst_iir_equalizer_10bands_base_init), (gst_iir_equalizer_10bands_class_init), (gst_iir_equalizer_10bands_init), (gst_iir_equalizer_10bands_set_property), (gst_iir_equalizer_10bands_get_property): * gst/equalizer/gstiirequalizer10bands.h: * gst/equalizer/gstiirequalizer3bands.c: (gst_iir_equalizer_3bands_base_init), (gst_iir_equalizer_3bands_class_init), (gst_iir_equalizer_3bands_init), (gst_iir_equalizer_3bands_set_property), (gst_iir_equalizer_3bands_get_property): * gst/equalizer/gstiirequalizer3bands.h: * gst/equalizer/gstiirequalizernbands.c: (gst_iir_equalizer_nbands_base_init), (gst_iir_equalizer_nbands_init): Add 3 and 10 band version and add missing gst_object_sync_values. * gst/spectrum/gstspectrum.c: (gst_spectrum_event), (gst_spectrum_transform_ip): Add some comments about float support.
2007-03-14add debugging and reformat docsThomas Vander Stichele1-8/+21
Original commit message from CVS: add debugging and reformat docs
2007-03-13gst/mpegaudioparse/: Remove bogus 2nd copy of mp3parse - it's actually in -ugly.Jan Schmidt4-785/+0
Original commit message from CVS: * gst/mpegaudioparse/Makefile.am: * gst/mpegaudioparse/gstmpegaudioparse.c: * gst/mpegaudioparse/gstmpegaudioparse.h: * gst/mpegaudioparse/mpegaudioparse.vcproj: Remove bogus 2nd copy of mp3parse - it's actually in -ugly.
2007-03-11Add appsrc/appsink example.David Schleef1-3/+4
Original commit message from CVS: * configure.ac: * examples/Makefile.am: * examples/app/Makefile.am: * examples/app/appsrc_ex.c: Add appsrc/appsink example. * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/gstapp.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: * gst/app/gstapp.c: Add appsink.
2007-03-09gst/equalizer/: Refactor plugin into a base class and a first subclass ↵Stefan Kost5-133/+487
(nband eq). The nband eq uses GstChildProxy an... Original commit message from CVS: * gst/equalizer/Makefile.am: * gst/equalizer/gstiirequalizer.c: (_do_init), (gst_iir_equalizer_band_set_property), (gst_iir_equalizer_band_get_property), (gst_iir_equalizer_band_class_init), (gst_iir_equalizer_band_get_type), (gst_iir_equalizer_child_proxy_get_child_by_index), (gst_iir_equalizer_child_proxy_get_children_count), (gst_iir_equalizer_child_proxy_interface_init), (gst_iir_equalizer_base_init), (gst_iir_equalizer_class_init), (gst_iir_equalizer_finalize), (setup_filter), (gst_iir_equalizer_compute_frequencies), (gst_iir_equalizer_set_property), (gst_iir_equalizer_get_property), (gst_iir_equalizer_setup), (plugin_init): * gst/equalizer/gstiirequalizer.h: * gst/equalizer/gstiirequalizernbands.c: (gst_iir_equalizer_nbands_base_init), (gst_iir_equalizer_nbands_class_init), (gst_iir_equalizer_nbands_init), (gst_iir_equalizer_nbands_set_property), (gst_iir_equalizer_nbands_get_property): * gst/equalizer/gstiirequalizernbands.h: Refactor plugin into a base class and a first subclass (nband eq). The nband eq uses GstChildProxy and is controlable. More subclasses will follow.
2007-03-07gst/qtdemux/qtdemux.*: Share qtdemux debug category across all files, ↵Edward Hervey2-3/+4
otherwise all debugging in files other than qtd... Original commit message from CVS: * gst/qtdemux/qtdemux.c: * gst/qtdemux/qtdemux.h: Share qtdemux debug category across all files, otherwise all debugging in files other than qtdemux.c would end up in the default category.
2007-03-07gst/spectrum/gstspectrum.*: One FIXME less, by resolving message timestamps ↵Stefan Kost2-3/+21
against the playback segment. Original commit message from CVS: * gst/spectrum/gstspectrum.c: (gst_spectrum_start), (gst_spectrum_event), (gst_spectrum_transform_ip): * gst/spectrum/gstspectrum.h: One FIXME less, by resolving message timestamps against the playback segment.
2007-03-06gst/spectrum/gstspectrum.c: Fix and cleanup default property values.Wim Taymans1-6/+17
Original commit message from CVS: * gst/spectrum/gstspectrum.c: (gst_spectrum_class_init), (gst_spectrum_init), (gst_spectrum_set_property), (gst_spectrum_transform_ip): Fix and cleanup default property values. Add FIXMEs for stuff that looks rather wrong.
2007-03-05gst/spectrum/: Remove two obsolete and confusing comments.Stefan Kost2-4/+0
Original commit message from CVS: * gst/spectrum/demo-audiotest.c: (message_handler): * gst/spectrum/demo-osssrc.c: (message_handler): Remove two obsolete and confusing comments.
2007-03-03Fix up dist.Michael Smith1-5/+5
Original commit message from CVS: * configure.ac: * gst/vmnc/Makefile.am: Fix up dist.
2007-03-03Add VMnc decoder.Michael Smith2-0/+964
Original commit message from CVS: * configure.ac: * gst/vmnc/Makefile.am: * gst/vmnc/vmncdec.c: (gst_vmnc_dec_base_init), (gst_vmnc_dec_class_init), (gst_vmnc_dec_init), (gst_vmnc_dec_reset), (vmnc_handle_wmvi_rectangle), (render_colour_cursor), (render_cursor), (vmnc_make_buffer), (vmnc_handle_wmvd_rectangle), (vmnc_handle_wmve_rectangle), (vmnc_handle_wmvf_rectangle), (vmnc_handle_wmvg_rectangle), (vmnc_handle_wmvh_rectangle), (vmnc_handle_wmvj_rectangle), (render_raw_tile), (render_subrect), (vmnc_handle_raw_rectangle), (vmnc_handle_hextile_rectangle), (vmnc_handle_packet), (vmnc_dec_setcaps), (vmnc_dec_chain), (vmnc_dec_change_state), (vmnc_dec_set_property), (vmnc_dec_get_property), (plugin_init): Add VMnc decoder. Still missing support for: - rectangle types I didn't find in my samples (e.g. copy, RRE, ZRLE) - alpha-composited cursors
2007-03-03Move the app library to gst-libs/gst/app (duh!)David Schleef4-345/+4
Original commit message from CVS: * Makefile.am: * configure.ac: * ext/Makefile.am: * gst-libs/gst/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/gstapp.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: * gst/app/Makefile.am: * gst/app/gstapp.c: * gst/app/gstappsrc.c: * gst/app/gstappsrc.h: Move the app library to gst-libs/gst/app (duh!)
2007-03-02ext/dts/gstdtsdec.c: A few small clean-ups.Tim-Philipp Müller1-5/+11
Original commit message from CVS: * ext/dts/gstdtsdec.c: (gst_dtsdec_init), (gst_dtsdec_sink_event): A few small clean-ups. * gst/real/gstrealaudiodec.c: (gst_real_audio_dec_setcaps): More debug output for failure cases.