FFmpeg git repo
Go to file
Zhong Li 54307b3531 lavc/qsvdec: set complete_frame flags for progressive picture
Set the flag MFX_BITSTREAM_COMPLETE_FRAME when it is a progressive picture.
This can fix vc1 decoding segment fault issues because can't set the start
code correctly.

See: ./avconv -hwaccel qsv -c:v vc1_qsv -i /fate-suite/vc1/SA00040.vc1
-vf "hwdownload, format=nv12" -f rawvideo /dev/null

v2: fix some h264 interlaced clips regression
a. field_order of some h264 interlaced video (e.g: cama3_vtc_b.avc) is marked as AV_FIELD_UNKNOWN
   in h264_parser.c. This is not a completed frames.
   So only set the MFX_BITSTREAM_COMPLETE_FRAME when it is progressive.
b. some clips have both progressive and interlaced frames (e.g.CAPAMA3_Sand_F.264),
   the parsed field_order maybe changed druing the decoding progress.

This patch has been verified for other codecs(mpeg2/hevc/vp8).

Signed-off-by: Zhong Li <zhong.li@intel.com>
Signed-off-by: Maxym Dmytrychenko <maxim.d33@gmail.com>
2018-04-08 20:47:59 +02:00
avbuild
avtools
compat
doc Add Haivision SRT protocol 2018-03-28 16:16:41 +02:00
libavcodec lavc/qsvdec: set complete_frame flags for progressive picture 2018-04-08 20:47:59 +02:00
libavdevice
libavfilter qsv: adding Multi Frame Encode support 2018-04-08 20:47:59 +02:00
libavformat Add Haivision SRT protocol 2018-03-28 16:16:41 +02:00
libavresample
libavutil qsv: adding Multi Frame Encode support 2018-04-08 20:47:59 +02:00
libswscale
presets
tests fate: Error out more gracefully on configure failure 2018-02-26 13:30:05 +01:00
tools
.gitattributes
.gitignore
.travis.yml
COPYING.GPLv2
COPYING.GPLv3
COPYING.LGPLv2.1
COPYING.LGPLv3
CREDITS
Changelog Add Haivision SRT protocol 2018-03-28 16:16:41 +02:00
INSTALL
LICENSE
Makefile
README.md
RELEASE
configure configure: Revert some incorrect uses of check_cc() 2018-03-30 10:12:13 +02:00

README.md

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.