Thiago Santos
fa29036836
avvidenc: use template subset check for accept-caps
...
It is faster than doing a query that propagates downstream and
should be enough
2015-08-17 04:36:39 -03:00
Thiago Santos
ad215706ec
avaudenc: use pad template caps for accept-caps
...
use template subset check for accept-caps
It is faster than doing a query that propagates downstream and
should be enough
2015-08-17 04:35:41 -03:00
Thiago Santos
15ef18c3e1
avaudenc: remove useless getcaps method
...
It just calls the exact same function as the default handler
2015-08-16 14:14:27 -03:00
Thiago Santos
427db7f484
avvidenc: remove useless getcaps method
...
It just calls the exact same function as the default handler
2015-08-16 14:13:05 -03:00
Thiago Santos
5c56635e97
avauddec: let audiodecoder call the default pad query handler
...
Avoids repeating the same handling in many decoders
2015-08-15 13:51:35 -03:00
Thiago Santos
8cc2e1a76b
avviddec: let videodecoder call the default pad query handler
...
Avoids repeating the same handling in many decoders
2015-08-15 13:51:35 -03:00
Sebastian Dröge
83458d4769
libav: Update to n2.7.2
2015-08-15 12:51:19 +02:00
Thiago Santos
1a098de5eb
avviddec: use template caps intersection for accept-caps
...
Avoid doing downstream caps queries when accept-caps should just
do a shallow caps check on the element itself
https://bugzilla.gnome.org/show_bug.cgi?id=753623
2015-08-14 09:14:11 -03:00
Thiago Santos
2b387ba827
avauddec: use template caps intersection for accept-caps
...
Avoid doing downstream caps queries when accept-caps should just
do a shallow caps check on the element itself
https://bugzilla.gnome.org/show_bug.cgi?id=753623
2015-08-14 09:14:11 -03:00
Jan Schmidt
51896af52b
Map ffmpeg metadata to GStreamer tags
...
Update to the metadata API ffmpeg has had in
place for a long time now, and reenable output
of GStreamer tags from the demuxer.
https://bugzilla.gnome.org/show_bug.cgi?id=566605
2015-08-05 16:53:28 -04:00
Olivier Crête
c1333df059
avviddec: Remove unused force parameter
...
This parameter has been always false for a long time.
2015-08-03 21:45:07 -04:00
Olivier Crête
1c70fb229a
avviddec: Use caps-like size in get_buffer2()
...
The size in the AVFrame in get_buffer2 don't match the output size,
instead they match ffmpeg's memory requirements, so we can't compare
them from the values of the output AVFrame. Those are comparable to
the values in the passed AVCodecContext.
2015-08-03 21:40:12 -04:00
Olivier Crête
e7ece560d6
avviddec: Reset current_dr on close and when not chosing it
...
https://bugzilla.gnome.org/show_bug.cgi?id=753189
2015-08-03 21:03:05 -04:00
Olivier Crête
0a0ee42752
avviddec: Disable direct rendering before a frame has been produces
...
ffmpeg doesn't provide the final's image width & height in the get_buffer2()
callback, so it's not possible to create an output state for GstVideoDecoder
at this stage. So only try to do direct rendering if the buffer pool has already
been negotiated based on the final decoded size.
This partially reverts the effects of 2e621f8db
https://bugzilla.gnome.org/show_bug.cgi?id=752802
2015-07-28 16:16:10 -04:00
Sebastian Dröge
70443730a5
Revert "For static builds, add the ffmpeg library directories to the linker flags"
...
This reverts commit ac3437153d
.
Doesn't actually make sense as it will put the (uninstalled) library paths
into the installed .la files. How does this all work?
2015-07-28 11:19:52 +03:00
Sebastian Dröge
ac3437153d
For static builds, add the ffmpeg library directories to the linker flags
2015-07-28 11:03:14 +03:00
Olivier Crête
1a127d19bb
avviddec: Get code out of loop
...
Code was executed only on the first iteration, so just pull it out
of the loop entirely. This makes it clear it has nothing to do with the loop.
2015-07-27 18:49:49 -04:00
Olivier Crête
431f3e0e6f
avviddec: Only create the AVBuffer once the stride is validated
...
If it is created earlier and the stride is invalid, then the frame
will be freed and it won't be possible to use it in the fallback path.
Not doing this causes a segfault because it will try to use
already freed memory.
2015-07-27 18:46:17 -04:00
Olivier Crête
2e621f8dbf
avviddec: Re-enable direct rendering
2015-07-27 15:29:49 -04:00
Olivier Crete
3b6c656e25
avauddec: Read channels from the channels field
...
If there is no layout, just read the channel count from the
channels field.
https://bugzilla.gnome.org/show_bug.cgi?id=752186
2015-07-27 14:18:32 -04:00
Olivier Crête
6bfe79d903
avviddec: Ignore negotiation error on shutdown
...
https://bugzilla.gnome.org/show_bug.cgi?id=752800
2015-07-27 13:58:43 -04:00
Olivier Crête
7afaf5c020
avauddec: Access field using accessors
...
Those fields are documented to only be safe to access using
accessors as their position is not part of the ABI.
2015-07-25 03:06:10 -04:00
James Smith
f92bf2618c
Add support for musepack (mpc) sv8 audio
...
https://bugzilla.gnome.org/show_bug.cgi?id=732682
2015-07-22 09:44:27 +01:00
Vineeth T M
7d3c7109ac
avviddec: fix slice_offset memory leak
...
In case of real videos, slice_offset is being allocated,
but the same is not being freed.
https://bugzilla.gnome.org/show_bug.cgi?id=752404
2015-07-21 11:20:07 +01:00
Tim-Philipp Müller
aeef28ad4a
Update mailing list in doap file
2015-07-16 17:24:48 +01:00
Sebastian Dröge
f50760277d
Disable iconv support to fix Windows build
...
It's needed only for subtitle charset conversion, and we don't
use the ffmpeg subtitle support anyway.
Also disable d3d11va and dxva2 support, we don't use the hardware
codec support.
2015-07-07 17:52:49 +03:00
Stefan Sauer
75495beab5
Automatic update of common submodule
...
From f74b2df to 9aed1d7
2015-07-03 21:59:42 +02:00
Heinrich Fink
0166671181
Fix OSX build: Explicitly disable VDA h264 decoder
...
VideoDecodeAcceleration framework is deprecated in 10.11, and currently
cuases linker errors when compiling on OSX. Oddly, --disable-hwaccels
did not also disable h264_vda already.
https://bugzilla.gnome.org/show_bug.cgi?id=751838
2015-07-03 10:11:48 +02:00
Sebastian Dröge
5d2e9b7b80
Make the LGPL build the default and require --enable-gpl to build a GPL licensed version
2015-07-01 22:40:02 +02:00
Sebastian Dröge
b526816cfe
avmux: Blacklist some subtitle and adaptive streaming muxers
2015-07-01 22:11:52 +02:00
Sebastian Dröge
97f58baecd
Switch from libav v11.4 to ffmpeg n2.7.1
...
ffmpeg seems to be the one of the two forks, which is most widely used by
Linux distributions and in general. Also Google is using it for e.g. Chrome
and has engineers working on finding and fixing security issues in it.
https://bugzilla.gnome.org/show_bug.cgi?id=751607
2015-07-01 21:40:00 +02:00
Sebastian Dröge
1dcdeb977c
avaudenc: Remember how many samples the codec consumed for telling the base class
2015-06-30 20:01:46 +02:00
Thomas Bluemel
30a4a28793
avauddec: Ensure input buffers have FF_INPUT_BUFFER_PADDING_SIZE padding, which is required by avcodec_decode_audio4 ()
2015-06-30 19:19:42 +02:00
Sebastian Dröge
626152dd6f
avmux: Ignore stream_segment,ssegment muxer that is provided by ffmpeg
...
The comma confuses our code, e.g. it's not a valid element name or structure
name.
2015-06-29 13:29:05 +02:00
Sebastian Dröge
8271b2755a
avvidenc: Fix compiler warning
...
gstavvidenc.c: In function 'gst_ffmpegvidenc_flush_buffers':
gstavvidenc.c:733:7: error: ISO C90 forbids mixed declarations and code [-Werror=declaration-after-statement]
GstFFMpegVidEncClass *oclass =
^
cc1: all warnings being treated as errors
2015-06-28 16:54:35 +02:00
Sebastian Dröge
e964dcdb02
avvidenc: Set AVFrame flags for interlacing per frame and not in set_format()
...
They will get overridden by av_frame_unref() with the defaults.
2015-06-28 16:35:46 +02:00
Sebastian Dröge
45ab256e54
av{aud,vid}enc: Create wrapped output buffers with GST_MEMORY_FLAG_READONLY
...
libav might still have references to the buffers itself and uses a writability
system similar to ours based on reference counts.
2015-06-28 16:32:02 +02:00
Sebastian Dröge
6998d982c7
avvidenc: Properly wrap and free the output AVPackets generated during draining
2015-06-28 16:30:54 +02:00
Sebastian Dröge
3943cdf18a
avvidenc: Make sure to keep input data alive until libav is done with it
2015-06-28 16:27:52 +02:00
Sebastian Dröge
3ca7c041b1
avaudenc: Make sure to keep input data alive until libav is done with it
2015-06-28 16:21:33 +02:00
Sebastian Dröge
d6b5fc4f34
av{aud,vid}enc: Stop using deprecated AVFrame APIs
2015-06-28 15:37:23 +02:00
Sebastian Dröge
2a445cb5f2
avauddec: Remove custom buffer allocation function
...
libav always uses planar audio formats nowadays, not much use in
us trying to allocate anything here until we add support for planar
aka non-interleaved audio formats at least in audioconvert.
2015-06-28 12:41:55 +02:00
Sebastian Dröge
4240ff2bfc
avauddec: Use undeprecated AVFrame API
2015-06-28 12:41:55 +02:00
Sebastian Dröge
3d9816ce7f
avviddec: Free frame before the codec is freed
...
Who knows, maybe freeing the frame calls cleanup inside the codec.
2015-06-28 12:41:55 +02:00
Sebastian Dröge
982f5262d4
avviddec: Use undeprecated AVFrame API and unref frame once we're done with it
2015-06-28 12:41:55 +02:00
Sebastian Dröge
0767bdda5f
avauddec: Negotiate based on the AVFrame instead of just the AVCodecContext
2015-06-28 12:41:55 +02:00
Sebastian Dröge
523ddb5346
avviddec: Use the new get_buffer2() API instead of the deprecated APIs
...
And do the frame reference counting by adding AVBufferRefs to the frame.
2015-06-28 12:41:55 +02:00
Sebastian Dröge
ad7613be0d
avviddec: Also proxy the data/size pointers for our wrapper AVBufferRef
2015-06-28 12:41:55 +02:00
Wim Taymans
8da0a61dc0
codecmap: add vp9 mapping
2015-06-26 17:30:25 +02:00
Sebastian Dröge
8cb8461f7e
avviddec: Wrap the original AVBufferRef in our own buffer for the destroy function
...
Just adding a dummy buffer at the very end might not be enough as there
already might be too many buffers.
2015-06-26 16:58:55 +02:00