Linuxでのビットレート表示とファイルの変換について

このQ&Aのポイント
  • linuxでwavファイルのビットレートが表示されない問題について解説します
  • ffmpegを使用してmp3ファイルをwavファイルに変換すると、音声情報が粗くなることはありません
  • ファイル変換時にサイズが増えることがありますが、正常な変換プロセスです
回答を見る
  • ベストアンサー

linuxでのビットレートの表示

linuxにおいて nautilusでwavファイルのプロパティを見ると ビットレートが N/A となっていて表示されないことがよくあるのですが、 ビットレートを調べるにはどうしたらいいでしょうか。 サンプリングは44100 Hzと表示されています。 あと、mp3ファイルは圧縮がかけられていますが、 音楽ファイルを編集するときにffmpegなどを用いて $ ffmpeg -i track1.mp3 track1.wav としてmp3ファイルをwavファイルに変換してから一部分カットなどの操作を行えば それ以上音声情報が粗くなることはないと考えていいでしょうか。 試しにこのコマンドで5.9MBのファイルを変換すると43.5MBになりました。 よろしくお願いします。

noname#211211
noname#211211

質問者が選んだベストアンサー

  • ベストアンサー
  • Gotthold
  • ベストアンサー率47% (396/832)
回答No.2

> しかし、wavで保存するといってもwavもビットレートが様々なので、 > それ以上音声情報が粗くならないようにしたければ 「サンプリング周波数」と「量子化ビット数」を変換前のMP3とそろえておけば デコード時に情報が落ちることはありません、 > ffmpeg -i track1.mp3 track1.wav 特に指定しなければ、「サンプリング周波数」と「量子化ビット数」はそのままにされるので このコマンドで問題ないです。 > 編集後はCD音質のwavで保存する MP3がCDと同じサンプリング周波数44.1kHz、量子化ビット数16bitとは限らないので 下手に指定しない方が良いです。 なお、無圧縮のリニアPCM形式wavファイルであれば、 ビットレート[bps]=サンプリング周波数[Hz]×量子化ビット数[bit]×チャンネル数 とかけ算すればビットレートになります。 CDと同じなら、44.1×16×2(ステレオ)=1411.2 bps

noname#211211
質問者

お礼

Gottholdさま、回答いただきありがとうございます。 > > 編集後はCD音質のwavで保存する > MP3がCDと同じサンプリング周波数44.1kHz、量子化ビット数16bitとは限らないので > 下手に指定しない方が良いです。 ここがどういうことなのかよく理解できなかったのですが。 たとえばmp3ファイルがサンプリング周波数33.0kHzに設定されていたとすると、 より高いサンプリング周波数44.1kHzのwavファイルに変換したとしても 整数倍の変換でないので、波形を描き直して細部の情報が少し失われることになる、 という理解で合ってますでしょうか? あと、何で今回の質問のようなことを考えているかというと、 wavファイルを保存する時に音質を犠牲にせずサイズを小さくして保存したい、ということですので 試しに7.8MBのファイルを3つの形式で圧縮とflacへの変換を試してみました。 $ lzma test-1.wav $ gzip -9 test-2.wav $ bzip2 test-3.wav $ ffmpeg -i test-4.wav -acodec flac -compression_level 12 -y test-4.flac ffmpeg version 0.8.16-6:0.8.16-1, Copyright (c) 2000-2014 the Libav developers built on Sep 16 2014 23:10:48 with gcc 4.7.2 The ffmpeg program is only provided for script compatibility and will be removed in a future release. It has been deprecated in the Libav project to allow for incompatible command line syntax improvements in its replacement called avconv (see Changelog for details). Please use avconv instead. [wav @ 0xb5b460] max_analyze_duration reached Input #0, wav, from 'test-4.wav': Duration: 00:04:04.06, bitrate: 256 kb/s Stream #0.0: Audio: adpcm_ima_wav, 32000 Hz, 2 channels, s16, 256 kb/s Output #0, flac, to 'test-4.flac': Metadata: encoder : Lavf53.21.1 Stream #0.0: Audio: flac, 32000 Hz, 2 channels, s16, 200 kb/s Stream mapping: Stream #0.0 -> #0.0 Press ctrl-c to stop encoding Multiple frames in a packet from stream 0 size= 15662kB time=243.29 bitrate= 527.4kbits/s video:0kB audio:15654kB global headers:0kB muxing overhead 0.051467% $ ls -l 合計 48448 -rw-r--r-- 1 boolingi boolingi 7810560 2月 2 2012 test.wav -rw-r--r-- 1 boolingi boolingi 5461985 2月 2 2012 test-1.wav.lzma -rw-r--r-- 1 boolingi boolingi 6214185 2月 2 2012 test-2.wav.gz -rw-r--r-- 1 boolingi boolingi 6180918 2月 2 2012 test-3.wav.bz2 -rw-r--r-- 1 boolingi boolingi 16037867 3月 13 09:09 test-4.flac flacがかえって大きくなったのが奇妙ですが、 圧縮はどれも少しは小さくなるかんじです。

その他の回答 (4)

  • Gotthold
  • ベストアンサー率47% (396/832)
回答No.5

> >  ビットレート[bps]=サンプリング周波数[Hz]×量子化ビット数[bit]×チャンネル数 > mp3のケースではこの計算式と違ってくるようですが、 それは圧縮しているからです。 圧縮される前はそのビットレートなんですよ。 > 量子化ビット数の指定法がわからなkったので、 ffmpegの場合、量子化ビット数の違いは、 コーデックの違いとして取り扱うようです。 8ビットPCMの音声ファイルを作りたいのであれば、 acodecにpcm_u8を指定してみてください。 $ ffmpeg -i in.wav -acodec pcm_u8 out.wav 私も気になってためしてみましたが、 サンプリング周波数が44.1kHzのままであれば 8ビットでも意外と普通に音楽は再生されますね。 (正直もっと酷いかと思ってました。) ただ、全体的にヒスノイズが乗ったような感じになります。 特に無音に近い部分で分かりやすい。 > これでできたファイルを聞いてみましたが、確かに結構ひどい音質です。 チャンネル数が減ってもステレオがモノラルになるだけですから、 サンプリング周波数が下がって高周波音がなくなっているのが音質に効いてますね。

noname#211211
質問者

お礼

Gottholdさま、追加の回答いただきありがとうございます。 > ffmpegの場合、量子化ビット数の違いは、 > コーデックの違いとして取り扱うようです。 > 8ビットPCMの音声ファイルを作りたいのであれば、 > acodecにpcm_u8を指定してみてください。 おかげさまで勉強になります。 32Kbpsのファイルを $ ffmpeg -i test.wav -acodec pcm_u8 -ac 1 test_32kbps_8bit_1ch.wav で変換したものは確かに思ったより普通の音質です。 量子化ビット数を8ビットにするだけでなく8Kbpsにした $ ffmpeg -i test.wav -acodec pcm_u8 -ac 1 -ar 8000 test_8kbps_8bit_1ch.wav はひどい音質なのですが。

  • Gotthold
  • ベストアンサー率47% (396/832)
回答No.4

> $ ffmpeg -i test.wav -ab 64k -ss 00:00:00 -t 00:00:01 test-bps.mp3 > などとやってコマンド実行すればいいですね。 情報が見たいだけなら、入力ファイルだけ指定して 出力ファイルを指定しなければ良いですよ。 > それと、mp3は余分とみなされる部分を削っているので > 同じbpsではwavよりmp3の方が音質が良く聞こえるのではないかと思い > (たびたび申し訳ないのですが、この考えは正しいでしょうか?) 同じビットレートなら、聴覚上の影響が少ない部分を優先的に削るMP3の方が音質は良いですね。 > なぜか1024Kbpsに変換されてしまったようです。 非圧縮形式(WAVで一般的なリニアPCM形式など)ではビットレートを指定することは不可能です。 その場合だと、16ビット×2チャンネルの情報を、1秒ごとに32000回分保存しなければならないのですから、非圧縮だと1024kbps以外の値になりようがありません。 ビットレートをどうしても下げたいなら「サンプリング周波数」、「量子化ビット数」、「チャンネル数」を下げるしか方法がありません。 ビットレートは  ビットレート[bps]=サンプリング周波数[Hz]×量子化ビット数[bit]×チャンネル数 の計算式通りにしか決まらないからです。 例えば、電話並みの音質と言われる、8kHz/8bit/モノラルで  8kHz×8bit×1チャンネル=64kbps ですが、この辺りが実用上の下限でしょうね。 (会話にはともかく音楽には向きません。)

noname#211211
質問者

お礼

Gottholdさま、回答いただきありがとうございます。 お世話になっております。 おかげさまで、今回の質問でwavやmp3に関する重要な部分はだいたい理解しおえることができました。 > 情報が見たいだけなら、入力ファイルだけ指定して > 出力ファイルを指定しなければ良いですよ。 $ ffmpeg -i test.wav これだけでよかったのですね。 >  ビットレート[bps]=サンプリング周波数[Hz]×量子化ビット数[bit]×チャンネル数 mp3のケースではこの計算式と違ってくるようですが、 実用上はあまり気にしなくていいですね。 > 例えば、電話並みの音質と言われる、8kHz/8bit/モノラルで > 8kHz×8bit×1チャンネル=64kbps > ですが、この辺りが実用上の下限でしょうね。 > (会話にはともかく音楽には向きません。) 量子化ビット数の指定法がわからなkったので、 「サンプリング周波数」、「チャンネル数」のみ指定して $ ffmpeg -i track1.mp3 -ac 1 -ar 8000 track1.wav これでできたファイルを聞いてみましたが、確かに結構ひどい音質です。 どうもありがとうございました。

  • Gotthold
  • ベストアンサー率47% (396/832)
回答No.3

> より高いサンプリング周波数44.1kHzのwavファイルに変換したとしても > 整数倍の変換でないので、波形を描き直して細部の情報が少し失われることになる、 > という理解で合ってますでしょうか? その通りです。 できるだけ劣化を避けたいのであれば、不要な変換を避けるべきです。 最終的にCD-DA形式(44.1kHzと決まっている)にしたいなど、変換する必要性があるなら仕方ないですが。 > Stream #0.0: Audio: adpcm_ima_wav, 32000 Hz, 2 channels, s16, 256 kb/s wavファイルというと無圧縮のリニアPCM形式が一般的なのですが、 このwavファイルは違いますね。 このwavファイルはIMA ADPCMという非可逆圧縮形式を使っています。 flacは可逆圧縮形式ですから、非可逆圧縮形式に負けるのは仕方ないですね。 そして、音質を犠牲にしたくないのであれば 非可逆圧縮形式を使うのはNo Goodです。

noname#211211
質問者

お礼

Gottholdさま、回答いただきありがとうございます。 おかげさまでかなり理解出来てきているかんじです。 今回使ったようなwavファイルを 音質を犠牲にせずに 多少なりともサイズを小さくしたい場合は 変換をせずにgzipなどを使うようにしたほうがよさそうです。 それと、ビットレートを調べる方法ですが、 > Stream #0.0: Audio: adpcm_ima_wav, 32000 Hz, 2 channels, s16, 256 kb/s ここに書いてありますので $ ffmpeg -i test.wav -ab 64k -ss 00:00:00 -t 00:00:01 test-bps.mp3 などとやってコマンド実行すればいいですね。 ここでは時間が短くてすむように冒頭の1秒だけ変換するようオプション指定しています。 また、ビットレートというのはwavにしろmp3にしろ要するに秒あたりの容量を示しているだけなので、 原始的ですが 今回使ったファイルは7.8MB(7810KB),4:04でしたので 7810 * 8 / 244 = 256 Kbps と計算して求めてもいいようです。 それと、mp3は余分とみなされる部分を削っているので 同じbpsではwavよりmp3の方が音質が良く聞こえるのではないかと思い (たびたび申し訳ないのですが、この考えは正しいでしょうか?) 64kbpsのwavとmp3を作って聞き比べてみようとしたのですが、 $ ffmpeg -i test.wav -ab 64k test-6.wav ffmpeg version 0.8.16-6:0.8.16-1, Copyright (c) 2000-2014 the Libav developers built on Sep 16 2014 23:10:48 with gcc 4.7.2 The ffmpeg program is only provided for script compatibility and will be removed in a future release. It has been deprecated in the Libav project to allow for incompatible command line syntax improvements in its replacement called avconv (see Changelog for details). Please use avconv instead. [wav @ 0x25cd460] max_analyze_duration reached Input #0, wav, from 'test.wav': Duration: 00:04:04.06, bitrate: 256 kb/s Stream #0.0: Audio: adpcm_ima_wav, 32000 Hz, 2 channels, s16, 256 kb/s Output #0, wav, to 'test-6.wav': Metadata: encoder : Lavf53.21.1 Stream #0.0: Audio: pcm_s16le, 32000 Hz, 2 channels, s16, 1024 kb/s Stream mapping: Stream #0.0 -> #0.0 Press ctrl-c to stop encoding Multiple frames in a packet from stream 0 size= 30404kB time=243.23 bitrate=1024.0kbits/s video:0kB audio:30404kB global headers:0kB muxing overhead 0.000148% $ ls -l -rw-r--r-- 1 boolingi boolingi 7810560 2月 2 2012 test.wav -rw-r--r-- 1 boolingi boolingi 1946481 3月 15 01:55 test-5.mp3 -rw-r--r-- 1 boolingi boolingi 31133446 3月 15 02:08 test-6.wav (一部略) なぜか1024Kbpsに変換されてしまったようです。

  • gunsin
  • ベストアンサー率32% (380/1174)
回答No.1

.wav のビットレートは1411です。 mp3は主に高音域を間引きして、ファイルの容量を小さくしたもの、失われたデータ は戻せませんので、wavに変換しても、ファイル容量が大きくなるだけで、音質面は 変わりません。 変換作業をする都度、音が劣化して行くと思いますが・・・

noname#211211
質問者

お礼

gunsinさま、回答いただきありがとうございます。 はっきり書いていませんでしたが、 $ ffmpeg -i track1.mp3 track1.wav して一部分カットの作業した後はそのままwavで保存する、という編集方法をここでは考えています。 しかし、wavで保存するといってもwavもビットレートが様々なので、 それ以上音声情報が粗くならないようにしたければ 編集後はCD音質のwavで保存する、 というようにしないと一部の音声情報が失われる可能性があるかもしれません。

関連するQ&A

  • 音声のビットレート

    サンプリングが44100でビットレートが320kbの超音質の音声ファイル持ってるんですがそれを動画にのせて無圧縮で出力しました。 そしてH.264のmp4形式にエンコードしたいんですが超音質を保つ為に音声の設定で44100の320kbにエンコーダーで設定したいんですが256kbまでしかありません。 そこで考えたんですけど代わりにサンプリングを44100から48000Hzに変更したら44100Hzの320kb相当の音質を保てますか? もし保てるなら48000Hzの何kbに設定すればいいですかね?

  • ビットレートの表示

    動画の編集をしたいのですが(圧縮)もとのビットレートがわからないと編集後に元のビットレートより大きくなってしまうことがあるのでなんかムダとおもいます。 そこで avi,mpeg,wam.vobファイルなどのビットレートを表示するソフトはありますか? 真空波動拳などは、対象にしている動画のフレームレート[29.99f]などを表示するだけで、ビットレートを表示してくれるものはありません。 動画の例2MB、4MBなどのビットレートを表示してくれるフリーソフトなどはあるのでしょうか? できれば計算機とかでなく、ドラッグ&ドロップするようなソフトであればありがたいです。 教えてください。 VOBにも対応しているとありがたいです。 DVDは4~9MBぐらい というのは参考にならないので、対象にしている動画のビットレートを見たいのです。

  • Wavファイルをmp3に可変ビットレートの謎

    WindowsXP、ソフトはXrecodeIIです。 Wavファイルをmp3に変換する際、可変ビットレートを使用しています。 ちょっと釈然としないので教えていただければ幸いです。 音源はロックです。 例えば元のWavファイルが35.31MB(44.1/16)だった場合 (1)固定ビットレートの256で変換すると、出来上がったWavファイルのプロパティ(マウスのポインターを当てると出てくる表示)は256kbp、サイズは6.4MBになりました。 これは納得できます。 しかし、可変ビットレートで変換した場合 (1)Max256、Min192の場合→190kbps/4.79MB (2)Max256、Min160の場合→161kbps/4.08MB (3)Max256、Min128の場合→256kbps/3.98MB (4)Max256、Min16の場合→256kbps/3.98MB と、まちまちです。 表示されるビットレートは(3)や(4)のように256kbpsのほうが音質高そうですが、実際は(1)が一番ファイル容量が高いですし、一番高音質な設定のはず。しかし、ビットレートは190kbpsと低い表示です。どうにも納得できません(笑) さらに(3)と(4)は設定が違うのに、変換されたファイルは全く同じデータになっているという・・・。 (1)~(4)のケースだとどれが一番音質がいい結果になっているのでしょうか? 因みに当方、大した耳も音響システムも持っていませんので、聴き比べても分かりませんでした(汗) お手数お掛けいたしますが、ご解答よろしくお願いいたします。

  • MP3のビットレートについて

    WAVEファイルのビットレートは (サンプリングレート)×(サンプリングサイズ)×(チャンネル数)=1秒あたりのデータ量(ビットレート) というのはよく聞くことですが、 MP3のビットレートはどのように決められているのですか? まったく見当違いな質問かもしれませんがよろしくお願いします。

  • VBRのビットレートについて(foobar2000にからんで)

    WAVファイルを、mp3(VBR)に変換するのに、foobar2000を使って、エンコードしたのですが、出来上がったmp3ファイルのプロパティから概要で、オーディオファイルのビットレートを見てみると明らかに、本来のビットレート(平均ビットレート)から、はずれた値が表示されています。これは、foorbar2000上での問題なのか、Windows上での問題わかりません。原因はなんなのでしょうか。解決策があれば教えてください。 ちなみに、OSはWindowsXPで、foobar2000のバージョンは、0.9.4.1です。エンコーダーには、LAME3.97を使いVBRで変換しました。よろしくお願いします。

  • 午後のこーだビットレート制限の方法

    午後のこーだにて[ wav/22050hz ]の音声ファイルを[ 128kbps/mp3 ]でエンコードしようとしたのですが、何故か上手くいきません。 詳細設定で最低ビットレート制限は128kbpsにしております。 最高ビットレートも色々と変更して試してみましたが、317kbpsになったり199kpbsになったりと、全く言うことをきいてくれません。 どうしたら上手く出来るのでしょうか? 教えてくだされば幸いです。

  • CDexでのビットレート設定について

    CDexにてCDトラックをMP3に変換をしています。 ビットレートを192Kbps程度にしたいので,ビットレートをmin160,max192にしたのですが,変換されたファイルのビットレートは400を超えてしまいます。 何か設定が悪いのかと思い,再インストールし,何も設定を変更せずに変換すると420Kbpsでした。 ビットレートを192Kbps程度に変更する場合はどのような解決策がありますでしょうか。 OSはXPです。

  • ビットレート?の基礎を教えて!

    こんにちは 音質とか全く素人ですが、最近クラシック音楽を聴くようになりこだわろうか、と思っているところです。 そこで教えていただきたいのですが、自分でも何が分かっていて、何が分かっていないのか把握できていないので、まず以下自分の理解を書きますので、間違っているところを指摘していただければと思います。その後質問を三つさせていただきます。 ・確認  CD音質をそのままパソコンでも聴くためにはWAVという形式で保存しなければならない。また、それを再生するためのソフトも持っていなければならない。しかしWAVファイルは重いため、容量に余裕がない場合やポータブル音楽プレイヤーにいれて持ち運ぶのには適さない。そこで、他の形式が用いられる。WAVへ戻せない不可逆のものでは、mp3やAACがあり、可逆のものではFLACなどがある。  FLACはWAVに戻せることが魅力で、結局は戻して聴くことを前提にしていると思うので良いとして(FLACで聴くこともあるようですが)、mp3とAACについては両者を比較したサイト(http://aok3.web.infoseek.co.jp/mp3vsaac.htm)で「128kbps以下ならAAC、192kbps以上ならMP 3」とされているので、まぁこの点に関してはどちらでも良い。 ・質問1  あと、itunesやxアプリ等を通して取り込んだ音楽データはAAC(m4a)で保存されていることはわかるのですが、ビットレートがなにかがわかりません。詳細表示でビットレートを表示させてもなにも示してくれません。どこをみればわかるのでしょうか。 ・質問2  別の質問のところで、ある回答者様が、「データとして保存するなら wavのまま保存して 再生する機会に応じて(iPodとか…)対応しているビットレートに変換したほうが音はいいと思う」(http://okwave.jp/qa/q4264451.html)という発言をされていました。これはどういう意味でしょう。wavで保存しつつ、聴く時に変換するというとそのwavファイル自体を例えばAACに変換してしまうということでしょうか。すると、不可逆ですから当然wavには戻せません。一度は聴く機会があると想定すると、なぜわざわざwavで保存するのでしょうか。最初からAACで保存するのと何が違うのでしょう。 ・質問3  質問2と関連しますが、私の理解するところでの理想は、wavファイルとしてパソコンに取り込んでおき、ポータブルプレイヤー用にmp3かAACに変換したファイルを別で用意してプレイヤーにいれたりすること、ですが、これは理想として妥当ですか?それとも、わけわからないことをしているでしょうか? まったくわからないことだらけで、変な質問をしていたら申し訳ありません。 よろしくおねがいします。

  • WAVファイルのビットレートとサイズ

    一般的な伴奏つきの歌のファイルを操作しています。大半の音楽のWAVファイル(1)のプロパティを開くと、ビットレートが1441kbpsとなっていますが、ある歌のファイル(2)では176kbps となっておりました。Soundengine で開くと(1)は16bit、(2)は8bitとなっており、(1)をSoundengineで8ビットに変換したWAVファイルはサイズが半分になり、ビットレートも半分の715kbpsになりました。(2)の176kbpsと(1)を8ビット化したときの715kbps とは、桁が違うようですが、これは何をいみするのでしょうか? また、(1)を8bitにしたWAVファイルと、(1)をmp3変換したものとは、サイズがトントンですが、音質その他どちらが保存に適しているのでしょう?

  • 音声ビットレートについての疑問です

    MP3で圧縮する際の設定で、同じ48KHzのサンプリングでも、320Kbpsや224Kbpsなどいくつか選択できます。 これは、量子ビットでbpsに違いがでているのでしょうか? また、音声エンコード方式?にはMP3、WMA、AAC等いくつか種類がありますが サンプリングレートと量子ビットが同じ組み合わせなら、各エンコード毎にビットレートが違っても同じくらいの音質なのでしょうか? 例:MP3→48KHz 16bit 320Kbps WMA→48KHz 16bit 480Kbps ※数値はでたらめです。 上記二つは、ビットレートに違いがありますが、同じ48KHz 16bitなので音質は同じなのでしょうか? よろしくお願いします。