Jan Schmidt [Fri, 9 Sep 2016 23:58:11 +0000 (09:58 +1000)]
Automatic update of common submodule
From f49c55e to b18d820
Thibault Saunier [Mon, 29 Aug 2016 14:08:16 +0000 (11:08 -0300)]
build: Do not link plugin against lzma and bz2 if using system install
And bump version to 1.9.2
Iain Lane [Fri, 2 Sep 2016 15:55:46 +0000 (16:55 +0100)]
Only use AV_CODEC_ID_WRAPPED_AVFRAME on new enough libavcodecs
https://bugzilla.gnome.org/show_bug.cgi?id=770753
Sebastian Dröge [Thu, 1 Sep 2016 09:31:21 +0000 (12:31 +0300)]
Back to development
Sebastian Dröge [Thu, 1 Sep 2016 09:31:10 +0000 (12:31 +0300)]
Release 1.9.2
Sebastian Dröge [Mon, 29 Aug 2016 14:03:18 +0000 (17:03 +0300)]
libav: Update to ffmpeg n3.1.3
Thibault Saunier [Mon, 29 Aug 2016 00:47:35 +0000 (21:47 -0300)]
Add support for Meson as alternative/parallel build system
https://github.com/mesonbuild/meson
We only support building with ffmpeg installed system wide and not as
subproject yet.
Thibault Saunier [Fri, 19 Aug 2016 18:13:44 +0000 (11:13 -0700)]
Use the new API to post flow ERROR messages on the bus
https://bugzilla.gnome.org/show_bug.cgi?id=770158
Josep Torra [Fri, 26 Aug 2016 19:46:18 +0000 (21:46 +0200)]
build: silence error about pthread for 'make check' in osx
Fixes "clang: error: argument unused during compilation: '-pthread'"
Tim-Philipp Müller [Sat, 20 Aug 2016 09:53:07 +0000 (10:53 +0100)]
libav: fix confusing 'insane framerate' debug log message
Usually means no framerate / variable framerate. Also the
fraction arguments were swapped.
Sebastian Dröge [Tue, 16 Aug 2016 18:11:35 +0000 (21:11 +0300)]
configure: Explicitly disable CrystalHD decoder
Otherwise it will pick it up when the system has the relevant headers,
and then linking produces an unusable plugin later as we don't ensure
that the plugin also links against the crystalhd library.
https://bugzilla.gnome.org/show_bug.cgi?id=769809
Sebastian Dröge [Tue, 16 Aug 2016 07:43:18 +0000 (10:43 +0300)]
libav: Update to ffmpeg n3.1.2
Edward Hervey [Thu, 4 Aug 2016 08:45:14 +0000 (10:45 +0200)]
avvidec: Ensure skipping strategy gets properly reset
When switching playback modes, like from TRICKMODE or TRICKMODE_KEY_UNITS
back to regular playback, we need to make sure we set the skip mode
back to the default setting.
While this field would be properly reset when we *have* feedback from
downstream (i.e. diff != G_MAXINT64), it would not be reset during
the initial phase (i.e. when the decoder hasn't pushed a buffer yet,
and therefore the sink hasn't sent back QoS information).
This avoids dropping plenty of frames when going back to regular playback
Sebastian Dröge [Tue, 26 Jul 2016 07:27:22 +0000 (10:27 +0300)]
libav: Update to n3.1.1
Sebastian Dröge [Fri, 22 Jul 2016 11:54:21 +0000 (14:54 +0300)]
libav: Ignore more quasi-codecs
Sebastian Dröge [Fri, 22 Jul 2016 11:42:59 +0000 (14:42 +0300)]
libav: Ignore VAAPI decoders and VAAPI/nvenc encoders
These can show up when having a build against a system version of ffmpeg.
Stefan Sauer [Mon, 11 Jul 2016 19:15:39 +0000 (21:15 +0200)]
Automatic update of common submodule
From f363b32 to f49c55e
Sebastian Dröge [Wed, 6 Jul 2016 10:51:12 +0000 (13:51 +0300)]
Back to development
Sebastian Dröge [Wed, 6 Jul 2016 10:26:10 +0000 (13:26 +0300)]
Release 1.9.1
Sebastian Dröge [Tue, 5 Jul 2016 17:16:45 +0000 (20:16 +0300)]
avaudenc: Use gst_caps_fixate() instead of gst_caps_truncate()
Just truncating might not be enough.
Sebastian Dröge [Tue, 5 Jul 2016 17:16:09 +0000 (20:16 +0300)]
avaudenc: Create caps from the codec context after it is opened
We won't get codec_data and various other information otherwise.
Sebastian Dröge [Tue, 5 Jul 2016 17:15:28 +0000 (20:15 +0300)]
avvidenc: Create caps from the codec context after it is opened
We won't get codec_data and various other information otherwise.
Sebastian Dröge [Fri, 1 Jul 2016 07:29:03 +0000 (09:29 +0200)]
libav: Disable various other hardware related codecs
Edward Hervey [Fri, 1 Jul 2016 07:25:14 +0000 (09:25 +0200)]
configure: Disable VAAPI support
We have native plugins (gst-vaapi) for that
Edward Hervey [Fri, 1 Jul 2016 07:16:41 +0000 (09:16 +0200)]
configure: Disable {audio|video}toolbox support (osx/ios)
We already have native plugins for those
Sebastian Dröge [Thu, 30 Jun 2016 21:22:17 +0000 (23:22 +0200)]
libav: Update to ffmpeg n3.1
Nicolas Dufresne [Tue, 21 Jun 2016 15:48:33 +0000 (11:48 -0400)]
Automatic update of common submodule
From ac2f647 to f363b32
Tim-Philipp Müller [Tue, 31 May 2016 19:29:32 +0000 (20:29 +0100)]
tests: use AM_TESTS_ENVIRONMENT
Needed by new automake test runner.
Sebastian Dröge [Sun, 15 May 2016 10:34:11 +0000 (13:34 +0300)]
docs: Update for git master
Edward Hervey [Sat, 14 May 2016 10:09:06 +0000 (12:09 +0200)]
avvidec: Don't set bogus latency
We might have cases where the framerate is not known (0/1).
Edward Hervey [Thu, 12 May 2016 09:09:13 +0000 (11:09 +0200)]
avvidec: Report the latency once we're fully configured
Several decoders will only be able to report a real latency (has_b_frames)
once they're actually initialized (i.e. when they return their first frame).
Doing it earlier (in set_format) doesn't guarantee that the AVCodecContext
has_b_frames has been properly initialized.
https://bugzilla.gnome.org/show_bug.cgi?id=766362
Sebastian Dröge [Fri, 13 May 2016 07:27:38 +0000 (10:27 +0300)]
avcodecmap: Add mapping for G729 caps
https://bugzilla.gnome.org/show_bug.cgi?id=766333
Sebastian Dröge [Tue, 3 May 2016 16:04:06 +0000 (19:04 +0300)]
libav: Update to ffmpeg n3.0.2
Sebastian Dröge [Fri, 29 Apr 2016 10:06:07 +0000 (13:06 +0300)]
avauddec: Finish frames if they are header buffers only and don't produce any output
Otherwise we will consider them as one frame of raw audio that is still
pending, and shift all timestamps by the amount of time spent with header
buffers.
https://bugzilla.gnome.org/show_bug.cgi?id=765797
Sebastian Dröge [Fri, 29 Apr 2016 09:55:19 +0000 (12:55 +0300)]
avauddec: If decoding a frame failed, skip it
Otherwise the next successfully decoded frame will get its timestamp and we
will slowly let a/v sync drift apart.
https://bugzilla.gnome.org/show_bug.cgi?id=765797
Sebastian Dröge [Thu, 28 Apr 2016 15:43:37 +0000 (18:43 +0300)]
avaudenc: Set all required fields in the AVFrame
Various functions in libavcodec need them, like the format, sample rate, etc.
and just having them in the context is not enough.
This fixes draining for codecs like MP2 that require a fixed frame size and
require libav to pad the last frame if required.
Sebastian Dröge [Mon, 25 Apr 2016 15:39:54 +0000 (18:39 +0300)]
avcfg: Use av_strdup() instead of g_strdup() for strings owned by ffmpeg
It has its own allocator that depending on the configuration is incompatible
with GLib's and just causes a segmentation fault. Like on Windows.
https://bugzilla.gnome.org/show_bug.cgi?id=760266
Sebastian Dröge [Wed, 20 Apr 2016 12:27:45 +0000 (15:27 +0300)]
avdeinterlace: Register all filters and only disable all except for yadif during compilation
Otherwise avdeinterlace won't find any filters, and we only use yadif in
there.
https://bugzilla.gnome.org/show_bug.cgi?id=765319
Sebastian Dröge [Fri, 15 Apr 2016 09:51:07 +0000 (12:51 +0300)]
libav: Update to n3.0.1
Julien Isorce [Thu, 14 Apr 2016 09:04:23 +0000 (10:04 +0100)]
Automatic update of common submodule
From 6f2d209 to ac2f647
Víctor Manuel Jáquez Leal [Thu, 24 Mar 2016 17:31:27 +0000 (18:31 +0100)]
avvid{dec,enc}: remove dead gobject macros
The GObject macros either for GstFFMpegVidDec and GstFFMpegVidEnc can
break the compilation because they are not GTypes, since each av video
elements are registered in runtime.
https://bugzilla.gnome.org/show_bug.cgi?id=764162
Vineeth TM [Fri, 4 Mar 2016 07:42:03 +0000 (16:42 +0900)]
libav: use new gst_element_class_add_static_pad_template()
https://bugzilla.gnome.org/show_bug.cgi?id=763084
Sebastian Dröge [Thu, 24 Mar 2016 11:33:33 +0000 (13:33 +0200)]
Back to development
Sebastian Dröge [Thu, 24 Mar 2016 10:55:15 +0000 (12:55 +0200)]
Release 1.8.0
Egor Zaharov [Sun, 20 Mar 2016 13:43:00 +0000 (13:43 +0000)]
configure: Restore CPPFLAGS after the last check
The next checks can also set CPPFLAGS.
https://bugzilla.gnome.org/show_bug.cgi?id=763940
Sebastian Dröge [Tue, 15 Mar 2016 10:23:48 +0000 (12:23 +0200)]
Release 1.7.91
Sebastian Dröge [Fri, 11 Mar 2016 13:44:16 +0000 (15:44 +0200)]
avcodecmap: Only set the bitrate if we actually got it from the caps
Otherwise we set a random value from the stack as bitrate. The default (0)
is a better choice and doesn't upset valgrind.
Sebastian Dröge [Tue, 1 Mar 2016 16:51:22 +0000 (18:51 +0200)]
Release 1.7.90
Sebastian Dröge [Fri, 26 Feb 2016 10:42:36 +0000 (12:42 +0200)]
Automatic update of common submodule
From b64f03f to 6f2d209
Sebastian Dröge [Tue, 23 Feb 2016 16:19:18 +0000 (18:19 +0200)]
avdeinterlace: Don't assume that get_current_caps() returns non-NULL caps after has_current_caps()
Remove calls to gst_pad_has_current_caps() which then go on to call
gst_pad_get_current_caps() as the caps can go to NULL in between. Instead just
use gst_pad_get_current_caps() and check for NULL.
https://bugzilla.gnome.org/show_bug.cgi?id=759539
Tim-Philipp Müller [Sun, 21 Feb 2016 10:40:02 +0000 (10:40 +0000)]
win32: remove outdated build cruft
This hasn't been touched for generations, doesn't work,
and is just causing confusion. We also don't want to
maintain these files manually.
Tim-Philipp Müller [Sat, 20 Feb 2016 12:59:38 +0000 (12:59 +0000)]
Don't use exported but undeclared core debug category symbols
It's not right and won't work on Windows with MSVC.
Sebastian Dröge [Fri, 19 Feb 2016 10:38:37 +0000 (12:38 +0200)]
Back to development
Sebastian Dröge [Fri, 19 Feb 2016 10:00:24 +0000 (12:00 +0200)]
Release 1.7.2
Edward Hervey [Tue, 16 Feb 2016 15:32:38 +0000 (16:32 +0100)]
avcfg: rc-min-rate and rc-max-rate are now 64bit integers
Switch the gobject properties and internal handling to support that
Sebastian Dröge [Tue, 16 Feb 2016 07:11:08 +0000 (09:11 +0200)]
avvidenc: Set width/height and format in the AVFrame we pass to the encoder API
Sebastian Dröge [Tue, 16 Feb 2016 07:02:21 +0000 (09:02 +0200)]
docs: Update docs to not have unstaged changes after build again
There are some new codec IDs that we probably would like to map too, e.g.
Dirac/VC2 and Cineform HD.
Sebastian Dröge [Mon, 15 Feb 2016 15:06:05 +0000 (17:06 +0200)]
libav: Update to n3.0
Thiago Santos [Fri, 5 Feb 2016 21:10:53 +0000 (18:10 -0300)]
Automatic update of common submodule
From 86e4663 to b64f03f
Sebastian Dröge [Mon, 25 Jan 2016 19:13:10 +0000 (20:13 +0100)]
avaudenc: Also use av_free() instead of g_free()
Sebastian Dröge [Mon, 25 Jan 2016 19:08:11 +0000 (20:08 +0100)]
avaudenc: Use av_malloc() instead of GLib malloc() wrappers for memory freed by ffmpeg
It has its own allocator that is not necessarily doing the same as malloc and
will then usually crash. E.g. on Windows or when memalign() is available.
Edward Hervey [Thu, 21 Jan 2016 16:35:51 +0000 (17:35 +0100)]
avvidec: Bring mpeg video decoders up to PRIMARY rank
We should have done that ages ago ...
https://bugzilla.gnome.org/show_bug.cgi?id=574461
Sebastian Dröge [Thu, 21 Jan 2016 09:41:45 +0000 (11:41 +0200)]
libav: Ensure to link with -lavfilter
Sebastian Dröge [Wed, 20 Jan 2016 08:31:40 +0000 (10:31 +0200)]
avviddec: Use AVFrame API instead of deprecated AVPicture API
Sebastian Dröge [Tue, 19 Jan 2016 07:42:47 +0000 (09:42 +0200)]
av: Use av_image_get_buffer_size() instead of deprecated avpicture_get_size()
Sebastian Dröge [Tue, 19 Jan 2016 07:39:00 +0000 (09:39 +0200)]
avdemux: Use av_packet_unref() instead of deprecated av_free_packet()
Sebastian Dröge [Tue, 19 Jan 2016 07:36:01 +0000 (09:36 +0200)]
avvidenc: Use AVPacket.flags for detecting keyframes
AVCodec.coded_frame is deprecated and will disappear at some point
in the future.
Sebastian Dröge [Sat, 16 Jan 2016 14:43:16 +0000 (16:43 +0200)]
avdeinterlace: Chain up to parent class' dispose()
https://bugzilla.gnome.org/show_bug.cgi?id=757498
Sebastian Dröge [Sat, 16 Jan 2016 14:40:52 +0000 (16:40 +0200)]
libav: Bitrate field changed from int to int64_t, fix compiler warnings
Cast it to a gint64 for now though, as otherwise we will fail compilation
with ffmpeg 2.8.
https://bugzilla.gnome.org/show_bug.cgi?id=757498
Andreas Cadhalpun [Wed, 4 Nov 2015 20:18:56 +0000 (21:18 +0100)]
libav: Remove usage of deprecated API
https://bugzilla.gnome.org/show_bug.cgi?id=757498
Andreas Cadhalpun [Wed, 4 Nov 2015 20:16:18 +0000 (21:16 +0100)]
avdeinterlace: Port non-deprecated AVFilter API
https://bugzilla.gnome.org/show_bug.cgi?id=757498
Sebastian Dröge [Sat, 16 Jan 2016 10:09:31 +0000 (11:09 +0100)]
libav: Update to ffmpeg n2.8.5
Tim-Philipp Müller [Thu, 7 Jan 2016 17:13:29 +0000 (17:13 +0000)]
av: canonicalise av plugin name more consistently in more places
Use g_strdelimit(), make sure to include comma as well, which
isn't included in G_STR_DELIMITERS.
https://bugzilla.gnome.org/show_bug.cgi?id=734451
Sebastian Dröge [Thu, 24 Dec 2015 14:29:11 +0000 (15:29 +0100)]
Back to development
Sebastian Dröge [Thu, 24 Dec 2015 13:49:39 +0000 (14:49 +0100)]
Release 1.7.1
Sebastian Dröge [Thu, 24 Dec 2015 12:06:13 +0000 (13:06 +0100)]
avcodecmap: Add special mapping for mono channel layouts
In ffmpeg this is the same as FRONT_CENTER, but we distinguish between
FRONT_CENTER and MONO in GStreamer. Add an explicit mapping for this special
case in the translations functions.
https://bugzilla.gnome.org/show_bug.cgi?id=759846
Vineeth TM [Fri, 27 Nov 2015 02:16:07 +0000 (11:16 +0900)]
avviddec: remove realvideo slice_offset handling
Handling slice_offset in avviddec is resulting in invalid memory read.
Since rv decoders anyways handle slice_offset, removing the same to fix
memory mishandlings
https://bugzilla.gnome.org/show_bug.cgi?id=758726
Sebastian Dröge [Mon, 21 Dec 2015 11:41:02 +0000 (12:41 +0100)]
libav: Update to ffmpeg n2.8.4
Sebastian Dröge [Mon, 21 Dec 2015 11:34:11 +0000 (12:34 +0100)]
configure: Use -Bsymbolic-functions if available
While this is more useful for libraries, some of our plugins with multiple
files and some internal API can also benefit from this.
Sebastian Dröge [Wed, 16 Dec 2015 08:36:25 +0000 (09:36 +0100)]
docs: update to git
Nicolas Dufresne [Mon, 7 Dec 2015 14:11:30 +0000 (09:11 -0500)]
Automatic update of common submodule
From b319909 to 86e4663
Reynaldo H. Verdejo Pinochet [Wed, 2 Dec 2015 20:27:08 +0000 (12:27 -0800)]
Require libav provided by FFmpeg at run-time
Error out if system's libav* libraries are not
provided by FFmpeg. Libav-incompatible changes
were introduced to support the latter so we
can no longer support both.
https://bugzilla.gnome.org/show_bug.cgi?id=758183
Reynaldo H. Verdejo Pinochet [Tue, 24 Nov 2015 07:45:38 +0000 (23:45 -0800)]
Require libav provided by FFmpeg at build-time
Libav-incompatible changes were introduced to support
FFmpeg and we can no longer properly support Libav.
FFmpeg micro versions for libav* start at 100 (this was
done to differentiate from Libav builds). We use this
to bail at configure time if the system libav* libraries
are not provided by FFmpeg.
https://bugzilla.gnome.org/show_bug.cgi?id=758183
Sebastian Dröge [Tue, 1 Dec 2015 13:12:22 +0000 (15:12 +0200)]
libav: Update to n2.8.3
Sebastian Dröge [Mon, 30 Nov 2015 17:01:41 +0000 (19:01 +0200)]
avviddec: Make sure to use a buffer pool with the correct width/height configured on it for pushing buffers downstream
If downstream does not provide a (usable) pool, we would use our internal
pool. But the internal pool might be configured with a different width/height
because of padding, which then will cause problems if we push buffers from it
directly downstream.
Instead create a new pool if the width/height is different.
This prevents crashes with vaapisink and d3dvideosink for example.
Based on the debugging results and discussions with
Nicolas Dufresne <nicolas.dufresne@collabora.com>
https://bugzilla.gnome.org/show_bug.cgi?id=758344
Vineeth T M [Mon, 23 Nov 2015 01:31:39 +0000 (10:31 +0900)]
avviddec: Fix structure memory leak
gst_structure_copy already takes a reference for config_copy.
No need to take another reference while setting it to buffer pool
https://bugzilla.gnome.org/show_bug.cgi?id=758512
Reynaldo H. Verdejo Pinochet [Fri, 20 Nov 2015 18:48:47 +0000 (10:48 -0800)]
Remove unnecessary NULL checks before g_free()
g_free() is NULL-safe
(Includes unrelated formatting change to go through
indent checker commit hook)
Sebastian Dröge [Thu, 12 Nov 2015 09:44:25 +0000 (10:44 +0100)]
libav: Update to n2.8.2
Nicolas Dufresne [Sat, 7 Nov 2015 17:11:57 +0000 (12:11 -0500)]
avviddec: Don't fallback on allocation failure
Allocation should keep working, falling back causes the stride to
change which is not supported in direct rendering.
https://bugzilla.gnome.org/show_bug.cgi?id=756028
Vineeth TM [Mon, 2 Nov 2015 01:00:55 +0000 (10:00 +0900)]
avvidenc: Fix frame memory leak
The frame being passed to handle_frame should be unref'ed in all cases
https://bugzilla.gnome.org/show_bug.cgi?id=757453
Vineeth TM [Mon, 2 Nov 2015 01:20:02 +0000 (10:20 +0900)]
avdemux: Fix string memory leaks
https://bugzilla.gnome.org/show_bug.cgi?id=757454
Mark Nauwelaerts [Mon, 26 Oct 2015 18:54:10 +0000 (19:54 +0100)]
avviddec: _drain and _finish need slightly different handling
... since they handle separate cases in video decoder with different requirements.
Consider e.g. x264enc ! rtph264pay ! identity drop-probability=0.1 ! rtph264depay
to illustrate a need for such separation.
Tim-Philipp Müller [Wed, 21 Oct 2015 13:37:05 +0000 (14:37 +0100)]
Automatic update of common submodule
From b99800a to b319909
Sebastian Dröge [Tue, 20 Oct 2015 14:29:42 +0000 (17:29 +0300)]
Use new GST_ENABLE_EXTRA_CHECKS #define
https://bugzilla.gnome.org/show_bug.cgi?id=756870
Sebastian Dröge [Wed, 21 Oct 2015 11:28:34 +0000 (14:28 +0300)]
Automatic update of common submodule
From 9aed1d7 to b99800a
Sebastian Dröge [Fri, 16 Oct 2015 15:52:57 +0000 (18:52 +0300)]
avviddec: Fix bufferpool config double free by taking a copy as needed
Also free the config in two code paths where we leaked it before.
Sebastian Dröge [Wed, 14 Oct 2015 07:18:01 +0000 (10:18 +0300)]
libav: Update to n2.8.1
Thiago Santos [Sat, 10 Oct 2015 00:22:12 +0000 (21:22 -0300)]
avcodecmap: add jpeg2000 decoder mapping
Map the 3 possible jpeg2000 caps to JPEG2000 codec id
Sebastian Dröge [Sat, 3 Oct 2015 17:25:35 +0000 (18:25 +0100)]
avcodecmap: Don't allocate dummy codec data anymore, it causes crashes nowadays
Multithreaded encoders are going to free this dummy codec data twice, e.g.
with this pipeline
gst-launch-1.0 videotestsrc num-buffers=40 ! \
videoconvert ! avenc_mjpeg ! fakesink
Sebastian Dröge [Sat, 3 Oct 2015 17:14:05 +0000 (18:14 +0100)]
avvidenc: Pass the correct user_data to gst_buffer_new_wrapped_full()
Fixes crash with e.g.
gst-launch-1.0 videotestsrc num-buffers=40 ! \
videoconvert ! avenc_huffyuv ! fakesink