flashsv: Drop unused function and struct parameters
apetag: fix error handling in ff_ape_parse_tag()

The following error handling is broken due to signedness.

    int file_size;
    uint32_t tag_bytes;
    int64_t tag_start;
    ...
    tag_start = file_size - tag_bytes - APE_TAG_FOOTER_BYTES;
    if (tag_start < 0) { ... }

Note that tag_bytes is unsigned, which makes the right-hand side of
`tag_start = ...' unsigned, too.  The 32-bit unsigned value is then
zero-extended to 64 bits.  Therefore, tag_start must be non-negative,
and the check (tag_start < 0) is always false, which breaks the error
handling.  This patch fixes the check.

Signed-off-by: Xi Wang <xi.wang@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
cdgraphics: fix incorrect vertical offset mask in cdg_scroll()

The vertical offset mask 0x07 is suspicious.

    v_off = FFMIN(data[2] & 0x07, CDG_BORDER_HEIGHT - 1);

Note that v_off is up to 11 (CDG_BORDER_HEIGHT - 1), the correct mask
should be 0x0F.

Signed-off-by: Xi Wang <xi.wang@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
id3v2: fix reading unsynchronized frames.

Current code would incorrectly process e.g. 'ff 00 ff 00 ff' to
'ff ff ff', while it should be 'ff ff 00 ff'.

Fixes Bug 395.

CC: libav-stable@libav.org
build: add rules to generate preprocessed source files

This is useful for debugging.  Dependencies for these files are not
generated due to limitations in many compilers.

Signed-off-by: Mans Rullgard <mans@mansr.com>
mpegvideo: simplify dxy calculation in hpel_motion()

Signed-off-by: Mans Rullgard <mans@mansr.com>
av_memcpy_backptr: optimise some special cases

- Add special cases for offsets of 2, 3, or 4 bytes.  This means the
  offset is always >4 in the generic case, allowing 32-bit copies to
  be used there.
- Don't use memcpy() for sizes less than 16 bytes.

Signed-off-by: Mans Rullgard <mans@mansr.com>
configure: properly support DEC/Compaq compiler

Signed-off-by: Mans Rullgard <mans@mansr.com>
configure: sort cpuflags section by architecture

Signed-off-by: Mans Rullgard <mans@mansr.com>
riff: Make ff_riff_tags static and move under appropriate #ifdef

The table is not used outside the file.
configure: suncc: Add compiler arch support for Nehalem & Sandy Bridge

GCC does not appear to have a -march= string for Westmere, which is a
bit surprising as it has a few more instructions than a Nehalem, but
a few less than a Sandy Bridge.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
doc: avtools-common-opts: Fix terminology concerning metric prefixes

'k', 'M', and 'G' are SI (unit) prefixes or metric prefixes,
not 'number postfixes'. Also, the statement regarding binary
prefixes ("powers of 2 are used instead of powers of 10")
might be misinterpreted (1 kB = 10^3 B, but 1 KiB != 2^3 B).

Signed-off-by: Diego Biurrun <diego@biurrun.de>
avconv: fix copying per-stream metadata.

It is handled separately from other types because it uses stream
specifiers and currently that triggers an assert in SET_DICT.

CC:libav-stable@libav.org
yop: fix typo

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
x86: h264_chromamc: port to cpuflags
x86: h264: Remove 3dnow QPEL code

The only CPUs that have 3dnow and don't have mmxext are 12 years old.
Moreover, AMD has dropped 3dnow extensions from newer CPUs.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
x86: h264: Convert 8-bit QPEL inline assembly to YASM

Signed-off-by: Diego Biurrun <diego@biurrun.de>
remove #defines to prevent use of discouraged external functions

Preventing the use of discouraged or 'insecure' external functions
through defines in an internal header is not a good solution. The
header is not guaranteed to be included universally which makes
overlooking bad use of said functions during review more likely.

There are cases were those functions either are the most straight
forward solution or even have to be used. Using malloc or free is
required if the allocation or release is done by other libraries.
x86: h264 qpel: use the correct number of utilized xmm regs in cglobal

Fixes xmm register clobbering on win64.
mpegaudiodec: use planar sample format for output unless packed is requested