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.
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.
Original commit message from CVS:
* configure.ac:
* gst/app/Makefile.am:
* gst/app/gstapp.c:
* gst/app/gstappsrc.c:
* gst/app/gstappsrc.h:
Add a new plugin/library to make it easy for apps to shove
data into a pipeline.
Original commit message from CVS:
* configure.ac:
* docs/plugins/Makefile.am:
Add crossreferences to glib/gobject/gstream docs. Also fix typo in
timidity.cfg check.
* ext/timidity/gsttimidity.c: (plugin_init):
Also build if no config was detected at configure time.
Original commit message from CVS:
* configure.ac:
Tell the code which faad it is, so that we can adjust the hacks
needed.
* ext/faad/gstfaad.c:
Make our hacks dependent on the fadd lib in use.
Original commit message from CVS:
* configure.ac:
Increase required libsndfile version to a version that's known to
have the function sf_write_sync() to make the build bots happy.
Original commit message from CVS:
2007-02-02 Andy Wingo <wingo@pobox.com>
* configure.ac:
* ext/Makefile.am
* ext/sndfile/Makefile.am:
* ext/sndfile/gstsf.c:
* ext/sndfile/gstsf.h:
* ext/sndfile/gstsfsink.c:
* ext/sndfile/gstsfsink.h: Port sfsink to 0.10. Works in pull or
push mode with interleaved float or int data.
Original commit message from CVS:
* configure.ac:
Check for an Objective C compiler
* sys/Makefile.am:
* sys/osxvideo/Makefile.am:
* sys/osxvideo/cocoawindow.h:
* sys/osxvideo/cocoawindow.m:
* sys/osxvideo/osxvideosink.h:
* sys/osxvideo/osxvideosink.m:
Port of osxvideo plugin to 0.10. Do NOT consider 100% stable !
Fixes#402470
Original commit message from CVS:
2007-01-07 Andy Wingo <wingo@pobox.com>
* configure.ac:
* gst/interleave/Makefile.am:
* gst/interleave/plugin.h:
* gst/interleave/plugin.c:
* gst/interleave/interleave.c:
* gst/interleave/deinterleave.c: New elements interleave and
deinterleave, implement channel interleaving and deinterleaving.
The interleaver can operate in pull or push mode but the
deinterleaver is more like a demuxer and can only operate in push
mode.
Original commit message from CVS:
* configure.ac:
* gst/qtdemux/Makefile.am:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_moov):
Check for zlib and if available pass it explicitly to the linker
when linking qtdemux. If not available (or --disable-external has
been specified!), disable the bits in qtdemux that use it. Fixes
build on MingW (#392856).
Original commit message from CVS:
* configure.ac:
Real video .so are now also available for x86_64, so we can build the
Real plugin on i386 AND x86_64.
* gst/real/Makefile.am:
* gst/real/gstreal.c: (plugin_init):
New plugin file for real .so wrapper plugins.
* gst/real/gstrealvideodec.c: (gst_real_video_dec_alloc_buffer),
(gst_real_video_dec_decode), (gst_real_video_dec_chain),
(gst_real_video_dec_activate_push), (gst_real_video_dec_setcaps),
(open_library), (close_library), (gst_real_video_dec_init),
(gst_real_video_dec_base_init), (gst_real_video_dec_finalize),
(gst_real_video_dec_set_property),
(gst_real_video_dec_get_property), (gst_real_video_dec_class_init):
* gst/real/gstrealvideodec.h:
Moved RealVideo element to separate file
Cleaned up code some more.
Make it work on x86_64.
Try several possible locations for .so
Separate opening/closing libraries in separate functions.
Original commit message from CVS:
Patch by: Vincent Torri <vtorri at univ-evry fr>
* configure.ac:
* sys/Makefile.am:
* sys/directsound/Makefile.am:
* sys/directsound/gstdirectsoundsink.c:
(gst_directsoundsink_reset):
Add directsoundsink to build and dist it, so it gets built when
compiling with MingW on win32 and the required headers and libraries
are available (fixes: #392638). Also simplify DirectDraw check a bit.
* tests/check/elements/.cvsignore:
Fix CVS ignore for neonhttpsrc test binary.
Original commit message from CVS:
Patch by: Vincent Torri <vtorri at univ-evry fr>
* configure.ac:
* sys/Makefile.am:
* sys/directdraw/Makefile.am:
Add directdrawsink to build and dist it, so it gets built when
compiling with MingW on win32 and the required headers and libraries
are available (fixes: #392313).
* sys/directdraw/gstdirectdrawsink.c:
(gst_directdrawsink_center_rect), (gst_directdrawsink_show_frame),
(gst_directdrawsink_setup_ddraw),
(gst_directdrawsink_surface_create):
Comment out some unused things and fix some printf format issues in
order to avoid warnings when buildling with MingW (#392313).
Original commit message from CVS:
* configure.ac:
* ext/Makefile.am:
* ext/ladspa/*:
Move LADPSA plugin from -good for the release, as it's not quite
ready to be enabled by default in the -good module yet.
Original commit message from CVS:
* configure.ac:
* gst/videoparse/Makefile.am:
* gst/videoparse/gstvideoparse.c:
A little pluggy to make sense out of the random chunks we get
from multifilesrc.
Original commit message from CVS:
Patch by: Sebastian Dröge <slomo at circular-chaos.org>
* configure.ac:
* ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_mode_get_type),
(gst_wavpack_enc_correction_mode_get_type),
(gst_wavpack_enc_joint_stereo_mode_get_type),
(gst_wavpack_enc_init), (gst_wavpack_enc_set_wp_config):
Fix enum nicks; only emit no-more-pads once; add support for very
fast encoding mode in upcoming 4.40.0 release (#369539).
Original commit message from CVS:
* configure.ac:
* gst/multifilesink/Makefile.am:
* gst/multifilesink/gstmultifilesink.c:
* gst/multifilesink/gstmultifilesink.h:
I copied over filesink a while ago and modified it to work
as multifilesink. Might as well check it in. This could
use some work before being declared useful.