Commit graph

202 commits

Author SHA1 Message Date
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
Nirbheek Chauhan
7e2b68fe2f plugins: Use stdint.h instead of _stdint.h
_stdint.h is generated by Autotools and we don't really need it. All
supported platforms now ship with stdint.h. The only stickler was MSVC,
and since Visual Studio 2015 it also ships stdint.h now.
2016-08-19 14:42:52 +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
Luis de Bethencourt
ae96e6bd51 resindvd: remove commented out include
Commit 211828979b removed rsnaudiomunge,
no need for this commented out include for a file that doesn't exist
anymore.
2016-02-08 15:00:45 +00:00
Luis de Bethencourt
e4467618f4 Revert "resindvd: get rid of _stdint.h include"
This reverts commit 0eff6e1991.

Breaks the build when linking with dvdnav.h
2016-02-08 14:26:46 +00:00
Luis de Bethencourt
0eff6e1991 resindvd: get rid of _stdint.h include 2016-02-08 13:38:29 +00: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
Luis de Bethencourt
5a4c09f791 resindvd: use GST_STIME_FORMAT for GstClockTimeDiff
No need to use G_GINT64_FORMAT for potentially negative values of
GstClockTimeDiff. Since 1.6 these can be handled with GST_STIME_FORMAT.
Plus it creates more readable values in the logs.

https://bugzilla.gnome.org/show_bug.cgi?id=757480
2015-11-05 12:17:58 +00:00
Sebastian Dröge
458bafe9e3 resindvd: Port to new GLib mutex/cond API 2015-10-02 22:57:27 +03:00
Jan Schmidt
0e18ae586b resindvd: Send gap updates to the segment stop during stills
Ignore the normal gap threshold for laggy streams and
immediately catch all streams up to the end of the segment
when processing gap updates for a segment during a
still frame sequence.

https://bugzilla.gnome.org/show_bug.cgi?id=755680
2015-09-27 13:08:27 +10:00
Luis de Bethencourt
ecf8f97316 resindvd: remove unused value
The data variable is incremented but never read again. Remove the unused value
assignment.
2015-05-27 12:03:45 +01:00
Jan Schmidt
f150cf2d2e Remove a bunch of silly ';;' typos at the end of lines 2015-03-12 01:33:03 +11:00
Sebastian Dröge
1bd7b4566e rsninputselector: Fail the latency query if one of the upstream queries fails 2015-02-19 01:28:30 +02: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
Jan Schmidt
52166768ed resindvd: Don't send meaningless segment position downstream
Don't place a meaningless value in the position field in
outgoing segments - values have to be in the range start->stop.

https://bugzilla.gnome.org/show_bug.cgi?id=740558
2015-02-08 06:16:12 +11:00
Vincent Penquerc'h
612cdeec80 resindvd: avoid crashing in pathological case
When we'd see an unknown stream type, then a SDDS stream.
Then we'd get to the end of the switch with a NULL temp stream
pointer, and dereference it.

Coverity 1139708
2014-04-09 14:37:48 +01:00
Vincent Penquerc'h
db7934233f resindvd: guard against overflow in audio subtitle streams
Turns out there was the same issue as with subtitles.

There is space for a single audio stream, but up to 255
may be used based on a uint8_t value in a struct, which may
or may not be read from the (untrusted) data.
A comment in ifo_types.h says this value is either 0 or 1, so
we can ensure this here without drawbacks.

Coverity 1139585
2014-04-08 14:24:31 +01:00
Vincent Penquerc'h
380f95ea01 resindvd: guard against overflow in menu subtitle streams
There is space for a single subtitle stream, but up to 255
may be used based on a uint8_t value in a struct, which may
or may not be read from the (untrusted) data.
A comment in ifo_types.h says this value is either 0 or 1, so
we can ensure this here without drawbacks.

Coverity 1139586
2014-04-08 14:21:53 +01:00
Jan Schmidt
9d31536adf resindvd: Merge changes across from master mpegdemux
Merge various changes and fixes from the master mpegdemux
Performance improvement from the way streams are organised,
return flow combining, language tag event generation,
adjustments and fixes in debug output, and things like that.
2014-01-16 20:16:47 +11:00
Tim-Philipp Müller
078b82d6d1 resindvdsrc: fix minor memory leak when creating title info message 2014-01-15 11:52:09 +00:00
Jan Schmidt
d56d00cccd resindvd: Remove racy glib warning.
Sometimes, the pad probes can be called twice - for OOB events
travelling downstream. Clear out the pad block id, so it only
gets removed once.
2013-12-10 22:48:47 +11:00
Edward Hervey
97426a1caa all: Fix for GST_DISABLE_GST_DEBUG
Where applicable, remove methods that don't do anything different than
the default implementation.
2013-07-29 09:42:12 +02:00
Sebastian Dröge
b5e7ed0428 resindvd: Add support for group-id in the stream-start event 2013-07-23 10:33:31 +02:00
Sebastian Dröge
e56efddd4a resindvd: Send stream-start event before anything else on the mpeg demuxer srcpads 2013-07-22 09:19:06 +02:00
Sebastian Dröge
e51cd4fe2f gst: Add better support for static plugins 2013-04-15 15:59:22 +02:00
Tim-Philipp Müller
4c76427ba7 resindvd: handle non-utf8 dvd disc titles better
Maybe something based on the code in bug #688367
and the language encodings would work even better
though (now it will try things based on the locale).

https://bugzilla.gnome.org/show_bug.cgi?id=690097
2013-01-07 10:37:53 +00:00
Tim-Philipp Müller
caa9014bce resindvd, frei0r: link to libgmodule-2.0 in plugins that use g_module_* API
Probably needed for other plugins as well.
2012-11-30 20:01:16 +00:00
Tim-Philipp Müller
9e1b75fda3 Fix FSF address
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:09:59 +00:00
Tim-Philipp Müller
32ba17cd0f Use gst_element_class_set_static_metadata()
where possible. Avoids some string copies. Also re-indent
some stuff. Also some indent fixes here and there.
2012-10-17 17:46:34 +01:00
Jan Schmidt
6e4a9e2e24 resindvd: Remove caps lock from parsetter element.
All the members it used to protect in 0.10 are protected by
the stream lock now.
2012-10-02 22:20:20 +10:00
Jan Schmidt
6122e07795 resindvd: Update overridden caps when the DAR changes
Send a new caps event downstream when we receive new orders
from the VM, if there are existing caps.
2012-10-01 23:43:47 +10:00
Jan Schmidt
3054545dad resindvd: Port parsetter element
Port the DVD element which overrides the MPEG encoded pixel-aspect-ratio
to match that requested by the DVD VM.
2012-10-01 23:28:07 +10:00
Jan Schmidt
3c1a1dfec5 resindvd: Fiddle with segment handling for DVD.
Clarify some of the terms used, and make sure to extend the
stop time when the position moves past the end of the current
segment (as for still frames, for example).

Also, make sure to reset the position value of the segment the
demuxer outputs when collecting a seamless segment.
2012-09-30 04:08:50 +10:00
Jan Schmidt
34510b71ca resindvd: Don't send spurious 'close segment' events. Make a single segment
With the new 1.0 segment semantics, there's no need to close the
previous segment before sending out a new one, so don't do it.

Also, adjust the outgoing segment to just be one contiguous
timeline, with a base of 0. Fixes some repeating timestamps when
segments change.
2012-09-26 14:57:54 +10:00
Jan Schmidt
c90cdadbe4 resindvd: Fix segment handling in the demuxer.
Transfer the incoming segment base time to the src
segment the demuxer sends downstream. Add some
(disabled) debug to the bin for tracking outgoing
timestamps.
2012-09-18 00:27:22 +10:00
Mark Nauwelaerts
5fad6e86d7 use gst_element_factory_get_metadata to replace obsolete API 2012-09-15 19:13:47 +02:00
Mark Nauwelaerts
578861abea replace gst_element_class_set_details_simple with gst_element_class_set_metadata 2012-09-14 17:27:49 +02:00
Wim Taymans
b8f913555d ffmpegcolorspace is no more 2012-09-14 16:45:34 +02:00
Jan Schmidt
16f5120d96 resindvd: Start with a larger subpicture queue for preroll.
Shrink the queue once we're prerolled. Fixes the Fringe S1
DVD. Also, ensure we only fire no_more_pads once.
2012-09-12 23:05:47 -07:00
Jan Schmidt
c5e0bc6464 resindvd: Disable input-selector syncing
Until segments are better worked out. Also, use
internal input-selector for audio as well
2012-09-12 23:05:47 -07:00
Mark Nauwelaerts
b807753453 ext, gst: only activate in pull mode if upstream is seekable 2012-09-11 17:47:33 +02: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
f2d0c6a89e resindvd/mpegdemux: Send both PTS and DTS downstream
Now that we can.
2012-09-01 16:09:59 -07:00
Jan Schmidt
8f719fea02 resindvd: Plug a video parser in front of decoder
Seems to make playback both better and worse. The parser needs some
fixing, it seems :-/
2012-08-31 14:22:59 -07:00
Jan Schmidt
211828979b resindvd: Add some GAP event stuff to make still-frames start to work
And remove the dead audiomunge element. It isn't needed now, we just
send GAP events
2012-08-31 13:12:41 -07:00
Jan Schmidt
1218cff3dc resindvd: Initial partial port to 0.11 2012-08-31 12:46:29 -07: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
489b102a43 gst_tag_list_free -> gst_tag_list_unref 2012-08-04 16:31:30 +01:00
Vincent Penquerc'h
afba4ce869 resindvd: rename the lib from libresindvd to libgstresindvd
For consistency.
2012-06-14 15:33:29 +01:00
Vincent Penquerc'h
54f7ab5cf6 resindvd: guard against not finding some data on a DVD
May possibly help with a particular DVD.

https://bugzilla.gnome.org/show_bug.cgi?id=673118
2012-06-14 15:32:11 +01:00