diff --git a/configure b/configure index 701d7e9ffa..16f453844c 100755 --- a/configure +++ b/configure @@ -2490,11 +2490,13 @@ case $target_os in objformat="win32" enable dos_paths check_cflags -fno-common + add_cppflags -U__STRICT_ANSI__ ;; *-dos|freedos|opendos) network_extralibs="-lsocket" objformat="coff" enable dos_paths + add_cppflags -U__STRICT_ANSI__ ;; linux) add_cppflags -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 diff --git a/libavcodec/aacdec.c b/libavcodec/aacdec.c index 34752b26e5..c56c0af986 100644 --- a/libavcodec/aacdec.c +++ b/libavcodec/aacdec.c @@ -824,7 +824,7 @@ static int decode_scalefactors(AACContext *ac, float sf[120], GetBitContext *gb, else offset[1] += get_vlc2(gb, vlc_scalefactors.table, 7, 3) - 60; clipped_offset = av_clip(offset[1], -100, 155); - if (offset[2] != clipped_offset) { + if (offset[1] != clipped_offset) { av_log_ask_for_sample(ac->avctx, "Noise gain clipped " "(%d -> %d).\nIf you heard an audible " "artifact, there may be a bug in the decoder. ", diff --git a/libavcodec/h264.c b/libavcodec/h264.c index 3a1f821d04..02152ad621 100644 --- a/libavcodec/h264.c +++ b/libavcodec/h264.c @@ -1901,6 +1901,9 @@ static int decode_slice_header(H264Context *h, H264Context *h0){ s->avctx->sample_aspect_ratio= h->sps.sar; av_assert0(s->avctx->sample_aspect_ratio.den); + h->s.avctx->coded_width = 16*s->mb_width; + h->s.avctx->coded_height = 16*s->mb_height; + if(h->sps.video_signal_type_present_flag){ s->avctx->color_range = h->sps.full_range ? AVCOL_RANGE_JPEG : AVCOL_RANGE_MPEG; if(h->sps.colour_description_present_flag){ diff --git a/libavcodec/x86/dct32_sse.asm b/libavcodec/x86/dct32_sse.asm index 86cf912be3..7f5f815591 100644 --- a/libavcodec/x86/dct32_sse.asm +++ b/libavcodec/x86/dct32_sse.asm @@ -203,7 +203,7 @@ ps_p1p1m1m1: dd 0, 0, 0x80000000, 0x80000000, 0, 0, 0x80000000, 0x80000000 %define BUTTERFLY0 BUTTERFLY0_AVX INIT_YMM -section .text align=16 +SECTION_TEXT %ifdef HAVE_AVX ; void ff_dct32_float_avx(FFTSample *out, const FFTSample *in) cglobal dct32_float_avx, 2,3,8, out, in, tmp diff --git a/libswscale/swscale.c b/libswscale/swscale.c index d53af2771d..0bfa3537fd 100644 --- a/libswscale/swscale.c +++ b/libswscale/swscale.c @@ -383,7 +383,7 @@ static av_always_inline void yuv2yuvX16inC_template(const int16_t *lumFilter, co } \ } for (i = 0; i < dstW; i++) { - int val = 1 << 10; + int val = 1 << (26-output_bits); int j; for (j = 0; j < lumFilterSize; j++) @@ -394,8 +394,8 @@ static av_always_inline void yuv2yuvX16inC_template(const int16_t *lumFilter, co if (uDest) { for (i = 0; i < chrDstW; i++) { - int u = 1 << 10; - int v = 1 << 10; + int u = 1 << (26-output_bits); + int v = 1 << (26-output_bits); int j; for (j = 0; j < chrFilterSize; j++) { @@ -410,7 +410,7 @@ static av_always_inline void yuv2yuvX16inC_template(const int16_t *lumFilter, co if (CONFIG_SWSCALE_ALPHA && aDest) { for (i = 0; i < dstW; i++) { - int val = 1 << 10; + int val = 1 << (26-output_bits); int j; for (j = 0; j < lumFilterSize; j++) diff --git a/tests/ref/fate/h264-conformance-frext-pph10i4_panasonic_a b/tests/ref/fate/h264-conformance-frext-pph10i4_panasonic_a index d351a7eb1f..a06c4577ff 100644 --- a/tests/ref/fate/h264-conformance-frext-pph10i4_panasonic_a +++ b/tests/ref/fate/h264-conformance-frext-pph10i4_panasonic_a @@ -4,16 +4,7 @@ 0, 10800, 6220800, 0x7459a1cc 0, 14400, 6220800, 0x02191aa9 0, 18000, 6220800, 0x88dca590 -0, 21600, 6220800, 0x56dd150a -0, 25200, 6220800, 0x5f56a56f -0, 28800, 6220800, 0x67ada4b7 -0, 32400, 6220800, 0x88dca590 -0, 36000, 6220800, 0xd3b09fe5 -0, 39600, 6220800, 0x2223998c -0, 43200, 6220800, 0x5e5b2da5 -0, 46800, 6220800, 0x88dca590 -0, 50400, 6220800, 0x5e5b2da5 -0, 54000, 6220800, 0x88dca590 -0, 57600, 6220800, 0x5e5b2da5 -0, 61200, 6220800, 0x88dca590 -0, 64800, 6220800, 0x26e1ec8b +0, 21600, 6220800, 0x4484d484 +0, 25200, 6220800, 0x8afdb53f +0, 28800, 6220800, 0xd3d6017a +0, 32400, 6220800, 0xf5162af0