how to do it for this compiler. This removes a dependency of config.h on the
DECLARE_* macros.
Originally committed as revision 19383 to svn://svn.ffmpeg.org/ffmpeg/trunk
requirements.
Now calculates crc byte at a time until aligned, then continues with uint32
optimized calculation.
This fixes crashes during mlp decoding on sparc (at least, maybe others).
Originally committed as revision 19160 to svn://svn.ffmpeg.org/ffmpeg/trunk
improve plain text doxy readability.
See the thread: "[RFC] Should we use doxygen markup?".
Originally committed as revision 19122 to svn://svn.ffmpeg.org/ffmpeg/trunk
PPC is normally big endian but has special little endian load/store
instructions. Using these avoids a separate byteswap. This makes the
vorbis decoder about 5% faster. Not much else uses little-endian
read/write extensively.
GCC generates horrible PPC code for the default AV_[RW]B64 (which uses
a packed struct), so we override it with a plain pointer cast.
Originally committed as revision 18602 to svn://svn.ffmpeg.org/ffmpeg/trunk
ARMv6 and later support unaligned loads and stores for single
word/halfword but not double/multiple. GCC is ignorant of this and
will always use bytewise accesses for unaligned data. Casting to an
int32_t pointer is dangerous since a load/store double or multiple
instruction might be used (this happens with some code in FFmpeg).
Implementing the AV_[RW]* macros with inline asm using only supported
instructions gives fast and safe unaligned accesses. ARM RVCT does
the right thing with generic code.
This gives an overall speedup of up to 10%.
Originally committed as revision 18601 to svn://svn.ffmpeg.org/ffmpeg/trunk
This changes intreadwrite.h to support per-arch implementations of the
various macros allowing us to take advantage of special instructions
or other properties the compiler does not know about.
Originally committed as revision 18600 to svn://svn.ffmpeg.org/ffmpeg/trunk
This is robust against renames and also removes test programs not
(yet) hooked up in the main Makefiles.
Originally committed as revision 18193 to svn://svn.ffmpeg.org/ffmpeg/trunk
PIX_FMT_ARGB
PIX_FMT_RGBA
PIX_FMT_ABGR
PIX_FMT_BGRA
defined as enum PixelFormat values, and viceversa make:
PIX_FMT_RGB32
PIX_FMT_RGB32_1
PIX_FMT_BGR32
PIX_FMT_BGR32_1
defined as macros, also resort accordingly the enum PixelFormat
list.
Also make avcodec_get_pix_fmt() recognize the "rgb32" and "bgr32"
aliases, in order to make ffmpeg pass regressions test.
This change breaks ABI backward compatibility.
Originally committed as revision 18163 to svn://svn.ffmpeg.org/ffmpeg/trunk
endian and big endian variants instead of native-endian ones.
This patch breaks API/ABI backward-compatibility.
Originally committed as revision 18133 to svn://svn.ffmpeg.org/ffmpeg/trunk