This allows the CPU detection to work with assemblers not supporting
the xgetbv mnemonic. These include clang and some BSD versions.
All AVX code will be written for yasm, where the main assembler
is not involved.
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit ef6695387522fc783105ac187c84beaa284e7cff)
the following additions:
* support to anti-aliased glyph rendering
* support to UTF-8 text and Unicode chars rendering
* support for RGB packed formats
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This adds the AAC codec to the list of audio codecs that results
in a PES stream_id of 0xc0 (audio stream).
Signed-off-by: Mans Rullgard <mans@mansr.com>
GCC 4.3 and later are more particular about signedness matching
in vector operations. The operations under if(rangered) were
missing assignments and thus had no effect.
Signed-off-by: Mans Rullgard <mans@mansr.com>
In the name of consistency:
put_byte -> avio_w8
put_<type> -> avio_w<type>
put_buffer -> avio_write
put_nbyte will be made private
put_tag will be merged with avio_put_str
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
In the name of consistency:
get_byte -> avio_r8
get_<type> -> avio_r<type>
get_buffer -> avio_read
get_partial_buffer will be made private later
get_strz is left out becase I want to change it later to return
something useful.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Advantage is that it allows us to combine several loops into a single
one, and these can eventually be merged into the IDCT itself. Also, it
allows us to remove vc1_put_block(), and makes CODEC_FLAG_GRAY faster.
Add drawutils.h and drawutils.c, and use them in the pad filter.
The new functions are going to be shared by other filters.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Add drawutils.h and drawutils.c, and use them in the pad filter.
The new functions are going to be shared by other filters.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Update libavformat/version.h and doc/APIChanges after renaming
init_put_byte() and ByteIOContext to ffio_init_context() (private)
and AVIOContext, (public), and deprecating the originals.
(cherry picked from commit d2bbf82e65e4a128ab1f0bf48df5d1e43c43c698)
init_put_byte should never be used outside of lavf, since
sizeof(AVIOContext) isn't part of public ABI.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit e731b8d8729e75bfb69f5540e6446d6118dac549)
Advanced profile never uses "range reduction", so vc1_put_block() quite
literally just calls put_pixels_clamped() from vc1_decode_i_blocks_adv().
By inlining the function, we can prevent calling IDCT8x8 if
CODEC_FLAG_GRAY is set, and we don't have to scale the coeffs in the
[0,256] range, but can instead use put_signed_pixels_clamped().
(cherry picked from commit 70aa916e4630bcec14439a2d703074b6d4c890a8)
This adds configure and runtime checks for AVX support on x86 CPUs.
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 87f1355f9b4fc11414d0e6a91404203c2745f89f)
Allows playback of nonprimary audio streams in multiple bitrate sources,
such as mmsh://wmscr1.dr.dk/e02ch03m
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 74d6871d6244865b5863a01c3dab16a2f06a1706)
With negative stride, the start of the edge_emu buffer should be pointing to
the last line, not the end of the buffer.
With positive stride, pointing to the end of the buffer was completely wrong.
(cherry picked from commit a89f4ca005efa5ee82089583c7b8bc00bcee816a)
Also remove qscale_table code; this didn't make sense anyways as VP3 doesn't
use an MPEG-like quantizer scale.
(cherry picked from commit 902685b8abf4e2089802528a32a50f3c68033fda)
This ensures the tools are rebuilt when necessary. Specifically,
lavfi-showfiltfmts was sometimes not rebuilt causing spurious test
failures.
Signed-off-by: Mans Rullgard <mans@mansr.com>
This allows the CPU detection to work with assemblers not supporting
the xgetbv mnemonic. These include clang and some BSD versions.
All AVX code will be written for yasm, where the main assembler
is not involved.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Update libavformat/version.h and doc/APIChanges after renaming
init_put_byte() and ByteIOContext to ffio_init_context() (private)
and AVIOContext, (public), and deprecating the originals.
init_put_byte should never be used outside of lavf, since
sizeof(AVIOContext) isn't part of public ABI.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Advanced profile never uses "range reduction", so vc1_put_block() quite
literally just calls put_pixels_clamped() from vc1_decode_i_blocks_adv().
By inlining the function, we can prevent calling IDCT8x8 if
CODEC_FLAG_GRAY is set, and we don't have to scale the coeffs in the
[0,256] range, but can instead use put_signed_pixels_clamped().
Allows playback of nonprimary audio streams in multiple bitrate sources,
such as mmsh://wmscr1.dr.dk/e02ch03m
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>