Mercurial > mplayer.hg
view libao2/afmt.h @ 10578:b9d289fd8a57
10000l, the old code was slow as hell, copying stuff extra times and
actually broken -- blanking the whole screen at each 'page flip' with
-dr enabled. benchmarks:
before:
56% cpu for decode
56% cpu for vo with no -dr
25% cpu for vo with -dr
after:
56% cpu for decode
25% cpu for vo without -dr
0% cpu for vo with -dr
if vo_fbdev is going to do pageflip, it needs to do it for REAL, using
vertical scroll registers (like g2), not copying a temp buffer (which
will shear anyway and is super-slow).
author | rfelker |
---|---|
date | Tue, 12 Aug 2003 08:24:24 +0000 |
parents | 46d21c0f36aa |
children | 7f8eb5f6814a |
line wrap: on
line source
/* Defines that AFMT_ stuff */ #ifdef HAVE_SYS_SOUNDCARD_H #include <sys/soundcard.h> /* For AFMT_* on linux */ #else #ifdef HAVE_SOUNDCARD_H #include <soundcard.h> /* OpenBSD have this instead of <sys/soundcard> */ #endif #endif #include "../config.h" /* for native endianness */ /* standard, old OSS audio formats */ #ifndef AFMT_MU_LAW # define AFMT_MU_LAW 0x00000001 # define AFMT_A_LAW 0x00000002 # define AFMT_IMA_ADPCM 0x00000004 # define AFMT_U8 0x00000008 # define AFMT_S16_LE 0x00000010 /* Little endian signed 16*/ # define AFMT_S16_BE 0x00000020 /* Big endian signed 16 */ # define AFMT_S8 0x00000040 # define AFMT_U16_LE 0x00000080 /* Little endian U16 */ # define AFMT_U16_BE 0x00000100 /* Big endian U16 */ #endif #ifndef AFMT_MPEG # define AFMT_MPEG 0x00000200 /* MPEG (2) audio */ #endif #ifndef AFMT_AC3 # define AFMT_AC3 0x00000400 /* Dolby Digital AC3 */ #endif /* 32 bit formats (MSB aligned) formats */ #ifndef AFMT_S32_LE # define AFMT_S32_LE 0x00001000 # define AFMT_S32_BE 0x00002000 #endif /* native endian formats */ #ifndef AFMT_S16_NE # if WORDS_BIGENDIAN # define AFMT_S16_NE AFMT_S16_BE # define AFMT_S32_NE AFMT_S32_BE # else # define AFMT_S16_NE AFMT_S16_LE # define AFMT_S32_NE AFMT_S32_LE # endif #endif #ifndef AFMT_FLOAT # define AFMT_FLOAT 0x00004000 #endif