Closed3

Android(ExoPlayer) 端末で Opus 音声データをシークするには WebM コンテナを利用する必要があるっぽい件

ExoPlayer で、Opus コーデックのファイルを再生するとき、コンテナが Matroska (.mkv) だと、再生はできるがシークができない。コンテナを WebM に変更したところ再生もできるしシークもできる。

エンコードには ffmpeg を利用。

# Matroska
ffmpeg -i input.wav -c:a libopus -b:a 96k output.mkv

# WebM
ffmpeg -i input.wav -c:a libopus -b:a 96k output.webm

ちなみに Vorbis を試すと、同等音質での圧縮率がかなり悪い(データによるが、ファイルサイズが 1.5〜2倍前後)ので採用を断念。

ffmpeg -i input.wav -c:a libvorbis -b:a 96k output.ogg

Vorbis の場合、ミニマムビットレートは 45k らしい。なんでこんな中途半端な値なんだろ〜〜??

このスクラップは2021/01/14にクローズされました
ログインするとコメントできます