noname
(555)
1
用过诺基亚/索尼爱立信/摩托罗拉之类按键机的都接触过很多 mid 格式的音乐,可能经历过跟我相同的问题.
就是诺基亚 jar 游戏里的 mid 格式的音乐如果在电脑上播放就会感觉音质特别怪,比如用 timidity 等软件播放
但我之前用 antiX 默认的音乐播放器记得可以正常播放 mid 音乐.不过时间太久记不清有没有这回事了,
想问下大佬们用现在的很多支持 mid 的软件为啥会出现这种情况.
ddqi
(weearc)
2
mid 播放没有 “正常” 一说,古早时期的 mid 放到其他机器上播放一样可能音色等不同。单纯是各厂家/开发者的对于音色等定义不同导致的。如果这些可调可以自己调调看
noname
(555)
3
原来如此,我刚试了下让诺基亚插上飞利浦 spa33 的音箱,然后用诺基亚自带的音乐播放器播放
确实跟直接在电脑上用 timidity 音色不一样
这个看样子是软件问题 (但不同诺基亚之机型间音色似乎也有差别),我试试去调下音色.
midi 只记录什么音在什么时间按了多久这种信息。你得选一款你喜欢的声音字体(soundfont)。
这里就有 Nokia 的 soundfont。直接用它把 midi 转成别的格式(比如 wav)放着就好了:
fluidsynth <soundfont file> -F <output file> <MIDI file>
1赞
其实「font」只是「字体」的「体」的部分。所以不同的乐器风格,就有了不同的 soundfont。
轮廓字体(against 位图字体),本身就是一些贝塞尔(beizer)曲线…本质是 instructions。而 Linux 下的 Freetype/Pango/Harfbuzz,Mac 下的 CoreText,Windows 下的 DirectWrite/Uniscribe 就是拿这些指引来画线的,所以字体显示才会在系统间有不同。
具体到你的问题,midi 可以想像为 Noto Sans 这样的 CFF 字体,wav 可以想象成宋体这样的 Bitmap 字体,想在平台直接都显示一样,要么转为位图字体,要么用你喜欢的 sound font 也就是渲染器,就是 “体” 的部分。