libmad

MyMinimad ── Linux下用libmad写的mp3解码播放程序(四)

时光毁灭记忆、已成空白 提交于 2019-12-05 03:16:57
优化了内存使用,不再使用整个文件的mmap /* * 本程序是从 minimad 改进而来,如要更详细的说明请参看 minimad.c * * Gu Zhou, 2009/12/25, SiChuan University, China * * 系统: ubuntu 19.10 * 依赖: sudo apt install libmad0-dev libasound2-dev * 编译: gcc -Wall -o madplayer madplayer.c -lmad -lasound * 运行: ./madplayer filename.mp3 * * 20191027, bugfix & improve * 20191120, optimized for memory used */ #include <stdio.h> #include <mad.h> #include <alsa/asoundlib.h> /* pcm device, eg. "plughw:0,0", use `aplay -l` */ const char *PCM_DEVICE = "default"; const size_t BUFFER_SIZE = 65536; static snd_pcm_hw_params_t *hwparams = NULL; static snd_pcm_t *pcm

MyMinimad ── Linux下用libmad写的mp3解码播放程序(四)

|▌冷眼眸甩不掉的悲伤 提交于 2019-11-25 22:37:01
优化了内存使用,不再使用mmap映射整个文件到内存 /* * 本程序是从 minimad 改进而来,如要更详细的说明请参看 minimad.c * * Gu Zhou, 2009/12/25, SiChuan University, China * * 系统: ubuntu 19.10 * 依赖: sudo apt install libmad0-dev libasound2-dev * 编译: gcc -Wall -o madplayer madplayer.c -lmad -lasound * 运行: ./madplayer filename.mp3 * * 20191027, bugfix & improve * 20191120, optimized for memory used */ #include <stdio.h> #include <mad.h> #include <alsa/asoundlib.h> /* pcm device, eg. "plughw:0,0", use `aplay -l` */ const char *PCM_DEVICE = "default"; const size_t BUFFER_SIZE = 65536; static snd_pcm_hw_params_t *hwparams = NULL; static snd_pcm_t