web-dev-qa-db-ja.com

同じシステムのウィンドウで適切に再生される特定のVCDの読み取り中のI / Oエラー

これはUbuntu 12.04/12.10/13.04の特定のVCDを再生できないという厄介な問題です。これは、欠落したコーデックや暗号化されたコンテンツの問題ではなく、I/Oエラーが発生します。

さて、VCDには物理的な損傷があるのではないかと思いました。しかし、いいえ、実際はそうではありません。Windows7でうまく機能し、新しいVCDでも問題は解決しません。

次に、いくつかの非常に基本的な情報を示します。

特に、/ mpegavディレクトリには3つの* .datファイルがあります。

theo@theo-desktop ~/VCD1/mpegav $ ls -l -h
total 660M
-r-------- 1 theo theo 2.5M Jun  6  2007 avseq01.dat
-r-------- 1 theo theo 3.4M Jun  6  2007 avseq02.dat
-r-------- 1 theo theo 654M Jun  6  2007 avseq03.dat

最初の2つのファイルはエラーなしで正常に再生またはコピーされ、最後のファイルはI/Oエラーを発生させます。

theo@theo-desktop ~/VCD1/mpegav $ vlc avseq03.dat 
VLC media player 2.0.4 Twoflower (revision 2.0.3-289-g6e6100a)
[0x11a2028] main libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
"sni-qt/5685" WARN  22:03:44.080 void StatusNotifierItemFactory::connectToSnw() Invalid interface to SNW_SERVICE 
[0x7f9944001488] filesystem access error: failed to read (Input/output error)
[0x7f99440015d8] main stream error: cannot pre fill buffer

通常のcpコマンドを使用してファイルをコピーしているときに、I/Oエラーが発生します。 cpの前にSudoを置いても何も変わりません。

theo@theo-desktop ~/VCD1/mpegav $ cp avseq03.dat test.dat
cp: cannot create regular file `test.dat': Read-only file system
theo@theo-desktop ~/VCD1/mpegav $ cp avseq03.dat ~/test.dat
cp: reading `avseq03.dat': Input/output error
cp: failed to extend `/home/theo/test.dat': Input/output error

Ddコマンドでもう一度試してください。 1.7MBのみの出力ファイルを作成します。

theo@theo-desktop ~/VCD1/mpegav $ dd if=/dev/sr0 of=~/Desktop/VCD1.iso
dd: reading `/dev/sr0': Input/output error
3232+0 records in
3232+0 records out
1654784 bytes (1.7 MB) copied, 1.50804 s, 1.1 MB/s

これらのすべてのコマンドを発行する前に、VCDファイルを手動でマウントしました。

theo@theo-desktop ~ $ Sudo mount -t iso9660 /dev/sr0 VCD1
mount: block device /dev/sr0 is write-protected, mounting read-only

デフォルトのマウントポイント/ media/theo/VideoCDからファイルにアクセスしても、まったく同じ結果になります。

これは新鮮なVCDであり、物理的な損傷はなく、Windowsで完全に再生/コピーされるという点を強調するだけです。

別の特定の数のVCDは、mpegavディレクトリに* .datファイルを1つだけ持っていますが(特に、タイトル/イントロなどがないパート2では)、Ubuntuでエラーなしに再生/コピーされます。

これは、Windowsでうまく機能しているのにLinuxで再生できないのはなぜかと思うと、非常に困惑します。 VCDを再生するためだけにWindowsを保持したくない。私はここで再生またはリッピングできないVCDの非常に大きなコレクションを持っています。

そして、この同じ問題は1月以降未解決のままでした。ここを参照してください。 buntu 12.10 VCDを再生できません

1
spherical_cow

これは少し古い質問です。私は私の友人のインストールmplayerについて同じ問題で検索していました。これを試して、トラック数を表示してください

mplayer vcd://

その後、ほとんどが2番目または3番目のトラックになります。このコマンドを使用してvcdを実行します

mplayer -fs -vo gl2 vcd://2 

2トラックのvcd

-fs #show full screen
-vo gl2 #choose video output driver
vcd://  #play VCD

詳細については、mplayerのマニュアルページを確認してください

Ubuntuforumsのこの投稿に感謝 TheFuによる

4
Vemman

その理由は、ディスクに直接アクセスするのではなく、VCDファイルにアクセスしているためです。つまり、VCDは通常のデータCDよりも少ないエラー修正を使用し、使用されているビデオコーデックのフォールトトレランスに依存しているため、書き込み中にファイルにエラーが発生し、後でVCDからコピーできず、再生できる可能性があります。ディスクが適切にアクセスされている場合、問題なく動作します。ビデオCDの詳細については、 Wikipediaの記事 および mplayerのマニュアル の章を参照してください。

ディスクをマウントしてファイルシステム経由でファイルにアクセスするのではなく、mplayerやVLCなどのビデオcdを処理できるプレーヤーを使用してvcdの再生を直接開始することをお勧めします。 VLCでこれを行うには、vlc vcd://またはVLC GUIを開き、[メディア]メニューに移動して、[ディスクを開く]をクリックします。

VLC media menu

次のダイアログで、SVCD/VCDを選択し、ドライブ/ devノード(質問に正しく表示されていれば/ dev/sr0)を入力します。

VLC Open Disc dialogue

2
soulsource