From 0c17beba97c600b38926f98e11f0436e20445261 Mon Sep 17 00:00:00 2001 From: Alex Converse Date: Fri, 17 Jun 2011 22:03:24 -0700 Subject: [PATCH 1/8] h264: drop some ugly casts --- libavcodec/h264.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/h264.c b/libavcodec/h264.c index ad591269c6..b42468a781 100644 --- a/libavcodec/h264.c +++ b/libavcodec/h264.c @@ -1014,7 +1014,7 @@ int ff_h264_decode_extradata(H264Context *h) { AVCodecContext *avctx = h->s.avctx; - if(*(char *)avctx->extradata == 1){ + if(avctx->extradata[0] == 1){ int i, cnt, nalsize; unsigned char *p = avctx->extradata; @@ -1049,7 +1049,7 @@ int ff_h264_decode_extradata(H264Context *h) p += nalsize; } // Now store right nal length size, that will be use to parse all other nals - h->nal_length_size = ((*(((char*)(avctx->extradata))+4))&0x03)+1; + h->nal_length_size = (avctx->extradata[4] & 0x03) + 1; } else { h->is_avc = 0; if(decode_nal_units(h, avctx->extradata, avctx->extradata_size) < 0) From cb372931ff3e55e47965db7b02c01df1e1b6a043 Mon Sep 17 00:00:00 2001 From: Alex Converse Date: Sat, 18 Jun 2011 15:42:57 -0700 Subject: [PATCH 2/8] sipr: Use memmove() to copy overlapped buffers. --- libavcodec/sipr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/sipr.c b/libavcodec/sipr.c index 17e7e855ed..f4f12d8c4d 100644 --- a/libavcodec/sipr.c +++ b/libavcodec/sipr.c @@ -461,7 +461,7 @@ static void decode_frame(SiprContext *ctx, SiprParameters *params, memcpy(ctx->postfilter_syn5k0, ctx->postfilter_syn5k0 + frame_size, LP_FILTER_ORDER*sizeof(float)); } - memcpy(ctx->excitation, excitation - PITCH_DELAY_MAX - L_INTERPOL, + memmove(ctx->excitation, excitation - PITCH_DELAY_MAX - L_INTERPOL, (PITCH_DELAY_MAX + L_INTERPOL) * sizeof(float)); ff_acelp_apply_order_2_transfer_function(out_data, synth, From 1e3d5eec8e758cfdd76370c80b9d0cc76c2c7b84 Mon Sep 17 00:00:00 2001 From: Alex Converse Date: Sat, 18 Jun 2011 15:44:31 -0700 Subject: [PATCH 3/8] sipr: include string.h for mem*() --- libavcodec/sipr.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libavcodec/sipr.c b/libavcodec/sipr.c index f4f12d8c4d..85d1419ef9 100644 --- a/libavcodec/sipr.c +++ b/libavcodec/sipr.c @@ -23,6 +23,7 @@ #include #include +#include #include "libavutil/mathematics.h" #include "avcodec.h" From 4b84d5114d760627a990e66724e3a1e9e1d1286f Mon Sep 17 00:00:00 2001 From: Alex Converse Date: Sat, 18 Jun 2011 15:45:45 -0700 Subject: [PATCH 4/8] sipr: Drop unused DSPContext --- libavcodec/sipr.c | 2 -- libavcodec/sipr.h | 1 - 2 files changed, 3 deletions(-) diff --git a/libavcodec/sipr.c b/libavcodec/sipr.c index 85d1419ef9..2e86861706 100644 --- a/libavcodec/sipr.c +++ b/libavcodec/sipr.c @@ -496,8 +496,6 @@ static av_cold int sipr_decoder_init(AVCodecContext * avctx) avctx->sample_fmt = AV_SAMPLE_FMT_FLT; - dsputil_init(&ctx->dsp, avctx); - return 0; } diff --git a/libavcodec/sipr.h b/libavcodec/sipr.h index 33984b1baf..5b2198ea87 100644 --- a/libavcodec/sipr.h +++ b/libavcodec/sipr.h @@ -55,7 +55,6 @@ typedef enum { typedef struct { AVCodecContext *avctx; - DSPContext dsp; SiprMode mode; From 72da9888b0f1c0f6a74f6fdfa5f5f31d20bb0099 Mon Sep 17 00:00:00 2001 From: Reinhard Tartler Date: Sun, 19 Jun 2011 19:45:36 +0200 Subject: [PATCH 5/8] Add Release Notes --- doc/RELEASE_NOTES | 52 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 doc/RELEASE_NOTES diff --git a/doc/RELEASE_NOTES b/doc/RELEASE_NOTES new file mode 100644 index 0000000000..97875e9360 --- /dev/null +++ b/doc/RELEASE_NOTES @@ -0,0 +1,52 @@ +Release Notes +============= + +* 0.7 "The Big Bump" June, 2011 + +General notes +------------- + +This release enables frame-based multithreaded decoding for a number of codecs, +including VP8, H.263 and H.264. Additionally, there has been a major cleanup of +both internal and external APIs. For this reason, the major versions of all +libraries have been bumped. On the one hand, this means that 0.7 can be installed +side-by-side with previous releases, on the other hand, in order to benefit +from the new features, applications need to be recompiled. + +Other important changes are additions of decoders including, but not limited to, +AMR-WB, single stream LATM/LOAS, G.722 ADPCM, a native VP8 decoder +and HE-AACv2. Additionally, many new de/muxers such as WebM in Matroska, Apple +HTTP Live Streaming, SAP, IEC 61937 (S/PDIF) have been added. + +See the Changelog file for a list of significant changes. + +Please note that our policy on bug reports has not changed. We still only accept +bug reports against HEAD of the Libav trunk repository. If you are experiencing +issues with any formally released version of Libav, please try a current version +of the development code to check if the issue still exists. If it does, make your +report against the development code following the usual bug reporting guidelines. + + +API changes +----------- + +Please see the file doc/APIchanges for programmer-centric information. Note that a +lot of long-time deprecated APIs have been removed. Also, a number of additional +APIs have been deprecated and are scheduled for removal in the next release. + + +Other notable changes +--------------------- + +- many ARM NEON optimizations +- libswscale cleanup started, optimizations should become easier in the future +- nonfree libfaad support for AAC decoding removed +- 4:4:4 H.264 decoding +- 9/10bit H.264 decoding +- Win64 Assembler support +- native MMSH/MMST support +- Windows TV demuxing +- native AMR-WB decoding +- native GSM-MS decoding +- SMPTE 302M decoding +- AVS encoding From 7b2d219045330494a2391beb6571ee1b25fc422d Mon Sep 17 00:00:00 2001 From: Mans Rullgard Date: Sun, 19 Jun 2011 18:03:21 +0100 Subject: [PATCH 6/8] path64/open64: filter out unsupported flags These flags are accepted without error but produce an annoying warning. Filtering them out makes the build less noisy. Signed-off-by: Mans Rullgard --- configure | 2 ++ 1 file changed, 2 insertions(+) diff --git a/configure b/configure index 2a1883bfa0..31e82fc6db 100755 --- a/configure +++ b/configure @@ -2069,6 +2069,7 @@ elif $cc -v 2>&1 | grep -q 'PathScale\|Path64'; then AS_DEPFLAGS='-MMD -MF $(@:.o=.d) -MT $@' speed_cflags='-O2' size_cflags='-Os' + filter_cflags='filter_out -Wdisabled-optimization' elif $cc -v 2>&1 | grep -q Open64; then cc_type=open64 cc_version=__OPEN64__ @@ -2077,6 +2078,7 @@ elif $cc -v 2>&1 | grep -q Open64; then AS_DEPFLAGS='-MMD -MF $(@:.o=.d) -MT $@' speed_cflags='-O2' size_cflags='-Os' + filter_cflags='filter_out -Wdisabled-optimization|-Wtype-limits|-fno-signed-zeros' fi test -n "$cc_type" && enable $cc_type || From 8fab4007c83349e5dbaacca735ce698cf94bf8e4 Mon Sep 17 00:00:00 2001 From: Reinhard Tartler Date: Sun, 19 Jun 2011 19:51:20 +0200 Subject: [PATCH 7/8] Use the contents of RELEASE as version fallback instead of 'UNKNOWN' This makes binaries produced by source tarballs identify themselves with the version number of the corresponding release series, unless overriden by a 'VERSION' file. --- RELEASE | 1 + version.sh | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 RELEASE diff --git a/RELEASE b/RELEASE new file mode 100644 index 0000000000..eb49d7c7fd --- /dev/null +++ b/RELEASE @@ -0,0 +1 @@ +0.7 diff --git a/version.sh b/version.sh index 6ec2b2567e..7911e46166 100755 --- a/version.sh +++ b/version.sh @@ -5,7 +5,7 @@ revision=$(cd "$1" && git describe --always 2> /dev/null) test "$revision" && revision=git-$revision # no revision number found -test "$revision" || revision=UNKNOWN +test "$revision" || revision=$(cd "$1" && cat RELEASE 2> /dev/null) # releases extract the version number from the VERSION file version=$(cd "$1" && cat VERSION 2> /dev/null) From 8d3d3436e2596e27571b86eb97c66971a1a7431b Mon Sep 17 00:00:00 2001 From: Mans Rullgard Date: Sun, 19 Jun 2011 19:31:56 +0100 Subject: [PATCH 8/8] Drop git- prefix from version labels Signed-off-by: Mans Rullgard --- version.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/version.sh b/version.sh index 7911e46166..6f72b2c2e6 100755 --- a/version.sh +++ b/version.sh @@ -2,7 +2,6 @@ # check for git short hash revision=$(cd "$1" && git describe --always 2> /dev/null) -test "$revision" && revision=git-$revision # no revision number found test "$revision" || revision=$(cd "$1" && cat RELEASE 2> /dev/null)