binkaudio: use a different value for the coefficient scale for the DCT codec

Eliminates the need for vector_fmul_scalar() in each frame.
binkaudio: use float sample format

Use planar for DCT codec, interleaved for RDFT codec.
binkaudio: remove unneeded GET_BITS_SAFE macro

Normal get_bits() already has overread protection.
avcodec: cleanup utils.c
mov: check for EOF in long lasting loops

A quite widespread pattern in the demuxer is read a 32bit unsigned
integer and then loop till this value is reached.

Checking for EOF prevents pathological situations.
smoothstreaming: Export the mp4 codec tags

This fixes stream copy from a format that already has incompatible
codec tags set. The chained ismv muxer exports this same codec tag
list, so set it on this one as well, to allow the caller (and
lavf common code) to set them correctly.

Signed-off-by: Martin Storsjö <martin@martin.st>
configure: Make the smoothstreaming muxer enable the ismv muxer

This doesn't fix any build failure, but the smoothstreaming muxer
opens a chained ismv muxer.

Signed-off-by: Martin Storsjö <martin@martin.st>
configure: add --toolchain option

This allows creating canned shorthands for common combinations
of cc, ld etc.

Signed-off-by: Mans Rullgard <mans@mansr.com>
mpegvideo: move frame size dependent memory management to separate functions

This is a preparation for supporting frame size changes during
frame-based multithreading.
mpegvideo: add reinit function for frame parameter changes

This is mainly required for frame parameter changes during frame based
multithreading but single threaded usage profits too from avoiding
ff_MPV_common_end()/ff_MPV_common_init() cycles.
rv34: use ff_MPV_common_frame_size_change()

Specialised functionality for size changes with the advantage of
supporting frame size changes during frame-based multithreading.
build: support some non-standard ar variants

This adds support for the TI and Microsoft (lib.exe) variants of
the ar utility.

Signed-off-by: Mans Rullgard <mans@mansr.com>
configure: msvc: default to 'lib' as 'ar' tool

Signed-off-by: Mans Rullgard <mans@mansr.com>
Merge commit '1b3439b3055b083df51d7f7838ecc6b3f708b15c'

* commit '1b3439b3055b083df51d7f7838ecc6b3f708b15c':
  mpegvideo: move frame size dependent memory management to separate functions
  configure: add --toolchain option
  configure: Make the smoothstreaming muxer enable the ismv muxer
  smoothstreaming: Export the mp4 codec tags
  mov: check for EOF in long lasting loops
  avcodec: cleanup utils.c
  binkaudio: remove unneeded GET_BITS_SAFE macro
  binkaudio: use float sample format
  binkaudio: use a different value for the coefficient scale for the DCT codec

Conflicts:
	configure
	libavcodec/mpegvideo.c
	libavcodec/utils.c
	libavformat/Makefile

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

* qatar/master:
  rv34: use ff_MPV_common_frame_size_change()
  mpegvideo: add reinit function for frame parameter changes

Merged-by: Michael Niedermayer <michaelni@gmx.at>
wmavoice: initialize best_hist_ptr to NULL to prevent (incorrect) warning.

As a sideeffect this makes the code more robust if a future change leaves
a path where it may be uninitialized otherwise.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
avutil: Cast AV_NOPTS_VALUE to int64_t explicitly

Thus comparsion against int64_t value will not raise warning
(from -Wextra set) about comparsion of unsigned and signed integer

commiter added () and changed the litteral to unsigned

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
mpegvideo: release frame buffers before freeing them

Fixes triggering an assert in avcodec_default_release_buffer()
introduced in 1b3439b30.
mpegvideo: check ff_find_unused_picture() return value for errors
mpeg4: support frame parameter changes with frame-mt

Adds a flag context_reinit to MpegEncContext to relieable keep track
of frame parameter changes which require a context reinitialization.
This is required for broken inputs which change the frame size but
error out before the context can be reinitialized.