Skip to content

Commit

Permalink
re-sync FFmpeg to SHA:ea5dab58e074a91330e1f076a4cbe8fece889afe
Browse files Browse the repository at this point in the history
  • Loading branch information
jyavenard committed May 23, 2012
1 parent 6fe9ad0 commit 174c795
Show file tree
Hide file tree
Showing 1,022 changed files with 42,300 additions and 25,906 deletions.
94 changes: 71 additions & 23 deletions mythtv/configure

Large diffs are not rendered by default.

23 changes: 14 additions & 9 deletions mythtv/external/FFmpeg/.gitignore
@@ -1,9 +1,17 @@
.config
.version
*.a
*.o
*.d
*.def
*.dll
*.exe
*.ho
*.lib
*.pc
*.so
*.so.*
*.ver
*-example
*-test
*_g
Expand All @@ -25,20 +33,16 @@ avconv
doc/avoptions_codec.texi
doc/avoptions_format.texi
doc/print_options
doc/examples/decoding_encoding
doc/examples/filtering_audio
doc/examples/filtering_video
doc/examples/metadata
doc/examples/muxing
libavcodec/*_tablegen
libavcodec/*_tables.c
libavcodec/*_tables.h
libavcodec/codec_names.h
libavcodec/libavcodec*
libavcore/libavcore*
libavdevice/libavdevice*
libavfilter/libavfilter*
libavformat/libavformat*
libavutil/avconfig.h
libavutil/libavutil*
libpostproc/libpostproc*
libswresample/libswresample*
libswscale/libswscale*
tests/audiogen
tests/base64
tests/data
Expand All @@ -49,6 +53,7 @@ tests/vsynth1
tests/vsynth2
tools/aviocat
tools/cws2fws
tools/ffeval
tools/graph2dot
tools/ismindex
tools/lavfi-showfiltfmts
Expand Down
13 changes: 13 additions & 0 deletions mythtv/external/FFmpeg/Changelog
Expand Up @@ -20,6 +20,19 @@ version next:
- ZeroCodec decoder
- tile video filter
- Metal Gear Solid: The Twin Snakes demuxer
- OpenEXR image decoder
- removelogo filter
- drop support for ffmpeg without libavfilter
- drawtext video filter: fontconfig support
- ffmpeg -benchmark_all option
- super2xsai filter ported from libmpcodecs
- add libavresample audio conversion library for compatibility
- MicroDVD decoder
- Avid Meridien (AVUI) encoder and decoder
- accept + prefix to -pix_fmt option to disable automatic conversions.
- audio filters support in libavfilter and avconv
- add fps filter
- audio split filter


version 0.10:
Expand Down
2 changes: 2 additions & 0 deletions mythtv/external/FFmpeg/MAINTAINERS
Expand Up @@ -159,6 +159,7 @@ Codecs:
indeo5* Kostya Shishkov
interplayvideo.c Mike Melanson
ivi* Kostya Shishkov
jacosub* Clément Bœsch
jpeg_ls.c Kostya Shishkov
jvdec.c Peter Ross
kmvc.c Kostya Shishkov
Expand Down Expand Up @@ -315,6 +316,7 @@ Muxers/Demuxers:
ipmovie.c Mike Melanson
img2.c Michael Niedermayer
iss.c Stefan Gehrer
jacosub* Clément Bœsch
jvdec.c Peter Ross
libmodplug.c Clément Bœsch
libnut.c Oded Shimon
Expand Down
12 changes: 8 additions & 4 deletions mythtv/external/FFmpeg/Makefile
Expand Up @@ -34,6 +34,7 @@ ALLMANPAGES = $(BASENAMES:%=%.1)
FFLIBS-$(CONFIG_AVDEVICE) += avdevice
FFLIBS-$(CONFIG_AVFILTER) += avfilter
FFLIBS-$(CONFIG_AVFORMAT) += avformat
FFLIBS-$(CONFIG_AVRESAMPLE) += avresample
FFLIBS-$(CONFIG_AVCODEC) += avcodec
FFLIBS-$(CONFIG_POSTPROC) += postproc
FFLIBS-$(CONFIG_SWRESAMPLE)+= swresample
Expand All @@ -42,6 +43,7 @@ FFLIBS-$(CONFIG_SWSCALE) += swscale
FFLIBS := avutil

DATA_FILES := $(wildcard $(SRC_PATH)/presets/*.ffpreset) $(SRC_PATH)/doc/ffprobe.xsd
EXAMPLES_FILES := $(wildcard $(SRC_PATH)/doc/examples/*.c) $(SRC_PATH)/doc/examples/Makefile

SKIPHEADERS = cmdutils_common_opts.h

Expand Down Expand Up @@ -72,7 +74,8 @@ config.h: .config

SUBDIR_VARS := CLEANFILES EXAMPLES FFLIBS HOSTPROGS TESTPROGS TOOLS \
ARCH_HEADERS BUILT_HEADERS SKIPHEADERS \
ALTIVEC-OBJS ARMV6-OBJS MMX-OBJS NEON-OBJS YASM-OBJS \
ALTIVEC-OBJS ARMV5TE-OBJS ARMV6-OBJS ARMVFP-OBJS MMI-OBJS \
MMX-OBJS NEON-OBJS VIS-OBJS YASM-OBJS \
OBJS TESTOBJS

define RESET
Expand Down Expand Up @@ -133,9 +136,10 @@ install-mythprogs: install-progs-yes $(MYTHPROGS)
$(Q)mkdir -p "$(BINDIR)"
$(INSTALL) -c -m 755 $(MYTHPROGS) "$(BINDIR)"

install-data: $(DATA_FILES)
$(Q)mkdir -p "$(DATADIR)"
install-data: $(DATA_FILES) $(EXAMPLES_FILES)
$(Q)mkdir -p "$(DATADIR)/examples"
$(INSTALL) -m 644 $(DATA_FILES) "$(DATADIR)"
$(INSTALL) -m 644 $(EXAMPLES_FILES) "$(DATADIR)/examples"

uninstall: uninstall-libs uninstall-headers uninstall-progs uninstall-data

Expand Down Expand Up @@ -183,5 +187,5 @@ $(sort $(OBJDIRS)):
# so this saves some time on slow systems.
.SUFFIXES:

.PHONY: all all-yes alltools *clean config examples install*
.PHONY: all all-yes alltools check *clean config install*
.PHONY: testprogs uninstall*
8 changes: 7 additions & 1 deletion mythtv/external/FFmpeg/README
Expand Up @@ -4,9 +4,15 @@ FFmpeg README
1) Documentation
----------------

* Read the documentation in the doc/ directory.
* Read the documentation in the doc/ directory in git.
You can also view it online at http://ffmpeg.org/documentation.html

2) Licensing
------------

* See the LICENSE file.

3) Build and Install
--------------------

* See the INSTALL file.
47 changes: 46 additions & 1 deletion mythtv/external/FFmpeg/README.sync
@@ -1,4 +1,49 @@
This code was resynced upstream to:

git://source.ffmpeg.org/ffmpeg.git at SHA1 d3db8988d on March 31, 2010
git://source.ffmpeg.org/ffmpeg.git at SHA1 d3db8988d on March 31, 2012

git://source.ffmpeg.org/ffmpeg.git at SHA1 ea5dab58e on May 23, 2012

List of files modified from original FFmpeg:
Makefile
README.sync
common.mak
configure
libavcodec/Makefile
libavcodec/avcodec.h
libavcodec/dsputil.h
libavcodec/dvbsub_parser.c
libavcodec/dvbsubdec.c
libavcodec/dvdsubdec.c
libavcodec/get_bits.h
libavcodec/golomb.h
libavcodec/h264_refs.c
libavcodec/libavcodec.v
libavcodec/mpeg12.c
libavcodec/mpeg4videodec.c
libavcodec/mpeg4videoenc.c
libavcodec/mpegaudio_parser.c
libavcodec/mpegaudiodec.c
libavcodec/mpegaudiodecheader.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo.h
libavcodec/myth_utils.c

This comment has been minimized.

Copy link
@pkendall64

pkendall64 Jun 1, 2012

This one should say it's a new file too

libavcodec/pcm.c
libavcodec/pgssubdec.c
libavformat/Makefile
libavformat/allformats.c
libavformat/avformat.h
libavformat/mpeg.c
libavformat/mpeg.h
libavformat/mpegts-mythtv.c <- new file
libavformat/mpegts-mythtv.h <- new file
libavformat/mpegts.c
libavformat/mpegts.h
libavformat/nuv.c <- could be ignored, whitespace only
libavformat/utils-myth.c <- new file
libavformat/utils.c
libavresample/libavresample.v
libavutil/bswap.h
libpostproc/Makefile
libpostproc/postprocess.c
library.mak
13 changes: 13 additions & 0 deletions mythtv/external/FFmpeg/arch.mak
@@ -0,0 +1,13 @@
OBJS-$(HAVE_ARMV5TE) += $(ARMV5TE-OBJS) $(ARMV5TE-OBJS-yes)
OBJS-$(HAVE_ARMV6) += $(ARMV6-OBJS) $(ARMV6-OBJS-yes)
OBJS-$(HAVE_ARMVFP) += $(ARMVFP-OBJS) $(ARMVFP-OBJS-yes)
OBJS-$(HAVE_NEON) += $(NEON-OBJS) $(NEON-OBJS-yes)

OBJS-$(HAVE_MMI) += $(MMI-OBJS) $(MMI-OBJS-yes)

OBJS-$(HAVE_ALTIVEC) += $(ALTIVEC-OBJS) $(ALTIVEC-OBJS-yes)

OBJS-$(HAVE_VIS) += $(VIS-OBJS) $(VIS-OBJS-yes)

OBJS-$(HAVE_MMX) += $(MMX-OBJS) $(MMX-OBJS-yes)
OBJS-$(HAVE_YASM) += $(YASM-OBJS) $(YASM-OBJS-yes)
64 changes: 29 additions & 35 deletions mythtv/external/FFmpeg/cmdutils.c
Expand Up @@ -32,11 +32,13 @@
#include "libavformat/avformat.h"
#include "libavfilter/avfilter.h"
#include "libavdevice/avdevice.h"
#include "libavresample/avresample.h"
#include "libswscale/swscale.h"
#include "libswresample/swresample.h"
#if CONFIG_POSTPROC
#include "libpostproc/postprocess.h"
#endif
#include "libavutil/avassert.h"
#include "libavutil/avstring.h"
#include "libavutil/mathematics.h"
#include "libavutil/parseutils.h"
Expand All @@ -54,6 +56,7 @@
#endif

struct SwsContext *sws_opts;
SwrContext *swr_opts;
AVDictionary *format_opts, *codec_opts;

const int this_year = 2012;
Expand All @@ -66,6 +69,7 @@ void init_opts(void)
sws_opts = sws_getContext(16, 16, 0, 16, 16, 0, SWS_BICUBIC,
NULL, NULL, NULL);
#endif
swr_opts = swr_alloc();
}

void uninit_opts(void)
Expand All @@ -74,6 +78,7 @@ void uninit_opts(void)
sws_freeContext(sws_opts);
sws_opts = NULL;
#endif
swr_free(&swr_opts);
av_dict_free(&format_opts);
av_dict_free(&codec_opts);
}
Expand Down Expand Up @@ -415,10 +420,10 @@ void parse_loglevel(int argc, char **argv, const OptionDef *options)
#define FLAGS(o) ((o)->type == AV_OPT_TYPE_FLAGS) ? AV_DICT_APPEND : 0
int opt_default(const char *opt, const char *arg)
{
const AVOption *oc, *of, *os;
const AVOption *oc, *of, *os, *oswr = NULL;
char opt_stripped[128];
const char *p;
const AVClass *cc = avcodec_get_class(), *fc = avformat_get_class(), *sc;
const AVClass *cc = avcodec_get_class(), *fc = avformat_get_class(), *sc, *swr_class;

if (!(p = strchr(opt, ':')))
p = opt + strlen(opt);
Expand All @@ -444,8 +449,17 @@ int opt_default(const char *opt, const char *arg)
}
}
#endif
swr_class = swr_get_class();
if (!oc && !of && !os && (oswr = av_opt_find(&swr_class, opt, NULL, 0,
AV_OPT_SEARCH_CHILDREN | AV_OPT_SEARCH_FAKE_OBJ))) {
int ret = av_opt_set(swr_opts, opt, arg, 0);
if (ret < 0) {
av_log(NULL, AV_LOG_ERROR, "Error setting option %s.\n", opt);
return ret;
}
}

if (oc || of || os)
if (oc || of || os || oswr)
return 0;
av_log(NULL, AV_LOG_ERROR, "Unrecognized option '%s'\n", opt);
return AVERROR_OPTION_NOT_FOUND;
Expand Down Expand Up @@ -534,38 +548,10 @@ int opt_max_alloc(const char *opt, const char *arg)

int opt_cpuflags(const char *opt, const char *arg)
{
static const AVOption cpuflags_opts[] = {
{ "flags" , NULL, 0, AV_OPT_TYPE_FLAGS, { 0 }, INT64_MIN, INT64_MAX, .unit = "flags" },
{ "altivec" , NULL, 0, AV_OPT_TYPE_CONST, { AV_CPU_FLAG_ALTIVEC }, .unit = "flags" },
{ "mmx" , NULL, 0, AV_OPT_TYPE_CONST, { AV_CPU_FLAG_MMX }, .unit = "flags" },
{ "mmx2" , NULL, 0, AV_OPT_TYPE_CONST, { AV_CPU_FLAG_MMX2 }, .unit = "flags" },
{ "sse" , NULL, 0, AV_OPT_TYPE_CONST, { AV_CPU_FLAG_SSE }, .unit = "flags" },
{ "sse2" , NULL, 0, AV_OPT_TYPE_CONST, { AV_CPU_FLAG_SSE2 }, .unit = "flags" },
{ "sse2slow", NULL, 0, AV_OPT_TYPE_CONST, { AV_CPU_FLAG_SSE2SLOW }, .unit = "flags" },
{ "sse3" , NULL, 0, AV_OPT_TYPE_CONST, { AV_CPU_FLAG_SSE3 }, .unit = "flags" },
{ "sse3slow", NULL, 0, AV_OPT_TYPE_CONST, { AV_CPU_FLAG_SSE3SLOW }, .unit = "flags" },
{ "ssse3" , NULL, 0, AV_OPT_TYPE_CONST, { AV_CPU_FLAG_SSSE3 }, .unit = "flags" },
{ "atom" , NULL, 0, AV_OPT_TYPE_CONST, { AV_CPU_FLAG_ATOM }, .unit = "flags" },
{ "sse4.1" , NULL, 0, AV_OPT_TYPE_CONST, { AV_CPU_FLAG_SSE4 }, .unit = "flags" },
{ "sse4.2" , NULL, 0, AV_OPT_TYPE_CONST, { AV_CPU_FLAG_SSE42 }, .unit = "flags" },
{ "avx" , NULL, 0, AV_OPT_TYPE_CONST, { AV_CPU_FLAG_AVX }, .unit = "flags" },
{ "xop" , NULL, 0, AV_OPT_TYPE_CONST, { AV_CPU_FLAG_XOP }, .unit = "flags" },
{ "fma4" , NULL, 0, AV_OPT_TYPE_CONST, { AV_CPU_FLAG_FMA4 }, .unit = "flags" },
{ "3dnow" , NULL, 0, AV_OPT_TYPE_CONST, { AV_CPU_FLAG_3DNOW }, .unit = "flags" },
{ "3dnowext", NULL, 0, AV_OPT_TYPE_CONST, { AV_CPU_FLAG_3DNOWEXT }, .unit = "flags" },
{ NULL },
};
static const AVClass class = {
.class_name = "cpuflags",
.item_name = av_default_item_name,
.option = cpuflags_opts,
.version = LIBAVUTIL_VERSION_INT,
};
int flags = av_get_cpu_flags();
int ret;
const AVClass *pclass = &class;
unsigned flags = av_get_cpu_flags();

if ((ret = av_opt_eval_flags(&pclass, &cpuflags_opts[0], arg, &flags)) < 0)
if ((ret = av_parse_cpu_caps(&flags, arg)) < 0)
return ret;

av_force_cpu_flags(flags);
Expand Down Expand Up @@ -613,7 +599,8 @@ static int warned_cfg = 0;
const char *indent = flags & INDENT? " " : ""; \
if (flags & SHOW_VERSION) { \
unsigned int version = libname##_version(); \
av_log(NULL, level, "%slib%-11s %2d.%3d.%3d / %2d.%3d.%3d\n",\
av_log(NULL, level, \
"%slib%-11s %2d.%3d.%3d / %2d.%3d.%3d\n", \
indent, #libname, \
LIB##LIBNAME##_VERSION_MAJOR, \
LIB##LIBNAME##_VERSION_MINOR, \
Expand Down Expand Up @@ -642,6 +629,7 @@ static void print_all_libs_info(int flags, int level)
PRINT_LIB_INFO(avformat, AVFORMAT, flags, level);
PRINT_LIB_INFO(avdevice, AVDEVICE, flags, level);
PRINT_LIB_INFO(avfilter, AVFILTER, flags, level);
// PRINT_LIB_INFO(avresample, AVRESAMPLE, flags, level);
PRINT_LIB_INFO(swscale, SWSCALE, flags, level);
PRINT_LIB_INFO(swresample,SWRESAMPLE, flags, level);
#if CONFIG_POSTPROC
Expand Down Expand Up @@ -1088,7 +1076,7 @@ int check_stream_specifier(AVFormatContext *s, AVStream *st, const char *spec)
case 's': type = AVMEDIA_TYPE_SUBTITLE; break;
case 'd': type = AVMEDIA_TYPE_DATA; break;
case 't': type = AVMEDIA_TYPE_ATTACHMENT; break;
default: abort(); // never reached, silence warning
default: av_assert0(0);
}
if (type != st->codec->codec_type)
return 0;
Expand Down Expand Up @@ -1121,6 +1109,12 @@ int check_stream_specifier(AVFormatContext *s, AVStream *st, const char *spec)
return 1;
}
return 0;
} else if (*spec == '#') {
int sid;
char *endptr;
sid = strtol(spec + 1, &endptr, 0);
if (!*endptr)
return st->id == sid;
} else if (!*spec) /* empty specifier, matches everything */
return 1;

Expand Down
1 change: 1 addition & 0 deletions mythtv/external/FFmpeg/cmdutils.h
Expand Up @@ -51,6 +51,7 @@ extern const int this_year;
extern AVCodecContext *avcodec_opts[AVMEDIA_TYPE_NB];
extern AVFormatContext *avformat_opts;
extern struct SwsContext *sws_opts;
extern struct SwrContext *swr_opts;
extern AVDictionary *format_opts, *codec_opts;

/**
Expand Down
1 change: 1 addition & 0 deletions mythtv/external/FFmpeg/cmdutils_common_opts.h
Expand Up @@ -14,6 +14,7 @@
{ "loglevel", HAS_ARG, {(void*)opt_loglevel}, "set libav* logging level", "loglevel" },
{ "v", HAS_ARG, {(void*)opt_loglevel}, "set libav* logging level", "loglevel" },
{ "debug", HAS_ARG, {(void*)opt_codec_debug}, "set debug flags", "flags" },
{ "fdebug", HAS_ARG, {(void*)opt_codec_debug}, "set debug flags", "flags" },
{ "report", 0, {(void*)opt_report}, "generate a report" },
{ "max_alloc", HAS_ARG, {(void*)opt_max_alloc}, "set maximum size of a single allocated block", "bytes" },
{ "cpuflags", HAS_ARG | OPT_EXPERT, {(void*)opt_cpuflags}, "force specific cpu flags", "flags" },

0 comments on commit 174c795

Please sign in to comment.