diff --git a/ja_JP.eucJP/books/handbook/multimedia/chapter.sgml b/ja_JP.eucJP/books/handbook/multimedia/chapter.sgml
index c2e85987ca..7dbbbab6ed 100644
--- a/ja_JP.eucJP/books/handbook/multimedia/chapter.sgml
+++ b/ja_JP.eucJP/books/handbook/multimedia/chapter.sgml
@@ -2,7 +2,7 @@
The FreeBSD Documentation Project
The FreeBSD Japanese Documentation Project
- Original revision: 1.78
+ Original revision: 1.98
$FreeBSD$
-->
@@ -42,7 +42,7 @@
この章ではサウンドカードを設定するために必要な方法を説明します
(ただし、高音質で再生するためには若干の微調整が必要かもしれません)。
ビデオカードのハードウェアに関する問題は、
- &xfree86; ()
+ X11 ()
のインストールと設定においてすでに扱いましたので、
そちらをご覧ください。
@@ -67,7 +67,7 @@
- &xfree86; 環境で
+ X サーバで
どのようにビデオに対応しているか
@@ -87,6 +87,10 @@
TV カードの設定方法
+
+
+ 画像スキャナの設定方法
+
この章を読む前に、以下のことを理解しておく必要があります。
@@ -96,15 +100,6 @@
()
- ビデオに関する節では &xfree86; 4.X
- (x11/XFree86-4)
- がインストールされているものとします。
- &xfree86; 3.X でも動作するかもしれませんが、
- この章で説明している方法ではテストされていません。
- もし &xfree86; 3.X において
- ここで説明している方法で動かないことを見付けたら、
- 私たちに知らせてください。
-
オーディオ CD を &man.mount.8;
でマウントしようとすると、少なくともエラーになります。
@@ -124,11 +119,19 @@
+
+
+ Marc
+ Fonvieille
+ &os; 5.X のための再構成:
+
+
+
サウンドカードの設定
- デバイスを正しく設置する
+ システムを設定する
PCI
ISA
@@ -138,60 +141,11 @@
そのカードが使用しているチップ、そして PCI, ISA
どちらのカードなのかを確認する必要があります。
FreeBSD は PCI および ISA の両方のカードに幅広く対応しています。
- 次のリストは完全ではありませんが、
- 良く使われているカードがだいたい含まれています。
- もし、お使いのカードがこのリストにない場合は、
- &man.pcm.4; のマニュアルを確認してください。
-
-
-
- Crystal 4237, 4236, 4232, 4231
-
-
-
- Yamaha OPL-SAx
-
-
-
- OPTi931
-
-
-
- Ensoniq AudioPCI 1370/1371
-
-
-
- ESS Solo-1/1E
-
-
-
- NeoMagic 256AV/ZX
-
-
-
- &soundblaster; Pro, 16, 32, AWE64, AWE128, Live
-
-
-
- Creative ViBRA16
-
-
-
- Advanced Asound 100, 110 および Logic ALS120
-
-
-
- ES 1868, 1869, 1879, 1888
-
-
-
- Gravis UltraSound
-
-
-
- Aureal Vortex 1 および 2
-
-
+ 使用しているカードが対応しているかどうかは、
+ ハードウェアノート
+ の対応オーディオデバイスの一覧を調べてください。
+ この文書には、カードに対してどのドライバを利用すればよいか
+ についても言及されています。
カーネル
@@ -205,7 +159,7 @@
を使ってサウンドカードのカーネルモジュールを単に読み込むことです。
次のコマンドで実現できます。
- &prompt.root; kldload snd_emu10k1.ko
+ &prompt.root; kldload snd_emu10k1
または /boot/loader.conf
ファイルにこのような適切な行を加えて実現することもできます。
@@ -214,218 +168,191 @@
以上は Creative &soundblaster; Live! サウンドカードの例です。
他に利用可能な読み込み可能なサウンドモジュールは
/boot/defaults/loader.conf
- に記載されています。
+ に記載されています。
+ どのドライバを利用すればいいか確かでなければ、
+ snd_driver
+ モジュールを読み込んでみてください。
- もう一つの方法は、
+ &prompt.root; kldload snd_driver
+
+ snd_driver モジュールは、
+ 一般に使用されるカードに対応したドライバをまとめて一度に読み込む
+ メタドライバです。このドライバを使用すれば、
+ 速やかに正しいドライバを探し出すことができるでしょう。
+ /boot/loader.conf ファイルを使用して、
+ すべてのサウンドドライバを読み込むこともできます。
+
+
+ &os; 4.X ですべてのサウンドドライバを読み込むためには、
+ snd_driver モジュールの代わりに
+ snd モジュールを使用してください。
+
+
+ 二つ目の方法は、
サウンドカードのドライバをカーネルへ静的に組み込むことです。
以下の節では、この方法でハードウェアを対応させる方法を説明します。
カーネル再構築の詳細は
を参照してください。
- Creative, Advance および ESS 社製サウンドカード
+ サウンドに対応したカスタムカーネルを設定する
- これらのカードを使用する場合は、
- カーネルコンフィグレーションファイル
- に以下の設定を追加する必要があります。
+ はじめに、汎用オーディオドライバ
+ &man.sound.4; をカーネルに追加します。
+ カーネルコンフィグレーションファイルに以下の行を追加してください。
+
+ device sound
+
+ &os; 4.X では、次の行を使用します。
device pcm
- PnP 対応の ISA カードを使用する場合は、
- さらに以下を追加する必要があるでしょう。
+ 次に、サウンドカードに対応したドライバを追加します。
+ それには、どのドライバがカードに対応しているかを知る必要があります。
+ 使用しているカードに対する正しいドライバを決定するために、
+ ハードウェアノート
+ の対応オーディオデバイスの一覧を調べてください。
+ たとえば、Creative &soundblaster; Live! サウンドカードは
+ &man.snd.emu10k1.4; ドライバが対応しています。
+ このカードを使用するためには、カーネルコンフィグレーションファイルに
+ 以下の行を追加してください。
+
+ device snd_emu10k1
+
+ ドライバのマニュアルページを読んで、
+ 追加すべき構文を調べてください。
+ カーネルコンフィグレーションファイルにおける
+ サウンドドライバの構文に関する情報は、
+ /usr/src/sys/conf/NOTES
+ (&os; 4.X では /usr/src/sys/i386/conf/LINT)
+ にもあります。
+
+ PnP 非対応の ISA カードでは、
+ カーネルにカードが使用する資源
+ (IRQ, I/O ポートなど) を明示的に指定する必要があるかもしれません。
+ この場合は、/boot/device.hints
+ ファイルを使用してください。
+ システムの起動時に、&man.loader.8;
+ はこのファイルを読み、設定情報をカーネルに渡します。
+ たとえば、PnP 非対応の古い Creative &soundblaster; 16 (ISA 接続)
+ には &man.snd.sbc.4; ドライバが対応していますが、
+ カーネルコンフィグレーションファイルに以下の行を追加すると同時に、
device sbc
- PnP 非対応の ISA のカードを使用する場合は以下を加えます。
+ /boot/device.hints
+ ファイルに以下のエントリを追加してください。
- device pcm
-device sbc0 at isa? port 0x220 irq 5 drq 1 flags 0x15
+ hint.sbc.0.at="isa"
+hint.sbc.0.port="0x220"
+hint.sbc.0.irq="5"
+hint.sbc.0.drq="1"
+hint.sbc.0.flags="0x15"
- これらは標準の設定にあわせたものです。
- IRQ や他の設定はカードに合わせて変更する必要があるかもしれません。
- 詳細は &man.sbc.4; のマニュアルを参照してください。
+ この例では、
+ I/O ポートに 0x220 を、
+ IRQ に 5 を使用します。
+
+ /boot/device.hints
+ ファイルに用いるべき構文は、
+ 各ドライバのマニュアルページに記載されています。
+ &os; 4.X では、
+ この設定をカーネルコンフィグレーションファイルに直接記述します。
+ ISA カードでは、たとえば以下のような行を追加してください。
+
+ device sbc0 at isa? port 0x220 irq 5 drq 1 flags 0x15
+
+ 初期設定は以上の通りです。
+ カードを使用する状況によっては、
+ IRQ やその他の設定を変更する必要があるかもしれません。
+ 詳細は &man.snd.sbc.4; マニュアルページをご覧ください。
- FreeBSD 4.0 は、パッチを適用しない限り、
- Sound Blaster Live には対応していません
- (また、この節ではその方法について扱いません)。
- このカードを使用しようとする前に、最新の -STABLE
- に更新することをおすすめします。
+ &os; 4.X において、
+ マザーボードに搭載されたサウンドデバイスを利用するシステムでは、
+ 以下の設定が必要になるかもしれません。
+
+ options PNPBIOS
-
-
- Gravis 社製 UltraSound カード
-
- PnP 対応 ISA カードを使用するには、
- カーネルコンフィグレーションファイル
- に次の設定を追加する必要があるでしょう。
-
- device pcm
-device gusc
-
- PnP 非対応の
- ISA カードの場合には次の設定を追加する必要があるでしょう。
-
- device pcm
-device gus0 at isa? port 0x220 irq 5 drq 1 flags 0x13
-
- IRQ や他の設定はカードに合わせて変更する必要があるかもしれません。
- 詳細は &man.gusc.4; のマニュアルを参照してください。
-
-
-
- Crystal 社製サウンドカード
-
- Crystal 社製のカードを使用する場合は、
- カーネルコンフィグレーションファイル
- に以下の設定が必要となるでしょう。
-
- device pcm
-device csa
-
-
-
- 一般的なカードのサポート
-
- PnP 対応の ISA カードまたは PCI カードを使用する場合は、
- カーネルコンフィグレーションファイル
- に以下の設定が必要となるでしょう。
-
- device pcm
-
- ブリッジドライバを持たない、PnP 非対応の ISA
- カードの場合は次の設定が必要となるでしょう。
-
- device pcm0 at isa? irq 10 drq 1 flags 0x0
-
- IRQ や他の設定はカードに合わせて変更する必要があるかもしれません。
-
-
-
- オンボードサウンド
-
- マザーボードに搭載されたサウンドデバイスを利用するシステムでは、
- 以下の設定が必要になるかもしれません。
-
- options PNPBIOS
-
-
- デバイスノードの作成とテスト
+
+ サウンドカードのテスト
- デバイスノード
- 再起動した後、ログインして次のように
- /var/run/dmesg.boot
- にデバイスがあるか確かめます。
+ カーネルを変更して再起動するか、必要となるモジュールを読み込むと、
+ システムのメッセージバッファ (&man.dmesg.8;)
+ にサウンドカードが認識されたことが示されます。
+ たとえば、次のようなメッセージが出力されます。
- &prompt.root; grep pcm /var/run/dmesg.boot
-pcm0: <SB16 DSP 4.11> on sbc0
+ pcm0: <Intel ICH3 (82801CA)> port 0xdc80-0xdcbf,0xd800-0xd8ff irq 5 at device 31.5 on pci0
+pcm0: [GIANT-LOCKED]
+pcm0: <Cirrus Logic CS4205 AC97 Codec>
- あなたのシステムでは、これとは異なる出力になるかもしれません。
+ サウンドカードの状態は、/dev/sndstat
+ ファイルを使用して確認することができます。
+
+ &prompt.root; cat /dev/sndstat
+FreeBSD Audio Driver (newpcm)
+Installed devices:
+pcm0: <Intel ICH3 (82801CA)> at io 0xd800, 0xdc80 irq 5 bufsz 16384
+kld snd_ich (1p/2r/0v channels duplex default)
+
+ この出力はシステムによって異なるでしょう。
pcm デバイスがなければ、
- 今までの手順のどこかが間違っています。
+ 今までの手順を振り返ってみてください。
カーネルコンフィグレーションファイルをもう一度見直して、
正しいデバイスを選択しているかどうか確認してください。
トラブルシューティングは
を参照してください。
-
- FreeBSD 5.0 以降を使用しているなら、
- この節の残りの部分は読み飛ばすことができます。
- これらのバージョンでは、デバイスノードを自動的に作成するために
- &man.devfs.5; を使用します。
-
-
- 前述したコマンドで
- pcm0 が表示されたなら、
- root 権限で次を実行しなければなりません。
-
- &prompt.root; cd /dev
-&prompt.root; sh MAKEDEV snd0
-
- もし pcm1 が表示されたのなら
- snd0 を
- snd1
- に置き換えて、上と同様に実行してください。
-
-
- 上記のコマンドは、実際は
- /dev/snd
- デバイスを作成するものではありません!
-
-
- MAKEDEV
- を実行すると、次のようなデバイスノード群が作成されるでしょう。
-
-
-
-
-
- デバイスノード
- 説明
-
-
-
-
-
- /dev/audio
- &sparc; 互換オーディオデバイス
-
-
-
- /dev/dsp
- サンプリングデバイス (訳注: 8 ビット)
-
-
-
- /dev/dspW
- /dev/dsp と同様。
- ただし、量子化ビット数は 16。
-
-
-
- /dev/midi
- raw MIDI アクセスデバイス
-
-
-
- /dev/mixer
- ミキサデバイスのコントロールポート
-
-
-
- /dev/music
- レベル 2 シーケンサインタフェース
-
-
-
- /dev/sequencer
- シーケンサデバイス
-
-
-
- /dev/pss
- プログラム可能なデバイスインタフェース
-
-
-
-
-
すべてうまくいけば、サウンドカードが機能するでしょう。
CD-ROM または
DVD-ROM ドライブがサウンドカードと適切に接続されていれば、
&man.cdcontrol.1; を使ってドライブ内の CD を再生できます。
- &prompt.user; cdcontrol -f /dev/acd0c play 1
+ &prompt.user; cdcontrol -f /dev/acd0 play 1
audio/workman
のように、よりよいインタフェースを提供する
さまざまなアプリケーションがあります。
MP3 オーディオファイルを聴くために
audio/mpg123
- のようなアプリケーションをインストールしようと思うかもしれません。
+ のようなアプリケーションをインストールしようと思うかもしれません。
+ 手っ取り早くカードをテストするには、
+ /dev/dsp デバイスにデータを送ってみてください。
+ たとえば、以下のようにします。
+
+ &prompt.user; cat filename > /dev/dsp
+
+ ここで filename
+ はどんなファイルでも構いません。
+ このコマンドラインを実行すると雑音が発生するはずです。
+ これにより、サウンドカードが実際に動作していることを確認できます。
+
+
+ &os; 4.X のユーザは、
+ サウンドカードのデバイスノードを使用前に作成する必要があります。
+ カードが認識されてメッセージバッファに
+ pcm0 が表示されたなら、
+ root 権限で次を実行しなければなりません。
+
+ &prompt.root; cd /dev
+&prompt.root; sh MAKEDEV snd0
+
+ もしカードが pcm1
+ として認識されたのなら
+ snd0 を
+ snd1
+ に置き換えて、上と同様に実行してください。
+
+ MAKEDEV
+ を実行すると、サウンド関連のアプリケーションが使用する
+ デバイスノード群が作成されます。
+
+ サウンドカードのミキサレベルは
+ &man.mixer.8; コマンドで変更することができます。
+ 詳細は &man.mixer.8; マニュアルページをご覧ください。
よくある問題
@@ -435,7 +362,7 @@ pcm0: <SB16 DSP 4.11> on sbc0
IRQ
DSP
-
+
@@ -532,13 +459,43 @@ pcm0: <SB16 DSP 4.11> on sbc0
&man.devfs.5; を使用していないのなら、
利用するアプリケーションに
- /dev/dsp0.x
+ /dev/dsp0.x
を指定しなければならないでしょう。
上記の例のように仮想チャネル数を 4 に設定すると
x は 0 から 3 となります。
&man.devfs.5; を使用しているシステムでは、
ユーザが意識しなくてもこれらが自動的に設定されます。
+
+
+
+
+
+ Josef
+ El-Rayes
+ 寄稿:
+
+
+
+
+ ミキサチャネルの初期値を設定する
+
+ 各ミキサチャネルの初期値は
+ &man.pcm.4; ドライバのソースにハードコーディングされています。
+ 起動時に記録していたミキサの値を設定する
+ さまざまなアプリケーションやデーモンがありますが、
+ あまりよい解決方法ではありません。
+ &os; 5.3 以降では、適切な値を
+ /boot/device.hints
+ ファイルに記述することにより、
+ ドライバレベルでミキサの初期値を設定することができます。
+ たとえば、以下のような行を追加します。
+
+ hint.pcm.0.vol="100"
+
+ この例では、&man.pcm.4; が読み込まれたと同時に、
+ ボリュームチャネルの初期値を 100 に設定します。
+
@@ -815,6 +772,7 @@ MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo
設定をはじめる前に、あなたが持っているビデオカードのモデル、
そのカードが使用しているチップを確認する必要があります。
+ &xorg; および
&xfree86;
はさまざまなビデオカードに対応していますが、
ビデオ再生に申し分のない性能を発揮できるカードはわずかです。
@@ -891,7 +849,8 @@ kern.ipc.shmall=32768
ハードウェアが変わると品質が変わるでしょう。
二つ目に、X11
でのビデオレンダリングは最近多くの注目を集めるトピックです。
- そして &xfree86;
+ そして &xorg; や
+ &xfree86;
のバージョンを追うごとに、著しく改良されているかもしれません。
よく知られたビデオインタフェースは次の通りです。
@@ -918,46 +877,16 @@ kern.ipc.shmall=32768
XVideo
- &xfree86; 4.X には
+ &xorg; と
+ &xfree86; 4.X には
XVideo (または Xvideo, Xv, xv)
と呼ばれる拡張機能があります。
これは特別なアクセラレーションによって drawable オブジェクト
に直接ビデオを表示することができます。
この拡張機能によって、
- 低速なマシン (たとえばわたしの PIII 400 Mhz laptop)
- でも、とてもすぐれた品質の再生が可能となります。
- 不幸なことに、箱から出しただけで
- すぐにこの機能を使用できるカードは限られています。
- 現在のところ、以下のカードが対応しています。
+ 低速なマシンでも、とてもすぐれた品質の再生が可能となります。
-
-
- 3DFX Voodoo 3
-
-
- &intel; i810 および i815
-
-
- いくつかの S3 chips (Savage/IX および Savage/MX など)
-
-
-
- あなたのカードがここにないからといって、
- まだ失望しないでください。
- &xfree86; 4.X のリリースを追うごとに
- 新しく xv に対応したカードが増えているからです
-
- 一般的に、&xfree86;
- がすぐれた性能を発揮し、
- よく知られていて人気のある nVidia 社製のグラフィックカードは、
- XVideo に対応するための仕様書が
- &xfree86;
- 開発チームにまだ提供されていません。
- &xfree86;
- がこれらのカードに完全に対応するには、
- 少し時間がかかるかもしれません。
- 。
- この拡張機能が動作しているかどうかを調べるには、
+ この拡張機能が動作しているかどうかを調べるには、
xvinfo を使います。
&prompt.user; xvinfo
@@ -1213,53 +1142,42 @@ no adaptors present
別のシステムで利用できないかもしれません。
したがって port から構築し、
バイナリパッケージを利用しないことが重要です。
- さらに、構築のはじめに説明されるように
+ さらに、Makefile
+ や構築のはじめに説明されるように、
make
のコマンドラインで多くのオプションを指定することができます。
&prompt.root; cd /usr/ports/multimedia/mplayer
&prompt.root; make
-You can enable additional compilation optimizations
-by defining WITH_OPTIMIZED_CFLAGS
-You can enable GTK GUI by defining WITH_GUI.
-You can enable DVD support by defining WITH_DVD.
-You can enable SVGALIB support by defining WITH_SVGALIB.
-You can enable VORBIS sound support by defining WITH_VORBIS.
-You can enable XAnim DLL support by defining WITH_XANIM.
-
+N - O - T - E
- x11-toolkits/gtk12
- がインストールされているなら、GUI を有効にした方がいいでしょう。
- そうでなければ努力の価値がありません。
- (おそらく CSS エンコードされた) DVD を
- MPlayer で再生しようと思うならば、
- ここで DVD 対応のオプションを有効にしなければなりません
- 無許可で DVD を再生するのは、
- いくつかの国では重大な犯罪行為です。
- このオプションを有効にする前に、
- 地域法を確認してください。。
- 適切なオプションを指定して構築するには、以下のように実行します。
+Take a careful look into the Makefile in order
+to learn how to tune mplayer towards you personal preferences!
+For example,
+make WITH_GTK1
+builds MPlayer with GTK1-GUI support.
+If you want to use the GUI, you can either install
+/usr/ports/multimedia/mplayer-skins
+or download official skin collections from
+http://www.mplayerhq.hu/homepage/dload.html
- &prompt.root; make WITH_DVD=yes WITH_SVGALIB=yes
+ ほとんどのユーザにとっては
+ port のデフォルトオプションで十分でしょう。
+ しかしながら、XviD コーデックが必要なら、
+ WITH_XVID
+ オプションをコマンドラインで指定しなければなりません。
+ また、デフォルトの DVD デバイスを
+ WITH_DVD_DEVICE
+ オプションで定義することもできます (デフォルトでは
+ /dev/acd0 が使用されます)。
この文書を執筆している時点では、
MPlayer の port は HTML
- 文書と mplayer
- という一つの実行可能なバイナリを構築します。
- また、ビデオを再エンコーディングするためのツールである
+ 文書、そして mplayer と
mencoder
- というエンコーダも
- Makefile を編集すれば構築できます。
- のちのバージョンの port では、
- デフォルトで利用可能になっているかもしれません。
-
-
- 訳注
-
- 邦訳した時点では、
- デフォルトで mencoder が作成されます。
-
-
+ という二つの実行可能なバイナリを構築します。
+ mencoder
+ はビデオを再エンコーディングするためのツールです。
MPlayer のための
HTML 文書は非常に有益です。この章で不足した
@@ -1311,15 +1229,26 @@ You can enable XAnim DLL support by defining WITH_XANIM.
これらのオプションをすべて試してみる価値はあるでしょう。
DVD を再生するには、
- testfile.avi を に置き換えてください。
+ testfile.avi を
+
+ に置き換えてください。
<N> には再生するタイトル番号を、
DEVICE
は DVD-ROM のデバイスノードを指定します。
たとえば、/dev/dvd
から 2 番目のタイトルを再生するには以下のようにします。
- &prompt.root; mplayer -vo dga -dvd 2 /dev/dvd
+ &prompt.root; mplayer -vo xv dvd://3 -dvd-device /dev/dvd
+
+
+ デフォルトの DVD デバイスは、
+ MPlayer port の構築時に
+ WITH_DVD_DEVICE で定義することができます。
+ デフォルトでは /dev/acd0 になります。
+ 詳細はこの port の
+ Makefile をご覧ください。
+
停止、休止、再生などをするにはキーの割り当てを調べてください。
mplayer -h を実行したり、
@@ -1341,7 +1270,7 @@ zoom=yes
.vob ファイルに抽出するのに使用できます。
DVD から 2 番目のタイトルをダンプするには次のようにします。
- &prompt.root; mplayer -dumpstream -dumpfile out.vob -dvd 2 /dev/dvd
+ &prompt.root; mplayer -dumpstream -dumpfile out.vob dvd://2 -dvd-device /dev/dvd
出力された out.vob ファイルは
MPEG 形式で、
@@ -1355,10 +1284,7 @@ zoom=yes
mencoder
- MPlayer を構築する際に
- mencoder もインストールするなら、
- これにはまだ実験的な要素が含まれていることに注意してください。
- mencoder を使う前に、
+ mencoder を使う前に、
HTML 文書を読んでオプションに慣れておくのはよい考えです。
マニュアルもありますが、HTML 文書なしではあまり有用ではありません。
品質向上、低ビットレート、形式変換をする方法が無数にあります。
@@ -1389,7 +1315,7 @@ zoom=yes
DVD タイトルを直接再エンコードするためには、
上記のコマンドラインの
input.avi を
- に置き換えて、
+ に置き換えて、
root 権限で実行します。
はじめの作業結果に不満をもつと思われるので、
タイトルをファイルにダンプして、ファイルに対して作業することを
@@ -1429,12 +1355,12 @@ zoom=yes
XVideo インタフェース上で最良の性能を発揮します。
デフォルトでは、xine プレイヤは
- GUI インタフェース付きで起動するでしょう。
+ GUI 付きで起動するでしょう。
その後、メニューを使用して特定のファイルを開くことができます。
&prompt.user; xine
- GUI インタフェースなしでファイルを直ちに再生するには、
+ GUI なしでファイルを直ちに再生するには、
次のコマンドを実行します。
&prompt.user; xine -g -p mymovie.avi
@@ -1694,6 +1620,326 @@ bktr0: Pinnacle/Miro TV, Philips SECAM tuner.
過去のアーカイブを検索してみてください。
+
+
+
+
+
+ Marc
+ Fonvieille
+ 寄稿:
+
+
+
+
+
+ 画像スキャナ
+
+ 画像スキャナ
+
+
+
+ はじめに
+
+ &os; のような近代的なオペレーティングシステムでは
+ 画像スキャナを使用することができます。
+ スキャナに対するアクセスは
+ SANE (Scanner Access Now Easy)
+ API
+ によって実現されており、
+ &os; Ports Collection でも提供されています。
+ SANE
+ はスキャナのハードウェアにアクセスするために
+ &os; デバイスドライバを使用します。
+
+ &os; は
+ SCSI 接続および USB 接続のスキャナのどちらにも対応しています。
+ 設定を始める前に、
+ SANE
+ がスキャナに対応しているか確認してください。
+ SANE には
+ スキャナについての情報とその状況がまとめられている 対応デバイスの一覧
+ があります。また、&os; の &man.uscanner.4;
+ マニュアルページにも対応 USB スキャナの一覧が記載されています。
+
+
+
+ カーネルのコンフィグレーション
+
+ 前述のように、&os はスキャナのインタフェースとして
+ SCSI と USB の両方に対応しています。
+ スキャナのインタフェースによって、必要となるドライバが異なります。
+
+
+ USB インタフェース
+
+ GENERIC カーネルにはデフォルトで
+ USB スキャナに対応するためのデバイスドライバが搭載されています。
+ カスタムカーネルを使用する際には、
+ 以下の行がカーネルコンフィグレーションファイルにあることを
+ 確認してください。
+
+ device usb
+device uhci
+device ohci
+device uscanner
+
+ マザーボードにどんな USB チップセットが実装されているかによって、
+ device uhci か
+ device ohci
+ のどちらかが必要となります。ただし、両方を
+ カーネルコンフィグレーションファイルに記載しても害はありません。
+
+ 使用しているカーネルが
+ GENERIC カーネルではなく、
+ カーネルを再構築したくなければ、
+ &man.kldload.8; コマンドを使用して &man.uscanner.4;
+ デバイスドライバモジュールを直接読み込むことができます。
+
+ &prompt.root; kldload uscanner
+
+ このモジュールをシステムを起動するたびに読み込みたければ、
+ 以下の行を /boot/loader.conf
+ ファイルに追加してください。
+
+ uscanner_load="YES"
+
+ 適切なドライバを組み込んだカーネルで再起動するか、
+ 必要となるモジュールを読み込んだ後、
+ USB スキャナをシステムに接続します。
+ すると、メッセージバッファ (&man.dmesg.8;)
+ にスキャナが認識されたことが示されます。
+ たとえば、次のようなメッセージが出力されます。
+
+ uscanner0: EPSON EPSON Scanner, rev 1.10/3.02, addr 2
+
+ この例では、スキャナが /dev/uscanner0
+ デバイスノードを使用していることがわかります。
+
+
+ &os; 4.X では、
+ USB デバイスを調べるために
+ USB デーモン (&man.usbd.8;) が動作していなければなりません。
+ USB デーモンを有効にするには、/etc/rc.conf
+ ファイルに usbd_enable="YES"
+ という行を追加してシステムを再起動してください。
+
+
+
+
+ SCSI インタフェース
+
+ スキャナに付属しているインタフェースが SCSI であれば、
+ 重要なのはどの SCSI ボードを使用すればよいか把握することです。
+ 使用する SCSI チップセットによって、
+ カーネルコンフィグレーションファイルを調整する必要があります。
+ GENERIC カーネルは
+ 一般に使用される SCSI コントローラのほとんどに対応しています。
+ NOTES ファイル
+ (&os; 4.X では LINT ファイル) を読んで、
+ 適切な行をカーネルコンフィグレーションファイルに追加してください。
+ また、SCSI アダプタドライバに加えて、
+ 以下の行をカーネルコンフィグレーションファイルに
+ 記述する必要があります。
+
+ device scbus
+device pass
+
+ カーネルを適切にコンパイルしてシステムを再起動すると、
+ 起動時にデバイスがメッセージバッファに出力されるはずです。
+
+ pass2 at aic0 bus 0 target 2 lun 0
+pass2: <AGFA SNAPSCAN 600 1.10> Fixed Scanner SCSI-2 device
+pass2: 3.300MB/s transfers
+
+ システムを起動する際にスキャナの電源を入れてなければ、
+ &man.camcontrol.8; コマンドを使用して SCSI バスをスキャンし、
+ 以下のように手動でデバイスを検出させることもできます。
+
+ &prompt.root; camcontrol rescan all
+Re-scan of bus 0 was successful
+Re-scan of bus 1 was successful
+Re-scan of bus 2 was successful
+Re-scan of bus 3 was successful
+
+ すると、スキャナは SCSI デバイスの一覧に現れるでしょう。
+
+ &prompt.root; camcontrol devlist
+<IBM DDRS-34560 S97B> at scbus0 target 5 lun 0 (pass0,da0)
+<IBM DDRS-34560 S97B> at scbus0 target 6 lun 0 (pass1,da1)
+<AGFA SNAPSCAN 600 1.10> at scbus1 target 2 lun 0 (pass3)
+<PHILIPS CDD3610 CD-R/RW 1.00> at scbus2 target 0 lun 0 (pass2,cd0)
+
+ SCSI デバイスについての詳細は、&man.scsi.4; および
+ &man.camcontrol.8; のマニュアルページをご覧ください。
+
+
+
+
+ SANE の設定
+
+ SANE システムは、
+ 二つの部分、すなわちバックエンド
+ (graphics/sane-backends)
+ とフロントエンド
+ (graphics/sane-frontends)
+ に分割されています。
+ バックエンドはスキャナそのものに対するアクセスを提供します。
+ SANE の 対応デバイスの一覧
+ には、どのバックエンドが画像スキャナに対応しているかが記載されています。
+ デバイスを使用するためには、正しいバックエンドを決定するのは必須です。
+ また、フロントエンドはグラフィカルなスキャニングインタフェース
+ (xscanimage)
+ を提供します。
+
+ はじめに、
+ graphics/sane-backends
+ の port または package をインストールしましょう。
+ 次に、sane-find-scanner コマンドを使用して、
+ SANE
+ システムで使用するバックエンドを検出します。
+
+ &prompt.root; sane-find-scanner -q
+found SCSI scanner "AGFA SNAPSCAN 600 1.10" at /dev/pass3
+
+ この出力から、
+ スキャナインタフェースの種類と
+ システムに接続されているスキャナが使用するデバイスノードがわかります。
+ ベンダ名や製品のモデル名は表示されないかも知れませんが、
+ 重要ではありません。
+
+
+ USB
+ スキャナではファームウェアを読み込む必要がある場合があります。
+ これはバックエンドのマニュアルページで説明されています。
+ &man.sane-find-scanner.1; と
+ &man.sane.7; のマニュアルページも読んでください。
+
+
+ スキャナがフロントエンドで認識されるか調べてみましょう。
+ デフォルトでは、SANE のバックエンドには
+ &man.scanimage.1; と呼ばれるコマンドラインツールが付属します。
+ このコマンドを使用すると、
+ デバイスの一覧を表示したり画像を取得することができます。
+ オプションを使うと、
+ スキャナデバイスの一覧が出力されます。
+
+ &prompt.root; scanimage -L
+device `snapscan:/dev/pass3' is a AGFA SNAPSCAN 600 flatbed scanner
+
+ 何も出力が得られなかったり、
+ スキャナが見つからなかったというメッセージが表示されたら、
+ &man.scanimage.1; はスキャナを認識できなかったのでしょう。
+ このような場合は、バックエンドの設定ファイルを編集し、
+ 使用するスキャナデバイスを定義する必要があります。
+ /usr/local/etc/sane.d/
+ ディレクトリには、
+ バックエンドが使用するすべての設定ファイルがあります。
+ このデバイスの認識による問題は、
+ 特定の USB スキャナで発生するものです。
+
+ たとえば、
+
+ で使用した USB スキャナを接続したシステムで
+ sane-find-scanner
+ コマンドを実行すると、以下のような情報が得られます。
+
+ &prompt.root; sane-find-scanner -q
+found USB scanner (UNKNOWN vendor and product) at device /dev/uscanner0
+ スキャナは正しく検出されました。
+ USB インタフェースを使用し、
+ /dev/uscanner0
+ デバイスノードに接続されていることがわかります。
+ 次に、スキャナが正しく認識されているかどうか確認してみましょう。
+
+ &prompt.root; scanimage -L
+
+No scanners were identified. If you were expecting something different,
+check that the scanner is plugged in, turned on and detected by the
+sane-find-scanner tool (if appropriate). Please read the documentation
+which came with this software (README, FAQ, manpages).
+
+ スキャナが認識されなかったので、
+ /usr/local/etc/sane.d/epson.conf
+ ファイルを編集する必要があります。
+ このスキャナのモデルは &epson.perfection; 1650 なので、
+ epson バックエンドを使用すればいいことがわかります。
+ バックエンドの設定ファイルに書かれているコメントを必ず読んでください。
+ 設定ファイルを変更するのは非常に簡単です。
+ 使用しているスキャナには不適切なインタフェースをすべてコメントアウトし
+ (今回の場合は、USB インタフェースを使用するので scsi
+ という語で始まる行をすべてコメントアウトします)、
+ ファイルの末尾に使用するインタフェースとデバイスノードを追加します。
+ この例では、以下の行を追加しました。
+
+ usb /dev/uscanner0
+
+ 詳細と使用すべき構文は、
+ バックエンドのマニュアルページはもちろんのこと、
+ バックエンドの設定ファイルに書かれているコメントも読んでください。
+ 以上の設定で、スキャナが認識されたかどうかを確認できます。
+
+ &prompt.root; scanimage -L
+device `epson:/dev/uscanner0' is a Epson GT-8200 flatbed scanner
+
+ USB スキャナが認識されました。
+ ブランドやモデルが一致しなかったとしても、それほど重要ではありません。
+ 着目すべきは `epson:/dev/uscanner0'という部分で、
+ バックエンド名とデバイスノードが正しく認識されていることがわかります。
+
+ scanimage -L
+ コマンドを実行してスキャナが認識されたことがわかれば、設定は終了です。
+ デバイスはスキャンする準備ができました。
+
+ &man.scanimage.1; コマンドを使用すると
+ コマンドラインから画像を取得することができます。その一方で、
+ GUI を使用して画像を取得できると一層良いでしょう。
+ SANE
+ は、簡素ですが役に立つグラフィカルなインタフェース
+ xscanimage
+ (graphics/sane-frontends)
+ を提供しています。
+
+ Xsane
+ (graphics/xsane)
+ はもう一つのグラフィカルなスキャニングフロントエンドで、
+ 人気があります。
+ Xsane
+ には、さまざまななスキャニングモード (写真、FAX など)、
+ 色補正、バッチスキャンなど先進的な機能があります。
+ これらのアプリケーションの両方とも GIMP
+ のプラグインとして使用することができます。
+
+
+
+ 他のユーザがスキャナにアクセスすることを許可する
+
+ 前述の操作には、
+ すべて root 権限が必要となります。
+ しかしながら、他のユーザがスキャナに
+ アクセスできるようにすることも可能です。
+ そのためには、スキャナが使用するデバイスノードへの
+ 読み込み権限と書き込み権限をユーザに与えます。
+ 一例として、USB スキャナが、グループ operator
+ が所有する、/dev/uscanner0
+ デバイスノードを使用しているものとします。
+ ユーザ joe を
+ グループ operator に加えると、
+ 彼はスキャナを使用できるようになります。
+
+ &prompt.root; pw groupmod operator -m joe
+
+ 詳細は &man.pw.8; のマニュアルページをご覧ください。
+
+
+ もちろん、ユーザをどんなグループ
+ (特にグループ operator) に追加する時はいつでも、
+ セキュリティ上の理由から二度は検討を行うべきです。
+
+
+