Sebastian Dröge
318ed07598
Revert "-base_port to new query API"
...
This reverts commit c9f4e0676b
.
2011-05-17 11:25:31 +02:00
Sebastian Dröge
07617d50d3
videorate: Update for segment API changes
2011-05-16 17:14:08 +02:00
Sebastian Dröge
d0362c2b87
Merge branch 'master' into 0.11
...
Conflicts:
configure.ac
ext/alsa/gstalsasrc.c
gst-libs/gst/audio/gstbaseaudiosink.c
gst-libs/gst/tag/gstxmptag.c
gst/playback/gstsubtitleoverlay.c
gst/videorate/gstvideorate.c
sys/xvimage/xvimagesink.c
2011-05-16 17:06:22 +02:00
Sebastian Dröge
e21ec369f0
videorate: Update for negotiation related API changes
2011-05-16 15:35:41 +02:00
Wim Taymans
94dfe80f71
-base: port to new SEGMENT API
2011-05-16 13:48:11 +02:00
Mark Nauwelaerts
eba4a948fb
videorate: optionally ensure maximum average output frame rate
...
See #628764 .
2011-05-16 12:46:00 +02:00
Alexey Fisher
1e09272024
videorate: optionally only drop frames to ensure maximum frame rate
...
This adds option to arrange for maximal allowed variable frame rate.
Fixes #628764 .
2011-05-16 12:45:47 +02:00
Wim Taymans
c9f4e0676b
-base_port to new query API
2011-05-10 18:39:07 +02:00
Wim Taymans
816f4e791d
segment: fix for new core API
...
Fix for gst_*_segment_full rename.
2011-05-09 18:16:46 +02:00
Wim Taymans
ec57868488
-base: don't use buffer caps
...
Port to newest 0.11 core API, remove GST_PAD_CAPS and GST_BUFFER_CAPS.
2011-05-09 13:05:12 +02:00
Sebastian Dröge
f10a8f0986
gst: Use G_DEFINE_TYPE instead of GST_BOILERPLATE
2011-04-19 11:35:53 +02:00
Sebastian Dröge
352edd1dd9
Merge branch 'master' into 0.11
2011-04-16 09:12:31 +02:00
Mark Nauwelaerts
eb10995895
videorate: empty caps have no structure to pick
2011-04-11 15:03:55 +02:00
Wim Taymans
6e160bed3d
Merge branch 'master' into 0.11
...
Conflicts:
android/alsa.mk
android/app.mk
android/app_plugin.mk
android/audio.mk
android/audioconvert.mk
android/decodebin.mk
android/decodebin2.mk
android/gdp.mk
android/interfaces.mk
android/netbuffer.mk
android/pbutils.mk
android/playbin.mk
android/queue2.mk
android/riff.mk
android/rtp.mk
android/rtsp.mk
android/sdp.mk
android/tag.mk
android/tcp.mk
android/typefindfunctions.mk
android/video.mk
2011-04-11 11:37:51 +02:00
Alessandro Decina
030f639a8e
android: make it ready for androgenizer
...
Remove the android/ top dir
Fixe the Makefile.am to be androgenized
To build gstreamer for android we are now using androgenizer which generates the
needed Android.mk files.
Androgenizer can be found here:
http://git.collabora.co.uk/?p=user/derek/androgenizer.git
2011-04-11 07:23:21 +02:00
Wim Taymans
3b03e23559
plugins: port some plugins to the new memory API
2011-03-27 16:35:28 +02:00
Mark Nauwelaerts
bb0dc56114
videorate: fix skip-to-first ts setup
...
... such as avoiding arithmetic mixing counts and ts, although latter
would typically be 0 so far.
2011-02-21 12:58:16 +01:00
Robert Swain
2c1bf82d55
videorate: Fix behaviour for frame rate cap changes
...
The outgoing buffer timestamp is calculated by scaling an output buffer
count by the src pad frame rate caps. If these caps change, we need to
reset the count and work from a new base timestamp. The new output
buffer timestamp is then the count scaled by the new caps values added
onto the base timestamp.
2011-01-06 13:12:05 +01:00
Tim-Philipp Müller
82d2669f4f
videorate: use g_object_notify_by_pspec() if possible
...
Use g_object_notify_by_pspec() when building against GLib >= 2.26.
This avoids the pspec lookup which takes the global paramspec pool lock.
2010-10-07 20:37:10 +01:00
Sebastian Dröge
4da242a6b2
videorate: Fill the segment on EOS or at least produce enough frames to use the complete buffer duration
...
Fixes bug #628400 .
2010-09-01 11:33:12 +02:00
Sebastian Dröge
20d5c6d05c
videorate: Don't ignore flow returns when filling the previous segment during NEWSEGMENT handling
2010-09-01 11:22:25 +02:00
Sebastian Dröge
ac59769604
videorate: Mark duplicated frames with the GAP flag
...
We currently don't use the GAP flag for video and the docs say
that this is for buffers, that have been created to fill a gap
and contains neutral data. For video this is the previous frame.
This information can be used by encoders to encode the duplicated
frames more efficiently. See bug #627459 .
2010-08-20 12:03:44 +02:00
Sebastian Dröge
53318f20cc
videorate: Fixate the pixel-aspect-ratio if necessary
2010-07-26 16:05:44 +02:00
Sebastian Dröge
258e519b49
videorate: Use new string fixation function from core
2010-05-22 10:02:46 +02:00
Sebastian Dröge
b1a9af61c7
videorate: Fixate color-matrix and chroma-site fields if necessary
2010-05-22 09:53:22 +02:00
Sebastian Dröge
220a61f821
videorate: Fixate the interlaced field if necessary
...
Fixes bug #619310 .
2010-05-22 09:53:18 +02:00
Tim-Philipp Müller
33b5172822
videorate: pass object to logging functions, use GST_DEBUG_FUNCPTR
2010-05-21 18:16:07 +01:00
Stefan Kost
948d06e4b3
videorate: trucate own caps, instead of copying and using the first only
...
We got the caps from an intersect, it is our own, hence we can truncate it.
Besides gst-indent has chooses to line-up all caps in one line again :/.
2010-05-06 09:14:25 +03:00
Joshua M. Doe
8dfa792bc9
videorate: add support for video/x-raw-gray
2010-04-29 18:21:21 +02:00
Benjamin Otte
5e21fa5e0e
gst_element_class_set_details => gst_element_class_set_details_simple
...
Also change my email from the old university one to the current one.
2010-03-16 17:41:50 +01:00
Benjamin Otte
43b1683421
Add -Wmissing-declarations -Wmissing-prototypes to warning flags
...
Includes all the fixes necessary to make stuff compile again.
2010-03-11 13:50:31 +01:00
Thiago Santos
616f130d05
videorate: Improve upstream negotiation
...
Put peer pad caps preferred framerates first, indicating
they are videorate's first choices, removing an unnecessary
conversion.
Fixes #608025
2010-02-22 17:03:07 -03:00
Josep Torra
9c335ec185
videorate: fix warning in macosx
2009-10-09 14:23:36 +02:00
Sebastian Dröge
7dbefedeef
videorate: Add Since marker for the new skip-to-first property
2009-09-11 07:38:28 +02:00
Olivier Crête
f35c5bc1e7
videorate: Make videorate work with a live source
...
Add a property that makes videorate skip to the first buffer it
receives instead of padding the stream from segment start to the
first real buffer.
Fixes bug #567928 .
2009-09-11 07:36:10 +02:00
Wim Taymans
956c9f32a3
videorate: handle invalid timestamps better
...
Handle buffers with -1 timestamps better by keeping track of the en time of the
previous buffer and assuming the -1 timestamp buffer goes right after the
previous one.
when we have two buffers that are equally good, output the oldest buffer once to
minimize latency.
don't try to calculate latency when the input framerate is unknown.
2009-05-12 10:47:17 +02:00
Wim Taymans
915b3d139d
videorate: clear discont on duplicated buffers
...
When videorate duplicates a buffer with a DISCONT flag, it copies the discont on
the first pushed buffer but fails to clear it for subsequent buffers. This
causes theoraenc!oggmux and possibly other elements to consider this a discont
stream.
Fix videorate to produce discont as the first buffer and after a flushing seek.
Fixes #580271 .
2009-04-28 16:45:07 +02:00
Wim Taymans
9d0c9fe49b
gst/videorate/gstvideorate.c: Add jpeg and png image media types to the caps. Fixes #561436 .
...
Original commit message from CVS:
* gst/videorate/gstvideorate.c:
Add jpeg and png image media types to the caps. Fixes #561436 .
2008-11-22 14:44:26 +00:00
Stefan Kost
2cd4c7e2b9
Don't install static libs for plugins. Fixes #550851 for base.
...
Original commit message from CVS:
* ext/alsa/Makefile.am:
* ext/cdparanoia/Makefile.am:
* ext/gio/Makefile.am:
* ext/gnomevfs/Makefile.am:
* ext/libvisual/Makefile.am:
* ext/ogg/Makefile.am:
* ext/pango/Makefile.am:
* ext/theora/Makefile.am:
* ext/vorbis/Makefile.am:
* gst/adder/Makefile.am:
* gst/audioconvert/Makefile.am:
* gst/audiorate/Makefile.am:
* gst/audioresample/Makefile.am:
* gst/audiotestsrc/Makefile.am:
* gst/ffmpegcolorspace/Makefile.am:
* gst/gdp/Makefile.am:
* gst/playback/Makefile.am:
* gst/subparse/Makefile.am:
* gst/tcp/Makefile.am:
* gst/typefind/Makefile.am:
* gst/videorate/Makefile.am:
* gst/videoscale/Makefile.am:
* gst/videotestsrc/Makefile.am:
* gst/volume/Makefile.am:
* sys/v4l/Makefile.am:
* sys/ximage/Makefile.am:
* sys/xvimage/Makefile.am:
Don't install static libs for plugins. Fixes #550851 for base.
2008-10-16 15:07:00 +00:00
Stefan Kost
2b33c755b6
Cleanup Plugin docs. Link to signals and properties. Fix sub-section titles. Drop mentining that all our example pipe...
...
Original commit message from CVS:
* docs/plugins/gst-plugins-base-plugins-docs.sgml:
* docs/plugins/gst-plugins-base-plugins-overrides.txt:
* docs/plugins/gst-plugins-base-plugins-sections.txt:
* docs/plugins/gst-plugins-base-plugins.args:
* docs/plugins/gst-plugins-base-plugins.hierarchy:
* docs/plugins/gst-plugins-base-plugins.interfaces:
* docs/plugins/gst-plugins-base-plugins.prerequisites:
* docs/plugins/gst-plugins-base-plugins.signals:
* docs/plugins/inspect/plugin-adder.xml:
* docs/plugins/inspect/plugin-alsa.xml:
* docs/plugins/inspect/plugin-audioconvert.xml:
* docs/plugins/inspect/plugin-audiorate.xml:
* docs/plugins/inspect/plugin-audioresample.xml:
* docs/plugins/inspect/plugin-audiotestsrc.xml:
* docs/plugins/inspect/plugin-cdparanoia.xml:
* docs/plugins/inspect/plugin-decodebin.xml:
* docs/plugins/inspect/plugin-ffmpegcolorspace.xml:
* docs/plugins/inspect/plugin-gdp.xml:
* docs/plugins/inspect/plugin-gnomevfs.xml:
* docs/plugins/inspect/plugin-libvisual.xml:
* docs/plugins/inspect/plugin-ogg.xml:
* docs/plugins/inspect/plugin-pango.xml:
* docs/plugins/inspect/plugin-playback.xml:
* docs/plugins/inspect/plugin-queue2.xml:
* docs/plugins/inspect/plugin-subparse.xml:
* docs/plugins/inspect/plugin-tcp.xml:
* docs/plugins/inspect/plugin-theora.xml:
* docs/plugins/inspect/plugin-typefindfunctions.xml:
* docs/plugins/inspect/plugin-uridecodebin.xml:
* docs/plugins/inspect/plugin-video4linux.xml:
* docs/plugins/inspect/plugin-videorate.xml:
* docs/plugins/inspect/plugin-videoscale.xml:
* docs/plugins/inspect/plugin-videotestsrc.xml:
* docs/plugins/inspect/plugin-volume.xml:
* docs/plugins/inspect/plugin-vorbis.xml:
* docs/plugins/inspect/plugin-ximagesink.xml:
* docs/plugins/inspect/plugin-xvimagesink.xml:
* ext/alsa/gstalsamixer.c:
* ext/alsa/gstalsasink.c:
* ext/alsa/gstalsasrc.c:
* ext/gio/gstgiosink.c:
* ext/gio/gstgiosrc.c:
* ext/gio/gstgiostreamsink.c:
* ext/gio/gstgiostreamsrc.c:
* ext/gnomevfs/gstgnomevfssink.c:
* ext/gnomevfs/gstgnomevfssrc.c:
* ext/ogg/gstoggdemux.c:
* ext/ogg/gstoggmux.c:
* ext/pango/gstclockoverlay.c:
* ext/pango/gsttextoverlay.c:
* ext/pango/gsttextrender.c:
* ext/pango/gsttimeoverlay.c:
* ext/theora/theoradec.c:
* ext/theora/theoraenc.c:
* ext/theora/theoraparse.c:
* ext/vorbis/vorbisdec.c:
* ext/vorbis/vorbisenc.c:
* ext/vorbis/vorbisparse.c:
* ext/vorbis/vorbistag.c:
* gst/adder/gstadder.c:
* gst/audioconvert/gstaudioconvert.c:
* gst/audioresample/gstaudioresample.c:
* gst/audiotestsrc/gstaudiotestsrc.c:
* gst/ffmpegcolorspace/gstffmpegcolorspace.c:
* gst/gdp/gstgdpdepay.c:
* gst/gdp/gstgdppay.c:
* gst/playback/gstdecodebin2.c:
* gst/playback/gstplaybin.c:
* gst/playback/gstplaybin2.c:
* gst/playback/gstqueue2.c:
* gst/playback/gsturidecodebin.c:
* gst/tcp/gstmultifdsink.c:
* gst/tcp/gsttcpserversink.c:
* gst/videorate/gstvideorate.c:
* gst/videoscale/gstvideoscale.c:
* gst/videotestsrc/gstvideotestsrc.c:
* gst/volume/gstvolume.c:
* sys/ximage/ximagesink.c:
* sys/xvimage/xvimagesink.c:
Cleanup Plugin docs. Link to signals and properties. Fix sub-section
titles. Drop mentining that all our example pipelines are "simple"
pipelines.
2008-07-10 21:06:06 +00:00
Mark Nauwelaerts
17b17a566f
gst/videorate/gstvideorate.*: React (more) to NEWSEGMENT
...
Original commit message from CVS:
Patch by: Mark Nauwelaerts <manauw at skynet be>
* gst/videorate/gstvideorate.c: (gst_video_rate_reset),
(gst_video_rate_flush_prev), (gst_video_rate_event),
(gst_video_rate_chain):
* gst/videorate/gstvideorate.h:
React (more) to NEWSEGMENT
Small adjustment in timestamp calculation to prevent mismatches
Fixes #435633 .
2008-05-28 14:49:24 +00:00
Sebastian Dröge
49deb0c05d
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 .
2008-03-22 15:00:53 +00:00
Tim-Philipp Müller
2c9bef0180
gst/: Printf format fixes ( #465028 ).
...
Original commit message from CVS:
* gst/playback/gstqueue2.c:
* gst/videorate/gstvideorate.c:
Printf format fixes (#465028 ).
2007-08-10 10:08:05 +00:00
Wim Taymans
e59c110631
gst/videorate/gstvideorate.c: Use boilerplate.
...
Original commit message from CVS:
* gst/videorate/gstvideorate.c: (gst_video_rate_init),
(gst_video_rate_query):
Use boilerplate.
Add latency query, might not be perfect yet but already works a lot
better. Fixes #442557 .
2007-07-13 18:12:19 +00:00
Edward Hervey
25d28aae98
gst/videorate/gstvideorate.c: There is no sensible way to handle incoming buffers which don't have a valid timestamp....
...
Original commit message from CVS:
* gst/videorate/gstvideorate.c: (gst_video_rate_chain):
There is no sensible way to handle incoming buffers which don't have a
valid timestamp. We therefore discard them and wait for the next one.
2007-05-03 10:47:22 +00:00
Dan Williams
37a334ddb7
gst/videorate/gstvideorate.c: Don't leak incoming buffer if gst_pad_push() returns a non-OK flow. Fixes #432755 .
...
Original commit message from CVS:
Patch by: Dan Williams <dcbw redhat com>
* gst/videorate/gstvideorate.c: (gst_video_rate_chain):
Don't leak incoming buffer if gst_pad_push() returns a
non-OK flow. Fixes #432755 .
* tests/check/elements/videorate.c: (GST_START_TEST),
(videorate_suite):
Unit test for the above by Yours Truly.
2007-04-24 15:00:07 +00:00
Wim Taymans
807258cc03
gst/videorate/gstvideorate.c: Add some debug.
...
Original commit message from CVS:
* gst/videorate/gstvideorate.c: (gst_video_rate_setcaps),
(gst_video_rate_chain):
Add some debug.
* tests/check/elements/videorate.c: (GST_START_TEST),
(videorate_suite):
Added check for videorate changing caps handling. Closes #421834 .
2007-04-12 15:00:03 +00:00
Andy Wingo
af17f81a47
gst/videorate/gstvideorate.c (gst_video_rate_flush_prev): Make perfect offsets also, not just timestamps.
...
Original commit message from CVS:
2007-03-29 Andy Wingo <wingo@pobox.com>
* gst/videorate/gstvideorate.c (gst_video_rate_flush_prev): Make
perfect offsets also, not just timestamps.
* tests/check/elements/videorate.c (test_more): Test that given
any incoming offsets, that videorate produces perfect offsets.
2007-03-29 11:24:47 +00:00
Michael Smith
b3827533a7
gst/videorate/gstvideorate.c: If videorate changes caps, we can no longer use the old buffer (which may have a differ...
...
Original commit message from CVS:
* gst/videorate/gstvideorate.c: (gst_video_rate_setcaps),
(gst_video_rate_reset), (gst_video_rate_chain):
If videorate changes caps, we can no longer use the old buffer
(which may have a different size, incompatible with our caps).
So don't do that; just duplicate the new frame more times.
2007-03-23 12:32:33 +00:00
Yves Lefebvre
a6e3e71fe3
gst/videorate/gstvideorate.c: Don't leak caps. Fixes #408278 .
...
Original commit message from CVS:
Patch by: Yves Lefebvre <ivanohe abacom com>
* gst/videorate/gstvideorate.c: (gst_video_rate_setcaps):
Don't leak caps. Fixes #408278 .
2007-02-16 10:15:46 +00:00