GNU/Linux >> Linux の 問題 >  >> Linux

通常のデータ CD のように CD Audio を dd できないのはなぜですか?

オーディオ CD (独自の Red Book では CD-DA とも呼ばれます) は、CD の最も古い形式です。この形式はオーディオ レコードに着想を得ているため、連続データを含むスパイラル トラックがあり、このデータとインターリーブされるのはタイミング情報です。適切なブロック ヘッダーがありません。情報の最小単位は 1 フレーム (1/75 秒) で、これには 2352 データ バイト (2 チャネルの場合、2 サンプル/バイト、44.1 kHz) が含まれます。

これは 2 のべき乗ではなく、256 や 512 で割り切れないことに注意してください。そのため、オーディオ フレームをデータ ブロックとして扱うのは少し厄介です。その上、初期の CD ドライブは常に適切に配置できるとは限らないため、「12 分 4 秒と 5 1/75 秒のフレームを読み取ってください」と指示すると、数バイト早くまたは遅く開始することがあります。そのため、オーディオ CD を「正しく」読み取るためのプログラムが非常に多くあります (cdparanoia など)。 ).

これをデータ CD (Yellow Book で指定されている CD-ROM とも呼ばれます) と比較してみましょう:彼らは 2352 バイトのオーディオ フレームを取得し、それらの一部をヘッダー情報として使用してブロックを識別しました。彼らはまた、別のレベルのエラー訂正を追加したので、オーディオ フレームの 2352 バイトはデータ フレームでは 2048 バイトになります。

これで、ブロック サイズとして 2 の累乗が得られ、適切なヘッダーがあり、正確なシークを行うことができ、これが単なるブロック デバイスであると本当に偽ることができます。

これが、デフォルトでオーディオ CD がブロック デバイスとして扱われず、データ CD がブロック デバイスとして扱われる理由です。

とはいえ、オーディオ CD の情報をファイル システムで、たとえば各トラックの WAV ファイルとして利用可能にしない理由はありません。実際、CDfs のようなオープンソース プロジェクトや、FUSE を使用する今は思い出せない他のプロジェクトがあり、CD データをこのように表現しています。ただし、まだジッター補正がないなどの問題が残っているので、 cdparanoia のようなものを使用した方がよいでしょう。 .

また、カーネルの人々も、それは悪い考えだと考えていました.


Linux
  1. Linux –なぜSuだけでなくSuを使用するのですか?

  2. Lsでアンカー^$を使用できますか?

  3. cat を使用して、各行に区切り記号があるファイルを行ごとに読み取れないのはなぜですか

  1. updatedb を無効にすることはできますか?

  2. OOM-Killer が要求しすぎるプロセスを強制終了できないのはなぜですか?

  3. innodb_file_per_table を使用する理由

  1. ipのifconfigを削除する必要がある理由

  2. シェルドットファイルでできること

  3. パルスオーディオのアルサミキサー?