Commit graph

93 commits

Author SHA1 Message Date
Thibault Saunier 47a49f3381 docs: Build documentation with hotdoc 2019-05-13 17:00:00 -04:00
Xavier Claessens 83d0623293 Meson: Generate pc file for all plugins in bad
https://bugzilla.gnome.org/show_bug.cgi?id=794568
2018-04-25 11:08:09 +01:00
Carlos Rafael Giani ec963e688f interaudio: Make sure both PTS and DTS values are defined
The inter plugin originated in 0.10, which had only one timestamp. As a
result, during the port to 1.0, the DTS were left undefined. This can cause
subtle bugs with basesrc, which can end up incorrectly picking DTS over PTS
and producing output buffers with incorrect timestamps.

https://bugzilla.gnome.org/show_bug.cgi?id=791347
2018-02-11 20:41:14 +00:00
Nicolas Dufresne 4261692187 Remove plugin specific static build option
Static and dynamic plugins now have the same interface. The standard
--enable-static/--enable-shared toggle are sufficient.
2017-05-16 14:05:52 -04:00
Thibault Saunier 78022a6e0c docs: Port all docstring to gtk-doc markdown 2017-04-12 12:57:57 -03:00
Nirbheek Chauhan 42af2d66d8 Add support for Meson as alternative/parallel build system
https://github.com/mesonbuild/meson

With contributions from:

Tim-Philipp Müller <tim@centricular.com>
Matej Knopp <matej.knopp@gmail.com>
Jussi Pakkanen <jpakkane@gmail.com> (original port)

Highlights of the features provided are:
* Faster builds on Linux (~40-50% faster)
* The ability to build with MSVC on Windows
* Generate Visual Studio project files
* Generate XCode project files
* Much faster builds on Windows (on-par with Linux)
* Seriously fast configure and building on embedded

... and many more. For more details see:

http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html
http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html

Building with Meson should work on both Linux and Windows, but may
need a few more tweaks on other operating systems.
2016-08-20 11:35:54 +01:00
Vineeth TM 8cdfb13658 bad: use new gst_element_class_add_static_pad_template()
https://bugzilla.gnome.org/show_bug.cgi?id=763081
2016-03-24 14:56:51 +02:00
Vineeth TM 7c42ba97d7 plugins-bad: Fix example pipelines
rename gst-launch --> gst-launch-1.0
replace old elements with new elements(ffmpegcolorspace -> videoconvert, ffenc_** -> avenc_**)
fix caps in examples

https://bugzilla.gnome.org/show_bug.cgi?id=759432
2015-12-15 10:30:49 +00:00
Vineeth TM 8c9ca808af gstreamer: bad: Fix memory leaks when context parse fails
When g_option_context_parse fails, context and error variables are not getting free'd
which results in memory leaks. Free'ing the same.

And replacing g_error_free with g_clear_error, which checks if the error being passed
is not NULL and sets the variable to NULL on free'ing.

https://bugzilla.gnome.org/show_bug.cgi?id=753854
2015-10-02 17:24:35 +03:00
Tim-Philipp Müller 0cb160a685 intervideosink: render preroll frames as well
Derive from GstVideoSink so that preroll frames will automatically
get rendered too, unless the show-preroll-frame property is set to
FALSE. Fixes intervideosrc only picking up frames if intervideosink
is in PLAYING state.

https://bugzilla.gnome.org/show_bug.cgi?id=755049
2015-09-16 17:20:52 +01:00
Tim-Philipp Müller f0a9c246a3 gst: remove some unnecessary glib version checks
We require 2.32, no need to check for anything older
than that.
2015-04-28 16:02:27 +01:00
Tim-Philipp Müller 699452ef31 Remove obsolete Android build cruft
This is not needed any longer.
2015-04-26 18:59:32 +01:00
Sebastian Dröge 037928dcf6 Improve and fix LATENCY query handling
This now follows the design docs everywhere, especially the maximum latency
handling.

https://bugzilla.gnome.org/show_bug.cgi?id=744106
2015-02-11 14:16:21 +01:00
Arun Raghavan e53627c277 intervideosrc: Fix GAP flag setting on non-black frames
The previous commit fixed setting the GAP flag on black frames, but
incorrectly dropped the flag on repeated pushes of the same video
buffer.
2015-01-23 12:47:03 +05:30
Arun Raghavan 825239b450 intervideosrc: Fix GAP flag setting on black frames correctly
This did not actually work since the video_buffer was set to NULL after
the first black frame.

Reported by: Patrik Oldsberg <patrik.oldsberg@ericsson.com>
2015-01-22 11:07:50 +05:30
Arun Raghavan ec7f05dd9c intervideosrc: Fix max value of the timeout property
Reported by: Patrik Oldsberg <patrik.oldsberg@ericsson.com>
2015-01-22 11:07:50 +05:30
Sebastian Dröge efb74ca0df interaudiosink: Make sure that buffer time is always bigger than period time 2015-01-15 13:13:51 +01:00
Sebastian Dröge 7f27b81e05 inter: Use a #define for the default value of the channel property 2015-01-13 17:01:14 +01:00
Sebastian Dröge cd5b64133e intervideosrc: Make the timeout configurable after which we start showing a black frame 2015-01-13 17:01:14 +01:00
Branislav Katreniak 45b095c666 inter: silence messages for flushed / created samples
These messages are logged periodically and polute the log

https://bugzilla.gnome.org/show_bug.cgi?id=741592
2015-01-13 11:16:41 +01:00
Jan Schmidt 4108069d05 inter: interaudiosrc - fixate layout for default caps
Makes interaudiosrc produce valid audio caps in the absence of any other
guidance by adding to the pad template and fixate function
2015-01-10 16:09:19 +11:00
Arun Raghavan 226a4fcea3 intervideosrc: Fix a memory leak
Frees the source ARGB black frame that we use to create the black frame
in our target format.
2014-12-05 14:21:31 +05:30
Sebastian Dröge 6c3b3bef4e interaudiosink: Make sure to store at least period-time samples at once in the adapter
It's better to create some more silence than having the source pull multiple
short buffers out of the adapter and insert silence between them.
2014-11-12 18:10:45 +01:00
Sebastian Dröge 411795560f intervideosrc: Stop showing the current frame after 1 second, not after 30 frames 2014-11-12 13:59:23 +01:00
Sebastian Dröge cf5cd85a3b interaudiosrc: Make sure we have a writable buffer before we start changing metadata 2014-11-11 11:18:40 +01:00
Sebastian Dröge ce6222f8d4 intervideosrc: Set the GAP flag on repeated buffers
videorate does the same and it allows optimizations downstream.
2014-11-11 11:18:40 +01:00
Sebastian Dröge 3d1cd1011b interaudiosrc: Set the GAP flag on buffers that only contain silence 2014-11-11 11:18:40 +01:00
Sebastian Dröge 0fc6cc6874 intervideosrc: Print a warning into the debug log on generating black frames 2014-11-06 17:36:15 +01:00
Sebastian Dröge e6b5a271a1 intervideosink: Add some debug output in the render function 2014-11-06 17:21:39 +01:00
Sebastian Dröge 017a8c8369 interaudiosrc: Fix compiler warning about unused variables
gstinteraudiosrc.c: In function 'gst_inter_audio_src_create':
gstinteraudiosrc.c:339:27: error: variable 'buffer_samples' set but not used [-Werror=unused-but-set-variable]
   guint64 period_samples, buffer_samples;
                           ^
2014-11-04 15:16:33 +01:00
Sebastian Dröge 5c7d0a1553 interaudio: Make buffer size and latency handling more explicit and add properties for them
This now makes audio work more reliable without disconts.
2014-11-04 14:56:55 +01:00
Sebastian Dröge 2939337b61 interaudiosink: Use the bpf from the audio info instead of hardcoding 4 2014-11-04 13:59:20 +01:00
Sebastian Dröge c10f5eecea interaudio: Only flush the ringbuffer on the sink side 2014-11-04 13:58:44 +01:00
Sebastian Dröge 6a36b53831 interaudiosink: Flush the adapter when we get new caps
Ideally we would drain the source but that would require more coordination
between sink and source than what we currently have.
2014-11-04 13:47:38 +01:00
Sebastian Dröge dda95aeb50 intervideosrc: Negotiate framerate with downstream
Prefer the closest framerate to the input framerate though.
2014-11-03 16:54:58 +01:00
Sebastian Dröge 85f66e3531 inter*src: No need to set caps manually on the pad
basesrc does that for us already.
2014-11-03 16:24:33 +01:00
Wim Taymans 4e8d93c44a inter: fix order of arguments 2014-11-03 15:19:48 +01:00
Sebastian Dröge f660537fd5 interaudio: Set all required fields on the template caps
https://bugzilla.gnome.org/show_bug.cgi?id=739542
2014-11-03 10:05:59 +01:00
Tim-Philipp Müller 4a84fd9355 inter: don't leak surface name 2014-11-02 23:24:39 +00:00
Sebastian Dröge 56e49ce3b6 inter: Use 64-bit safe scaling functions 2014-10-27 15:35:43 +01:00
Sebastian Dröge 76f879525d interaudio: Add support for arbitrary raw audio formats 2014-10-22 19:34:17 +02:00
Sebastian Dröge 9bcc1aa274 intervideo: Add support for arbitrary video formats 2014-10-22 19:31:31 +02:00
Sebastian Dröge 1363a244a0 inter: Truncate the caps as part of the fixating 2014-10-22 19:28:48 +02:00
Sebastian Dröge 04dbd095a1 interaudio: Fix timestamp, latency and period handling 2014-10-22 19:09:15 +02:00
Sebastian Dröge 8c5a8c76f6 interaudio: Use GST_DEBUG_OBJECT() instead of GST_DEBUG() 2014-10-22 19:09:15 +02:00
Sebastian Dröge 6f72e8ceab interaudio: Properly pass through caps from the sink to the source
Otherwise a magic capsfilter after the source is required with
exactly the same caps as the input.
2014-10-22 19:09:15 +02:00
Sebastian Dröge 211a39e55e inter: Clean up surfaces after the last user is gone 2014-10-22 19:09:15 +02:00
Sebastian Dröge f3ce87d1bd inter: Whitespace cleanup 2014-10-22 19:09:15 +02:00
Sebastian Dröge b7ed4e9355 intervideo: Properly pass through caps from the sink to the source
Otherwise a magic capsfilter after the source is required with
exactly the same caps as the input.

This would've failed before with invalid buffer sizes:
gst-launch-1.0 videotestsrc ! intervideosink  intervideosrc ! "video/x-raw,width=640,height=480" ! xvimagesink
2014-10-22 19:09:01 +02:00
Sebastian Rasmussen 8ee4e198cc inter: Unref bus after usage
gst_pipeline_get_bus() returns a reference to a bus that needs to
be unreferenced after usage.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734525
2014-08-11 10:02:44 +02:00