📄 todo
字号:
libmad - MPEG audio decoder library Copyright (C) 2000-2003 Underbit Technologies, Inc. $Id: TODO,v 1.1 2003/05/29 04:39:34 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 checksfixed.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; \ })# endiflibmad Layer I: - check frame length sanitylibmad Layer II: - check legal bitrate/mode combinations - check frame length sanitylibmad 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
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -