Mercurial > mplayer.hg
view libaf/af_format.h @ 27145:44ceb8c35dbc
r25385: Add new audio filter for encoding multi-channel audio into ac3 at runtime.
r25389: Support using unrar executable to access rar-compressed vobsub files.
r25440: Fix the expand text's format by the source.
r25455: (previously applied) typo noticed by Paul TT
r25529: Support ?(!NAME:TEXT) format for expanding string by property.
r25566: update copyright year to 2008
r25585: Add an example for dvdnav:// usage with path.
r25587: when {v|a}_o_mpegpes:card isn't specified by the user [...]
r25607: documented angle commands
r25610: Allow overriding [Script Info] parameters with -ass-force-style option.
r25639: Add heartbeat-cmd option
r25656: dvd-device can specify iso files too
r25657: dumpstream is NOT a better way to copy a dvd title
r25665: updated english manpage with protocol/extension profile loading feature
r25671: document vo.* and ao.* playback profiles
r25751: Extend heartbeat-cmd man page entry
r25752: Seems that all - should be escaped in the man page
r25762: added missing escapes
r25763: added missing "&"
author | kraymer |
---|---|
date | Mon, 30 Jun 2008 19:35:32 +0000 |
parents | e173fde700da |
children | 9e739bdb049c |
line wrap: on
line source
/* The sample format system used lin libaf is based on bitmasks. The format definition only refers to the storage format not the resolution. */ #ifndef MPLAYER_AF_FORMAT_H #define MPLAYER_AF_FORMAT_H #include "config.h" // Endianness #define AF_FORMAT_BE (0<<0) // Big Endian #define AF_FORMAT_LE (1<<0) // Little Endian #define AF_FORMAT_END_MASK (1<<0) #if WORDS_BIGENDIAN // Native endian of cpu #define AF_FORMAT_NE AF_FORMAT_BE #else #define AF_FORMAT_NE AF_FORMAT_LE #endif // Signed/unsigned #define AF_FORMAT_SI (0<<1) // Signed #define AF_FORMAT_US (1<<1) // Unsigned #define AF_FORMAT_SIGN_MASK (1<<1) // Fixed or floating point #define AF_FORMAT_I (0<<2) // Int #define AF_FORMAT_F (1<<2) // Foating point #define AF_FORMAT_POINT_MASK (1<<2) // Bits used #define AF_FORMAT_8BIT (0<<3) #define AF_FORMAT_16BIT (1<<3) #define AF_FORMAT_24BIT (2<<3) #define AF_FORMAT_32BIT (3<<3) #define AF_FORMAT_40BIT (4<<3) #define AF_FORMAT_48BIT (5<<3) #define AF_FORMAT_BITS_MASK (7<<3) // Special flags refering to non pcm data #define AF_FORMAT_MU_LAW (1<<6) #define AF_FORMAT_A_LAW (2<<6) #define AF_FORMAT_MPEG2 (3<<6) // MPEG(2) audio #define AF_FORMAT_AC3 (4<<6) // Dolby Digital AC3 #define AF_FORMAT_IMA_ADPCM (5<<6) #define AF_FORMAT_SPECIAL_MASK (7<<6) // PREDEFINED formats #define AF_FORMAT_U8 (AF_FORMAT_I|AF_FORMAT_US|AF_FORMAT_8BIT|AF_FORMAT_NE) #define AF_FORMAT_S8 (AF_FORMAT_I|AF_FORMAT_SI|AF_FORMAT_8BIT|AF_FORMAT_NE) #define AF_FORMAT_U16_LE (AF_FORMAT_I|AF_FORMAT_US|AF_FORMAT_16BIT|AF_FORMAT_LE) #define AF_FORMAT_U16_BE (AF_FORMAT_I|AF_FORMAT_US|AF_FORMAT_16BIT|AF_FORMAT_BE) #define AF_FORMAT_S16_LE (AF_FORMAT_I|AF_FORMAT_SI|AF_FORMAT_16BIT|AF_FORMAT_LE) #define AF_FORMAT_S16_BE (AF_FORMAT_I|AF_FORMAT_SI|AF_FORMAT_16BIT|AF_FORMAT_BE) #define AF_FORMAT_U24_LE (AF_FORMAT_I|AF_FORMAT_US|AF_FORMAT_24BIT|AF_FORMAT_LE) #define AF_FORMAT_U24_BE (AF_FORMAT_I|AF_FORMAT_US|AF_FORMAT_24BIT|AF_FORMAT_BE) #define AF_FORMAT_S24_LE (AF_FORMAT_I|AF_FORMAT_SI|AF_FORMAT_24BIT|AF_FORMAT_LE) #define AF_FORMAT_S24_BE (AF_FORMAT_I|AF_FORMAT_SI|AF_FORMAT_24BIT|AF_FORMAT_BE) #define AF_FORMAT_U32_LE (AF_FORMAT_I|AF_FORMAT_US|AF_FORMAT_32BIT|AF_FORMAT_LE) #define AF_FORMAT_U32_BE (AF_FORMAT_I|AF_FORMAT_US|AF_FORMAT_32BIT|AF_FORMAT_BE) #define AF_FORMAT_S32_LE (AF_FORMAT_I|AF_FORMAT_SI|AF_FORMAT_32BIT|AF_FORMAT_LE) #define AF_FORMAT_S32_BE (AF_FORMAT_I|AF_FORMAT_SI|AF_FORMAT_32BIT|AF_FORMAT_BE) #define AF_FORMAT_FLOAT_LE (AF_FORMAT_F|AF_FORMAT_32BIT|AF_FORMAT_LE) #define AF_FORMAT_FLOAT_BE (AF_FORMAT_F|AF_FORMAT_32BIT|AF_FORMAT_BE) #ifdef WORDS_BIGENDIAN #define AF_FORMAT_U16_NE AF_FORMAT_U16_BE #define AF_FORMAT_S16_NE AF_FORMAT_S16_BE #define AF_FORMAT_U24_NE AF_FORMAT_U24_BE #define AF_FORMAT_S24_NE AF_FORMAT_S24_BE #define AF_FORMAT_U32_NE AF_FORMAT_U32_BE #define AF_FORMAT_S32_NE AF_FORMAT_S32_BE #define AF_FORMAT_FLOAT_NE AF_FORMAT_FLOAT_BE #else #define AF_FORMAT_U16_NE AF_FORMAT_U16_LE #define AF_FORMAT_S16_NE AF_FORMAT_S16_LE #define AF_FORMAT_U24_NE AF_FORMAT_U24_LE #define AF_FORMAT_S24_NE AF_FORMAT_S24_LE #define AF_FORMAT_U32_NE AF_FORMAT_U32_LE #define AF_FORMAT_S32_NE AF_FORMAT_S32_LE #define AF_FORMAT_FLOAT_NE AF_FORMAT_FLOAT_LE #endif #define AF_FORMAT_UNKNOWN (-1) extern int af_str2fmt(const char *str); extern int af_str2fmt_short(const char *str); extern int af_fmt2bits(int format); extern int af_bits2fmt(int bits); extern char* af_fmt2str(int format, char* str, int size); extern const char* af_fmt2str_short(int format); #endif /* MPLAYER_AF_FORMAT_H */