x86: sbrdsp: implement SSE qmf_deint_bfly

From 312 to 89/68 (sse/sse2) cycles on Arrandale and Win64.
Sandybridge: 68/47 cycles.

Having a loop counter is a 7 cycle gain.
Unrolling is another 7 cycle gain.
Working in reverse scan is another 6 cycles.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
lavfi/blend,noise: remove unedeed av_opt_free() call

Signed-off-by: Paul B Mahol <onemda@gmail.com>
lavfi/histogram: use standard options parsing

Signed-off-by: Paul B Mahol <onemda@gmail.com>
lavf/mxfdec: handle identification metadata
bfin: Don't use the vp3 idct functions if bitexact behaviour is expected

In the non-bitexact mode, vp3 currently decodes to the same
frame crcs as before 28f9ab702 (and the output visually looks
correct).

Signed-off-by: Martin Storsjö <martin@martin.st>
bfin: Make vp3 functions static

Signed-off-by: Martin Storsjö <martin@martin.st>
vp3: Embed idct_permutation array directly in VP3DecoderContext

This makes the vp3 decoder less dependent on dsputil, and will aid
in making it (eventually) dsputil-independent.

Signed-off-by: Martin Storsjö <martin@martin.st>
x86: qpel: Move fullpel and l2 functions to a separate file

This way, they can be shared between mpeg4qpel and h264qpel without
requiring either one to be compiled unconditionally.

Signed-off-by: Martin Storsjö <martin@martin.st>
lavc: Make pointers to ff_cropTbl const

There's no point in these pointers not being const.

Signed-off-by: Martin Storsjö <martin@martin.st>
lavc: Move ff_cropTbl and ff_zigzag_direct from dsputil to mathtables

These are widely used throughout libavcodec, nothing dsputil-specific.

Change ff_cropTbl to a statically initialized table, to avoid
initializing it with a function call.

Signed-off-by: Martin Storsjö <martin@martin.st>
Merge commit 'aa8d89536d35af0a0c8d8bac2b452ffe7b82cae5'

* commit 'aa8d89536d35af0a0c8d8bac2b452ffe7b82cae5':
  bfin: Don't use the vp3 idct functions if bitexact behaviour is expected

Conflicts:
	libavcodec/bfin/vp3_bfin.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit '610b18e2e3d8ef5eca3e78f33a0625689b8d2bb9'

* commit '610b18e2e3d8ef5eca3e78f33a0625689b8d2bb9':
  x86: qpel: Move fullpel and l2 functions to a separate file
  bfin: Make vp3 functions static

Conflicts:
	libavcodec/bfin/vp3_bfin.c
	libavcodec/x86/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
Merge commit '9e0f14f16cfc9456a691655fda7d01090bffe47e'

* commit '9e0f14f16cfc9456a691655fda7d01090bffe47e':
  lavc: Make pointers to ff_cropTbl const
  vp3: Embed idct_permutation array directly in VP3DecoderContext

Conflicts:
	libavcodec/bit_depth_template.c
	libavcodec/vp3.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
Merge remote-tracking branch 'qatar/master'

* qatar/master:
  lavc: Move ff_cropTbl and ff_zigzag_direct from dsputil to mathtables

Conflicts:
	libavcodec/mathtables.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
avformat: add writeout_count statistic

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
mux: also call avio_flush() when flushing the muxer

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
flvenc: dont call avio_flush() unconditional

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Merge remote-tracking branch 'mbouron/master'

* mbouron/master:
  lavf/mxfdec: handle identification metadata

Merged-by: Michael Niedermayer <michaelni@gmx.at>
lavfi/il: use standard option parsing

Signed-off-by: Paul B Mahol <onemda@gmail.com>
lavfi/noise: copy inline asm from mp=noise

Signed-off-by: Paul B Mahol <onemda@gmail.com>