Commit graph

5384 commits

Author SHA1 Message Date
Antoine Tremblay
79c0a10f00 gst/gdp/gstgdppay.c: Close a buffer memory leak. Fixes bug #534071.
Original commit message from CVS:
Patch by: Antoine Tremblay <hexa00 at gmail dot com>
* gst/gdp/gstgdppay.c: (gst_gdp_pay_chain):
Close a buffer memory leak. Fixes bug #534071.
2012-09-11 01:54:32 +01:00
Edward Hervey
6f7b2e2a3b gst/gdp/gstgdpdepay.c: Don't validate the payload if there isn't any.
Original commit message from CVS:
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain):
Don't validate the payload if there isn't any.
Fixes #525915
2012-09-11 01:54:32 +01:00
Michael Smith
41be2b32d0 gst/gdp/gstgdpdepay.c: Check the body CRC (if set) when depayloading.
Original commit message from CVS:
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain):
Check the body CRC (if set) when depayloading.
Fixes #522401.
2012-09-11 01:54:32 +01:00
Sebastian Dröge
a8bf6e2d8a Use G_PARAM_STATIC_STRINGS everywhere for GParamSpecs that use static strings (i.e. all). This gives us less memory u...
Original commit message from CVS:
* configure.ac:
* ext/alsa/gstalsamixerelement.c:
(gst_alsa_mixer_element_class_init):
* ext/alsa/gstalsasink.c: (gst_alsasink_class_init):
* ext/alsa/gstalsasrc.c: (gst_alsasrc_class_init):
* ext/cdparanoia/gstcdparanoiasrc.c:
(gst_cd_paranoia_src_class_init):
* ext/gio/gstgiosink.c: (gst_gio_sink_class_init):
* ext/gio/gstgiosrc.c: (gst_gio_src_class_init):
* ext/gio/gstgiostreamsink.c: (gst_gio_stream_sink_class_init):
* ext/gio/gstgiostreamsrc.c: (gst_gio_stream_src_class_init):
* ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_class_init):
* ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_class_init):
* ext/ogg/gstoggmux.c: (gst_ogg_mux_class_init):
* ext/pango/gsttextoverlay.c: (gst_text_overlay_class_init):
* ext/pango/gsttextrender.c: (gst_text_render_class_init):
* ext/theora/theoradec.c: (gst_theora_dec_class_init):
* ext/theora/theoraenc.c: (gst_theora_enc_class_init):
* ext/theora/theoraparse.c: (gst_theora_parse_class_init):
* ext/vorbis/vorbisenc.c: (gst_vorbis_enc_class_init):
* gst-libs/gst/audio/gstaudiofiltertemplate.c:
(gst_audio_filter_template_class_init):
* gst-libs/gst/audio/gstbaseaudiosink.c:
(gst_base_audio_sink_class_init):
* gst-libs/gst/audio/gstbaseaudiosrc.c:
(gst_base_audio_src_class_init):
* gst-libs/gst/cdda/gstcddabasesrc.c:
(gst_cdda_base_src_class_init):
* gst-libs/gst/interfaces/mixertrack.c:
(gst_mixer_track_class_init):
* gst-libs/gst/rtp/gstbasertpdepayload.c:
(gst_base_rtp_depayload_class_init):
* gst-libs/gst/rtp/gstbasertppayload.c:
(gst_basertppayload_class_init):
* gst/audioconvert/gstaudioconvert.c:
(gst_audio_convert_class_init):
* gst/audiorate/gstaudiorate.c: (gst_audio_rate_class_init):
* gst/audioresample/gstaudioresample.c:
(gst_audioresample_class_init):
* gst/audiotestsrc/gstaudiotestsrc.c:
(gst_audio_test_src_class_init):
* gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init):
* gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init):
* gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init),
(preroll_unlinked):
* gst/playback/gstplaybin.c: (gst_play_bin_class_init):
* gst/playback/gstplaybin2.c: (gst_play_bin_class_init):
* gst/playback/gstplaysink.c: (gst_play_sink_class_init):
* gst/playback/gstqueue2.c: (gst_queue_class_init):
* gst/playback/gststreaminfo.c: (gst_stream_info_class_init):
* gst/playback/gststreamselector.c: (gst_selector_pad_class_init),
(gst_stream_selector_class_init):
* gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_class_init):
* gst/subparse/gstsubparse.c: (gst_sub_parse_class_init):
* gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init):
* gst/tcp/gsttcpclientsink.c: (gst_tcp_client_sink_class_init):
* gst/tcp/gsttcpclientsrc.c: (gst_tcp_client_src_class_init):
* gst/tcp/gsttcpserversink.c: (gst_tcp_server_sink_class_init):
* gst/tcp/gsttcpserversrc.c: (gst_tcp_server_src_class_init):
* gst/videorate/gstvideorate.c: (gst_video_rate_class_init):
* gst/videoscale/gstvideoscale.c: (gst_video_scale_class_init):
* gst/videotestsrc/gstvideotestsrc.c:
(gst_video_test_src_class_init):
* gst/volume/gstvolume.c: (gst_volume_class_init):
* sys/v4l/gstv4lelement.c: (gst_v4lelement_class_init):
* sys/v4l/gstv4lmjpegsink.c: (gst_v4lmjpegsink_class_init):
* sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_class_init):
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_class_init):
* sys/ximage/ximagesink.c: (gst_ximagesink_class_init):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_class_init):
Use G_PARAM_STATIC_STRINGS everywhere for GParamSpecs that use
static strings (i.e. all). This gives us less memory usage,
fewer allocations and thus less memory defragmentation. Depend
on core CVS for this. Fixes bug #523806.
2012-09-11 01:54:32 +01:00
Thomas Vander Stichele
5b15ce712b gst/gdp/gstgdppay.c (gst_gdp_pay_chain): tests/check/pipelines/streamheader.c (tag_event_probe_cb,
Original commit message from CVS:
* gst/gdp/gstgdppay.c (gst_gdp_pay_chain):
* tests/check/pipelines/streamheader.c (tag_event_probe_cb,
GST_START_TEST, buffer_probe_cb, GST_START_TEST):
Fix a bug where serialized IN_CAPS buffers needed to be set IN_CAPS.
2012-09-11 01:54:32 +01:00
Thomas Vander Stichele
ef3dbd48da debug changes
Original commit message from CVS:
debug changes
2012-09-11 01:54:31 +01:00
Wim Taymans
1ed9b0fff4 gst/gdp/gstgdppay.c: Make sure we set the IN_CAPS flag correctly.
Original commit message from CVS:
* gst/gdp/gstgdppay.c: (gst_gdp_pay_chain),
(gst_gdp_pay_sink_event):
Make sure we set the IN_CAPS flag correctly.
* gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_render):
Get the IN_CAPS flag before we call functions that mess with the flags.
2012-09-11 01:54:31 +01:00
Thomas Vander Stichele
c1c0767689 gst/gdp/gstgdppay.c (gst_gdp_pay_reset_streamheader, gst_gdp_pay_chain, gst_gdp_pay_sink_event):
Original commit message from CVS:
* gst/gdp/gstgdppay.c (gst_gdp_pay_reset_streamheader,
gst_gdp_pay_chain, gst_gdp_pay_sink_event):
Only stamp buffers with offset/offset_end right before they get
pushed.  This ensures offset continuity, which was not the case
before as shown by
gst-launch -v -m audiotestsrc num-buffers=10 ! audioconvert ! vorbisenc ! gdppay ! identity check-imperfect-offset=TRUE ! fakesink silent=TRUE
2012-09-11 01:54:31 +01:00
Thomas Vander Stichele
4b972637e1 adding debugging
Original commit message from CVS:
adding debugging
2012-09-11 01:54:31 +01:00
Thomas Vander Stichele
9e3bb940b2 add buffer logging
Original commit message from CVS:
add buffer logging
2012-09-11 01:54:31 +01:00
Michael Smith
377554d9eb gst/gdp/gstgdppay.c: Fix memory leaks and misleading debug messages, add a couple of comments.
Original commit message from CVS:
* gst/gdp/gstgdppay.c: (gst_gdp_pay_reset),
(gst_gdp_pay_reset_streamheader), (gst_gdp_pay_chain):
Fix memory leaks and misleading debug messages, add a couple of
comments.

* gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_get_stats),
(gst_multi_fd_sink_render):
Do not use gst_buffer_make_writable() in a basesink render method,
as it may incorrectly unref the buffer. Instead, use convoluted
dance to avoid copying the buffer except when we need to.
2012-09-11 01:54:31 +01:00
Thomas Vander Stichele
ab0f3921f5 adding a README
Original commit message from CVS:
adding a README
2012-09-11 01:54:31 +01:00
Thomas Vander Stichele
760d64bab2 Move GDP plugin to -base from -bad. Closes #347783.
Original commit message from CVS:
* configure.ac:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/inspect/plugin-gdp.xml:
* gst/gdp/Makefile.am:
* tests/check/Makefile.am:
Move GDP plugin to -base from -bad.  Closes #347783.
2012-09-11 01:54:31 +01:00
Zaheer Abbas Merali
adf8399952 gst/gdp/gstgdpdepay.c: Fix event parsing by gdpdepay. Fixes #349916.
Original commit message from CVS:
2006-08-04  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain):
Fix event parsing by gdpdepay.  Fixes #349916.
2012-09-11 01:54:30 +01:00
Wim Taymans
8b7b165e1b gst/gdp/gstgdpdepay.c: Disable seeking.
Original commit message from CVS:
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init),
(gst_gdp_depay_finalize), (gst_gdp_depay_sink_event),
(gst_gdp_depay_src_event), (gst_gdp_depay_chain),
(gst_gdp_depay_change_state):
Disable seeking.
Small cleanups.
Clear adapter on disconts.
Clear caps when going to READY instead of NULL
* gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init),
(gst_gdp_pay_init), (gst_gdp_pay_finalize), (gst_gdp_pay_reset),
(gst_gdp_buffer_from_caps), (gst_gdp_pay_buffer_from_buffer),
(gst_gdp_buffer_from_event), (gst_gdp_pay_reset_streamheader),
(gst_gdp_queue_buffer), (gst_gdp_pay_chain),
(gst_gdp_pay_sink_event), (gst_gdp_pay_src_event),
(gst_gdp_pay_change_state):
* gst/gdp/gstgdppay.h:
Reset payloader when going to READY.
Fix leaked buffers in ->queue on push errors.
Disable seeking.
Code cleanups.
Create packetizer in _init, free in _finalize.
2012-09-11 01:54:29 +01:00
Wim Taymans
6c124ba100 gst/gdp/gstgdpdepay.c: Consume all events except EOS because we generate events from the gdp payload instead. Fixes #...
Original commit message from CVS:
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init),
(gst_gdp_depay_sink_event), (gst_gdp_depay_chain):
Consume all events except EOS because we generate events from
the gdp payload instead. Fixes #349204
2012-09-11 01:54:29 +01:00
Thomas Vander Stichele
0d7a03eda3 gst/gdp/gstgdpdepay.c: proxying get/set caps is the wrong thing to do, since we really do change caps quite fundament...
Original commit message from CVS:
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init):
proxying get/set caps is the wrong thing to do, since we really
do change caps quite fundamentally
* tests/check/elements/gdpdepay.c:
* tests/check/elements/gdppay.c:
remove declaration of buffers, it's already done in gstcheck.h
2012-09-11 01:54:29 +01:00
Thomas Vander Stichele
afe32c11ec gst/gdp/: remove parent_class setting, BOILERPLATE does this fix typo in comment
Original commit message from CVS:
2006-07-17  Thomas Vander Stichele  <thomas at apestaart dot org>

* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_class_init):
* gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init),
remove parent_class setting, BOILERPLATE does this
(gst_gdp_pay_reset_streamheader):
fix typo in comment
2012-09-11 01:54:29 +01:00
Thomas Vander Stichele
366b9b2284 build as a plugin, not a lib
Original commit message from CVS:
build as a plugin, not a lib
2012-09-11 01:54:29 +01:00
Thomas Vander Stichele
01d7de7e2d docs/plugins/: add more plugins and elements to docs
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:
add more plugins and elements to docs
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain):
fix segfaults due to wrong g_free
add example
* gst/gdp/gstgdppay.c:
add example
2012-09-11 01:54:29 +01:00
Tim-Philipp Müller
17582f36fc Use GST_DEBUG_CATEGORY_STATIC where possible (#342503) and fix one GObject boilerplate macro.
Original commit message from CVS:
* ext/directfb/dfbvideosink.c:
* ext/gsm/gstgsmdec.c:
* ext/gsm/gstgsmenc.c:
* ext/libmms/gstmms.c:
* ext/neon/gstneonhttpsrc.c:
* ext/theora/theoradec.c:
* gst/freeze/gstfreeze.c:
* gst/gdp/gstgdpdepay.c:
* gst/gdp/gstgdppay.c:
* sys/glsink/glimagesink.c:
Use GST_DEBUG_CATEGORY_STATIC where possible (#342503)
and fix one GObject boilerplate macro.
2012-09-11 01:54:29 +01:00
Thomas Vander Stichele
1094a0a54d adapt to new api
Original commit message from CVS:
adapt to new api
2012-09-11 01:54:29 +01:00
Thomas Vander Stichele
10c57d9254 configure.ac: enable building of GDP elements
Original commit message from CVS:
* configure.ac:
enable building of GDP elements
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain):
* gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init),
(gst_gdp_pay_init), (gst_gdp_buffer_from_caps),
(gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event),
(gst_gdp_pay_reset_streamheader), (gst_gdp_pay_sink_event),
(gst_gdp_pay_set_property), (gst_gdp_pay_get_property),
(gst_gdp_pay_change_state):
* gst/gdp/gstgdppay.h:
add version 1.0
2012-09-11 01:54:28 +01:00
Thomas Vander Stichele
a5ef603d20 small fixes
Original commit message from CVS:
small fixes
2012-09-11 01:54:28 +01:00
Thomas Vander Stichele
ad556efb2a gst/gdp/gstgdppay.c: add crc-header and crc-payload properties don't error out on some things that are recoverable
Original commit message from CVS:
* gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init),
(gst_gdp_pay_init), (gst_gdp_buffer_from_caps),
(gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event),
(gst_gdp_pay_reset_streamheader), (gst_gdp_pay_chain),
(gst_gdp_pay_sink_event), (gst_gdp_pay_set_property),
(gst_gdp_pay_get_property):
add crc-header and crc-payload properties
don't error out on some things that are recoverable
* tests/check/elements/gdppay.c: (GST_START_TEST), (gdppay_suite):
add test for crc
2012-09-11 01:54:28 +01:00
Stefan Kost
1f3890d483 Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
Original commit message from CVS:
* ext/alsaspdif/alsaspdifsink.h:
* ext/amrwb/gstamrwbdec.h:
* ext/amrwb/gstamrwbenc.h:
* ext/amrwb/gstamrwbparse.h:
* ext/arts/gst_arts.h:
* ext/artsd/gstartsdsink.h:
* ext/audiofile/gstafparse.h:
* ext/audiofile/gstafsink.h:
* ext/audiofile/gstafsrc.h:
* ext/audioresample/gstaudioresample.h:
* ext/bz2/gstbz2dec.h:
* ext/bz2/gstbz2enc.h:
* ext/dirac/gstdiracdec.h:
* ext/directfb/dfbvideosink.h:
* ext/divx/gstdivxdec.h:
* ext/divx/gstdivxenc.h:
* ext/dts/gstdtsdec.h:
* ext/faac/gstfaac.h:
* ext/gsm/gstgsmdec.h:
* ext/gsm/gstgsmenc.h:
* ext/ivorbis/vorbisenc.h:
* ext/libfame/gstlibfame.h:
* ext/nas/nassink.h:
* ext/neon/gstneonhttpsrc.h:
* ext/polyp/polypsink.h:
* ext/sdl/sdlaudiosink.h:
* ext/sdl/sdlvideosink.h:
* ext/shout/gstshout.h:
* ext/snapshot/gstsnapshot.h:
* ext/sndfile/gstsf.h:
* ext/swfdec/gstswfdec.h:
* ext/tarkin/gsttarkindec.h:
* ext/tarkin/gsttarkinenc.h:
* ext/theora/theoradec.h:
* ext/wavpack/gstwavpackdec.h:
* ext/wavpack/gstwavpackparse.h:
* ext/xine/gstxine.h:
* ext/xvid/gstxviddec.h:
* ext/xvid/gstxvidenc.h:
* gst/cdxaparse/gstcdxaparse.h:
* gst/cdxaparse/gstcdxastrip.h:
* gst/colorspace/gstcolorspace.h:
* gst/festival/gstfestival.h:
* gst/freeze/gstfreeze.h:
* gst/gdp/gstgdpdepay.h:
* gst/gdp/gstgdppay.h:
* gst/modplug/gstmodplug.h:
* gst/mpeg1sys/gstmpeg1systemencode.h:
* gst/mpeg1videoparse/gstmp1videoparse.h:
* gst/mpeg2sub/gstmpeg2subt.h:
* gst/mpegaudioparse/gstmpegaudioparse.h:
* gst/multifilesink/gstmultifilesink.h:
* gst/overlay/gstoverlay.h:
* gst/playondemand/gstplayondemand.h:
* gst/qtdemux/qtdemux.h:
* gst/rtjpeg/gstrtjpegdec.h:
* gst/rtjpeg/gstrtjpegenc.h:
* gst/smooth/gstsmooth.h:
* gst/smoothwave/gstsmoothwave.h:
* gst/spectrum/gstspectrum.h:
* gst/speed/gstspeed.h:
* gst/stereo/gststereo.h:
* gst/switch/gstswitch.h:
* gst/tta/gstttadec.h:
* gst/tta/gstttaparse.h:
* gst/videodrop/gstvideodrop.h:
* gst/xingheader/gstxingmux.h:
* sys/directdraw/gstdirectdrawsink.h:
* sys/directsound/gstdirectsoundsink.h:
* sys/dxr3/dxr3audiosink.h:
* sys/dxr3/dxr3spusink.h:
* sys/dxr3/dxr3videosink.h:
* sys/qcam/gstqcamsrc.h:
* sys/vcd/vcdsrc.h:
Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass
2012-09-11 01:54:28 +01:00
Thomas Vander Stichele
bc93eeb575 gst/gdp/: Handle error cases when calling functions do downwards state change after parent's change_state
Original commit message from CVS:
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain),
(gst_gdp_depay_change_state):
* gst/gdp/gstgdpdepay.h:
* gst/gdp/gstgdppay.c: (gst_gdp_pay_reset_streamheader),
(gst_gdp_pay_chain), (gst_gdp_pay_sink_event),
(gst_gdp_pay_change_state):
* gst/gdp/gstgdppay.h:
Handle error cases when calling functions
do downwards state change after parent's change_state
* tests/check/elements/gdpdepay.c: (GST_START_TEST):
* tests/check/elements/gdppay.c: (GST_START_TEST):
clean up more
2012-09-11 01:54:28 +01:00
Thomas Vander Stichele
98f21eebb2 adding GDP payloader and depayloader. Build integration will follow later when the GDP issues for core are sorted out.
Original commit message from CVS:
* gst/gdp/Makefile.am:
* gst/gdp/gstgdp.c: (plugin_init):
* gst/gdp/gstgdpdepay.c: (gst_gdp_depay_base_init),
(gst_gdp_depay_class_init), (gst_gdp_depay_init),
(gst_gdp_depay_finalize), (gst_gdp_depay_chain),
(gst_gdp_depay_change_state), (gst_gdp_depay_plugin_init):
* gst/gdp/gstgdpdepay.h:
* gst/gdp/gstgdppay.c: (gst_gdp_pay_base_init),
(gst_gdp_pay_class_init), (gst_gdp_pay_init),
(gst_gdp_pay_dispose), (gst_gdp_stamp_buffer),
(gst_gdp_buffer_from_caps), (gst_gdp_pay_buffer_from_buffer),
(gst_gdp_buffer_from_event), (gst_gdp_pay_reset_streamheader),
(gst_gdp_queue_buffer), (gst_gdp_pay_chain),
(gst_gdp_pay_sink_event), (gst_gdp_pay_change_state),
(gst_gdp_pay_plugin_init):
* gst/gdp/gstgdppay.h:
* tests/check/Makefile.am:
* tests/check/elements/gdpdepay.c: (setup_gdpdepay),
(cleanup_gdpdepay), (gdpdepay_push_per_byte), (GST_START_TEST),
(setup_gdpdepay_streamheader), (gdpdepay_suite), (main):
* tests/check/elements/gdppay.c: (setup_gdppay), (cleanup_gdppay),
(GST_START_TEST), (setup_gdppay_streamheader), (gdppay_suite),
(main):
adding GDP payloader and depayloader.  Build integration will
follow later when the GDP issues for core are sorted out.
2012-09-11 01:54:28 +01:00
Olivier Crête
064b143635 rtpmux: Misc fix for 0.11
Convert the incoming caps before proxying them
Clear the last_pad when going to ready

tests: Implement accept_caps, don't leak event
2012-09-10 20:38:14 -04:00
David Schleef
be8aa2973e inter: fix leaks in audiosrc/sink 2012-09-09 02:03:33 +01:00
Edward Hervey
0a4c2524fa mpeg4videoparse: Don't override upstream framerate and PAR
If upstream provided some, there's a good chance they are the ones to use
2012-09-08 17:07:12 +02:00
Tim-Philipp Müller
8968628ca2 hls: disable hlssink but do build hlsdemux 2012-09-08 14:43:37 +01:00
Robert Swain
b33f041753 hls: Add missing GST_PLUGINS_BASE_CFLAGS 2012-09-07 16:25:36 +02:00
Robert Swain
9d003f4d2b hlssink: Add segment target-duration property
This property causes hlssink to push a force key unit event upstream
every target-duration seconds. This is for simple automatic segmenting.
To disable it, set the property to 0 and push the force key unit event
manually.
2012-09-07 16:25:36 +02:00
Alessandro Decina
b1029d767e hls: add hlssink element 2012-09-07 16:25:36 +02:00
Thiago Santos
2139c81cdb camerabin2: use correct variable when handling pad probe buffers
Pad probe data is in the GstPadProbeInfo, not in the user data
parameter.
2012-09-06 01:53:07 -03:00
Tim-Philipp Müller
9e53df7667 diracparse: fix main profile mapping 2012-09-03 13:58:16 +01:00
Tim-Philipp Müller
0ff01faaaa diracparse: change "interlaced" boolean in caps to "interlace-mode"
Not strictly needed, but let's make it consistent with the raw
video way of doing things.
2012-09-03 12:41:33 +01:00
Tim-Philipp Müller
39ca8d05d9 diracparse: use strings for profile and level in caps
For consistency with most other formats.

https://bugzilla.gnome.org/show_bug.cgi?id=658436
2012-09-03 12:40:33 +01:00
Tim-Philipp Müller
c161defb44 id3tag: extract year to write into ID3v1 tag from GST_TAG_DATE_TIME not GST_TAG_DATE 2012-09-02 03:55:35 +01:00
Matej Knopp
d3219a261a mpeg4videoparse: set 0 duration when vop_coded is 0
https://bugzilla.gnome.org/show_bug.cgi?id=683169
2012-09-02 03:43:12 +01:00
Tim-Philipp Müller
a79edf27d0 gst_message_new_duration -> gst_message_new_duration_changed 2012-09-02 01:48:12 +01:00
Jan Schmidt
a303375a3f autoconvert: Handle caps query on internal srcpad
Reply with ANY caps to ensure linking the internal src pad. This
might need more attention later, to reply with the real upstream caps
for the currently active element.
2012-09-01 16:09:59 -07:00
Jan Schmidt
f2d0c6a89e resindvd/mpegdemux: Send both PTS and DTS downstream
Now that we can.
2012-09-01 16:09:59 -07:00
Jan Schmidt
463ac4c12f dvdspu: Make GAP event aware 2012-08-31 13:12:41 -07:00
Jan Schmidt
ea707c1764 autoconvert: Don't drop upstream events due to silly typo 2012-08-31 07:06:50 -07:00
Jan Schmidt
3ace19461f mpegdemux: Merge some DVD pieces and fixes
Bring the resindvd copy of mpegpsdemux and the normal version
slightly closer together.

Don't forward incoming sink caps event to downstream elements.
2012-08-31 07:06:50 -07:00
Jan Schmidt
628a8ed8b1 mpegdemux: avoid extra refs/unrefs of the demuxer
Change all the gst_pad_get_parent() calls to a cast to the
passed parent variable where appropriate, and don't unref,
including the extra unref in the
gst_flups_demux_sink_activate_push() function.
2012-08-31 07:06:50 -07:00
Mark Nauwelaerts
429204a89e dvbsuboverlay: adjust to modified video overlay composition API
... and supply overlay rectangle data in AYUV as provided by input
data rather than converting to RGB.
2012-08-30 12:21:41 +02:00
Thiago Santos
edb5a28973 camerabin: no need to set clock/basetime again
The base and clock aren't lost anymore on state changes
in 1.0
2012-08-29 22:05:56 -03:00
Thiago Santos
cc130a2fea camerabin: no need to send extra reconfigure
Setting capsfilters already sends reconfigure events when a new
caps is set, no need to resend them.
2012-08-29 22:05:04 -03:00
Thiago Santos
9ff5b6bcbe camerabin: request _%u templates instead of _%d
In 1.0, templates have been renamed to _%u as default
2012-08-29 15:45:05 -03:00
Thiago Santos
9fd555c3d0 wrappercamerabinsrc: rework video recording eos push
Push EOS outside of wrappercamerabinsrc so that none of the
internal elements gets its pads into eos state, preventing any
further data from passing
2012-08-29 15:45:05 -03:00
Mark Nauwelaerts
4f2bcc3243 h264parse: ensure sufficiently sized buffer when wrapping NAL
Noted by <zhangyanping210@yahoo.com.cn>

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=682589
2012-08-28 11:07:50 +02:00
Stefan Sauer
c1923a6755 audiovisualizer: revert renaming of the type
The special type name was lost when merging from base.
2012-08-22 15:10:25 +02:00
Tim-Philipp Müller
875b079d4b audiovisualizer: avoid registering enum type of same name as libvisual plugin in -base 2012-08-21 13:29:16 +01:00
Tim-Philipp Müller
205a15e14b id3tag: fix build
Some code slipped into the last commit that was meant to be
pushed separately. Use gst_date_time_unref() instead of _free().
2012-08-21 10:29:55 +01:00
Tim-Philipp Müller
38c749ca2f id3tag: port to 0.11 2012-08-21 10:22:49 +01:00
Tim-Philipp Müller
2483c82bd7 video/x-dvd-subpicture -> subpicture/x-dvd 2012-08-20 23:37:00 +01:00
Tim-Philipp Müller
cc167a237a Fix up FSF address in some source files as well 2012-08-18 20:31:17 +01:00
Stefan Sauer
4132d222cb audiovisualizer: sync to change in base and port
Add support for GstVideoMeta and GstVideoFrame. Remove some redundant fields
that are also in GstVideoInfo. Don't disable the shader code, it does not
look broken.
2012-08-17 22:57:10 +02:00
Stefan Sauer
48cf0f3a77 audiovisualizer: status update 2012-08-17 15:16:00 +02:00
Stefan Sauer
ce221fdbdd visualizer: small cleanup
Apply cleanup from copy in base.
2012-08-15 11:26:59 +02:00
Edward Hervey
105737db54 mpegtspacketizer: Fix flushing/sync handling
There was a stray adapter_flush() now that we used a temporary buffer
2012-08-14 19:07:58 +02:00
Edward Hervey
121aa3ad13 mpegtspacketizer: Better detect PCR resets
Assume that any differences in PCR greater than 15s means there is
a reset in the stream.
2012-08-14 19:07:51 +02:00
Edward Hervey
3153965658 mpegtspacketizer: Remove/demote some debugging 2012-08-14 19:07:39 +02:00
Edward Hervey
9abedc97ff tsdemux: Always use current PTS/DTS
This avoids setting old PTS and/or DTS
2012-08-14 19:07:33 +02:00
Edward Hervey
e25c2e8e74 mpegtspacketizer: Remove unneeded memset(0) 2012-08-14 19:07:28 +02:00
Edward Hervey
8b80114101 mpegts: Use G_GNUC_INTERNAL 2012-08-14 19:07:24 +02:00
Edward Hervey
4d4d2f6eb0 mpegtspacketizer: Use gst_structure_*_take_value where applicable
Saves copying/freeing data
2012-08-14 19:06:16 +02:00
Edward Hervey
5de6fd1ff8 mpegtspacketizer: Cache the GIConv
Avoids having to constantly open/free them (which will end up being
very often with EIT/NIT).
2012-08-14 19:06:11 +02:00
Edward Hervey
e3c0bbe5f6 mpegtbase: reset element in READY=>PAUSED
Ensures all subclass reset vmethods are called
2012-08-14 19:06:04 +02:00
Edward Hervey
b1295aef14 mpegtspacketizer: Use more Quarks 2012-08-14 19:05:58 +02:00
Edward Hervey
d54624aa49 tsdemux: Remove useless code
PCR/OPCR is meant to be handled by the packetizer
2012-08-14 19:05:52 +02:00
Edward Hervey
4f55cc12ae tsdemux: Calculate pcr/time/offset separately per program
Avoids quite a few issues with multi-program streams
2012-08-14 19:05:48 +02:00
Edward Hervey
a8d1e88bda tsparse: Push out buffer on main source pad 2012-08-14 19:05:44 +02:00
Edward Hervey
558beab1b4 mpegtbase: vmethod to notify when we're done processing input
This can be used to notify subclasses no more data is expected this
round.
tsparse will use it to push whole buffers (without copy) on the main
source pad.
It could also be used later to decide whether to push pending data
in order to reduce latency.
2012-08-14 19:05:37 +02:00
Wim Taymans
a9f46ed059 mpegvideoparse: only apply repeat count when set
When there is no extension header, the repeat_count variable is left to 0 and
then the duration on the output buffers is calculated wrongly. Because the
duration is used to interpolate output timestamps, the output timestamps are
also wrong, causing bad framerates.

See https://bugzilla.gnome.org/show_bug.cgi?id=681535
2012-08-13 10:58:50 +02:00
Sebastian Dröge
abfa30a42b gst: Set alignment at the correct place of GstAllocationParams 2012-08-08 17:41:42 +02:00
Sebastian Dröge
bdc46898de gst: Add stream-id to stream-start events 2012-08-06 14:05:08 +02:00
Tim-Philipp Müller
489b102a43 gst_tag_list_free -> gst_tag_list_unref 2012-08-04 16:31:30 +01:00
Tim-Philipp Müller
c031f5bd27 schroedinger, mpegtsmux: fix plugin names 2012-08-03 11:52:11 +01:00
Robert Swain
955e50449e wrappercamerabinsrc: Save image/video reconfiguration until capturing
Add a src pad event handler function that filters reconfigure events to
trigger the renegotiation code paths in the mode-specific start-capture
phase.

This is to work towards fixing unit tests but more work is needed.
2012-08-02 22:46:21 +02:00
Thiago Santos
0a831613a8 camerabin: update preview buffer pushing
need to pass a GstSample to the utilitary preview buffer post functions
as a GstBuffer doesn't have caps anymore. The GstSample has the GstCaps
and it is used to inform the preview's pipeline about the format of the
input, before it gets converted to the user's requested output format.
2012-07-29 00:53:29 -03:00
Tim-Philipp Müller
8b36de8b41 Revert "camerabin: update to new tag event creation API"
This reverts commit 5d890b3c92.

The new API is the old API.
2012-07-29 00:04:35 +01:00
Thiago Santos
3ce5a977ad camerabin: Fix references to avoid element leaking
Some pad probes are never going to be removed from the pads, so
we shouldn't keep a camerabin reference with them or camerabin will
never get released
2012-07-28 18:27:19 -03:00
Thiago Santos
5d890b3c92 camerabin: update to new tag event creation API 2012-07-28 15:17:17 -03:00
Sebastian Dröge
afd50a79f4 tag: Update for taglist/tag event API changes 2012-07-28 00:32:58 +02:00
Wim Taymans
658e54ff8c audiovisualizer: fixate caps 2012-07-24 12:28:18 +02:00
Wim Taymans
57fa9e8bb2 guadi: prefix orc functions with gaudi_orc_ 2012-07-24 10:46:39 +02:00
Wim Taymans
f4220d35a5 fieldanalysis: prefix orc functions 2012-07-24 10:44:51 +02:00
Wim Taymans
c31950d3e8 bayer: prefix orc functions with bayer_orc
Add bayer orc to the unit test
2012-07-24 10:32:51 +02:00
Robert Swain
305db3ef56 interlace: Use buffer flags and caps correctly
This requires a recent commit to -base that adds an INTERLACED buffer
flag.
2012-07-20 23:29:54 +02:00
Stefan Sauer
62e5afb95e spectrascope: fabs->sqrt to calculate the magnitude 2012-07-19 16:11:02 +02:00
Tim-Philipp Müller
0cf07e04be mpegpsdemux: also activate in push mode if the scheduling query failed
In case pads are unlinked somewhere.
2012-07-18 09:19:30 +01:00
Tim-Philipp Müller
421b593048 mpegdemux: fix push mode activation
Extra unref on push mode activation caused havoc.
2012-07-18 08:43:01 +01:00
Mark Nauwelaerts
a39b6cc1b8 dvbsuboverlay: no need to make buffer writable twice 2012-07-17 18:09:47 +02:00
Mark Nauwelaerts
47be2fc3d8 dvbsuboverlay: plug some ref leaks 2012-07-17 18:09:46 +02:00
Mark Nauwelaerts
081779aaa8 dvbsuboverlay: adjust to modified video overlay composition API 2012-07-17 18:09:46 +02:00
Wim Taymans
87ee22fe0e update for RTP buffer api changes 2012-07-17 16:39:02 +02:00
Stefan Sauer
124c9a7fa4 audiovisualizer: shorten base class name
As suggested on IRC rename to AudioVisualizer. We use custom suffix on the type
to avoid clashing with other copies for the time being.
2012-07-16 22:02:44 +02:00
Tim-Philipp Müller
41a39d93bf celt, opencv, wayland, dvbsub, festival, hls: printf format fixes 2012-07-15 12:27:12 +01:00
Mark Nauwelaerts
8712729a8c dvbsuboverlay: adaptively blend or attach video overlay composition
Conflicts:

	gst/dvbsuboverlay/gstdvbsuboverlay.c
2012-07-13 12:32:51 +02:00
Mark Nauwelaerts
2d0866ec28 dvbsuboverlay: use video overlay composition helper
... rather than custom home-made blending.

Conflicts:

	gst/dvbsuboverlay/gstdvbsuboverlay.c
2012-07-13 12:27:57 +02:00
Mark Nauwelaerts
76aedf5641 tsdemux: more correctly determine expected PES packet payload size
... particularly considering that packet_length == 0 is possible.
2012-07-12 10:17:57 +02:00
Mark Nauwelaerts
006fe188e7 tsdemux: correctly determine expected PES packet payload size
Avoids consistently failing to detect that a packet is complete, which
would then only be pushed upon the start of a next packet, which leads
to quite a delay in case of a sparse (subtitle) stream.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=666674
2012-07-11 20:43:46 +02:00
Mark Nauwelaerts
4374a90553 dvbsuboverlay: ensure minimum page time out of 1 second
... to compensate for some bogus subtitle with a 0 timeout, which would
result in only being shown for a very unreadable amount of time.

See https://bugzilla.gnome.org/show_bug.cgi?id=666674
2012-07-11 20:43:43 +02:00
Tim-Philipp Müller
584485b9f4 dvbsuboverlay: fix compiler warnings
gstdvbsuboverlay.c:772:15: error: pointer targets in passing argument 5 of 'gst_segment_clip' differ in signedness
/home/tpm/gst/0.11/gstreamer/gst/gstsegment.h:192:14: note: expected 'guint64 *' but argument is of type 'gint64 *'
gstdvbsuboverlay.c:772:15: error: pointer targets in passing argument 6 of 'gst_segment_clip' differ in signedness
2012-07-11 13:59:18 +01:00
Mark Nauwelaerts
39d2a9fb44 dvbsuboverlay: fixup end-of-display-set forcing
Conflicts:

	gst/dvbsuboverlay/gstdvbsuboverlay.c
2012-07-11 13:49:14 +02:00
Mark Nauwelaerts
5be47b949d dvbsuboverlay: ensure valid subtitle running time by proper clipping
In particular, pass buffer timestamp (pts) to dvb_sub, and then clip
and convert to running time when the duration (timeout) is known after
decoding it.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=660233

Conflicts:

	gst/dvbsuboverlay/gstdvbsuboverlay.c
2012-07-11 13:48:32 +02:00
Mark Nauwelaerts
76b147e803 dvbsuboverlay: properly force end-of-display-set
... which is upon receiving new data with different PTS spec-wise,
or optionally upon each packet of subtitle data if desired by property.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=669310

Conflicts:

	gst/dvbsuboverlay/gstdvbsuboverlay.c
2012-07-11 13:45:14 +02:00
Mart Raudsepp
76ddd498e2 dvbsuboverlay: Handle non_modifying_colour_flag correctly in the RLE handlers
The check for when to not memset was checking on an undeterministic 'bits' variable value,
which is only meant to be used inside the loop earlier when it is supposed to check if
clut_index is 1 together with non_mod set, as per spec:

"non_modifying_colour_flag:  If set to '1' this indicates that the CLUT entry value '1'
is a non modifying colour. When the non modifying colour is assigned to an object pixel,
then the pixel of the underlying region background or object shall not be modified. This
can be used to create "transparent holes" in objects."

https://bugzilla.gnome.org/show_bug.cgi?id=666352
2012-07-11 13:42:02 +02:00
Lasse Laukkanen
8fd2fc662a photography: Add GstPhotography prefix and fix spelling colour->color
https://bugzilla.gnome.org/show_bug.cgi?id=622482
2012-07-11 00:10:55 +01:00
Wim Taymans
29092cc3b8 festival: unmap input buffer 2012-07-10 12:19:17 +02:00
Sreerenj Balachandran
68fadbb92a port festival to 0.11
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679373
2012-07-10 12:19:17 +02:00
Tim-Philipp Müller
ae063e2942 dataurisrc: copy into provided buffer if a buffer is provided 2012-07-10 00:59:40 +01:00
Mark Nauwelaerts
63cdec88ae asfmux: update for riff field rename 2012-07-09 12:54:41 +02:00
Stefan Sauer
266d1f62c0 audiovisualizers: update baseclass from libvisual porting 2012-07-08 19:27:23 +02:00
Tim-Philipp Müller
ea65e5d501 dtmfsrc: pass unhandled non-custom events to the base class
https://bugzilla.gnome.org/show_bug.cgi?id=666626
2012-07-08 00:08:55 +01:00
Tim-Philipp Müller
219e9ab133 asfmux: remove deprecated "is-live" property
Use the "streamable" property instead.
2012-07-06 14:53:57 +01:00
Sebastian Dröge
9c7d7498bb gst: Implement segment-done event 2012-07-05 13:18:47 +02:00
David Schleef
963e6e3397 inter: Increase the inter audio surface buffering 2012-07-03 09:09:14 +02:00
David Schleef
e5c55ad554 interaudiosink: reenable channel property 2012-07-03 09:09:08 +02:00
David Schleef
b96fde73ab interaudiosrc: Set format to time 2012-07-03 09:09:03 +02:00
Edward Hervey
d3271381ee mpegtsbase: Move known PSI PIDs to where they belong
This avoids tsdemux parsing data is doesn't really care about

Conflicts:

	gst/mpegtsdemux/mpegtsparse.c
2012-06-29 10:02:30 +02:00
Edward Hervey
ada9990092 mpegtbase: Add more known default SI PIDs 2012-06-29 09:59:13 +02:00
Edward Hervey
b5967d2323 tsdemux: Fix AAC LATM caps 2012-06-29 09:23:32 +02:00
Mark Nauwelaerts
c4b480b993 mpegtsmux: apply some more CLOCK_BASE to ensure slack for PCR offset
Conflicts:

	gst/mpegtsmux/tsmux/tsmux.c
2012-06-27 14:52:10 +02:00
Wim Taymans
ba87a4524f fix x-wmv format string 2012-06-27 11:23:19 +02:00
Wim Taymans
c0cd1c43ab interlace: port to 0.11 2012-06-26 16:39:56 +02:00
Stefan Sauer
046d3ab98f spectrascope: avoid dark pixels in fade-and-move-up mode 2012-06-24 21:11:39 +02:00
Stefan Sauer
65fa897f93 audiovisualizers: fix input buffer handling
Use _replace instead of _append to fix growing buffers.
2012-06-24 20:55:37 +02:00
Tim-Philipp Müller
2f15ebca96 hls, sdp: update for gst_element_make_from_uri() changes 2012-06-23 15:02:13 +01:00
Tony Houghton
a996d2f01a Correct satellite delivery descriptor parsing.
Original code to parse satellite delivery descriptors to generate
"satellite" structures appeared to be copy & pasted from cable's code
without amending for satellite.

Also added 8PSK to dvbsrc's enum for modulation.

https://bugzilla.gnome.org/show_bug.cgi?id=654485

Conflicts:

	gst/mpegdemux/gstmpegdesc.h
	gst/mpegdemux/mpegtspacketizer.c
2012-06-21 11:37:21 +01:00
Edward Hervey
b8f32811ca tsparse: Rework handling and cleanups
tspad always has a static source pad which output everything received
(not functional yet).

Program pads are now request pads.

Remove all cruft that should have been removed from the switch over
to mpegtsbase.

Conflicts:

	gst/mpegtsdemux/mpegtsparse.c
2012-06-21 11:34:28 +01:00
Edward Hervey
a8dd05742a mpegtbase: Always send EOS
subclass will take care of handling it more if needed
2012-06-21 11:25:17 +01:00
Wim Taymans
b3308676fd update for bus api changes 2012-06-20 12:34:21 +02:00
Mark Nauwelaerts
ed34ed5b3d mpegtsmux: fix value handling in pad iteration 2012-06-20 12:22:09 +02:00
Wim Taymans
dbed726057 update for task api change 2012-06-20 10:40:42 +02:00
Matej Knopp
9ad3761148 mpegtsmux: fix memory leak
https://bugzilla.gnome.org/show_bug.cgi?id=678130
2012-06-20 10:21:42 +02:00
Edward Hervey
a931620208 mpegtspacketizer: Don't use GByteArray
Using a simple array comes to the same result for a fraction of the cost
2012-06-19 10:49:45 +01:00
Edward Hervey
8fd2d43d60 mpegtbase: Avoid copying GstStructure 2012-06-19 10:49:37 +01:00
Edward Hervey
94c68115ef mpegdesc: Don't allocate/free GstMPEGDescriptor
Just use static variables
2012-06-19 10:49:26 +01:00
Tim-Philipp Müller
a3fc64d153 mpegdemux: rename plugin to mpegpsdemux 2012-06-16 18:35:56 +01:00
Tim-Philipp Müller
61bad24f81 mpegdemux: remove unused TS demuxer bits that have moved to tsdemux 2012-06-16 18:35:56 +01:00
Mark Nauwelaerts
20507bc0cf mpegtsmux: remove obsolete struct field 2012-06-16 19:23:00 +02:00
Mark Nauwelaerts
beceb09acc mpegtsmux: add support for DVB subtitle and teletext streams
See bug #673582.

Conflicts:

	gst/mpegtsmux/Makefile.am
2012-06-16 19:23:00 +02:00
Mark Nauwelaerts
898f6b48be mpegtsmux: optionally use fixed-size PES header 2012-06-16 19:23:00 +02:00
Mark Nauwelaerts
f49e74aa34 mpegtsmux: only write PTS and DTS if different 2012-06-16 19:23:00 +02:00
Mark Nauwelaerts
fd92a8b65a mpegtsmux: optionally set data_alignment flag in PES header 2012-06-16 19:23:00 +02:00
Mark Nauwelaerts
c76627ec9a mpegtsmux: re-enable inadvertent disabled code 2012-06-16 19:22:59 +02:00
Mark Nauwelaerts
e8ab5af7b0 mpegtsmux: use default CollectPads collect heuristic
... with an appropriately custom buffer clip function to arrange for
buffer processing.

Conflicts:

	gst/mpegtsmux/mpegtsmux.c
	gst/mpegtsmux/mpegtsmux.h
2012-06-16 19:22:59 +02:00
Raimo Järvi
3f9a0a1747 mpegtsmux: Fix compiler warnings
https://bugzilla.gnome.org/show_bug.cgi?id=678211
2012-06-16 19:22:59 +02:00
Mark Nauwelaerts
893d6eb2a3 mpegtsmux: fix ported segment init 2012-06-16 19:22:59 +02:00
Matej Knopp
6229305d7b mpegtsmux: port to 0.11
https://bugzilla.gnome.org/show_bug.cgi?id=678130
2012-06-16 19:22:35 +02:00
Raimo Järvi
e0241278f6 rfbsrc: Fix compiling in Windows
https://bugzilla.gnome.org/show_bug.cgi?id=677724
2012-06-14 16:38:22 +01:00
Tim-Philipp Müller
5f57478dc8 chart: remove old plugin that has never been ported to 0.10 2012-06-12 21:29:18 +01:00
Tim-Philipp Müller
739f653fed videodrop: drop videodrop
It was never even ported to 0.10, and videorate does its job now.
2012-06-12 21:21:01 +01:00
Tim-Philipp Müller
588ea345b2 legacyresample: remove legacy plugin 2012-06-12 19:14:06 +01:00
Edward Hervey
5ae01f10fd dvdspu: Fix array type
We wanted an array of guint8 (and not an array of pointers) to store
the data from gst_buffer_extract() and read it.
2012-06-12 11:02:38 +02:00
Mark Nauwelaerts
40760117b1 mpegtsmux: sprinkle some more debug catering 2012-06-11 16:52:55 +02:00
Mark Nauwelaerts
bef06e8c8d mpegtsmux: add SPN/PTS indexing capabilities
Based on patch by Andreas Frisch <fraxinas@opendreambox.org>

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=644890
2012-06-11 16:52:53 +02:00
Mark Nauwelaerts
05dcabfe16 mpegtsmux: avoid memcpy due to temporary packet buffer
... by writing directly into the output buffer instead.
2012-06-11 16:52:49 +02:00
Tim-Philipp Müller
b7e82b27be dvdspu: allow debugging of render and highlight rectangles via environment variable
Enable debugging of rectangles via GST_DVD_SPU_DEBUG.

https://bugzilla.gnome.org/show_bug.cgi?id=667223

Conflicts:

	gst/dvdspu/gstspu-vobsub-render.c
2012-06-11 10:32:43 +02:00
Rob Clark
4e627c3e0d dvdspu: cleanup debug code
Clean up debug code for drawing highlight rects which wasn't even
compiling previously.

TODO: might be nice if this could be controlled by properties or
env variables to make it possible to enable the debug code at
runtime.

https://bugzilla.gnome.org/show_bug.cgi?id=667223

Conflicts:

	gst/dvdspu/gstspu-vobsub-render.c
2012-06-11 10:30:57 +02:00
Mark Nauwelaerts
c2387d8bf6 mpegtsmux: plug leaks when freeing stream 2012-06-08 17:20:30 +02:00
Sebastian Dröge
701da03ff9 elements: Use gst_pad_set_caps() instead of manual event fiddling 2012-06-08 15:58:36 +02:00
Mark Nauwelaerts
351f3915db mpegtsmux: drain cached data upon EOS 2012-06-08 11:30:07 +02:00
Mark Nauwelaerts
0407e21ee3 mpegtsmux: allow for aligned output
... and refactor packet handling some more in the process.

Fixes #651805.
2012-06-08 11:30:05 +02:00
Mark Nauwelaerts
ead42a5e27 mpegtsmux: improve m2ts timestamp interpolation
* a known PCR should really belong to a packet holding that PCR
* interpolation can be extended backward for initial packets (PAT, PMT)
2012-06-08 11:30:03 +02:00
Mark Nauwelaerts
8637fd69e5 mpegtsmux: tweak output buffer timestamping 2012-06-08 11:30:01 +02:00
Sebastian Dröge
ab7c61d165 Release 0.11.92 2012-06-07 16:23:09 +02:00
Wim Taymans
b98ec32380 update for tag event change 2012-06-06 13:02:40 +02:00
Wim Taymans
377556421d bayer: fix output frame map 2012-06-06 11:19:06 +02:00
Mark Nauwelaerts
4cc905409e mpegtsmux: more header clarifications and remove some redundant fields 2012-06-06 10:32:05 +02:00
Mark Nauwelaerts
38bb55c472 mpegtsmux: avoid PID collision for auto-generated PID 2012-06-06 10:31:59 +02:00
Edward Hervey
fa4f487d8f tsmux: inline more code
With the previous commit, makes mpegtsmux 10 to 15% faster
2012-06-06 10:31:54 +02:00
Edward Hervey
e3a02ce49a mpegtsmux: Don't use g_list_first ()
Seriously ...
2012-06-06 10:31:48 +02:00
Mark Nauwelaerts
c195a015e1 mpegtsmux: also properly reset and free pad data 2012-06-06 10:31:43 +02:00
Mark Nauwelaerts
ec109c390f mpegtsmux: refactor init using _reset to cater for proper reuse 2012-06-06 10:31:39 +02:00
Mark Nauwelaerts
8cb22ffeaa mpegtsmux: header cleanups and clarifications 2012-06-06 10:31:34 +02:00
Mark Nauwelaerts
59627a3e5d mpegtsmux: tweak buffer handling
... for clarity and to avoid mixing _peek/_pop
2012-06-06 10:31:29 +02:00
Mark Nauwelaerts
30c782e062 mpegtsmux: misc code cleanups and refactoring 2012-06-06 10:31:24 +02:00
Mark Nauwelaerts
d97d49d237 mpegtsmux: avoid separate allocation for list of programs 2012-06-06 10:31:19 +02:00
Mark Nauwelaerts
281f48f66e mpegtsmux: rearrange define's 2012-06-06 10:31:14 +02:00
Mark Nauwelaerts
4d94e0fcf7 mpegtsmux: removed hacked event handling
Conflicts:

	gst/mpegtsmux/mpegtsmux.c

Reverted back to 0.10 state as it wasn't really ported
yet anyway.
2012-06-06 10:30:55 +02:00
Edward Hervey
e2576f0e86 mpegtsdemux: Also parse TOT (Time Offset Section)
It's the same as TDT, except with descriptors at the end
2012-06-05 10:54:27 +02:00
Edward Hervey
d9121c38ea mpegtsdemux: FIXME/Comment about issues/errors 2012-06-05 10:54:26 +02:00
Edward Hervey
9e117b83fc mpegtspacketizer: Fix leak 2012-06-05 10:54:26 +02:00
Edward Hervey
5f7ecaa0f1 mpegtspacketizer: Reduce usage of GstAdapter
Peek as much as possible in one go. Ideally we should remove usage of
adapter altogether, but for the time being it provides a big enough
speedup (around 2 times faster per packet processed).
2012-06-05 10:54:26 +02:00
Edward Hervey
f0867c7247 mpegtspacketizer: Avoid alloc/free where possible
Helps for streams with a lot of sections, like EIT
2012-06-05 10:54:26 +02:00
Edward Hervey
aab8c46f10 mpegtbase: Add more sections that don't have a CRC 2012-06-05 10:54:26 +02:00
Edward Hervey
25f6c78d79 mpegdefs: Add list of known table_id
Along with the specifications from which they come. Avoids having
to search for which spec a table_id belongs to
2012-06-05 10:54:26 +02:00
Edward Hervey
0e86e68c6a mpegtspacketizer: Clarify debug statements
Use hex values in more cases (since that's how PID/table_id/... are
represented in the various specs).
2012-06-05 10:54:26 +02:00
Edward Hervey
63f8b970af mpegtsbase/packetizer: Add CAT section handling
Allows reporting the global EMM
2012-06-05 10:54:25 +02:00
Edward Hervey
dfe6863387 mpegtbase: Add more debug in PSI handling
Allows us to identify which SI we don't handle
2012-06-05 10:47:49 +02:00
Edward Hervey
d47d1713d9 mpegtbase: Add more default known PSI table_id 2012-06-05 10:47:49 +02:00
Edward Hervey
9924c178c8 mpegtbase: Refactor PSI detection 2012-06-05 10:47:49 +02:00
Sebastian Dröge
7c6093357b videoparsers: Fix GstBaseParse::get_sink_caps() implementations
They should take the filter caps into account and always return
the template caps appended to the actual caps. Otherwise the
parsers stop to accept unparsed streams where upstream does not
know about width, height, etc.

Fixes bug #677401.
2012-06-05 09:30:00 +02:00
Edward Hervey
9f7e70f754 mpegtbase: ECM/CA sections don't have a CRC
So don't check for it :)

Also add a bit more info in the warning message to speed up detecting
whether it's a false-positive or not.
2012-06-01 16:42:41 +02:00
Edward Hervey
8b2f229553 mpegdesc: Add more comments/info
Namely where they belong to
2012-05-26 15:54:51 +02:00
Edward Hervey
8aa64c5d7d tsdemux: Make sure we have a language code before using it 2012-05-26 15:54:48 +02:00
Edward Hervey
7784c0d350 mpegtsbase: Check before getting descriptors from structure
Avoids spurious warnings. Not having those descriptors is nothing
fatal, so check their presence before trying to get them.
2012-05-26 15:54:44 +02:00
Edward Hervey
b6732a27d3 pesparse: Be a bit more permissive with PTS/DTS parsing
According to the specifications a PTS_DTS_flags value of 0x01 is forbidden.
... but there are some rare files out there that do that.

Instead of erroring out, let's warn, carry on parsing accordingly.

If the packet is really corrupted there are enough checks afterward to
detect that.
2012-05-26 15:54:41 +02:00
Edward Hervey
12f24874aa mpegtsbase: Fix bit operation
"a % 8" corresponds to "a & 0x7" (and not 0xf).

spotted by Julian Scheel
2012-05-25 14:16:59 +02:00
Edward Hervey
a633347ed1 mpegtsbase: Speed up _is_psi()
By making it inline and simplifying the bit macros
2012-05-23 09:37:49 +02:00
Mark Nauwelaerts
c5664dcda7 mpegvideoparse: avoid scanning for start codes twice
... since a previous terminating start code serves as subsequent start code.
2012-05-22 21:34:10 +02:00
Julian Scheel
a0a184931a tsdemux: Add language code to taglist.
Read the language codes for tracks from the mpegts descriptors and add it into
the pads taglist.

https://bugzilla.gnome.org/show_bug.cgi?id=673896
2012-05-22 18:13:30 +02:00
Edward Hervey
6bf54ff850 tsdemux: Adapt to new packetizer API
We no longer use GstBufferList and instead copy the incoming data
into newly allocated memory.

This makes tsdemux behaviour 3 to 4 times faster.
2012-05-22 17:43:38 +02:00
Edward Hervey
7fdf1cb0c8 tsparse: Adapt to new packetizer API 2012-05-22 17:43:38 +02:00
Edward Hervey
3c73d29162 mpegtsbase: Adapt to new packetizer behaviour 2012-05-22 17:43:38 +02:00
Edward Hervey
c6035d403c mpegtspacketizer: Avoid usage of GstBuffer internally
The overhead of creating/using 188 byte GstBuffer from GstAdapter
is too expensive.
We now peek the next packet, and provide a data/size which is only
valid until the packetizerpacket is cleared.

In addition, cleanup all the internal code to deal with that new
behaviour and remove double-checks which are no longer needed.

The section_length is now the corrected section_length (i.e. with
the additional 3 bytes).

Avoid using gst_adapter_prev_timestamp and instead track
the timestamp ourself.
2012-05-22 17:43:38 +02:00
Edward Hervey
6d01f5f1b3 mpegtspacketizer: Detect PCR wraparound in skew code
If the received PCR is going backwards (by a safe margin), include
that wraparound for further calculation.

https://bugzilla.gnome.org/show_bug.cgi?id=674536
2012-05-22 16:51:25 +02:00
Mark Nauwelaerts
09209045b6 videoparsers: avoid repeated caps setting 2012-05-22 14:49:18 +02:00
Mark Nauwelaerts
28f3858b94 mpegvideoparse: tweak codec parser API and adjust parser element
... to allow for more efficient parsing and (more) consistent parsing API
among various codec parsers.

Fixes #672701.

Conflicts:

	gst/videoparsers/gstmpegvideoparse.c
2012-05-22 14:09:47 +02:00
Sebastian Dröge
b5f5b8bf04 frei0r: Double properties are supposed in the range [0.0, 1.0]
Fixes bug #676137.
2012-05-22 11:20:06 +02:00
Mark Nauwelaerts
1f0c18daf2 mpegvideoparse: unobfuscate frame parsing
... and add comments and debug statements.

Fixes #674202.

Conflicts:

	gst/videoparsers/gstmpegvideoparse.c
2012-05-21 20:31:27 +02:00
Mark Nauwelaerts
35a58df012 mpegvideoparse: Revert "fix crash"
This reverts commit 91210831ee672343a296f31357144359d5c2e768.

Such explicit reset should not be needed as it is arranged for by
the baseclass in unison with monitoring for a new frame by subclass.

As such it might wrongfully hide something else going on ...

See #674073.
2012-05-21 20:25:01 +02:00
Tim-Philipp Müller
508b9ff51a autoconvert: don't access GstElementFactory structure directly 2012-05-19 15:34:25 +01:00
Julian Scheel
5536bcf8b8 tsdemux: flush on pusi only for payload packets
Data should not be flushed out of the tsdemux because a payload unit start
indicator (pusi) is seen in a adaptation only ts packet. If the package contains no
payload a pusi does not indicate a new PES packet, but PSI information, etc.
This fixes playback of several TS files which contain ts packets without
payload but with pusi set to 1.

https://bugzilla.gnome.org/show_bug.cgi?id=676168
2012-05-18 11:12:20 +02:00
Edward Hervey
e75612c3fd tsdemux: Don't queue data for streams that don't have a pad
This would result in an error further down, and it also avoids processing
for that data which we wouldn't be using anyway.
2012-05-18 11:11:37 +02:00
Edward Hervey
8a4fd8358d tsdemux: Detect and handle scrambled packets
Users (tsdemux/mpegtsparse) can decide what to do with that
2012-05-18 11:11:31 +02:00
Edward Hervey
fa4b92e743 tsdemux: Emit no-more-pads when all pads are activated
Fixes #670921 again
2012-05-18 11:11:25 +02:00
Luis de Bethencourt
94f370c7d7 gaudieffects: add fallback code for orc
this includes an improved version of the burn filter, with a ~40% speed
improvement.
2012-05-17 11:15:22 +01:00
Luis de Bethencourt
e044e0fab4 gaudieffects: use CLAMP in solarize
No need to have a gate_int () function duplicating the already existing and
established CLAMP () function.
2012-05-17 10:54:31 +01:00
Luis de Bethencourt
9cb4f4e622 gaudieffects: use CLAMP in exclusion
No need to have a gate_int () function duplicating the already existing and
established CLAMP () function.
2012-05-17 10:54:31 +01:00
Luis de Bethencourt
4990dc2d1f gaudieffects: use CLAMP in dodge
No need to have a gate_int () function duplicating the already existing and
established CLAMP () function.
2012-05-17 10:54:31 +01:00
Luis de Bethencourt
cb3d1794f8 gaudieffects: use CLAMP in chromium
No need to have a gate_int () function duplicating the already existing and
established CLAMP () function.
2012-05-17 10:54:31 +01:00
Mark Nauwelaerts
7f72b99426 h264parse: also consider nal_length_size when inserting codec data
See #676174.
2012-05-17 11:47:19 +02:00
John Hein
6e78920416 y4m: link against the right libgstvideo
https://bugzilla.gnome.org/show_bug.cgi?id=676189
2012-05-16 21:50:48 +01:00
Luis de Bethencourt
5800315447 gaudieffects: example pipelines with videoconvert 2012-05-16 17:56:58 +01:00
Luis de Bethencourt
ad4ffc446f gaudieffects: orc-ify burn filter 2012-05-16 17:56:58 +01:00
Stefan Sauer
5b39799cf0 hls: use gst api for timestamps instead of the (wrong) api from a too new glib
Conflicts:

	gst/hls/gstfragment.c
2012-05-15 16:08:00 +02:00
Mark Nauwelaerts
74c73eba05 mpegtsmux: optimize output by aggregating packets
... rather than pushing each (small) packet in a separate buffer.
m2ts mode not yet optimized though.
2012-05-14 11:52:29 +02:00
Albert Astrals Cid
dda551e723 mpegts: support items in extended event descriptor
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=672478
2012-05-14 11:51:15 +02:00
Luis de Bethencourt
e9cba00c6a gaudieffects: consistency in templates name 2012-05-10 21:37:59 +01:00
Thibault Saunier
52265cce1e hlsdemux: Add a connection-speed property
Conflicts:

	gst/hls/gsthlsdemux.c
2012-05-10 14:17:57 -04:00
Thibault Saunier
a8afa9755e hls: Add a way to get best playlist for a specific bitrate in M3U8Client
Make use of it in hlsdemux
2012-05-10 14:08:11 -04:00
Youness Alaoui
594d983ff9 hlsdemux: Add failover protection.
Multiple streams with same bandwidth get retried
2012-05-10 14:07:54 -04:00
Youness Alaoui
705a52a1ac hlsdemux: Calculate the real bitrate and switch to the correct variant
We now calculate the actual bitrate using the download speed/size and
then switch directly to the variant that matches our bandwidth the
most.
It will also be able to handle any use case where some of the
variants are not available, and would skip them and go to the next
possible variant.

Conflicts:

	gst/hls/gsthlsdemux.c
2012-05-10 14:06:44 -04:00
Youness Alaoui
bfd7a52c5d hlsdemux: Do not reset the sequence number in a live stream for a normal playlist update.
Only for stream switching
2012-05-10 14:00:49 -04:00
Thibault Saunier
f7553b6b0d hlsdemux: If we update the playlist, make sure the sequence number is never more than 3 fragments before the end 2012-05-10 14:00:19 -04:00
Youness Alaoui
df958b4906 hlsdemux: In a live stream, do not start from 3 fragments before the end. 2012-05-10 13:59:46 -04:00
Youness Alaoui
3cc3e9ad1b hlsdemux: No need to store position since it's the buffer's timestamp
This also will fix the issue of having the current position different
from the actual position of the first buffer in the queue in case
the caching caused a resync of the sequence number.

Conflicts:

	gst/hls/gsthlsdemux.c
2012-05-10 13:38:57 -04:00
Youness Alaoui
87d10cf683 hlsdemux: Fallback to previous playlist when switching if the new playlist can't be fetched 2012-05-10 13:23:58 -04:00
Luis de Bethencourt
f805f9e079 gaudieffects: consistency fixes in gstgaussblur 2012-05-10 13:46:27 +01:00
Luis de Bethencourt
c7949405ca gaudieffects: port gaussianblur to GstVideoFilter 2012-05-10 10:47:27 +01:00
Luis de Bethencourt
bc3afe0ac2 gaudieffects: port solarize to GstVideoFilter 2012-05-09 17:24:03 +01:00
Luis de Bethencourt
ee60c2cf98 gaudieffects: port exclusion to GstVideoFilter 2012-05-09 17:24:03 +01:00
Luis de Bethencourt
2e1aa96113 gaudieffects: port dodge to GstVideoFilter 2012-05-09 17:24:03 +01:00
Luis de Bethencourt
e9ec32fee7 gaudieffects: port dilate to GstVideoFilter 2012-05-09 17:24:03 +01:00
Luis de Bethencourt
2eba32aef3 gaudieffects: port burn to GstVideoFilter 2012-05-09 17:24:03 +01:00
Luis de Bethencourt
ebad8a4dbc gaudieffects: port chromium to GstVideoFilter 2012-05-09 17:24:03 +01:00
Luis de Bethencourt
5a4b8d8937 gaudieffects: use GST_DEBUG_FUNCPTR in blur 2012-05-09 17:23:07 +01:00
Luis de Bethencourt
151b010bc9 gaudieffects: port gaussblur to 0.11 2012-05-09 13:18:53 +01:00
Luis de Bethencourt
f1220e95b5 gaudieffects: port solarize to 0.11 2012-05-09 13:18:53 +01:00
Luis de Bethencourt
9602a3513b gaudieffects: port exclusion to 0.11 2012-05-09 13:18:53 +01:00
Luis de Bethencourt
e78f5817e5 gaudieffects: port dodge to 0.11 2012-05-09 13:18:53 +01:00
Luis de Bethencourt
1471e804d8 gaudieffects: port dilate to 0.11 2012-05-09 13:18:53 +01:00
Luis de Bethencourt
6b5d5c6f24 gaudieffects: add header to gaussblur 2012-05-09 13:18:53 +01:00
Luis de Bethencourt
3db482093d gaudieffects: port chromium to 0.11 2012-05-09 13:18:53 +01:00
Luis de Bethencourt
c123ac0735 gaudieffects: port burn to 0.11 2012-05-09 13:18:53 +01:00
Luis de Bethencourt
b2e3e417a5 controller: port to new controller location and api 2012-05-09 13:18:52 +01:00
Tim-Philipp Müller
9503daa56a rfbsrc: call WSAStartup/Cleanup on win32
If we link against libwinsock2, we should probably call
Startup/Cleanup as well.

https://bugzilla.gnome.org/show_bug.cgi?id=675415
2012-05-07 23:59:58 +01:00
Marc-André Lureau
2f20ec7312 rfbsrc: fix librfb linking on win32
libtool: link:  i686-w64-mingw32-gcc -shared .libs/libgstrfbsrc.dll.def
.libs/libgstrfbsrc_la-gstrfbsrc.o  -Wl,--whole-archive ./.libs/librfb.a
-Wl,--no-whole-archive  -L/usr/i686-w64-mingw32/sys-root/mingw/lib
-lgstbase-0.10 -lgstreamer-0.10 -lxml2 -lgobject-2.0 -lgthread-2.0
-lgmodule-2.0 -lglib-2.0 -lintl  -mms-bitfields -mms-bitfields -O2   -o
.libs/libgstrfbsrc.dll -Wl,--enable-auto-image-base -Xlinker
--out-implib -Xlinker .libs/libgstrfbsrc.dll.a
Creating library file: .libs/libgstrfbsrc.dll.a
./.libs/librfb.a(librfb_la-rfbdecoder.o): In function
`rfb_decoder_read':
/home/elmarco/pkg/rhel/mingw-gstreamer-plugins-bad-free/gst-plugins-bad-0.10.23/build_win32/gst/librfb/../../../gst/librfb/rfbdecoder.c:164:
undefined reference to `_imp__recv@16'
./.libs/librfb.a(librfb_la-rfbdecoder.o): In function
`rfb_decoder_connect_tcp':
/home/elmarco/pkg/rhel/mingw-gstreamer-plugins-bad-free/gst-plugins-bad-0.10.23/build_win32/gst/librfb/../../../gst/librfb/rfbdecoder.c:112:
undefined reference to `_imp__socket@12'
/home/elmarco/pkg/rhel/mingw-gstreamer-plugins-bad-free/gst-plugins-bad-0.10.23/build_win32/gst/librfb/../../../gst/librfb/rfbdecoder.c:119:
undefined reference to `_imp__htons@4'
/home/elmarco/pkg/rhel/mingw-gstreamer-plugins-bad-free/gst-plugins-bad-0.10.23/build_win32/gst/librfb/../../../gst/librfb/rfbdecoder.c:123:
undefined reference to `_imp__inet_addr@4'
/home/elmarco/pkg/rhel/mingw-gstreamer-plugins-bad-free/gst-plugins-bad-0.10.23/build_win32/gst/librfb/../../../gst/librfb/rfbdecoder.c:125:
undefined reference to `_imp__connect@12'

It needs -lws2_32 which is already in $(WINSOCK2_LIBS)

https://bugzilla.gnome.org/show_bug.cgi?id=675415
2012-05-07 23:59:48 +01:00
Raimo Järvi
93ad7a4d06 Fix printf format compiler warnings on mingw-w64
https://bugzilla.gnome.org/show_bug.cgi?id=675520
2012-05-05 19:45:42 +01:00
Tim-Philipp Müller
b87f7345db Add WINSOCK2_LIBS, remove WIN32_LIBS, fix rtmp build on Windows some more
One way of passing -lws2_32 to plugins should be enough..
2012-05-05 18:20:33 +01:00
Thiago Santos
133c9ef6be camerabin: remove unnecessary code 2012-05-04 19:54:51 -03:00
Thiago Santos
acc48b7833 camerabin: improve image capture debug 2012-05-04 19:54:51 -03:00
Thiago Santos
95fd9cd277 camerabin: always force image-profile to have variable framerate
image-encodebin can't use videorate as it always store one buffer
to be able to do its timestamps/duration math. As image captures
only push one buffer at a time, this videorate behavior breaks
camerabin usage.
2012-05-04 19:50:52 -03:00
Youness Alaoui
d3303121c8 basecamerabin: Do not set the pad templates in the base class.
It is best to let the subclass define the pad templates, this would
allow the subclass to decide which caps the pads should have.
2012-05-04 19:50:52 -03:00
Thiago Santos
37bac4c1ed wrappercamerabinsrc: avoid assertion by using null caps as any
NULL caps aren't valid caps, use a reference to 'any' caps
2012-05-02 16:21:01 -03:00
Thiago Santos
cc09cd1303 camerabin: Fix get/set_property for encoding profiles
Encoding profiles are objects, not boxed types
2012-05-02 15:25:32 -03:00
Thiago Santos
b5ba142b06 camerabin: remove custom renegotiate event
In 1.0 there is a core reconfigure event, camerabin doesn't need
its custom renegotiate event anymore
2012-05-01 15:31:11 -03:00
Thiago Santos
b030923eb5 camerabin: Use plain video encoding profile for images
Do not use jpeg as a container format for image captures, use
the plain video encoding format. It was used as a container in
0.10 to force the addition of tags to the image.
2012-05-01 15:20:50 -03:00
Thiago Santos
ad9822dea7 wrappercamerabinsrc: change output-selector negotiation mode
In 0.10 camerabin2 controlled the negotiation strictly and the output-selector
wouldn't forward setcaps calls. In 0.11 the renegotiation events are already in
core and we can allow the pipeline to handle it without much control from camerabin
part (I hope), so this patch makes output-selector forward caps negotiation events
to the active pad.
2012-05-01 15:20:49 -03:00
Thiago Santos
4a4f06abcf wrappercamerabinsrc: removing renegotiate handlers
gstreamer 1.0 already has the reconfigure event, remove the
custom event handling from wrappercamerabinsrc
2012-05-01 15:20:49 -03:00
Thiago Santos
9cd0172581 wrappercamerabinsrc: prevent caps renegotiation loop
Only set the zoom capsfilter caps when the new caps are different,
preventing a caps renegotiation loop.
2012-05-01 15:20:49 -03:00
Thiago Santos
79d3cc533f camerabin: Replacing ffmpegcolorspace with videoconvert 2012-05-01 15:10:51 -03:00
Wim Taymans
7394deef33 tsbase: unref bad packets too
Conflicts:

	gst/mpegtsdemux/mpegtsbase.c
2012-05-01 11:50:39 +02:00
Wim Taymans
b56ab4b3cf tsdemux: reset the state of the stream when flushing
We need to reset the stream on a flush or else old packets could be added to the
list and leak.
2012-05-01 11:47:52 +02:00
Wim Taymans
eaf4d97815 mpegtsbase: don't push events upstream in pull mode
In pull mode, don't push the seek event upstream.
2012-05-01 11:43:07 +02:00
Wim Taymans
6bf0ebdcd8 mpegts: don't poke into private adapter fields 2012-05-01 09:41:18 +02:00
Tim-Philipp Müller
2f50ad435b camerabin2: rename to "camerabin"
But leave source code intact for now, for easier patch merging.
2012-04-30 17:56:17 +01:00
Tim-Philipp Müller
7d65470c4a Remove old camerabin 2012-04-30 17:44:34 +01:00
Gil Pedersen
da001be15a hlsdemux: start paused task on new data 2012-04-25 15:58:13 +02:00
Mark Nauwelaerts
4d1bd12ff8 coloreffects: port to 0.11 2012-04-24 17:01:21 +02:00
Sebastian Dröge
5d2b52697c dvb-sub: Use unchecked byte reader functions 2012-04-24 15:20:16 +02:00
Mark Nauwelaerts
07ddc9d8cd asfmux: use some more boilerplate 2012-04-23 17:11:38 +02:00
Mark Nauwelaerts
e79cae3002 asfmux: port to 0.11 2012-04-23 16:55:18 +02:00
Gil Pedersen
1fa5624762 hlsdemux: port to 0.11 2012-04-20 15:34:59 +02:00
Wim Taymans
8da3c2a969 mpegtsdemux: we ignore warnings differently
We suppress the warnings in the .c file instead.
2012-04-20 11:25:31 +02:00
Gil Pedersen
fcd8155d87 mpegtsdemux: port to 0.11
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674397
2012-04-20 11:25:31 +02:00
Wim Taymans
5bd76c7c97 mpegtsbase: clarify event ownership 2012-04-20 11:25:31 +02:00
Gil Pedersen
095a17ad03 mpegtsdemux: fix memory leaks
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674393
2012-04-20 11:25:31 +02:00
Sebastian Dröge
ad871224fc fieldanalysis: Does not need to link to libgstbasevideo at all
Conflicts:

	gst/fieldanalysis/Makefile.am
2012-04-20 11:18:20 +02:00
Sebastian Dröge
7ff3293a44 video: Update for libgstvideo API changes 2012-04-19 12:31:39 +02:00
Youness Alaoui
f1ec8fcb05 jpegparse: Do not set the duration to the input buffer's duration unless valid
This causes a bug where the first buffer has ts = 0, dur=X, the second buffer
has ts=X (because of ts += duration), dur=-1, then the following buffers
will start having a non valid timestamp.
The real duration is only calculated during the caps negociation when there
is a framerate available and the buffer's duration is invalid.
2012-04-18 15:41:57 -04:00
Julian Scheel
1059905237 tsdemux: Set currentlist to NULL after free.
This prevents double free of currentlist is some circumstances.
2012-04-18 09:30:22 +02:00
Youness Alaoui
2503e67ca9 jpegparse: Fix duration in buffers. It's frames per second, not seconds per frame 2012-04-17 21:23:30 -04:00
Mark Nauwelaerts
6578797245 collectpads2: rename to collectpads 2012-04-17 15:22:59 +02:00
Alessandro Decina
4251b25308 mpegtsmux: fix pad iterator leak 2012-04-16 08:53:12 +02:00
Alessandro Decina
34cf1a1bbc mpegtsmux: don't leak force key unit events 2012-04-16 08:53:06 +02:00
Matej Knopp
19f7bd470d mpegvideoparse: Parser fails to split some frames 2012-04-16 08:42:02 +02:00
Matej Knopp
23e312872e mpegvideoparse: Fix FPS and frame duration for telecine files 2012-04-16 08:42:02 +02:00
Matej Knopp
19ee94a8d1 mpegvideoparse: Do not update codec-data when only quantiser matrix changes 2012-04-16 08:42:02 +02:00
Tim-Philipp Müller
0def19d473 geometrictransform: don't link against libgstinterfaces which was removed
The GstNavigation interface is now in libgstvideo.
2012-04-14 15:29:15 +01:00
Matej Knopp
d487c9cd78 fix crash
last_sc is not reset every time a frame is being output, which can cause
last_sc > buf_size in subsequent frame.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674073
2012-04-14 10:43:21 +02:00
Thiago Santos
c13359f583 geometrictransform: use 1.0 videofilter baseclass functions
Port to the new functions of the videofilter class
2012-04-13 14:13:36 -03:00
Thiago Santos
d5f2feb8ec geometrictransform: port to 1.0
Straightforward port of geometrictransform plugin
2012-04-13 14:13:36 -03:00
Sebastian Dröge
c88cd9cefc Update for the removal of the interfaces library and the tuner/mixer interfaces 2012-04-13 13:15:39 +02:00
Sebastian Dröge
1ab0174c40 Release 0.11.90 2012-04-12 10:50:10 +02:00
Mark Nauwelaerts
07db2da91c Merge remote-tracking branch 'origin/0.10'
Conflicts:
	gst/h264parse/gsth264parse.c
	gst/videoparsers/gsth264parse.c
2012-04-06 14:52:12 +02:00
Mark Nauwelaerts
7cfdc7e912 h264parse: tweak default setting of format and alignment in codec_data case
... which should promote ending up in passthrough mode.
2012-04-06 14:36:44 +02:00
Mark Nauwelaerts
0882adc69f h264parse: do not use _unchecked bytewriter variants to insert config
.. since the bytewriter is explicitly created with non-fixed size to
allow (very much so expected) growth.

Partially reverts commit 20669d461a while
trying to keep (some?) compilers happy.

IIRC, the purpose of GstByteWriter in the first place was (at least)
being able to dump data without having to fuss with memory expansion
and size issues ...

Fixes #673485.
2012-04-06 14:35:56 +02:00
Thibault Saunier
513aa08bee Merge remote-tracking branch 'origin/0.10' 2012-04-05 17:15:11 -04:00
Sebastian Dröge
cda192b3b7 gst: Update for GST_PLUGIN_DEFINE() API changes 2012-04-05 18:02:56 +02:00
Thibault Saunier
70056a37c4 hls: Some more debugging 2012-04-05 11:51:40 -04:00
Thibault Saunier
f9b0d59e84 hlsdemux: Replace the fetcher code with a GstURIDownloader object 2012-04-05 10:33:51 -04:00
Thibault Saunier
2415f9080d hls: Minor cleanup in GstUriDownloader 2012-04-05 10:33:51 -04:00
Andoni Morales Alastruey
71b9f57b63 hlsdemux: Factor out all the fetcher code in a GstURIDownloader class
This class is meant to be reusable by other components
2012-04-05 10:33:51 -04:00
Thibault Saunier
5e85aaf11d hls: Do not add reference to buffers passed in GstFragment
We just steal the reference to the buffer, which means we can keep writing metadatas
on the buffers.
2012-04-05 10:33:51 -04:00
Thibault Saunier
fdaa60c44f hls: Minor GstFragment cleanup 2012-04-05 10:15:13 -04:00
Andoni Morales Alastruey
501d42fa78 hls: Add a GstFragment class that represents a fragment in a m3u playlist 2012-04-05 10:15:12 -04:00
Thibault Saunier
fef060590f hls: Make the updates thread a GstTask 2012-04-05 10:15:12 -04:00
Alessandro Decina
f4b292f994 tsdemux: set correct newsegment fields on _TIME seeks
Forward the seek rate and set NS.start to the seek target so that decoders can
apply clipping where necessary.
2012-04-05 09:16:07 +02:00
Alessandro Decina
cd21a65031 rawparse: fix compile warning 2012-04-05 09:08:02 +02:00
Alessandro Decina
877e6d6a36 tsdemux: set correct newsegment fields on _TIME seeks
Forward the seek rate and set NS.start to the seek target so that decoders can
apply clipping where necessary.
2012-04-05 06:38:08 +02:00
Sebastian Dröge
1318a97e0a gst: Update versioning 2012-04-04 14:44:34 +02:00
Sebastian Dröge
4c0b7fd03b Merge remote-tracking branch 'origin/0.10' 2012-04-04 12:06:08 +02:00
Alessandro Decina
3b525d1147 tsdemux: reset iterator to NULL after it's free
Fixes possible invalid memory access in gst_ts_demux_stream_flush
2012-04-04 07:24:28 +02:00
Sebastian Dröge
bc07e44546 Merge remote-tracking branch 'origin/0.10'
Conflicts:
	gst/mpegtsdemux/tsdemux.c
2012-04-02 15:31:38 +02:00
Edward Hervey
6800d0c4e0 tsdemux: Clear bufferlist/iterator when removing streams 2012-04-02 15:26:28 +02:00
Edward Hervey
dd6550a663 mpegtspacketizer: Don't leak buffer in fast variant 2012-04-02 15:25:46 +02:00
Edward Hervey
cd728627af mpegtsbase: Don't leak corrupt section packet buffer 2012-04-02 15:25:16 +02:00
Wim Taymans
53e264d631 rtpmux: fix compilation 2012-04-02 11:07:18 +02:00
Edward Hervey
b8eeca8804 tsdemux: Fix several leaks
* dont' leak buffers when a stream is in discont state
* don't leak buffers when a program is removed/deactivated
* remove all programs when disposing
2012-04-02 08:03:57 +02:00
Edward Hervey
881350f34c tsdemux: Fix several leaks
* dont' leak buffers when a stream is in discont state
* don't leak buffers when a program is removed/deactivated
* remove all programs when disposing
2012-03-30 19:20:17 +02:00
Wim Taymans
48ba9063b0 update for buffer api change 2012-03-30 18:15:36 +02:00
Sebastian Dröge
c63fa9190b videoparsers: Update for baseparse API changes 2012-03-30 12:02:34 +02:00
Sebastian Dröge
a1c291ebb6 mpegtsdemux: Revert to 0.10 state as this is unmergeable, also put it into the non-ported plugins again 2012-03-29 17:55:09 +02:00
Sebastian Dröge
860ccd414d Merge remote-tracking branch 'origin/0.10'
Conflicts:
	NEWS
	RELEASE
	common
	configure.ac
	docs/libs/gst-plugins-bad-libs-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/inspect/plugin-adpcmdec.xml
	docs/plugins/inspect/plugin-adpcmenc.xml
	docs/plugins/inspect/plugin-assrender.xml
	docs/plugins/inspect/plugin-audiovisualizers.xml
	docs/plugins/inspect/plugin-autoconvert.xml
	docs/plugins/inspect/plugin-bayer.xml
	docs/plugins/inspect/plugin-bz2.xml
	docs/plugins/inspect/plugin-camerabin2.xml
	docs/plugins/inspect/plugin-celt.xml
	docs/plugins/inspect/plugin-dataurisrc.xml
	docs/plugins/inspect/plugin-debugutilsbad.xml
	docs/plugins/inspect/plugin-dtmf.xml
	docs/plugins/inspect/plugin-dtsdec.xml
	docs/plugins/inspect/plugin-dvbsuboverlay.xml
	docs/plugins/inspect/plugin-dvdspu.xml
	docs/plugins/inspect/plugin-faac.xml
	docs/plugins/inspect/plugin-faad.xml
	docs/plugins/inspect/plugin-gsm.xml
	docs/plugins/inspect/plugin-h264parse.xml
	docs/plugins/inspect/plugin-mms.xml
	docs/plugins/inspect/plugin-modplug.xml
	docs/plugins/inspect/plugin-mpeg2enc.xml
	docs/plugins/inspect/plugin-mpegdemux2.xml
	docs/plugins/inspect/plugin-mpegtsdemux.xml
	docs/plugins/inspect/plugin-mpegvideoparse.xml
	docs/plugins/inspect/plugin-mplex.xml
	docs/plugins/inspect/plugin-pcapparse.xml
	docs/plugins/inspect/plugin-rawparse.xml
	docs/plugins/inspect/plugin-rtpmux.xml
	docs/plugins/inspect/plugin-rtpvp8.xml
	docs/plugins/inspect/plugin-scaletempo.xml
	docs/plugins/inspect/plugin-schro.xml
	docs/plugins/inspect/plugin-sdp.xml
	docs/plugins/inspect/plugin-segmentclip.xml
	docs/plugins/inspect/plugin-shm.xml
	docs/plugins/inspect/plugin-videomaxrate.xml
	docs/plugins/inspect/plugin-videoparsersbad.xml
	docs/plugins/inspect/plugin-vp8.xml
	docs/plugins/inspect/plugin-y4mdec.xml
	ext/celt/gstceltdec.c
	ext/dts/gstdtsdec.c
	ext/modplug/gstmodplug.cc
	ext/opus/gstopusenc.c
	gst-libs/gst/video/gstbasevideocodec.c
	gst-libs/gst/video/gstbasevideocodec.h
	gst-libs/gst/video/gstbasevideodecoder.c
	gst-libs/gst/video/gstbasevideodecoder.h
	gst-libs/gst/video/gstbasevideoencoder.c
	gst-libs/gst/video/gstbasevideoencoder.h
	gst/adpcmdec/Makefile.am
	gst/audiovisualizers/gstbaseaudiovisualizer.c
	gst/h264parse/gsth264parse.c
	gst/mpegdemux/mpegtsparse.c
	gst/mpegtsdemux/mpegtsbase.c
	gst/mpegtsdemux/mpegtspacketizer.c
	gst/mpegtsdemux/mpegtsparse.c
	gst/mpegtsdemux/tsdemux.c
	gst/mpegtsdemux/tsdemux.h
	gst/mxf/mxfdemux.c
	gst/rawparse/gstaudioparse.c
	gst/videoparsers/gsth263parse.c
	gst/videoparsers/gsth264parse.c
	sys/d3dvideosink/d3dvideosink.c
	sys/decklink/gstdecklinksink.cpp
	sys/dvb/gstdvbsrc.c
	sys/shm/gstshmsrc.c
	sys/vdpau/h264/gstvdph264dec.c
	sys/vdpau/mpeg/gstvdpmpegdec.c
	tests/examples/opencv/gst_element_print_properties.c
	win32/common/config.h
2012-03-29 17:41:53 +02:00
Wim Taymans
a9ec4d62a8 update for buffer changes 2012-03-28 12:53:09 +02:00
Wim Taymans
5bf86a8728 Release 0.11.2 2012-03-22 15:52:37 +01:00
Wim Taymans
289e9683e9 rawparse: fix bayer caps 2012-03-21 09:41:08 +01:00
Thiago Santos
7dd5b2002a geometrictransform: Prevent access to the transform map when it is null
Check if the map doesn't exist when receiving a new caps and create
a new one. This prevents that the transform functions try to access
the map when it doesn't exist.
2012-03-20 20:11:30 -03:00
Thiago Santos
74471813eb geometrictransform: add some more log messages 2012-03-20 20:11:30 -03:00
Oleksij Rempel (Alexey Fisher)
79a74089d4 wrappercamerabinsrc: avoid reseting caps to the same value
Reduces capture latency when the new caps are the same as the old
one, avoiding resetting the source state for a forced renegotiation.
2012-03-20 20:11:30 -03:00
Mark Nauwelaerts
cc7918de19 rawparse: port to 0.11 2012-03-20 20:21:37 +01:00
Wim Taymans
c7f9558cc4 orc: don't compile everything at startup 2012-03-20 15:38:33 +01:00
Tim-Philipp Müller
1cec862538 adpcmdec: GST_BASE_LIBS already contains -lgstbase-0.10 2012-03-18 23:15:23 +00:00
David Schleef
e54218a648 adpcmdec: Add -lgstbase-0.10 2012-03-18 14:43:37 -07:00
Mark Nauwelaerts
a3002ad338 scaletempo: port to 0.11 2012-03-18 18:32:55 +01:00
Mark Nauwelaerts
0473a882ec smooth: port to 0.11 2012-03-18 18:32:51 +01:00
Mark Nauwelaerts
b12ac89da0 segmentclip: port to 0.11 2012-03-18 18:32:46 +01:00
Mark Nauwelaerts
3354fda883 removesilence: port to 0.11 2012-03-18 18:32:36 +01:00
David Schleef
67f546968c inter: Add channel property
The channel property allows multiple intersrc/sink pairs to find
each other.  It's a free-form text string that must match among
various inter elements.  Also fixed up documentation and latency
handling.
2012-03-17 12:18:47 -07:00
Wim Taymans
bc38bc27b7 don't pass random pointers to pull_range 2012-03-16 21:47:39 +01:00
Stefan Sauer
f8cf7bf973 faceoverlay: remove blank line in gtk-doc comment 2012-03-16 12:10:10 +01:00
Stefan Sauer
288c6fa26c faceoverlay: code cleanups
Use glib types and simply expressions in the message handler.
2012-03-15 22:58:11 +01:00
Stefan Sauer
a31a698943 faceoverlay: don't access message fields directly 2012-03-15 22:49:51 +01:00
Wim Taymans
ed82d408b1 update for bufferpool changes 2012-03-15 22:11:32 +01:00
Wim Taymans
583f5d1dc7 update for allocation query changes 2012-03-15 20:38:27 +01:00
Tim-Philipp Müller
3f07ebcc37 faceoverlay: clear overlay if the face disappears 2012-03-15 18:26:24 +00:00
Tim-Philipp Müller
36a6a13f1c faceoverlay: add some locking for properties, free previous location when it changes 2012-03-15 18:21:37 +00:00
Tim-Philipp Müller
3bbb0387c4 faceoverlay: don't make rsvgoverlay reload the SVG for every single frame
Only set location on rsvgoverlay if it has changed.
2012-03-15 18:08:09 +00:00
Tim-Philipp Müller
549447d288 faceoverlay: move face handling into own function and handle 0 face count
When a face disappears, we seem to get a message from facedetect with
a face count of 0, which we want to just ignore instead of trying to
access face #-1, which causes nasty warnings.
2012-03-15 17:47:58 +00:00
Tim-Philipp Müller
55b0f1e601 faceoverlay: fix pad templates
Use generic and unspecififed rgb/caps for now. The exact caps
supported depend on the facedetect element and rsvgoverlay. It's
not clear how this worked before, since facedetect only accepts
24-bit RGB, but the caps advertised 32-bit ARGB/BGRA. In any case,
we don't want to force anything really, so that if any of those
elements acquires support for additional formats we pick those up
automatically.
2012-03-15 17:42:56 +00:00
Tim-Philipp Müller
d405ea2e63 faceoverlay: fix weird pad creation code
The element would create normal pads in its instance_init function,
and then later in NULL->READY create the elements it needs, remove
the pads created in the instance_init function, and add new ghost
pads instead. Not without saving the external peer pads of the old
pads of course, which it would promptly re-link to the new ghost
pads. Do all of that a bit differently.

Fixes the generic/states.check unit test.

https://bugzilla.gnome.org/show_bug.cgi?id=670588
2012-03-15 16:52:44 +00:00
Tim-Philipp Müller
fead44ad12 faceoverlay: minor cosmetic changes
Remove template maker comments, use our defines for
package name and origin.
2012-03-15 15:48:53 +00:00
Wim Taymans
6cbb840385 update for memory api changes 2012-03-15 13:37:36 +01:00
Wim Taymans
9f700cc3c4 take padding into account 2012-03-14 19:56:59 +01:00
Tim-Philipp Müller
7f70d42837 inter: fix warnings when gst-inspecting interaudio{src,sink}
The channel property isn't implemented, so don't register it.
2012-03-13 20:59:00 +00:00
Oleksij Rempel (Alexey Fisher)
4e7edb2778 geometrictransform: make sure gt->map not freed twice
current cheese can create situation where gt->map is freed twice.
This patch set map to null to avoid it.

https://bugzilla.gnome.org/show_bug.cgi?id=671910
2012-03-12 23:56:50 +00:00
Gil Pedersen
fd92f8d6a2 hlsdemux: add floating point segment duration support 2012-03-12 15:30:35 +01:00
Wim Taymans
77299ba6ae fix for caps api changes 2012-03-11 19:06:59 +01:00
Thibault Saunier
20669d461a Fix 'ignoring return value of function declared with const attribute'
This always happens with GstByteReader/Writer and friends when
not taking into account returned boolean of the _read/_write functions
(which is actually wrong).

Make use of the *_unchecked variant as much as possible, or take the
returned value into account.
2012-03-10 19:22:07 -03:00
Danilo Cesar Lemes de Paula
35df907f93 Fixing rtpvp8 compatibility with the third draft
https://bugzilla.gnome.org/show_bug.cgi?id=671073
2012-03-08 15:23:25 -05:00
Mark Nauwelaerts
22b9b13166 sirendec: port to audiodecoder 2012-03-06 18:33:25 +01:00
Mark Nauwelaerts
6f8e60e24f sirenenc: port to audioencoder 2012-03-06 18:33:17 +01:00
Mark Nauwelaerts
df86df9ddf dccp: avoid indefinite looping upon error
... and fix 'uninitialized' compilation warning as well.
2012-03-06 18:33:09 +01:00
Sebastian Dröge
e34a70902c removesilence: Fix 'argument to 'sizeof' in 'memset' call is the same expression as the destination' compiler warning 2012-03-06 14:47:17 +01:00
Sebastian Dröge
b292b19c59 mxfdemux: Fix 'comparison of unsigned expression >= 0 is always true' compiler warning 2012-03-06 14:46:03 +01:00
Sebastian Dröge
0bd9ae0dea mpegtsparse: Fix 'variable 'pid' is uninitialized when used here' compiler warning 2012-03-06 14:44:25 +01:00
Sebastian Dröge
5f2081e828 mpegdemux: Fix 'expression result unused' compiler warning 2012-03-06 14:43:29 +01:00
Sebastian Dröge
21ddc28760 dccp: Fix 'comparison of unsigned expression < 0 is always false' compiler warning 2012-03-06 14:41:00 +01:00
Sebastian Dröge
e214b31f5c baseaudiovisualizer: Fix 'comparison of unsigned expression >= 0 is always true' compiler warning 2012-03-06 14:38:47 +01:00
Edward Hervey
416b10b991 mpegtspacketizer: Handle rollover in offset calculations 2012-03-05 12:46:13 +01:00
Wim Taymans
dbf0b994f2 x-raw-bayer -> x-bayer 2012-03-05 12:43:42 +01:00
Wim Taymans
bc9ebb2ff2 use new style caps 2012-03-05 12:03:23 +01:00
Edward Hervey
d798cb7be3 tsdemux: printf fix 2012-03-05 11:27:51 +01:00
Edward Hervey
bb479b04c1 tsdemux: Update TODO 2012-03-05 10:17:56 +01:00
Edward Hervey
85878c142e mpegts: Switch rank of mpegtsdemux and tsdemux
More effort has been put lately in tsdemux and works in more use cases
2012-03-05 09:46:17 +01:00
Edward Hervey
c557f71756 tsdemux: Push packets as early as possible
When the PES header tells us how big the outgoing packet is, push the
packet downstream as soon as we have the specified size instead of waiting
for the beginning of the next packet.
Reduces latency and removes issues with very sparse streams (like subtitles
and subpictures).
2012-03-05 09:41:48 +01:00
Stefan Sauer
f88c45c0cf audiovisualizers: planning + example update 2012-03-04 19:57:14 +01:00
Tim-Philipp Müller
0bb5a01639 tsdemux: fix confusing variable name 2012-03-03 15:47:01 +00:00
Edward Hervey
01f5f62d95 tsdemux: Fix segment start position
If we *really* can't figure out the first start position, that most
likely means the data to push out doesn't have any timestamp.
Use a default value of 0 then
2012-03-02 17:19:45 +01:00
Edward Hervey
a3ae51be29 mpegtsbase: Flush out the packetizer on flushing seeks
... else we end up with bogus data/offsets
2012-03-02 17:19:45 +01:00
Thibault Saunier
ece4dfc3c6 tsdemux: Activate pads only when receiving data for the stream
https://bugzilla.gnome.org/show_bug.cgi?id=670921
2012-03-02 17:19:45 +01:00
Edward Hervey
a274bc5b76 mpegvideoparse: Fix level code
Valid ranges            are from 4 to 10
Valid ranges >> 1       are from 2 to 5
Valid ranges >> 1 - 2   are from 0 to 3

 (and not from 1 to 4)
2012-03-02 11:07:47 +01:00
Edward Hervey
671550714f mpegtsbase: Check harder for program changes
And don't just rely on the section crc/version_number changing to
indicate that the program actually changed.
2012-03-02 10:54:48 +01:00
Edward Hervey
097f09b823 mpegtsbase/tsdemux: Refactor seek and segment handling
All calculations go through the mpegtspacketizer
Remove unused variables/code
2012-03-01 18:15:51 +01:00
Edward Hervey
77ece06a3f mpegtsbase: Error out on EOS without any pad
Avoids ending up with hanging pipelines
2012-03-01 18:15:51 +01:00
Edward Hervey
a4899af8d6 mpegtspacketizer: Offset calculation
Allows PCR<=>PTS<=>offset estimation/calculation
Right now the calculation is very naive, but can be extended later on
without disrupting the code in tsdemux/mpegtsbase
2012-03-01 18:15:51 +01:00
Edward Hervey
39cc29a7d2 mpegtspacketizer: clock fix and minor addition
* Don't take into account packets that arrived at the same time as
  previous ones for clock skew estimation
* Add convenience method for processing the next ts packet
2012-03-01 18:15:51 +01:00
Edward Hervey
c10fc17a1e Revert "mpegtsdemux: Not apply various time the same PMT to a program when repetead"
This reverts commit 8cb0e87f56.

mpegtspacketizer already checks if it's a new PMT or not
2012-03-01 18:15:51 +01:00
Edward Hervey
d920d9d64f tsdemux: Remove all seeking code
It was more than bogus
2012-03-01 18:15:51 +01:00
Xavier Queralt
b5004e058b hlsdemux: don't set the fetcher's location twice
Calling gst_element_make_from_uri already does it and filesrc
fails when using file protocol in a location
2012-02-29 09:52:39 +01:00
Guillaume Desmottes
ddfcfb5a7a Add missing GLIB_DISABLE_DEPRECATION_WARNINGS
Suppress warnings about deprecated threading and GValueArray
API, so git compiles with -Werror.

https://bugzilla.gnome.org/show_bug.cgi?id=670982
2012-02-28 22:55:34 +00:00
Xavier Queralt
5b0d2ce2b2 hlsdemux: don't fail for playlists smaller than fragments-cache
https://bugzilla.gnome.org/show_bug.cgi?id=670963
2012-02-28 12:29:03 +00:00
Thibault Saunier
5c2e6dc512 mpegtspacketizer: catch section lengths extending past the buffer length
This is probably the cause for an occasional crash while streaming
MPEG. Blind fix after staring at the code and following logic, so
may or may not fix the issue, I cannot test.

(Port of 4275a70cb5 from mpegdemux)
2012-02-27 09:57:45 -03:00
Thibault Saunier
58a210e3d3 mpegtspacketizer: support more character set encodings
Support UTF-16BE, EUC-KR (KSX1001), GB2312 and ISO-10646/UTF8 text
encoding and fixed new line for multibyte encoding
    
https://bugzilla.gnome.org/show_bug.cgi?id=664257

(Port of 9759d66407 from the mpegtsdemux
element)
2012-02-27 09:42:27 -03:00
Alessandro Decina
368534f117 adpcmdec: link to libgstbase 2012-02-26 20:43:32 +01:00
Thibault Saunier
336710d355 tsbase: Fix parsing of PSI table IDs
(Ported from mpegtsdemux d8fd874f52)
2012-02-24 19:08:40 -03:00
Thibault Saunier
f977d7e743 tsdemux: Avoid unlinkely leaks and segfault 2012-02-24 15:28:35 -03:00
Edward Hervey
b6d98aea5f tsdemux: Use new clock skew estimation for outgoing timestamps
Only used in live mode
2012-02-24 17:53:52 +01:00
Edward Hervey
e6ff2f7b83 tsdemux: Various code cleanup and dead code removal 2012-02-24 17:52:33 +01:00
Edward Hervey
4bc7cd04c1 mpegtspacketizer: Fix issues with skew code
* Always try to get a timestamp for the algorithm
* Remove dead variable
* Return proper default value
2012-02-24 17:47:38 +01:00
Wim Taymans
8743905721 dataurisrc: fix docs and unit test 2012-02-24 12:53:52 +01:00
Thibault Saunier
6a8d2c45f6 mpegtspacketizer: Estimate clock skew and retimestamps buffers more precisly
Apply the EPTLA algotithm to estimate clock skew.
Reusing code from  -good/gst/rtpmanager/rtpjitterbuffer.c
2012-02-24 10:57:09 +01:00
Thibault Saunier
48a699812b tsdemux: Clean up AAC caps mess 2012-02-24 10:57:05 +01:00
Thibault Saunier
dc8b6c678d tsdemux: Reindent gstmpegdesc.h 2012-02-24 10:57:02 +01:00
Thibault Saunier
67fd590e9a tsdemux: Support more DTS/AC3 descriptors 2012-02-24 10:56:58 +01:00
Edward Hervey
6ef0ae4ffe tsdemux: Remove useless finalize() 2012-02-24 10:56:14 +01:00
Mark Nauwelaerts
4c9ac0886a h264parse: consider nal_length_size when constructing codec_data
Fixes #670699.
2012-02-23 21:18:31 +01:00
Edward Hervey
8b73baeced tsdemux: Use incoming timestamps in live mode 2012-02-23 16:39:48 +01:00
Edward Hervey
8f433e1677 tsdemux: Report latency (700ms) 2012-02-23 16:39:48 +01:00
Edward Hervey
c492b00b69 mpegtsbase: Query whether upstream is live or not 2012-02-23 16:39:48 +01:00
Wim Taymans
470854b6e3 update for new memory api 2012-02-22 02:10:35 +01:00
David Schleef
342a04c9d2 colorspace: Fix v210 writing out of bounds 2012-02-20 20:11:13 -08:00
Matej Knopp
e4e0d3ce02 Fix compiler warnings 2012-02-20 16:20:55 +01:00
Wim Taymans
a9f5def9d1 Merge branch 'master' into 0.11
Conflicts:
	ext/opus/gstopusparse.c
	gst/colorspace/colorspace.c
2012-02-20 16:07:50 +01:00
Matej Knopp
232ef9cc39 dvdspu should forward video caps event 2012-02-20 16:03:24 +01:00
David Schleef
e0db2faa12 colorspace: clamp intermediates when dithering 2012-02-19 00:16:31 -08:00
Thibault Saunier
8cb0e87f56 mpegtsdemux: Not apply various time the same PMT to a program when repetead
Sometimes their are several times the same PMT applying to a same program in a stream,
tsdemux was totally baffled when this was happening, we now keep the one we
already applied so it works properly.
2012-02-17 12:19:20 -03:00
Thibault Saunier
adc947e127 tsdemux: fix glib deprecation 2012-02-17 12:19:20 -03:00
Wim Taymans
e4754d274b RELEASE 0.11.1 2012-02-17 11:05:37 +01:00
Wim Taymans
f08e247051 Merge branch 'master' into 0.11 2012-02-17 09:01:56 +01:00
Thiago Santos
39bad1d6ca wrappercamerabinsrc: Put source to null when resetting caps
It seems that v4l2src isn't happy when switching formats on ready
state, it works when putting it to NULL. Keep this workaround in
wrappercamerabinsrc while v4l2src isn't fixed.

Fixes #849832
2012-02-16 22:51:21 -03:00
Wim Taymans
2fca270f19 Merge branch 'master' into 0.11
Conflicts:
	gst/mpegtsdemux/mpegtsbase.c
	gst/mpegtsdemux/mpegtspacketizer.c
	gst/mpegtsdemux/tsdemux.c
	gst/mve/gstmvedemux.c
2012-02-16 14:33:20 +01:00
Thiago Santos
2ce709cf4a wrappercamerabinsrc: Put source in NULL when it fails changing state
When source is being reset to change caps, check the return of
the state syncing function to avoid leaving the source in an
unconsistent state.
2012-02-16 01:30:23 -03:00
Tim-Philipp Müller
b3592ebda8 mve: don't return a boolean for a GstFlowReturn
fixes playback.
2012-02-16 00:30:05 +00:00
Thibault Saunier
1182dd0c1b tsdemux: Avoid throwing FLOW_ERROR on last PCR processing error
In the case of scanning last pcr, errors are not critical, so we keep
the stream flowing.
2012-02-15 15:48:44 -03:00
Thibault Saunier
cda0d3aed8 tsdemux: Add AAC latm support 2012-02-15 15:48:44 -03:00
Thibault Saunier
6094ec27b1 tsdemux: Minor refactoring/code cleaning
... add some debugging symbols in the mean time.
2012-02-15 15:48:44 -03:00
Mark Nauwelaerts
c7216162e4 h264parse: remove _chain hack
As we can now rely upon being passed upstream delineated data in
::handle_frame(), the latter can also parse avc formatted data
without having to intercept baseparse's chain function.

While this evidently requires 2 separate parsing paths, each can
be streamlined accordingly.
2012-02-15 17:15:10 +01:00
Mark Nauwelaerts
b8a78c6b37 videoparsers: adjust to standardized baseparse frame state tracking 2012-02-15 17:15:07 +01:00
Mark Nauwelaerts
ca5010cc4b Merge branch 'master' into 0.11 2012-02-15 17:14:34 +01:00
Mark Nauwelaerts
5cce89b048 h264parse: use proper NALU offset for config data insertion
... which has to be the position of the start code, which is almost always
but need not be 4 bytes.
2012-02-15 14:29:45 +01:00
Wim Taymans
52fce49459 h263parse: fix compilation 2012-02-15 13:39:29 +01:00
Wim Taymans
16810321ee videoparsers: don't leak event
Unref the event when we don't chain up to the parent
2012-02-15 13:02:06 +01:00
Wim Taymans
f9c99b4713 videoparsers: chain up to parent event handler
Chain up to the parent event handler to get the default behaviour instead of
returning FALSE.
2012-02-15 12:56:55 +01:00
Wim Taymans
eff7037447 Merge branch 'master' into 0.11 2012-02-14 11:19:04 +01:00
Mark Nauwelaerts
b10b9cf109 videoparsers: adjust to modified baseparse API 2012-02-13 18:44:01 +01:00
Mark Nauwelaerts
ea6a192b13 pcapparse: adjust to modified baseparse API 2012-02-13 18:42:53 +01:00
Mark Nauwelaerts
67a8e53aef h264parse: fixup merge 2012-02-13 18:42:53 +01:00
Jan Schmidt
debf4984df mpegtsmux: Trivial bug fix. Don't copy data from an uninited buffer. 2012-02-13 23:05:35 +11:00
Thomas Vander Stichele
bbbdbb536b multifdsink: refactored in -base 2012-02-12 22:59:52 +01:00
Wim Taymans
6c2f5814ef h264parse: report after merge 2012-02-10 16:52:46 +01:00
Wim Taymans
1119f6ee41 Merge branch 'master' into 0.11
Conflicts:
	ext/chromaprint/gstchromaprint.c
	ext/mpeg2enc/Makefile.am
	ext/voaacenc/gstvoaacenc.c
	gst/dvbsuboverlay/gstdvbsuboverlay.c
	gst/mpegtsdemux/mpegtsbase.c
	gst/sdp/gstsdpdemux.c
	gst/videoparsers/gsth264parse.c
	sys/d3dvideosink/d3dvideosink.c
	tests/examples/camerabin/gst-camera-perf.c
	tests/examples/camerabin/gst-camerabin-test.c
	tests/examples/camerabin2/gst-camerabin2-test.c
	tests/examples/mxf/mxfdemux-structure.c
	tests/examples/scaletempo/demo-main.c
2012-02-10 16:46:50 +01:00
Mark Nauwelaerts
1cbd755a2c h264parse: unobfuscate frame parsing code 2012-02-10 14:52:03 +01:00
Wim Taymans
20ffe99cc7 h264parse: fix refcount error 2012-02-09 14:42:23 +01:00
Tim-Philipp Müller
8765068879 Remove legacyh264parse element
One h264 parser ought to be enough for anybody.

https://bugzilla.gnome.org/show_bug.cgi?id=648002
2012-02-08 20:09:39 +00:00
Wim Taymans
de1f89bf07 GST_FLOW_WRONG_STATE -> GST_FLOW_FLUSHING 2012-02-08 16:37:13 +01:00
Wim Taymans
667c84b59c audiovis: port to 0.11 some more 2012-02-07 12:02:49 +01:00
Thiago Santos
3b549c4dbd camerabin: prevent captures from being lost when switching resolutions
When switching capture caps, camerabin1 resets its state to ready
to force a new caps to be negotiated. This causes ongoing captures
to be aborted.

This commit adds a condition to wait for captures to finish before
going to ready state.
2012-02-06 10:48:32 -03:00
Thiago Santos
9bd40e92ce camerabin: Improve debug message about processing counter
Mention on the logs how many capture operations might have been
lost
2012-02-06 10:48:32 -03:00
Vincent Penquerc'h
ddff93320d rotate: angle is in radians already, do not scale it
Other plugins use radians, and the angle documentation says radians.

https://bugzilla.gnome.org/show_bug.cgi?id=669365
2012-02-04 22:07:54 +00:00
Vincent Penquerc'h
e84bbcbeab rotate: fix description string to match what the element does
https://bugzilla.gnome.org/show_bug.cgi?id=669365
2012-02-04 22:07:54 +00:00
Vincent Penquerc'h
2eef9828d6 mpegtsdemux: do not emit no-more-pads
Doing so may fix some things, but breaks others (new streams being
added in the future).

https://bugzilla.gnome.org/show_bug.cgi?id=665814
2012-02-03 17:37:16 +00:00
Mark Nauwelaerts
c36bb8b73d h264parse: decrease passthrough negotiation preference
Also ensure parsing fixed caps when negotiating rather than failing to
handle non-fixed list cases.

See #668471.
2012-02-03 11:27:32 +01:00
Tim-Philipp Müller
f8f4620451 build: fix CFLAGS order and LIBS order
_BAD_CFLAGS should always come first, then GST_PLUGINS_BASE_CFLAGS,
then GST_BASE_CFLAGS then GST_CFLAGS. Same for libs: first plugins
base libs, then GST_BASE_LIB then GST_LIBS.
2012-02-03 00:50:33 +00:00
Mark Nauwelaerts
bc0dd274ee debugutils: port to 0.11 2012-02-02 23:21:50 +01:00
Vincent Penquerc'h
0d1c9624ea mpegpsmux: include specific AAC stream-format in template caps
This elements seems to support raw and adts AAC.

https://bugzilla.gnome.org/show_bug.cgi?id=665394
2012-02-02 12:37:02 +00:00
Vincent Penquerc'h
2dec0950cf tsdemux: add explicit supported AAC stream-format in template caps
https://bugzilla.gnome.org/show_bug.cgi?id=665394
2012-02-02 12:37:02 +00:00
Vincent Penquerc'h
27f21d31ac mpegtsmux: specify in template caps we only take raw/adts AAC format
This appears to be what this element supports.

https://bugzilla.gnome.org/show_bug.cgi?id=665394
2012-02-02 12:37:02 +00:00
Vincent Penquerc'h
5c8ca4e1d0 mpegdemux: include specific AAC stream-format types in template caps
https://bugzilla.gnome.org/show_bug.cgi?id=665394
2012-02-02 12:37:01 +00:00
Tim-Philipp Müller
260e2e7427 build: ignore GValueArray deprecation warnings for the time being
until this gets sorted out with the GLib folks and we have a
viable alternative.

https://bugzilla.gnome.org/show_bug.cgi?id=667228
2012-02-01 17:54:22 +00:00
Tim-Philipp Müller
b66e84040b adpcmdec: fix up for GstAudioDecoder API change 2012-02-01 17:06:11 +00:00
Mark Nauwelaerts
da89903f81 h264parse: disable optimized packetized processing for reverse playback
... as baseparse then provides whole chunks of data (as it should) at once
to be parsed, and so the assumptions used to optimize are no longer valid.

Fixes #667560.
2012-02-01 13:53:17 +01:00
Mark Nauwelaerts
283f97cb79 h264parse: also mind SEI position for config data insertion
Fixes #668627.
2012-02-01 13:53:15 +01:00
Mark Nauwelaerts
136f42974d h264parse: unbreak optimized packetized NALU collection processing
... in that it was so optimized it did not consider grouping NALU into AU
altogether.

Fixes #668627.
2012-02-01 13:53:13 +01:00
Rob Clark
521e8b199b videoparsers: set interlaced field in caps for mpeg2
https://bugzilla.gnome.org/show_bug.cgi?id=667218
2012-01-31 11:51:37 +00:00
Alessandro Decina
f547336fdc mpegtsmux: update after collectpads2 changes 2012-01-31 08:44:04 +01:00
Wim Taymans
3b74cca741 update for HEADER flag 2012-01-30 17:17:16 +01:00
Olivier Crête
70539e9c93 rtpmux: Unref non-forwarded events
Also, don't unref forwarded ones
2012-01-29 18:03:53 +00:00
Olivier Crête
3cccb06dc3 rtpmux: resync iterator on resync 2012-01-28 16:57:03 +00:00
Olivier Crête
b9fd586a61 rtpmux: Re-push sticky events on input pad change 2012-01-27 19:04:24 +01:00
Olivier Crête
83118f5d82 dtmf: Use new-style caps 2012-01-27 19:04:23 +01:00
Sebastian Dröge
2e0bc90903 mpegdemux: Don't leak the SCHEDULING query 2012-01-27 16:56:53 +01:00
Matej Knopp
7bcd991f93 Port mpegdemux to 0.11 2012-01-27 16:56:23 +01:00
Vincent Penquerc'h
8147669971 plenty: fixup glib deprecations 2012-01-27 15:47:07 +00:00
Thiago Santos
f4d6e03b9b camerabin: Add viewfinder colorspace conversion to default flags
This make the default settings more likely to work. If needed, one
can optimize by disabling conversions with the flags.
2012-01-27 07:37:56 -03:00
Thiago Santos
5edd64eec6 camerabin2: Removing solved TODO and fixing a typo 2012-01-27 07:37:55 -03:00
Mark Nauwelaerts
498e4df9d9 adpcmdec: port to 0.11 2012-01-26 23:28:28 +01:00
Mark Nauwelaerts
936bee00f4 adpcmenc: port to 0.11 2012-01-26 23:28:20 +01:00
Olivier Crête
7aead77649 autoconvert: port to 0.11 2012-01-25 18:04:55 +01:00
Olivier Crête
4878946130 bayer: Intersect transformed caps with filter 2012-01-25 18:04:55 +01:00
Olivier Crête
73d57f1848 rtpmux: Don't leak gvalue from iterator 2012-01-25 17:49:26 +01:00
Wim Taymans
bc1067ce4b more porting 2012-01-25 16:46:44 +01:00