44e95a017c
As of September 14 2012, v4l_enumstd() will return ENODATA when a device's std field is set to 0. That is, the device does not have a standard format. In order to properly handle this case, v4l2_set_parameters should catch the ENODATA code and break instead of failing. Below is the v4l2-core commit describing this change. >>commit a5338190efc7cfa8c99a6856342a77d21c9a05cf >>Author: Hans Verkuil <hans.verkuil@cisco.com> >>Date: Fri Sep 14 06:45:43 2012 -0300 >> >> [media] v4l2-core: tvnorms may be 0 for a given input, handle that case >> >> Currently the core code looks at tvnorms to see whether ENUMSTD >> or G_PARM should be enabled. This is not a good check for drivers >> that support the STD API on one input and the DV Timings API on another. >> In that case tvnorms may be 0. >> Instead check whether s_std is present (for ENUMSTD) or whether g_std or >> current_norm is present for g_parm. >> Also, in the enumstd core function return ENODATA if tvnorms is 0, >> because in that case the current input does not support the STD API >> and ENUMSTD should return ENODATA for that. >> >> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> >> Reviewed-by: Sakari Ailus <sakari.ailus@iki.fi> >> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com> |
||
---|---|---|
compat | ||
doc | ||
libavcodec | ||
libavdevice | ||
libavfilter | ||
libavformat | ||
libavresample | ||
libavutil | ||
libpostproc | ||
libswresample | ||
libswscale | ||
presets | ||
tests | ||
tools | ||
.gitignore | ||
arch.mak | ||
Changelog | ||
cmdutils_common_opts.h | ||
cmdutils_opencl.c | ||
cmdutils.c | ||
cmdutils.h | ||
common.mak | ||
configure | ||
COPYING.GPLv2 | ||
COPYING.GPLv3 | ||
COPYING.LGPLv2.1 | ||
COPYING.LGPLv3 | ||
CREDITS | ||
ffmpeg_dxva2.c | ||
ffmpeg_filter.c | ||
ffmpeg_opt.c | ||
ffmpeg_vda.c | ||
ffmpeg_vdpau.c | ||
ffmpeg.c | ||
ffmpeg.h | ||
ffplay.c | ||
ffprobe.c | ||
ffserver.c | ||
INSTALL.md | ||
library.mak | ||
LICENSE.md | ||
MAINTAINERS | ||
Makefile | ||
README.md | ||
RELEASE | ||
RELEASE_NOTES | ||
version.sh |
FFmpeg README
FFmpeg 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.libswresample
implements audio mixing and resampling routines.libswscale
implements color conversion and scaling routines.
Tools
- ffmpeg is a command line toolbox to manipulate, convert and stream multimedia content.
- ffplay is a minimalistic multimedia player.
- ffprobe is a simple analisys tool to inspect multimedia content.
- Additional small tools such as
aviocat
,ismindex
andqt-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
FFmpeg codebase is mainly LGPL-licensed with optional components licensed under GPL. Please refer to the LICENSE file for detailed information.