Commit Graph

1127 Commits

Author SHA1 Message Date
Derek Buitenhuis
28abb216cb Merge commit '551c6775abb5e0ad34c26d7e23bc6fbbe8ccc9d4'
* commit '551c6775abb5e0ad34c26d7e23bc6fbbe8ccc9d4':
  lavu: VAAPI hwcontext implementation

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-14 13:49:55 +01:00
Derek Buitenhuis
afccfaf26a Merge commit 'b1f01e85a92d401a9b29c79f23db36b7685e8c09'
* commit 'b1f01e85a92d401a9b29c79f23db36b7685e8c09':
  lavu: add a way to query hwcontext frame constraints

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-14 13:33:37 +01:00
Derek Buitenhuis
6586f62d1a Merge commit '3e8fd93b6ab219221e17fa2b6243cc72cf2d69dc'
* commit '3e8fd93b6ab219221e17fa2b6243cc72cf2d69dc':
  lavf: add a missing bump and APIchanges for the codecpar switch

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-11 15:09:00 +01:00
Stefano Sabatini
e8a9b64410 lavu/base64: add AV_BASE64_DECODE_SIZE() macro
This is consistent with the AV_BASE64_SIZE macro and avoids the literal
use of constants in the code.
2016-04-02 12:48:21 +02:00
Derek Buitenhuis
e6053b3b19 Merge commit 'a8068346e48e123f8d3bdf4d64464d81e53e5fc7'
* commit 'a8068346e48e123f8d3bdf4d64464d81e53e5fc7':
  lavc: add a variant of av_get_audio_frame_duration working with AVCodecParameters

Fixes from jamrial incorporated.

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-03-31 21:20:02 +01:00
Derek Buitenhuis
f9b1cf15c2 Merge commit '998e1b8f521b73e1ed3a13caaabcf79eb401cf0d'
* commit '998e1b8f521b73e1ed3a13caaabcf79eb401cf0d':
  lavc: add codec parameters API

  Fixes added in:
    - bit_rate has been made int64_t to match.
    - profile and level are properly initialize.

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-03-31 21:19:03 +01:00
Mark Thompson
551c6775ab lavu: VAAPI hwcontext implementation
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-03-19 15:40:22 +01:00
Mark Thompson
d264c720f7 lavu: deprecate AV_PIX_FMT_VAAPI_*, replace with AV_PIX_FMT_VAAPI
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-03-19 15:40:22 +01:00
Mark Thompson
b1f01e85a9 lavu: add a way to query hwcontext frame constraints
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2016-03-19 15:38:00 +01:00
Ronald S. Bultje
6d8ab358a3 lavf: allow BSFs to drop packets.
If pkt->size == 0 && pkt->side_data_elems == 0 after bsf->filter()
returns, the packet is considered dropped.
2016-03-11 11:19:10 -05:00
Derek Buitenhuis
93629735d7 avformat: Add a protocol blacklisting API
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-03-04 16:13:42 +00:00
Reimar Döffinger
4dd4d53531 Document and validate AVFrame plane pointers.
Check that the required plane pointers and only
those are set up.
Currently does not enforce anything for the palette
pointer of pseudopal formats as I am unsure about the
requirements.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2016-02-28 13:33:14 +01:00
Clément Bœsch
30e7685360 lavc/options: add ass_ro_flush_noop to flags2 2016-02-26 21:53:32 +01:00
Clément Bœsch
2941282124 lavc: allow subtitle text format to be ASS without timing 2016-02-26 21:49:34 +01:00
Anton Khirnov
3e8fd93b6a lavf: add a missing bump and APIchanges for the codecpar switch 2016-02-26 09:14:13 +01:00
Anton Khirnov
dc4983d78a APIchanges: add missing hashes and dates
Also, remove a stray line (apparently fallout from conflict resolution).
2016-02-26 09:14:13 +01:00
Derek Buitenhuis
7e49cdd129 Merge commit '7b3214d0050613bd347a2e41c9f78ffb766da25e'
* commit '7b3214d0050613bd347a2e41c9f78ffb766da25e':
  lavc: add a field for passing AVHWFramesContext to encoders

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-24 17:05:11 +00:00
Derek Buitenhuis
10424024a1 Merge commit 'b3dd30db0b2d857147fc0e1461a00bd6172a26a3'
* commit 'b3dd30db0b2d857147fc0e1461a00bd6172a26a3':
  lavfi: pass the hw frames context through the filter chain

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-24 16:03:57 +00:00
Derek Buitenhuis
6992276aca Merge commit 'ad884d100259e55cb51a4239cd8a4fd5154c2073'
* commit 'ad884d100259e55cb51a4239cd8a4fd5154c2073':
  hwcontext: add a CUDA implementation

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-24 15:23:16 +00:00
Derek Buitenhuis
63c3e35332 Merge commit '7bc780cd4413f688d3b834037b0f9ddfd6948140'
* commit '7bc780cd4413f688d3b834037b0f9ddfd6948140':
  pixfmt: add a CUDA hwaccelled format

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-24 15:11:06 +00:00
Stefano Sabatini
14f7a3d55a lavc/lavf: transmit stream_id information for mpegts KLV data packets
This allows to copy information related to the stream ID from the demuxer
to the muxer, thus allowing for example to retain information related to
synchronous and asynchronous KLV data packets. This information is used
in the muxer when remuxing to distinguish the two kind of packets (if the
information is lacking, data packets are considered synchronous).

The fate reference changes are due to the use of
av_packet_merge_side_data(), which increases the size of the output
packet size, since side data is merged into the packet data.
2016-02-23 18:44:12 +01:00
Anton Khirnov
a8068346e4 lavc: add a variant of av_get_audio_frame_duration working with AVCodecParameters 2016-02-23 17:01:58 +01:00
Anton Khirnov
998e1b8f52 lavc: add codec parameters API
This API is intended to allow passing around codec parameters without
using full AVCodecContext (which also contains codec options and
encoder/decoder state).
2016-02-23 17:01:58 +01:00
Anton Khirnov
ec4c483976 lavf: add a protocol whitelist/blacklist for file opened internally
Should make the default behaviour safer for careless callers that open
random untrusted files.

Bug-Id: CVE-2016-1897
Bug-Id: CVE-2016-1898
2016-02-22 11:48:30 +01:00
Paul B Mahol
08acab85d3 avfilter: add loop filters
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-02-18 11:55:00 +01:00
Derek Buitenhuis
d779d8d771 Merge commit 'a001ce31bc2bcf875a39b5fb22dae49120293b42'
* commit 'a001ce31bc2bcf875a39b5fb22dae49120293b42':
  hwcontext: add a VDPAU implementation

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-17 16:16:34 +00:00
Derek Buitenhuis
1a708780f3 Merge commit '89923e418b494e337683442ab896d754bc07341a'
* commit '89923e418b494e337683442ab896d754bc07341a':
  lavu: add a framework for handling hwaccel frames

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-17 16:12:25 +00:00
Derek Buitenhuis
26abd5149e Merge commit '721a4efc0545548a241080b53ab480e34f366240'
* commit '721a4efc0545548a241080b53ab480e34f366240':
  buffer: add support for pools using caller data in allocation

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-17 16:07:16 +00:00
Anton Khirnov
7b3214d005 lavc: add a field for passing AVHWFramesContext to encoders 2016-02-14 22:29:52 +01:00
Michael Niedermayer
bb9f7bf1a2 Changelog/APIChanges Put 3.0 release marker
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-02-14 22:27:28 +01:00
Anton Khirnov
b3dd30db0b lavfi: pass the hw frames context through the filter chain 2016-02-14 22:21:00 +01:00
Anton Khirnov
ad884d1002 hwcontext: add a CUDA implementation 2016-02-14 22:08:33 +01:00
Anton Khirnov
7bc780cd44 pixfmt: add a CUDA hwaccelled format 2016-02-14 22:08:22 +01:00
Anton Khirnov
a001ce31bc hwcontext: add a VDPAU implementation 2016-02-14 22:06:04 +01:00
Anton Khirnov
89923e418b lavu: add a framework for handling hwaccel frames 2016-02-14 21:36:59 +01:00
Anton Khirnov
721a4efc05 buffer: add support for pools using caller data in allocation
This should allow using more complex allocators than simple malloc
wrappers.
2016-02-14 21:24:39 +01:00
Michael Niedermayer
dab493c89e doc/APIchanges: fill in more missing things
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-02-13 16:20:59 +01:00
Michael Niedermayer
50a960673d doc/APIchanges: Fill in some missing values
also fix some inconsistencies

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-02-13 16:16:29 +01:00
Derek Buitenhuis
bc9a5965c8 Merge commit '9f61abc8111c7c43f49ca012e957a108b9cc7610'
This also deprecates our old duplicated callbacks.

* commit '9f61abc8111c7c43f49ca012e957a108b9cc7610':
  lavf: allow custom IO for all files

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-10 14:42:41 +00:00
Michael Niedermayer
1dba8371d9 avformat: add protocol_whitelist
Note to maintainers: update tools

Note to maintainers: set a default whitelist for your protocol
If that makes no sense then consider to set "none" and thus require the user to specify a white-list
for sub-protocols to be opened

Note, testing and checking for missing changes is needed

Reviewed-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-02-02 03:39:34 +01:00
Derek Buitenhuis
66e9d2f44e avutil: Add GOP timecode frame side data
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-01 18:18:17 +00:00
Anton Khirnov
9f61abc811 lavf: allow custom IO for all files
Some (de)muxers open additional files beyond the main IO context.
Currently, they call avio_open() directly, which prevents the caller
from using custom IO for such streams.

This commit adds callbacks to AVFormatContext that default to
avio_open2()/avio_close(), but can be overridden by the caller. All
muxers and demuxers using AVIO are switched to using those callbacks
instead of calling avio_open()/avio_close() directly.

(de)muxers that use the URLProtocol layer directly instead of AVIO
remain unconverted for now. This should be fixed in later commits.
2016-01-24 16:45:32 +01:00
Hendrik Leppkes
fea9243d53 Merge commit '40d43d25e76ca078e7665752e815fc8d96252f06'
* commit '40d43d25e76ca078e7665752e815fc8d96252f06':
  APIchanges: Add missing av_pix_fmt_get_chroma_sub_sample entry

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-19 08:53:43 +01:00
Luca Barbato
40d43d25e7 APIchanges: Add missing av_pix_fmt_get_chroma_sub_sample entry 2016-01-11 20:53:12 +01:00
Hendrik Leppkes
5e8b053452 Merge commit '2c6811397bdf13d43ca206e48d6d6da9c2cd47c6'
* commit '2c6811397bdf13d43ca206e48d6d6da9c2cd47c6':
  lavc: add profiles to AVCodecDescriptor

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-01-01 16:20:39 +01:00
Rodger Combs
1f9139b07b lavf: add automatic bitstream filtering; bump version
This solves the problem discussed in https://ffmpeg.org/pipermail/ffmpeg-devel/2015-September/179238.html
by allowing AVCodec::write_header to be delayed until after packets have been
run through required bitstream filters in order to generate global extradata.

It also provides a mechanism by which a muxer can add a bitstream filter to a
stream automatically, rather than prompting the user to do so.
2015-12-28 08:40:35 -06:00
Nicolas George
39a09e995d lavfi: deprecate avfilter_link_set_closed().
Applications are not supposed to mess with links,
they should close the sinks.
Furthermore, this function does not distinguish what end
of the link caused the close and does not have a timestamp.
2015-12-22 16:04:22 +01:00
Hendrik Leppkes
efcc8fddd6 Merge commit 'e02de9df4b218bd6e1e927b67fd4075741545688'
* commit 'e02de9df4b218bd6e1e927b67fd4075741545688':
  lavc: export Dirac parsing API used by the ogg demuxer as public

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-12-17 14:48:46 +01:00
Hendrik Leppkes
dd6ee019ea Merge commit 'f0b769c16daafa64720dcba7fa81a9f5255e1d29'
* commit 'f0b769c16daafa64720dcba7fa81a9f5255e1d29':
  lavc: add a packet side data type for VBV-like parameters

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-12-17 13:25:52 +01:00
Hendrik Leppkes
a7d5b9f1c3 Merge commit '84adab333cddeefc3cfd843089dee23f58bd372c'
* commit '84adab333cddeefc3cfd843089dee23f58bd372c':
  lavc: add stream-global packet side data

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2015-12-17 13:18:18 +01:00