| Server IP : 208.122.213.31 / Your IP : 216.73.216.45 Web Server : Apache System : Linux msd6191.mjhst.com 4.18.0-553.137.1.el8_10.x86_64 #1 SMP Wed Jun 24 11:40:24 UTC 2026 x86_64 User : WHMCS_MIA_382 ( 1001) PHP Version : 7.4.33 Disable Function : NONE MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /usr/share/doc/libmad/ |
Upload File : |
libmad - MPEG audio decoder library
Copyright (C) 2000-2004 Underbit Technologies, Inc.
$Id: TODO,v 1.3 2004/02/05 09:02:39 rob Exp $
===============================================================================
libmad:
- more API layers (buffering, PCM samples, dithering, etc.)
- x86 performance optimization compiler flags
- function documentation, general docs
- finish async API
- parse system streams?
- MPEG-2 MC, AAC?
- logarithmic multiplication?
- multiple frame decoding for better locality of reference?
- frame serial numbers, Layer III frame continuity checks
fixed.h:
- experiment with FPM_INTEL:
# if 1
# define mad_f_scale64(hi, lo) \
({ mad_fixed_t __result; \
asm ("shrl %3,%1\n\t" \
"shll %4,%2\n\t" \
"orl %2,%1" \
: "=rm" (__result) \
: "0" (lo), "r" (hi), \
"I" (MAD_F_SCALEBITS), "I" (32 - MAD_F_SCALEBITS) \
: "cc"); \
__result; \
})
# else
# define mad_f_scale64(hi, lo) \
({ mad_fixed64hi_t __hi_; \
mad_fixed64lo_t __lo_; \
mad_fixed_t __result; \
asm ("sall %2,%1" \
: "=r" (__hi_) \
: "0" (hi), "I" (32 - MAD_F_SCALEBITS) \
: "cc"); \
asm ("shrl %2,%1" \
: "=r" (__lo_) \
: "0" (lo), "I" (MAD_F_SCALEBITS) \
: "cc"); \
asm ("orl %1,%2" \
: "=rm" (__result) \
: "r" (__hi_), "0" (__lo_) \
: "cc"); \
__result; \
})
# endif
libmad Layer I:
- check frame length sanity
libmad Layer II:
- check frame length sanity
libmad Layer III:
- circular buffer
- optimize zero_part from Huffman decoding throughout
- MPEG 2.5 8000 Hz sf bands? mixed blocks?
- stereo->mono conversion optimization?
- enable frame-at-a-time decoding
- improve portability of huffman.c