Go to file
Huang, Zhengxu a5a6ac1a12 libavfilter/overlay_qsv: Add QSV overlay vpp filter
The filter supports two inputs and (implicitly) scaling the second input
during composition, unlike the software overlay.

The code has been separated into common interface and qsv overlay
implementation. The common part mainly creates the qsv session and
manages the surface which is nearly the same for all qsv filters.
So the qsvvpp.c/qsvvpp.h API can be used by other QSV vpp filters
to reduce code redundancy.

Usage:
 -hwaccel qsv -c:v mpeg2_qsv -r 25 -i in.m2v -hwaccel qsv -c:v h264_qsv
 -i in.h264 -filter_complex
 "overlay_qsv=eof_action=repeat:x=(W-w)/2:y=(H-h)/2"  -b 2M -maxrate 3M
 -c:v h264_qsv -y out.h264

Two inputs should have different sizes otherwise one will be completely
covered or you need to scale the second input as follows:
  -hwaccel qsv -c:v mpeg2_qsv -r 25 -i in.m2v -hwaccel qsv -c:v h264_qsv
  -i in.h264 -filter_complex
  "overlay_qsv=w=720:h=576:x=(W-w)/2:y=(H-h)/2" -b 2M -maxrate 3M -c:v
  h264_qsv -y out.h264

  Signed-off-by: ChaoX A Liu <chaox.a.liu@gmail.com>
  Signed-off-by: Zhengxu Huang <zhengxu.maxwell@gmail.com>
  Signed-off-by: Andrew Zhang <huazh407@gmail.com>
  Change-Id: I5c381febb0af6e2f9622c54ba00490ab99d48297
  Signed-off-by: Maxym Dmytrychenko <maxim.d33@gmail.com>
2017-09-17 19:59:06 +02:00
avbuild msvc: Properly specify dllexport for data symbols shared across dll boundaries 2017-08-31 14:22:06 +03:00
avtools avconv: when using -loop option bail out if seek to start fails 2017-07-28 13:13:44 +02:00
compat makedef: Extend the script for use with mingw tools as well 2017-08-31 14:22:18 +03:00
doc lavf: make avio_read_partial() public 2017-08-30 14:29:14 +02:00
libavcodec vaapi_mpeg2: Convert to use coded bitstream infrastructure 2017-09-12 22:12:00 +01:00
libavdevice avfoundation: update to use AVCodecParameters 2017-04-26 11:47:31 -04:00
libavfilter libavfilter/overlay_qsv: Add QSV overlay vpp filter 2017-09-17 19:59:06 +02:00
libavformat avio: update avio_alloc_context() doxy 2017-09-14 09:53:31 +02:00
libavresample Bump major versions of all libraries 2017-03-23 09:56:20 +01:00
libavutil msvc: Properly specify dllexport for data symbols shared across dll boundaries 2017-08-31 14:22:06 +03:00
libswscale swscale: Do not expand a macro with 'defined' in it 2017-08-28 10:26:14 +02:00
presets presets: spelling error in libvpx 1080p50_60 2011-10-22 00:28:56 +02:00
tests mpeg12: Move finding the best frame rate to common code 2017-09-12 22:11:56 +01:00
tools aviocat: Check for output write errors 2017-09-04 09:42:52 +03:00
.gitattributes Treat all '*.pnm' files as non-text file 2014-11-28 17:52:43 -05:00
.gitignore build: Ignore generated .version files 2017-02-03 11:37:53 +01:00
.travis.yml travis: Exclude gcc for the macOS target 2017-04-20 12:53:08 +02:00
Changelog libavfilter/overlay_qsv: Add QSV overlay vpp filter 2017-09-17 19:59:06 +02:00
configure libavfilter/overlay_qsv: Add QSV overlay vpp filter 2017-09-17 19:59:06 +02:00
COPYING.GPLv2 Rename COPYING.GPL --> COPYING.GPLv2 and COPYING.LGPL --> COPYING.LGPLv2.1. 2009-06-05 09:51:31 +00:00
COPYING.GPLv3 Add configure option to upgrade (L)GPL to version 3. 2009-06-05 11:04:03 +00:00
COPYING.LGPLv2.1 cosmetics: Delete empty lines at end of file. 2012-02-09 12:26:45 +01:00
COPYING.LGPLv3 Add configure option to upgrade (L)GPL to version 3. 2009-06-05 11:04:03 +00:00
CREDITS partially rename FFmpeg to Libav 2011-03-16 21:54:39 +01:00
INSTALL doc: clarify configure features 2011-04-07 02:54:12 +02:00
LICENSE Remove the legacy X11 screen grabber 2016-07-29 19:03:10 +02:00
Makefile build: Allow generating dependencies as a side-effect of assembling 2017-03-01 10:18:15 +01:00
README.md doc: Add travis badge 2015-09-14 00:19:08 +02:00
RELEASE Make the RELEASE file match with the most recent tag 2016-10-14 13:52:51 -04:00

Libav

Build Status

Libav is a collection of libraries and tools to process multimedia content such as audio, video, subtitles and related metadata.

Libraries

  • libavcodec provides implementation of a wider range of codecs.
  • libavformat implements streaming protocols, container formats and basic I/O access.
  • libavutil includes hashers, decompressors and miscellaneous utility functions.
  • libavfilter provides a mean to alter decoded Audio and Video through chain of filters.
  • libavdevice provides an abstraction to access capture and playback devices.
  • libavresample implements audio mixing and resampling routines.
  • libswscale implements color conversion and scaling routines.

Tools

  • avconv is a command line toolbox to manipulate, convert and stream multimedia content.
  • avplay is a minimalistic multimedia player.
  • avprobe is a simple analisys tool to inspect multimedia content.
  • Additional small tools such as aviocat, ismindex and qt-faststart.

Documentation

The offline documentation is available in the doc/ directory.

The online documentation is available in the main website and in the wiki.

Examples

Conding examples are available in the doc/example directory.

License

Libav codebase is mainly LGPL-licensed with optional components licensed under GPL. Please refer to the LICENSE file for detailed information.