前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >libmad学习进阶6------madplay的使用 总结

libmad学习进阶6------madplay的使用 总结

作者头像
用户4148957
发布2022-06-14 08:17:47
发布2022-06-14 08:17:47
1.5K0
举报
文章被收录于专栏:C/C++与音视频C/C++与音视频

1.先安装 1.madplay-0.15.2b.tar.gz 2.libmad-0.15.1b.tar.gz 3 libid3tag-0.15.1b.tar.gz  方法是:./configure  sudo make sudo make install prefix = /usr/local  中prefix 为make install的安装目录,默认在/usr/loacl 如果希望安装到其他目录 ./configure --prefix=/安装目录路径 4.执行madplay 播放mp3 先加载动态库 :如 export LD_LIBRARY_PATH=/usr/local/lib 播放mp3     ./madplay 1.mp3 2.mp3 3.mp3  madpay功能很强求,可以实现多个节目循环播放,快进拖动播放,暂停,恢复,支持wav等格式输出等。 目前madplay还不支持网络播放.不过mp123支持网络播放。 madplay使用方法: 传入打印既可以使用短传入(-n ),也可以使用长传入(--abc),二者等效,下面只讲短传入 -v  获取播放时间 -q  不存在任何打印,但现实警告 -Q  不存在任何打印 --downsample  只采用一半数据 -i  忽略CRC校验错误 -o PATH/xx.wav 可以用来转码,将mp3转为wav   也可以是其他格式,见说明;.raw  表示是元素pcm,.hex等 -a 开启衰减音量 ,增加音量,衰减系统为-175~+18    (当然通过键盘+ —也可以调整音量) -A 同-a -1 -2 -m -S 分别指左声道,右声道,双声道,立体声 -s  用于seek播放 如:0:1:20:11 ,seek到1小时,2分钟,11秒时开始播放 -t  用于播放时间现在  0:1:20:11 ,播放到1小时,2分钟,11秒时就停止 -z  用于随机播放列表 -r, --repeat[=MAX]   循环播放无限次或Max次  --tty-control            enable keyboard controls  默认是使能热键 --no-tty-control         disable keyboard controls 热键使用 下一首歌曲; f,或ctrl+n 或者> 上一首歌曲  b ,或ctrl+p 或者< 退出:q, Q,获取ctrl+c 获取播放状态信息: i  ? 调节音量: - + _ = 暂停恢复:p 停止:s Usage: ./madplay [OPTIONS] FILE [...] Decode and play MPEG audio FILE(s). Verbosity:   -v, --verbose                show status while decoding   -q, --quiet                  be quiet but show warnings   -Q, --very-quiet             be quiet and do not show warnings       --display-time=MODE      use default verbose time display MODE                                  (remaining, current, overall) Decoding:       --downsample             reduce sample rate 2:1   -i, --ignore-crc             ignore CRC errors       --ancillary-output=PATH  write ancillary data to PATH Audio output:   -o, --output=[TYPE:]PATH     write output to PATH with format TYPE (below)   -b, --bit-depth=DEPTH        request DEPTH bits per sample   -R, --sample-rate=HERTZ      request HERTZ samples per second   -d, --no-dither              do not dither output PCM samples       --fade-in[=DURATION]     fade-in songs over DURATION (default 0:05)   -a, --attenuate=DECIBELS     attenuate signal by DECIBELS (-)   -a, --amplify=DECIBELS       amplify signal by DECIBELS (+)   -A, --adjust-volume=DECIBELS override per-file volume adjustments   -G, --replay-gain[=PROFILE]  enable Replay Gain volume adjustments using                                  PROFILE (radio, audiophile) Channel selection:   -1, --left                   output first (left) channel only   -2, --right                  output second (right) channel only   -m, --mono                   mix left and right channels for monaural output   -S, --stereo                 force stereo output Playback:   -s, --start=TIME             skip to begin at TIME (HH:MM:SS.DDD)   -t, --time=DURATION          play only for DURATION (HH:MM:SS.DDD)   -z, --shuffle                randomize file list   -r, --repeat[=MAX]           play files MAX times, or indefinitely       --tty-control            enable keyboard controls       --no-tty-control         disable keyboard controls Miscellaneous:   -T, --show-tags-only         show ID3/encoder tags only (do not decode)   -V, --version                display version number and exit       --license                show copyright/license message and exit   -h, --help                   display this help and exit Supported output formats:   cdda    CD audio, 16-bit big-endian 44100 Hz stereo PCM (*.cdr, *.cda)   aiff    Audio IFF, [16-bit] PCM (*.aif, *.aiff)   wave    Microsoft RIFF/WAVE, [16-bit] PCM (*.wav)   snd     Sun/NeXT audio, 8-bit ISDN mu-law (*.au, *.snd)   raw     binary [16-bit] host-endian linear PCM   hex     ASCII hexadecimal [24-bit] linear PCM

  null    no output (decode only)

实际项目中可以将该应用封装成一个库(将main函数封装成一个接口)提供给上层用,而热键动作,可以创建一个读按键线程,或者另一个播放器发消息来控制动作,完成对播放器的控制。输出要根据平台不同,将pcm摔倒不同驱动中。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2014-02-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档