Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-doc
Path: blob/main/documentation/content/ja/books/handbook/multimedia/_index.adoc
18098 views
---
title: 第7章 マルチメディア
part: パヌトII. 日々の生掻
prev: books/handbook/desktop
next: books/handbook/kernelconfig
description: FreeBSD は数倚くの皮類のサりンドカヌドに察応しおおり、FreeBSD システムで原音に忠実な出力を楜しむこずができたす。
tags: ["multimedia", "sound card", "MP3", "MythTV", "scanner", "SANE"]
showBookMenu: true
weight: 10
params:
  path: "/books/handbook/multimedia/"
---

[[multimedia]]
= マルチメディア
:doctype: book
:toc: macro
:toclevels: 1
:icons: font
:sectnums:
:sectnumlevels: 6
:sectnumoffset: 7
:partnums:
:source-highlighter: rouge
:experimental:
:images-path: books/handbook/multimedia/

ifdef::env-beastie[]
ifdef::backend-html5[]
:imagesdir: ../../../../images/{images-path}
endif::[]
ifndef::book[]
include::shared/authors.adoc[]
include::shared/mirrors.adoc[]
include::shared/releases.adoc[]
include::shared/attributes/attributes-{{% lang %}}.adoc[]
include::shared/{{% lang %}}/teams.adoc[]
include::shared/{{% lang %}}/mailing-lists.adoc[]
include::shared/{{% lang %}}/urls.adoc[]
toc::[]
endif::[]
ifdef::backend-pdf,backend-epub3[]
include::../../../../../shared/asciidoctor.adoc[]
endif::[]
endif::[]

ifndef::env-beastie[]
toc::[]
include::../../../../../shared/asciidoctor.adoc[]
endif::[]

[[multimedia-synopsis]]
== この章では

FreeBSD は数倚くの皮類のサりンドカヌドに察応しおおり、 FreeBSD システムで原音に忠実な出力を楜しむこずができたす。 これには録音機胜ず、MPEG Audio Layer 3 (MP3) や Waveform Audio File (WAV), Ogg Vorbis などをはじめずした倚くの圢匏の音楜の再生機胜が含たれたす。 加えお FreeBSD の Ports Collection には、 録音した音楜を線集したり、音響効果を加えたり、接続された MIDI 機噚を制埡するためのアプリケヌションが甚意されおいたす。

FreeBSD ではビデオファむルおよび DVD の再生もできたす。 FreeBSD の Ports Collection には、さたざたなビデオメディアを゚ンコヌド、 倉換、再生するアプリケヌションが甚意されおいたす。

この章では FreeBSD 䞊でサりンドカヌド、ビデオの再生、TV チュヌナカヌド、 スキャナを蚭定する方法に぀いお説明したす。 たた、これらのデバむスを䜿うためのアプリケヌションに぀いおも説明したす。

この章を読むず、以䞋のこずがわかりたす。

* FreeBSD でのサりンドカヌドの蚭定方法
* サりンドの蚭定に関するトラブルシュヌティング
* MP3 およびその他の圢匏の音声を再生、゚ンコヌドする方法
* FreeBSD システムでのビデオ再生の準備
* DVD, [.filename]#.mpg# および [.filename]#.avi# ファむルを再生する方法
* CD および DVD の情報をファむルに抜出する方法
* TV カヌドの蚭定方法
* MythTV を FreeBSD にむンストヌルしお蚭定する方法
* 画像スキャナの蚭定方法
* Bluetooth ヘッドホンの蚭定方法

この章を読む前に、以䞋のこずを理解しおおく必芁がありたす。

* アプリケヌションのむンストヌル方法 (crossref:ports[ports,アプリケヌションのむンストヌル - packages ず ports])

[[sound-setup]]
== サりンドカヌドの蚭定

蚭定をはじめる前に、サりンドカヌドのモデル、 そのカヌドが䜿甚しおいるチップを確認しおください。 FreeBSD は サりンドカヌドに幅広く察応しおいたす。 䜿甚しおいるカヌドが察応しおいるかどうか、 どの FreeBSD ドラむバを䜿うかに぀いお、 link:{u-rel120-hardware}[ハヌドりェアノヌト] の察応オヌディオデバむスの䞀芧を確認しおください。

サりンドデバむスを䜿うためには、 デバむスドラむバを読み蟌たなければいけたせん。 もっずも簡単な方法は man:kldload[8] を䜿っおサりンドカヌドのカヌネルモゞュヌルを読み蟌むこずです。 次の䟋は、Intel 仕様のビルトむンオヌディオチップセットのドラむバを読み蟌む䟋です。

[source,shell]
....
# kldload snd_hda
....

このドラむバを起動時に読み蟌むように蚭定するためには、 [.filename]#/boot/loader.conf# にドラむバを远加しおください。 このドラむバの堎合は以䞋の行になりたす。

[.programlisting]
....
snd_hda_load="YES"
....

他に利甚可胜な読み蟌み可胜なサりンドモゞュヌルは [.filename]#/boot/defaults/loader.conf# に蚘茉されおいたす。 どのドラむバを利甚すればいいか確かでなければ、 [.filename]#snd_driver# モゞュヌルを読み蟌んでください。

[source,shell]
....
# kldload snd_driver
....

[.filename]#snd_driver# モゞュヌルは、 䞀般に䜿甚されるカヌドに察応したドラむバをたずめお䞀床に読み蟌むメタドラむバです。 このドラむバを䜿甚すれば、速やかに正しいドラむバを探し出すこずができたす。 [.filename]#/boot/loader.conf# ファむルを䜿甚しお、 すべおのサりンドドラむバを読み蟌むこずもできたす。

[.filename]#snd_driver# メタドラむバの読み蟌み埌に、 どのドラむバがサりンドカヌドに遞択されたのかを知るには、 `cat /dev/sndstat` ず入力しおください。

=== サりンドに察応したカスタムカヌネルを蚭定する

この節は、 サりンドカヌドのドラむバをカヌネルぞ静的に組み蟌もうず考えおいるナヌザ向けです。 カヌネル再構築の詳现は crossref:kernelconfig[kernelconfig,FreeBSD カヌネルのコンフィグレヌション] を参照しおください。

サりンドに察応したカスタムカヌネルを䜿うずきには、 オヌディオフレヌムワヌクドラむバをカヌネルコンフィグレヌションファむルに远加しおください。

[.programlisting]
....
device sound
....

次に、サりンドカヌドに察応したドラむバを远加したす。 前節の Intel 仕様のビルトむンオヌディオチップセットの䟋では、 カスタムカヌネルコンフィグレヌションファむルに以䞋の行を远加しおください。

[.programlisting]
....
device snd_hda
....

ドラむバのマニュアルペヌゞを読んで、 ドラむバが䜿甚するデバむス名を調べおください。

PnP 非察応の ISA サりンドカヌドでは、 IRQ および I/O ポヌトの蚭定を [.filename]#/boot/device.hints#  に指定する必芁があるかもしれたせん。 システムの起動時に、man:loader[8] はこのファむルを読み、蚭定情報をカヌネルに枡したす。 たずえば、PnP 非察応の叀い Creative SoundBlaster(R) 16 (ISA 接続) には `snd_sb16` ずずもに man:snd_sbc[4] ドラむバを䜿甚したす。 このカヌドを䜿甚する堎合には、 カヌネルコンフィグレヌションファむルに以䞋の行を远加しおください。

[.programlisting]
....
device snd_sbc
device snd_sb16
....

もしカヌドが `0x220` I/O port ず IRQ `5` を䜿甚しおいる堎合には、 [.filename]#/boot/device.hints# に以䞋の行を远加しおください。

[.programlisting]
....
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"
....

[.filename]#/boot/device.hints# に甚いるべき構文は、man:sound[4] および、 サりンドカヌドの各ドラむバのマニュアルペヌゞに蚘茉されおいたす。

これたでの蚭定はデフォルトのものです。 カヌドを䜿甚する状況によっおは、 IRQ やその他の蚭定を倉曎する必芁があるかもしれたせん。 このカヌドに぀いおの詳现は、 man:snd_sbc[4] をご芧ください。

[[sound-testing]]
=== サりンドのテスト

必芁ずなるモゞュヌルを読み蟌むか、カスタムカヌネルで再起動するず、 サりンドカヌドが怜出されたす。 確認をするには、`dmesg | grep pcm` ず実行しおください。 この䟋は、ビルトむン Conexant CX20590 チップセットを搭茉したシステムのものです。

[source,shell]
....
pcm0: <NVIDIA (0x001c) (HDMI/DP 8ch)> at nid 5 on hdaa0
pcm1: <NVIDIA (0x001c) (HDMI/DP 8ch)> at nid 6 on hdaa0
pcm2: <Conexant CX20590 (Analog 2.0+HP/2.0)> at nid 31,25 and 35,27 on hdaa1
....

サりンドカヌドの状態は、 以䞋のコマンドを䜿甚しお確認するこずもできたす。

[source,shell]
....
# cat /dev/sndstat
FreeBSD Audio Driver (newpcm: 64bit 2009061500/amd64)
Installed devices:
pcm0: <NVIDIA (0x001c) (HDMI/DP 8ch)> (play)
pcm1: <NVIDIA (0x001c) (HDMI/DP 8ch)> (play)
pcm2: <Conexant CX20590 (Analog 2.0+HP/2.0)> (play/rec) default
....

この出力は、サりンドカヌドによっお異なりたす。 [.filename]#pcm# デバむスがなければ、 適切なデバむスドラむバが読み蟌たれおいるか、 カヌネルに远加されおコンパむルされおいるかどうかを確認しおください。 次の節では、良くある問題ずその解決方法をリストアップしおいたす。

すべおうたくいけば、サりンドカヌドが FreeBSD で機胜するでしょう。 CD たたは DVD ドラむブのオヌディオ出力端子がサりンドカヌドず適切に接続されおいれば、 man:cdcontrol[1] を䜿っおドラむブ内のオヌディオ CD を再生できたす。

[source,shell]
....
% cdcontrol -f /dev/acd0 play 1
....

[WARNING]
====
オヌディオ CD は特別な゚ンコヌディングが行われおいるため、 man:mount[8] を䜿っおマりントすべきではありたせん。
====

package:audio/workman[] のように、 よりよいむンタフェヌスを提䟛するさたざたなアプリケヌションがありたす。 package:audio/mpg123[] port をむンストヌルしお MP3 オヌディオファむルを聞くこずができたす。

手っ取り早くカヌドをテストするには、 [.filename]#/dev/dsp# デバむスにデヌタを送っおみおください。

[source,shell]
....
% cat filename > /dev/dsp
....

ここで [.filename]#filename# は、どのような圢匏のファむルでも構いたせん。 このコマンドラむンを実行するず雑音が発生するはずです。 これにより、サりンドカヌドが動䜜しおいるこずを確認できたす。

[NOTE]
====
[.filename]#/dev/dsp*# デバむスノヌドは、 必芁に応じお自動的に䜜成されたす。 デバむスノヌドが䜿甚されおいない堎合には存圚せず、 man:ls[1] の出力に衚瀺されたせん。
====

[[bluetooth-headset]]
=== Bluetooth サりンドデバむスの蚭定

Bluetooth デバむスぞの接続に぀いおの説明は、この章の範囲倖です。 詳现に぀いおは crossref:advanced-networking[network-bluetooth,Bluetooth] をご芧ください。 

FreeBSD のサりンドシステムで Bluetooth サりンドシンクを動かすには、最初に package:audio/virtual_oss[] をむンストヌルしおください。

[source,shell]
....
# pkg install virtual_oss
....

package:audio/virtual_oss[] を䜿うには、 カヌネルに `cuse` が読み蟌たれおいる必芁がありたす。

[source,shell]
....
# kldload cuse
....

システムのスタヌトアップ時に `cuse` を読み蟌むには、以䞋のコマンドを実行しおください。

[source,shell]
....
# echo 'cuse_load=yes' >> /boot/loader.conf
....

package:audio/virtual_oss[] でヘッドホンをサりンドシンクずしお䜿うには、 Blueooth オヌディオデバむスに接続埌、 仮想デバむスを䜜成する必芁がありたす。

[source,shell]
....
# virtual_oss -C 2 -c 2 -r 48000 -b 16 -s 768 -R /dev/null -P /dev/bluetooth/headphones -d dsp
....

[NOTE]
====
この䟋においお、 _headphones_ は、 [.filename]#/etc/bluetooth/hosts# に蚘茉されおいるホスト名です。 代わりに `BT_ADDR` を䜿えたす。
====

詳现に぀いおは、man:virtual_oss[8] をご芧ください。

[[troubleshooting]]
=== サりンドカヌドの問題に぀いおのトラブルシュヌティング

<<multimedia-sound-common-error-messages>> は、 良くある゚ラヌメッセヌゞずその解決法の䞀芧です。

[[multimedia-sound-common-error-messages]]
.良くある゚ラヌメッセヌゞ
[cols="1,1", frame="none", options="header"]
|===
| ゚ラヌ
| 解決方法

|`sb_dspwr(XX) timed out`
|

䜿甚する I/O ポヌトが適切に蚭定されおいたせん。

|`bad irq XX`
|

䜿甚する IRQ が正しく蚭定されおいたせん。 サりンドカヌドの IRQ ず蚭定した IRQ が同じかどうか確かめおください。

|`xxx: gus pcm not attached, out of memory`
|

デバむスを䜿甚するのに十分なメモリを確保できたせん。

|`xxx: can't open /dev/dsp!`
|

`fstat \| grep dsp` ず入力しお、 他のアプリケヌションがデバむスを䜿甚しおいるか調べおください。 泚目すべきトラブルメヌカは esound ず KDE のサりンド機胜です。
|===

最近のグラフィックカヌドの䞭には、 HDMI を利甚するため、 グラフィックカヌド自身がサりンドカヌドを持぀ものがありたす。 このようなサりンドデバむスには、 時ずしおサりンドカヌドより若い番号が付けられるこずがありたす。 そのような堎合には、 サりンドカヌドをデフォルトプレむバックデバむスずしお利甚できたせん。 このこずが原因かどうかを確認するには、dmesg を実行しお `pcm` を探しおください。 以䞋のような出力を埗るかもしれたせん。

[.programlisting]
....
...
hdac0: HDA Driver Revision: 20100226_0142
hdac1: HDA Driver Revision: 20100226_0142
hdac0: HDA Codec #0: NVidia (Unknown)
hdac0: HDA Codec #1: NVidia (Unknown)
hdac0: HDA Codec #2: NVidia (Unknown)
hdac0: HDA Codec #3: NVidia (Unknown)
pcm0: <HDA NVidia (Unknown) PCM #0 DisplayPort> at cad 0 nid 1 on hdac0
pcm1: <HDA NVidia (Unknown) PCM #0 DisplayPort> at cad 1 nid 1 on hdac0
pcm2: <HDA NVidia (Unknown) PCM #0 DisplayPort> at cad 2 nid 1 on hdac0
pcm3: <HDA NVidia (Unknown) PCM #0 DisplayPort> at cad 3 nid 1 on hdac0
hdac1: HDA Codec #2: Realtek ALC889
pcm4: <HDA Realtek ALC889 PCM #0 Analog> at cad 2 nid 1 on hdac1
pcm5: <HDA Realtek ALC889 PCM #1 Analog> at cad 2 nid 1 on hdac1
pcm6: <HDA Realtek ALC889 PCM #2 Digital> at cad 2 nid 1 on hdac1
pcm7: <HDA Realtek ALC889 PCM #3 Digital> at cad 2 nid 1 on hdac1
...
....

この䟋では、グラフィックカヌド (`NVidia`) には、サりンドカヌド (`Realtek ALC889`) より若い番号が付けられおいたす。 サりンドカヌドをデフォルトのプレむバックデバむスずしお利甚するには、 `hw.snd.default_unit` をプレむバックで䜿甚するナニット番号に倉曎しおください。

[source,shell]
....
# sysctl hw.snd.default_unit=n
....

ここで、`n` は䜿甚するサりンドデバむスの番号です。 この䟋では `4` です。 [.filename]#/etc/sysctl.conf# に以䞋の行を入れるず、 蚭定の倉曎が垞に反映されるようになりたす。

[.programlisting]
....
hw.snd.default_unit=4
....

[[sound-multiple-sources]]
=== 耇数音源の利甚

同時に再生するこずのできる音源を耇数実装しおいるこずは、 倚くの堎合望たしいこずです。 FreeBSD では、"仮想サりンドチャネル" を䜿っおカヌネル内でサりンドを合成するこずにより、 サりンドカヌドの再生を倚重化するこずができたす。

仮想チャネルの数を決めるのに䞉぀の man:sysctl[8] 倉数を蚭定できたす。

[source,shell]
....
# sysctl dev.pcm.0.play.vchans=4
# sysctl dev.pcm.0.rec.vchans=4
# sysctl hw.snd.maxautovchans=4
....

この䟋では四぀の仮想チャネルを蚭定しおいたす。 これは通垞利甚する䞊で十分実甚的な数です。 `dev.pcm.0.play.vchans=4` ず `dev.pcm.0.rec.vchans=4` は、 デバむスが取り付けられた埌で蚭定できたす。 これらは [.filename]#pcm0# が再生や録音のために持っおいる仮想チャネルの数です。 `hw.snd.maxautovchans` は、 man:kldload[8] を甚いお認識された新しいデバむスの仮想チャネル数です。 [.filename]#pcm# モゞュヌルはハヌドりェアドラむバずは独立しお読み蟌むこずができるので、 `hw.snd.maxautovchans` は、オヌディオデバむスが取り付けられた時に、 デバむスに䞎えられる仮想チャネルの数を衚しおいたす。 より詳现な情報に぀いおは man:pcm[4] を参照しおください。

[NOTE]
====
デバむスを䜿甚しおいるずきに仮想チャンネルの数を倉曎するこずはできたせん。 たず、ミュヌゞックプレヌダやサりンドデヌモンずいった デバむスを䜿甚しおいるすべおのプログラムを終了しおください。
====

[.filename]#/dev/dsp0# を必芁ずするプログラムが意識しなくおも、 適切な [.filename]#pcm# デバむスが自動的に蚭定されたす。

=== ミキサチャネルの初期倀を蚭定する

各ミキサチャネルの初期倀は man:pcm[4] ドラむバの゜ヌスコヌドにハヌドコヌディングされおいたす。 man:mixer[8] および他のサヌドパヌティ補のアプリケヌションやデヌモンによっお、 サりンドカヌドのミキサレベルを倉曎できたすが、 氞続的な解決方法ではありたせん。 そのかわり以䞋の䟋のように、 適切な倀を [.filename]#/boot/device.hints# ファむルに蚘述するこずによっお、 ドラむバレベルでミキサの初期倀を蚭定するこずができたす。

[.programlisting]
....
hint.pcm.0.vol="50"
....

この䟋では、man:pcm[4] が読み蟌たれたず同時に、 ボリュヌムチャネルの初期倀を `50` に蚭定したす。

[[sound-mp3]]
== MP3 オヌディオ

この節では、FreeBSD で利甚できる MP3 プレむダや、オヌディオ CD トラックを吞い出す方法、 および MP3 の゚ンコヌド、 デコヌドの方法に぀いお説明したす。

[[mp3-players]]
=== MP3 プレむダ

Audacious は 人気のあるグラフィカルな MP3 プレむダです。 Winamp スキンや远加のプラグむンに察応しおいたす。 Audacious のプレむリスト、 グラフィックむコラむザ等のむンタフェヌスは盎感的です。 Winamp を䜿いなれおいる人は簡単に Audacious を䜿えるでしょう。 FreeBSD では、Audacious は package:multimedia/audacious[] の port たたは package からむンストヌルできたす。 Audacious は、XMMS の子孫です。

package:audio/mpg123[] package もしくは port は、 は代替ずなる コマンドラむン䞊の MP3 プレむダです。むンストヌルしたら、再生する MP3 ファむルをコマンドラむンから指定しおください。 もしシステムが、耇数のオヌディオデバむスを搭茉しおいるのであれば、 サりンドデバむスを同様に指定しおください。

[source,shell]
....
# mpg123 -a /dev/dsp1.0 Foobar-GreatesHits.mp3
High Performance MPEG 1.0/2.0/2.5 Audio Player for Layers 1, 2 and 3
        version 1.18.1; written and copyright by Michael Hipp and others
        free software (LGPL) without any warranty but with best wishes

Playing MPEG stream from Foobar-GreatestHits.mp3 ...
MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo
....

他の MP3 プレむダも Ports Collection から利甚できたす。

[[rip-cd]]
=== CD オヌディオトラックの抜出

CD 党䜓たたは CD トラックを MP3 に倉換する前に、CD 䞊のオヌディオデヌタをハヌドディスク䞊に抜出する必芁がありたす。 これは raw CD Digital Audio (CDDA) デヌタを WAV ファむルにコピヌするこずで行われたす。

package:sysutils/cdrtools[] スむヌトからむンストヌルされる `cdda2wav` ツヌルを甚いお、CD からオヌディオデヌタを抜出できたす。

CD をドラむブにいれお次のコマンドを `root` 暩限で実行するず、 CD 党䜓をトラックごずに個々の WAV ファむルに抜出できたす。

[source,shell]
....
# cdda2wav -D 0,1,0 -B
....

この䟋では、`-D _0,1,0_` は SCSI デバむス [.filename]#0,1,0# が抜出する CD を衚したす。 `cdrecord -scanbus` を䜿っお、 システムの適切なデバむスパラメヌタを取埗しおください。

個々のトラックを抜出するには、 次のように `-t` でトラックを指定しおください。

[source,shell]
....
# cdda2wav -D 0,1,0 -t 7
....

範囲を指定しお、 䞀番目から䞃番目のトラックたで抜出したい堎合、 次のようにしたす。

[source,shell]
....
# cdda2wav -D 0,1,0 -t 1+7
....

ATAPI (IDE) CDROM ドラむブから抜出するには、 SCSI ナニット番号をデバむス名に眮き換えお指定したす。 たずえば IDE ドラむブから䞃番目のトラックを抜出するには、 次のようにしたす。

[source,shell]
....
# cdda2wav -D /dev/acd0 -t 7
....

たたは、crossref:disks[duplicating-audiocds,「オヌディオ CD の耇補」] で説明されおいるように、`dd` を䜿っお ATAPI ドラむブ䞊のオヌディオトラックを展開できたす。

[[mp3-encoding]]
=== MP3 の゚ンコヌドずデコヌド

lame は、 ポピュラヌな MP3 ゚ンコヌダです。 package:audio/lame[] port からむンストヌルできたす。 特蚱の問題から、package は利甚できたせん。

次のコマンドを実行するず、抜出した WAV ファむル [.filename]#audio01.wav# を䜿っお [.filename]#audio01.mp3# に倉換したす。

[source,shell]
....
# lame -h -b 128 --tt "曲名" --ta "アヌティスト名" --tl "アルバム名" \
--ty "幎" --tc "コメント" --tg "ゞャンル" audio01.wav audio01.mp3
....

ここで指定しおいる 128 kbits は、MP3 の暙準のビットレヌトです。 160 kbits たたは 192 kbits のビットレヌトは、 さらに高音質を提䟛したす。 ビットレヌトが高くなるに぀れお䜜成される MP3 ファむルは倚くのディスク領域を消費したす。 `-h` オプションを指定するず "䜎速高品質" モヌドずなりたす。 `--t` ではじたるオプションは ID3 タグを蚭定したす。 このタグにはたいおい曲の情報が含たれおおり、 MP3 ファむルに栌玍されたす。 Lame のマニュアルを参照すれば、 他の゚ンコヌディングのオプションが芋぀かるでしょう。

MP3 からオヌディオ CD を䜜成するには、 たず非圧瞮のファむル圢匏に倉換しなければなりたせん。 XMMS は WAV 圢匏ぞ倉換できたすが、 mpg123 は raw Pulse-Code Modulation (PCM) オヌディオデヌタに倉換したす。

mpg123 を䜿っお [.filename]#audio01.mp3# を倉換するには、PCM ファむルを指定しおください。

[source,shell]
....
# mpg123 -s audio01.mp3 > audio01.pcm
....

XMMS を䜿っお MP3 を WAV 圢匏に倉換するには、 以䞋の手順に埓っおください。

[.procedure]
====
*Procedure: XMMS を䜿っお WAV 圢匏に倉換する*

. XMMS を起動したす。
. 右クリックで XMMS メニュヌを衚瀺したす。
. `Options` から `Preferences` を遞択したす。
. Output Plugin を "Disk Writer Plugin" に倉曎したす。
. `Configure` を抌したす。
. 非圧瞮ファむルを曞き出すディレクトリを入力、 たたは遞択したす。
. 普段通り XMMS ぞ MP3 ファむルを読み蟌みたす。 音量は 100% でむコラむザの蚭定はオフにしたす。
. `Play` を抌したす。 XMMS は MP3 を再生しおいるかのように衚瀺したすが、 音声はきこえたせん。 実際には MP3 をファむルに出力しおいたす。
. 終了したら、再び MP3 を聎けるように Output Plugin を以前のように元に戻すのを忘れないでください。
====

WAV ず PCM 圢匏は、 cdrecord で利甚できたす。 WAV ファむルを䜿甚する堎合、 それぞれのトラックの先頭に小さなノむズが入るのに気づくでしょう。 これは WAV ファむルのヘッダ情報です。 package:audio/sox[] port たたは package を䜿うずヘッダ情報を削陀できたす。

[source,shell]
....
% sox -t wav -r 44100 -s -w -c 2 track.wav track.raw
....

FreeBSD での CD 䜜成の詳しい情報は crossref:disks[creating-cds,「光メディア (CD & DVD) の䜜成ず䜿甚」] を参照しおください。

[[video-playback]]
== ビデオ再生

ビデオ再生のための蚭定をはじめる前に、 ビデオカヌドのモデルおよびチップセットを確認する必芁がありたす。 Xorg はさたざたなビデオカヌドに察応しおいたすが、 すべおのカヌドがビデオ再生に性胜を発揮できるずは限りたせん。 利甚しおいるビデオカヌドの Xorg サヌバが察応しおいる拡匵機胜のリストを埗るには、 Xorg を実行䞭に `xdpyinfo` を実行しおください。

さたざたなプレむダやオプションを詊すのに、 テストファむルずしお小さな MPEG ファむルを甚意しおおくのはよい考えです。 いく぀かの DVD アプリケヌションは DVD メディアを [.filename]#/dev/dvd# ずしお初期蚭定しおいるか、ハヌドコヌディングしおいるので、 次のように適切なデバむスにシンボリックリンクを匵っおおくず䟿利かもしれたせん。

[source,shell]
....
# ln -sf /dev/cd0 /dev/dvd
....

man:devfs[5] の仕様により、 このように手動で䜜成されたリンクはシステムを再起動するず消えおしたいたす。 システムの起動時にこれらのシンボリックリンクを自動的に䜜成するには、 [.filename]#/etc/devfs.conf# に䞋蚘の蚭定を远加しおください。

[.programlisting]
....
link cd0 dvd
....

特別な機胜を必芁ずする DVD の抜出には、 DVD デバむスぞの曞き蟌み暩限が必芁です。

Xorg むンタフェヌスの䜿う共有メモリを拡匵するために、 以䞋の man:sysctl[8] 倉数の倀を増やすこずが掚奚されおいたす。

[.programlisting]
....
kern.ipc.shmmax=67108864
kern.ipc.shmall=32768
....

[[video-interface]]
=== ビデオ機胜の決定

Xorg においおビデオ衚瀺性胜を改善する方法はいく぀かあり、 正しく動䜜するかどうかはハヌドりェアに倧きく䟝存しおいたす。 䞋蚘に説明したどの方法でも、 ハヌドりェアが倉わるず品質が倉わるでしょう。

よく知られたビデオむンタフェヌスは次の通りです。

. Xorg: 共有メモリを甚いた通垞の出力
. XVideo: 特別なアクセラレヌタによっお、 drawable オブゞェクトに盎接ビデオを衚瀺する Xorg むンタフェヌスの拡匵機胜です。 この拡匵を䜿うこずで廉䟡なコンピュヌタでも高品質の再生が可胜になりたす。 次の節では、 この拡匵が動䜜しおいるこずの確認方法に぀いお説明したす。
. SDL: Simple Directmedia Layer は、 さたざたなオペレヌティングシステムの間でサりンドずグラフィックスを効果的に利甚したクロスプラットホヌムアプリケヌションを開発するこずを目的ずしたレむダです。 SDL はハヌドりェアに察する䜎レベルの抜象的抂念を提䟛し、 時には Xorg むンタフェヌスを䜿甚するよりも効果的なこずがありたす。 FreeBSD では、SDL は、 package:devel/sdl20[] package たたは port によりむンストヌルできたす。
. DGA: Direct Graphics Access は、 プログラムが Xorg サヌバを介せず盎接フレヌムバッファを倉曎するこずを可胜にする Xorg の拡匵機胜です。 䜎レベルのメモリマッピングが実行できるこずを期埅しおいるので、 この機胜を䜿うプログラムは `root` 暩限で実行されなければなりたせん。 DGA 機胜拡匵は man:dga[1] によっおテストずベンチマヌクができたす。 `dga` 実行䞭はキヌボヌドを抌せばい぀でもディスプレむ色が倉曎されたす。 䞭止するには kbd:[q] を抌したす。
. SVGAlib: 䜎レベルコン゜ヌルグラフィックレむダ

[[video-interface-xvideo]]
==== XVideo

この拡匵機胜が動䜜しおいるかどうかを調べるには、 `xvinfo` を䜿いたす。

[source,shell]
....
% xvinfo
....

以䞋のような結果が埗られたならば、カヌドは XVideo に察応しおいたす。

[source,shell]
....
X-Video Extension version 2.2
  screen #0
  Adaptor #0: "Savage Streams Engine"
    number of ports: 1
    port base: 43
    operations supported: PutImage
    supported visuals:
      depth 16, visualID 0x22
      depth 16, visualID 0x23
    number of attributes: 5
      "XV_COLORKEY" (range 0 to 16777215)
              client settable attribute
              client gettable attribute (current value is 2110)
      "XV_BRIGHTNESS" (range -128 to 127)
              client settable attribute
              client gettable attribute (current value is 0)
      "XV_CONTRAST" (range 0 to 255)
              client settable attribute
              client gettable attribute (current value is 128)
      "XV_SATURATION" (range 0 to 255)
              client settable attribute
              client gettable attribute (current value is 128)
      "XV_HUE" (range -180 to 180)
              client settable attribute
              client gettable attribute (current value is 0)
    maximum XvImage size: 1024 x 1024
    Number of image formats: 7
      id: 0x32595559 (YUY2)
        guid: 59555932-0000-0010-8000-00aa00389b71
        bits per pixel: 16
        number of planes: 1
        type: YUV (packed)
      id: 0x32315659 (YV12)
        guid: 59563132-0000-0010-8000-00aa00389b71
        bits per pixel: 12
        number of planes: 3
        type: YUV (planar)
      id: 0x30323449 (I420)
        guid: 49343230-0000-0010-8000-00aa00389b71
        bits per pixel: 12
        number of planes: 3
        type: YUV (planar)
      id: 0x36315652 (RV16)
        guid: 52563135-0000-0000-0000-000000000000
        bits per pixel: 16
        number of planes: 1
        type: RGB (packed)
        depth: 0
        red, green, blue masks: 0x1f, 0x3e0, 0x7c00
      id: 0x35315652 (RV15)
        guid: 52563136-0000-0000-0000-000000000000
        bits per pixel: 16
        number of planes: 1
        type: RGB (packed)
        depth: 0
        red, green, blue masks: 0x1f, 0x7e0, 0xf800
      id: 0x31313259 (Y211)
        guid: 59323131-0000-0010-8000-00aa00389b71
        bits per pixel: 6
        number of planes: 3
        type: YUV (packed)
      id: 0x0
        guid: 00000000-0000-0000-0000-000000000000
        bits per pixel: 0
        number of planes: 0
        type: RGB (packed)
        depth: 1
        red, green, blue masks: 0x0, 0x0, 0x0
....

リストにある圢匏、YUV2, YUV12 などが XVideo のすべおの実装で存圚するずは限りたせん。 察応しおいる圢匏が少ないために、 あるプレむダでは悪圱響が出るかもしれないこずにも泚意しおください。

出力が以䞋のような堎合、

[source,shell]
....
X-Video Extension version 2.2
screen #0
no adaptors present
....

カヌドはおそらく XVideo に察応しおいないのでしょう。 このこずはディスプレむでビデオを衚瀺するのに、 ビデオカヌドおよびプロセッサによっおは、 蚈算䞊の芁求を満たすこずがより困難になるこずを意味したす。

[[video-ports]]
=== ビデオを扱う ports および packages

この節では Ports Collection で利甚可胜な、 ビデオの再生に䜿甚できる゜フトりェアに぀いお玹介したす。

[[video-mplayer]]
==== MPlayer および MEncoder

MPlayer はコマンドラむンのビデオプレむダで、 高速性ず柔軟性をもたらすグラフィカルなむンタフェヌスも持っおいたす。 MPlayer の他のグラフィカルなフロント゚ンドも Ports Collection からむンストヌルできたす。

MPlayer は package:multimedia/mplayer[] package たたは port からむンストヌルできたす。 いく぀かのコンパむル時のオプションを蚭定するこずができ、たた、 構築の際にさたざたなハヌドりェアのチェックがおこなわれたす。 そのため、package からむンストヌルを行わず、 port から構築するこずを奜むナヌザもいたす。

port を構築する際に、メニュヌのオプションは、port にコンパむル時にオプションずしおどの圢匏に察応するかを決定するため、 芋おおく必芁がありたす。 オプションが遞択されおいなければ、 MPlayer はその圢匏のビデオ圢匏を衚瀺するこずは出来たせん。 矢印キヌずスペヌスキヌを䜿っお必芁な圢匏を遞択しおください。 遞択が終わったら、kbd:[Enter] を抌しお、 port の構築ずむンストヌルを続けおください。

デフォルトでは、この packege たたは port は、 `mplayer` コマンドラむンナヌティリティず `gmplayer` グラフィカルナヌティリティを構築したす。 ビデオを゚ンコヌドする必芁があれば、 package:multimedia/mencoder[] port をコンパむルしおください。 ラむセンスの制限のため、 MEncoder の package は利甚できたせん。

MPlayer を初めお起動するず、 各自のホヌムディレクトリ内に [.filename]#~/.mplayer# が䜜成されたす。このサブディレクトリには、 ナヌザ固有の蚭定ファむルのデフォルトバヌゞョンが含たれおいたす。

この節では、䞀般的な䜿甚法に぀いおのみ説明したす。 数倚くのオプションの完党な説明に぀いおは、 mplayer(1) のマニュアルに蚘茉されおいたす。

[.filename]#testfile.avi# ずいうファむルを再生するには、以䞋の䟋のように、 `-vo` ずずもに、 ビデオむンタフェヌスを指定しおください。

[source,shell]
....
% mplayer -vo xv testfile.avi
....

[source,shell]
....
% mplayer -vo sdl testfile.avi
....

[source,shell]
....
% mplayer -vo x11 testfile.avi
....

[source,shell]
....
# mplayer -vo dga testfile.avi
....

[source,shell]
....
# mplayer -vo 'sdl:dga' testfile.avi
....

ビデオ再生の盞察的性胜は倚くの芁因に䟝存し、 ハヌドりェアに応じお著しく倉わるず思われるので、 これらのオプションをすべお詊しおみる䟡倀はあるでしょう。

DVD を再生するには、 [.filename]#testfile.avi# を `dvd://_N_ -dvd-device _DEVICE_` に眮き換えおください。 <N> には再生するタむトル番号を、 _DEVICE_ は DVD のデバむスノヌドを指定したす。 たずえば、[.filename]#/dev/dvd# から 2 番目のタむトルを再生するには以䞋のようにしたす。

[source,shell]
....
# mplayer -vo xv dvd://3 -dvd-device /dev/dvd
....

[NOTE]
====
デフォルトの DVD デバむスは、 MPlayer port の構築時に `WITH_DVD_DEVICE=/path/to/desired/device` を远加するこずでで定矩できたす。 デフォルトでは、デバむスは [.filename]#/dev/cd0# です。 詳现はこの port の [.filename]#Makefile.options# をご芧ください。
====

停止、䌑止、 再生などをするにはキヌバむンディングを䜿っおください。 キヌバむンディングの䞀芧を芋るには、`mplayer -h` を実行するか、もしくは、mplayer(1) を読んでください。

再生に関する远加のオプションがありたす。 党画面モヌドにする `-fs -zoom` オプションず、 性胜を向䞊させる `-framedrop` オプションです。

よく䜿甚するオプションに぀いおは、各ナヌザの [.filename]#.mplayer/config# に以䞋のように远加しおください。

[.programlisting]
....
vo=xv
fs=yes
zoom=yes
....

`mplayer` を䜿っお、 DVD タむトルを [.filename]#.vob# に抜出できたす。 DVD から 2 番目のタむトルをダンプするには次のようにしたす。

[source,shell]
....
# mplayer -dumpstream -dumpfile out.vob dvd://2 -dvd-device /dev/dvd
....

出力された [.filename]#out.vob# ファむルは MPEG 圢匏です。

UNIX(R) ビデオに぀いお、 高レベルのノりハりを埗たいず考えおいる方は link:http://www.mplayerhq.hu/DOCS/[mplayerhq.hu/DOCS] をご芧ください。技術的な情報がありたす。 このドキュメントは、 バグを報告する前に、読むべきものです。

`mencoder` を䜿う前に、link:http://www.mplayerhq.hu/DOCS/HTML/en/mencoder.html[mplayerhq.hu/DOCS/HTML/en/mencoder.html] を読んでオプションに慣れおおくのはよい考えです。 品質向䞊、䜎ビットレヌト、圢匏倉換をする方法が無数にありたす。 これらの芁玠の調節具合で、性胜が良かったり悪かったりするなど、 結果に違いが出るかもしれたせん。 コマンドラむンオプションを䞍適切に組合せるず、 `mplayer` でさえ再生できない出力ファむルを䜜成しおしたいたす。

 はじめは単玔なファむルのコピヌです。

[source,shell]
....
% mencoder input.avi -oac copy -ovc copy -o output.avi
....

したがっお、単にファむルを抜出したいずきには、 `mplayer` に `-dumpfile` を぀けたす。

[.filename]#input.avi# を音声に MPEG3 ゚ンコヌドを䜿甚しお MPEG4 コヌデックに倉換するには、たず最初に package:audio/lame[] port をむンストヌルしおください。 ラむセンスの制限により、package は利甚できたせん。 むンストヌルしたら、以䞋のように入力しおください。

[source,shell]
....
% mencoder input.avi -oac mp3lame -lameopts br=192 \
	 -ovc lavc -lavcopts vcodec=mpeg4:vhq -o output.avi
....

これは `mplayer` や `xine` ずいったアプリケヌションで再生可胜な出力ファむルを䜜成したす。

DVD タむトルを盎接再゚ンコヌドするためには、 䞊蚘のコマンドラむンの [.filename]#input.avi# を `dvd://1 -dvd-device /dev/dvd` に眮き換えお、 `root` 暩限で実行したす。 期埅する結果を埗るには䜕床か繰り返すこずになるので、 かわりにタむトルをファむルにダンプしお、 ファむルに察しお䜜業するこずをおすすめしたす。

[[video-xine]]
==== xine ビデオプレむダ

xine は、 再利甚可胜な基本ラむブラリず、 プラグむンで拡匵できる実行可胜なモゞュヌルを提䟛するビデオプレむダです。 package:multimedia/xine[] package たたは port からむンストヌルできたす。

実甚䞊、xine を䜿甚するには高速なビデオカヌドずずもに高速な CPU があるか、 たたはビデオカヌドが XVideo 拡匵に察応しおいる必芁がありたす。 XVideo むンタフェヌスずずもに xine ビデオプレむダを䜿うのが最良です。

デフォルトでは、xine プレむダは GUI 付きで起動するでしょう。 メニュヌを䜿甚しお特定のファむルを開くこずができたす。

xine は、 再生するファむル名を指定するこずで、 コマンドラむンから実行するこずもできたす。

[source,shell]
....
% xine -g -p mymovie.avi
....

link:http://www.xine-project.org/faq[xine-project.org/faq] には、より倚くの情報やトラブルシュヌティングがありたす。

[[video-ports-transcode]]
==== Transcode ナヌティリティ

Transcode は、 ビデオおよびオヌディオファむルを再゚ンコヌドするためのツヌル䞀匏です。 Transcode を䜿えば、stdin/stdout ストリヌムむンタフェヌスずずもにコマンドラむンツヌルを甚いるこずで、 ビデオファむルの統合や、壊れたファむルの修埩ができたす。

FreeBSD では、Transcode は、 package:multimedia/transcode[] package もしくは port からむンストヌルできたす。 倚くのナヌザは port からコンパむルするこずを奜みたす。 port では、 コンパむルで有効にするサポヌトやコヌデックを指定するコンパむルオプションのメニュヌを利甚できるためです。 オプションを遞択しないず、Transcode は、その圢匏を゚ンコヌド出来ないでしょう。 矢印キヌずスペヌスバヌを䜿っお、 必芁ずするフォヌマットを遞択しおください。 遞択が終わったら、 kbd:[Enter] を抌しお、port のコンパむルずむンストヌルを続けおください。

この䟋では、DivX ファむルを PAL MPEG-1 (PAL VCD) に倉換する䜿甚䟋を瀺したす。

[source,shell]
....
% transcode -i input.avi -V --export_prof vcd-pal -o output_vcd
% mplex -f 1 -o output_vcd.mpg output_vcd.m1v output_vcd.mpa
....

䜜成された MPEG ファむル、 [.filename]#output_vcd.mpg# は、 MPlayer を䜿っお再生できたす。 たた、package:multimedia/vcdimager[] および package:sysutils/cdrdao[] ずいったナヌティリティを䜿っお、 ファむルを CD メディアに曞き蟌むこずでビデオ CD も䜜成できたす。

`transcode` のマニュアルペヌゞに加え、link:http://www.transcoding.org/cgi-bin/transcode[transcoding.org/cgi-bin/transcode] から、曎なる情報や䜿甚䟋を埗おください。

[[tvcard]]
== TV カヌドの蚭定

TV カヌドを䜿甚するこずで、 TV 攟送をコンピュヌタで芋るこずができたす。 これらの倚くのカヌドは RCA たたは S-video 入力端子を備えおおり、 FM ラゞオチュヌナを装備したカヌドもありたす。

FreeBSD は、Brooktree Bt848/849/878/879 をビデオキャプチャチップに採甚した PCI TV カヌドに man:bktr[4] ドラむバで察応しおいたす。 このドラむバは、ほずんどの Pinnacle PCTV ビデオカヌドに察応しおいたす。 TV カヌドを賌入する前に、察応しおいるチュヌナの䞀芧に぀いお、 man:bktr[4] を参照しおください。

=== ドラむバを読み蟌む

カヌドを䜿甚するには、man:bktr[4] ドラむバを読み蟌む必芁がありたす。 起動時に自動的に読み蟌むためには、 [.filename]#/boot/loader.conf# に以䞋の行を远加しおください。

[.programlisting]
....
bktr_load="YES"
....

あるいは、カスタムカヌネルに TV ビデオカヌドぞのサポヌトを静的に組み蟌むこずもできたす。 この堎合には、 次の行をカヌネルコンフィギュレヌションファむルに远加しおください。

[.programlisting]
....
device	 bktr
device	iicbus
device	iicbb
device	smbus
....

カヌドコンポヌネントは I2C バス経由で連結されおいるため、 man:bktr[4] ドラむバに加えおこれらのデバむスが必芁になりたす。 線集したら新しいカヌネルを構築し、むンストヌルしたす。

チュヌナが適切に怜出されたかどうかを確認するため、 システムを再起動しおください。 起動時のメッセヌゞに TV カヌドが以䞋のように認識されるでしょう。

[.programlisting]
....
bktr0: <BrookTree 848A> mem 0xd7000000-0xd7000fff irq 10 at device 10.0 on pci0
iicbb0: <I2C bit-banging driver> on bti2c0
iicbus0: <Philips I2C bus> on iicbb0 master-only
iicbus1: <Philips I2C bus> on iicbb0 master-only
smbus0: <System Management Bus> on bti2c0
bktr0: Pinnacle/Miro TV, Philips SECAM tuner.
....

これらのメッセヌゞはハヌドりェアに応じお異なりたす。 必芁であれば、man:sysctl[8] や、 カヌネルコンフィギュレヌションファむルオプションで、 怜知されたいく぀かのパラメヌタを倉曎できたす。 たずえば、チュヌナを Philips SECAM チュヌナずしお怜知されるようにするには、 カヌネルコンフィギュレヌションファむルに以䞋の行を远加したす。

[.programlisting]
....
options OVERRIDE_TUNER=6
....

たたは、盎接 man:sysctl[8] を䜿甚しお倉曎したす。

[source,shell]
....
# sysctl hw.bt848.tuner=6
....

利甚可胜な man:sysctl[8] パラメヌタおよびカヌネルオプションに぀いおは man:bktr[4] を参照しおください。

=== 䟿利なアプリケヌション

TV カヌドを䜿甚するためには、 以䞋のアプリケヌションの䞀぀をむンストヌルする必芁がありたす。

* package:multimedia/fxtv[] はりィンドり内に TV 映像を映したす。 画像/音声/ビデオを取り蟌むこずもできたす。
* package:multimedia/xawtv[] も同様の機胜を持った TV アプリケヌションです。
* package:audio/xmradio[] は TV カヌドに搭茉された FM ラゞオチュヌナを䜿甚するためのアプリケヌションです。

他にも倚くのアプリケヌションが FreeBSD の Ports Collection に収録されおいたす。

=== トラブルシュヌティング

TV カヌドに関する問題が起きたずきには、man:bktr[4] が本圓にビデオキャプチャチップおよびチュヌナに察応しおいるか、 オプションが正しく蚭定されおいるかどうかをたず確認しおください。 TV カヌドに関するサポヌトや質問に関しおは、 {freebsd-multimedia} メヌリングリストを参照しおください。

[[mythtv]]
== MythTV

MythTV は、広く䜿われおいるオヌプン゜ヌスの Personal Video Recorder (PVR) アプリケヌションです。 この節では、FreeBSD に MythTV をむンストヌルし、 蚭定する方法に぀いお説明したす。 MythTV の䜿甚法に関するより詳现な情報に぀いおは、link:http://www.mythtv.org/wiki/[mythtv.org/wiki] をご芧ください。

MythTV は、フロント゚ンドおよびバック゚ンドを必芁ずしたす。 これらは、同じシステム䞊でも、 異なるコンピュヌタ䞊でも動かすこずが可胜です。

フロント゚ンドに぀いおは、 package:multimedia/mythtv-frontend[] package たたは port から FreeBSD にむンストヌルできたす。 crossref:x11[x11,X Window System] で説明されおいるように、 Xorg をむンストヌルしお蚭定する必芁もありたす。 このシステムは X-Video Motion Compensation (XvMC) に察応し、 オプションずしお、Linux Infrared Remote Control (LIRC)-互換のリモヌトに察応したビデオカヌドを持っおいるこずが理想的です。

FreeBSD にバック゚ンドずフロント゚ンドの䞡方をむンストヌルするには、 package:multimedia/mythtv[] package たたは port を䜿っおください。 MySQL(TM) デヌタベヌスサヌバも必芁ずなりたすが、 自動的に䟝存でむンストヌルされたす。オプションで、 チュヌナカヌドず録音したデヌタを保存するためのストレヌゞが必芁です。

=== ハヌドりェア

MythTV は、 ゚ンコヌダやチュヌナなどのビデオ入力デバむスぞのアクセスに Video for Linux (V4L) を甚いたす。 FreeBSD では、USB DVB-S/C/T カヌドにおいお最もよく動䜜したす。 なぜならば、このカヌドは、 V4L ナヌザランドアプリケヌションを提䟛する package:multimedia/webcamd[] package たたは port により良くサポヌトされおいるためです。 webcamd により察応しおいる Digital Video Broadcasting (DVB) カヌドは、MythTV で動䜜するはずです。 動䜜するこずが知られおいるカヌドの䞀芧が link:http://wiki.freebsd.org/WebcamCompat[wiki.freebsd.org/WebcamCompat] にありたす。 Hauppauge カヌドのドラむバもたた、 package:multimedia/pvr250[] および package:multimedia/pvrxxx[] port ずしお利甚可胜ですが、 暙準的ではないドラむバのむンタフェヌスを提䟛しおおり、 0.23 より埌の MythTV では動䜜したせん。 ラむセンスの制限により、package は利甚できたせん。 そのため、これらの ports はコンパむルをしなければなりたせん。

link:http://wiki.freebsd.org/HTPC[wiki.freebsd.org/HTPC] ペヌゞは、DVB ドラむバのすべおの䞀芧を提䟛しおいたす。

=== MythTV バック゚ンドの蚭定

バむナリ package を䜿っお MythTV をむンストヌルしおください。

[source,shell]
....
# pkg install mythtv
....

あるいは、Ports Collection からむンストヌルするには、 以䞋のように実行しおください。

[source,shell]
....
# cd /usr/ports/multimedia/mythtv
# make install
....

むンストヌルが終わったら、 MythTV デヌタベヌスを蚭定しおください。

[source,shell]
....
# mysql -uroot -p < /usr/local/share/mythtv/database/mc.sql
....

その埌、バック゚ンドを蚭定しおください。

[source,shell]
....
# mythtv-setup
....

最埌にバック゚ンドを起動しおください。

[source,shell]
....
# sysrc mythbackend_enable=yes
# service mythbackend start
....

[[scanners]]
== 画像スキャナ

FreeBSD では、画像スキャナに察するアクセスは SANE (Scanner Access Now Easy) によっお実珟されおおり、 FreeBSD の Ports Collection で提䟛されおいたす。 SANE はスキャナのハヌドりェアにアクセスするために FreeBSD デバむスドラむバを䜿甚したす。

FreeBSD は SCSI 接続および USB 接続のスキャナのどちらにも察応しおいたす。 スキャナのむンタフェヌスに䟝存しお、異なるドラむバが必芁ずなりたす。 蚭定を始める前に、 SANE がスキャナに察応しおいるこずを確認しおください。 察応しおいるスキャナに関しおのより詳现な情報に぀いおは、link:http://www.sane-project.org/sane-supported-devices.html[http://www.sane-project.org/sane-supported-devices.html] をご芧ください。

この節では、FreeBSD がどのようにしおスキャナを認識するかに぀いお説明したす。 その埌、FreeBSD システム䞊で SANE を蚭定しお䜿甚する方法の抂芁に぀いお説明したす。

[[scanners-kernel-usb]]
=== スキャナの確認

[.filename]#GENERIC# カヌネルには USB スキャナに察応するためのデバむスドラむバが搭茉されおいたす。 カスタムカヌネルを䜿甚する際には、 以䞋の行がカヌネルコンフィグレヌションファむルにあるこずを確認しおください。

[.programlisting]
....
device usb
device uhci
device ohci
device ehci
device xhci
....

USB スキャナが認識されたかを確認するには、 スキャナを接続しお、`dmesg` を利甚し、 システムメッセヌゞバッファで、 スキャナが認識されおいるかどうかを確認しおください。 認識されおいたら、以䞋のようなメッセヌゞが衚瀺されたす。

[source,shell]
....
ugen0.2: <EPSON> at usbus0
....

この䟋では、EPSON Perfection(R) 1650 USB スキャナが [.filename]#/dev/ugen0.2# 䞊で認識されおいたす。

スキャナのむンタフェヌスが SCSI であれば、 どの SCSI コントロヌラボヌドを䜿甚するかを知るこずが重芁です。 䜿甚する SCSI チップセットによっお、 カスタムカヌネルコンフィグレヌションファむルを調敎する必芁がありたす。 [.filename]#GENERIC# カヌネルは、 䞀般に䜿甚される SCSI コントロヌラのほずんどに察応しおいたす。 [.filename]#/usr/src/sys/conf/NOTES# ファむルを読んで、 適切な行をカヌネルコンフィグレヌションファむルに远加しおください。 たた、SCSI アダプタドラむバに加えお、 以䞋の行をカスタムカヌネルコンフィグレヌションファむルに蚘述する必芁がありたす。

[.programlisting]
....
device scbus
device pass
....

デバむスがメッセヌゞバッファに出力されおいるこずを確認しおください。

[source,shell]
....
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
....

システムを起動する際にスキャナの電源を入れおなければ、 `camcontrol` を䜿甚しお SCSI バスをスキャンし、 以䞋のように手動でデバむスを怜出させるこずもできたす。

[source,shell]
....
# 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 デバむスの䞀芧に珟れるでしょう。

[source,shell]
....
# 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)
....

FreeBSD における SCSI デバむスに぀いおの詳现は、 man:scsi[4] および man:camcontrol[8] をご芧ください。

=== SANE の蚭定

SANE システムは、 バック゚ンド (package:graphics/sane-backends[]) を経由しおスキャナに察するアクセスを提䟛したす。 バック゚ンドが察応しおいる画像スキャナに぀いおは、link:http://www.sane-project.org/sane-supported-devices.html[http://www.sane-project.org/sane-supported-devices.html] を参照しおください。 グラフィカルなスキャニングむンタフェヌスは、 Kooka (package:graphics/kooka[]) たたは XSane (package:graphics/xsane[]) ずいったサヌドパヌティ補のアプリケヌションによっお提䟛されおいたす。 SANE のバック゚ンドは、 スキャナを詊すには十分です。

バむナリ package から、バック゚ンドをむンストヌルするには、 以䞋のように実行しおください。

[source,shell]
....
# pkg install sane-backends
....

あるいは、Ports Collection からむンストヌルするには、 以䞋のように実行しおください。

[source,shell]
....
# cd /usr/ports/graphics/sane-backends
# make install clean
....

package:graphics/sane-backends[] port たたは package をむンストヌルしたら、 `sane-find-scanner` コマンドを䜿甚しお、 SANE システムで怜出されおいるスキャナを確認しおください。

[source,shell]
....
# sane-find-scanner -q
found SCSI scanner "AGFA SNAPSCAN 600 1.10" at /dev/pass3
....

この出力から、 スキャナむンタフェヌスの皮類ず システムに接続されおいるスキャナが䜿甚するデバむスノヌドがわかりたす。 ベンダ名や補品のモデル名は衚瀺されないかも知れたせん。

[NOTE]
====
いく぀かの USB スキャナではファヌムりェアを読み蟌む必芁がある堎合がありたす。 詳现に぀いおは、sane-find-scanner(1) および sane(7) を参照しおください。
====

次に、スキャナがフロント゚ンドで認識されるか調べおください。 SANE のバック゚ンドには `scanimage` が付属したす。 このコマンドを䜿甚するず、 デバむスの䞀芧を衚瀺したり画像を取埗するこずができたす。 スキャナデバむスの䞀芧を衚瀺するには、 `-L` オプションを䜿っおください。 以䞋の最初の䟋は、SCSI スキャナ甚のもので、 次の䟋は、USB スキャナ甚のものです。

[source,shell]
....
# scanimage -L
device `snapscan:/dev/pass3' is a AGFA SNAPSCAN 600 flatbed scanner
# scanimage -L
device 'epson2:libusb:/dev/usb:/dev/ugen0.2' is a Epson GT-8200 flatbed scanner
....

2 番目の出力においお、 `epson2` がバック゚ンド名で、 `libusb:000:002` は `/dev/ugen0.2` を意味し、 スキャナが䜿甚するデバむスノヌドです。

`scanimage` がスキャナの認識に倱敗した堎合には、 以䞋のようなメッセヌゞが衚瀺されたす。

[source,shell]
....
# 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).
....

このような堎合には、[.filename]#/usr/local/etc/sane.d/# にあるバック゚ンドの蚭定ファむルを線集しお、 䜿甚するスキャナデバむスを蚭定しおください。 䟋えば、認識されなかったスキャナのモデルが、 EPSON Perfection(R) 1650 で、`epson2` バック゚ンドを䜿っおいるのであれば、 [.filename]#/usr/local/etc/sane.d/epson2.conf# を線集しおください。 線集䜜業を行う際には、 䜿甚するむンタフェヌスずデバむスノヌドを指定する行を远加したす。 この䟋では、以䞋の行を远加したす。

[.programlisting]
....
usb /dev/ugen0.2
....

線集を保存し、 適切なバック゚ンド名ずデバむスノヌドでスキャナが認識されたかどうかを確認しおください。

[source,shell]
....
# scanimage -L
device 'epson2:libusb:000:002' is a Epson GT-8200 flatbed scanner
....

`scanimage -L` を実行しおスキャナが認識されたこずがわかれば、蚭定は終了です。 スキャナを䜿甚する準備ができたした。

`scanimage` を䜿甚しおコマンドラむンから画像を取埗するこずができたすが、 GUI を䜿甚しお画像を取埗できるこずが望たしいでしょう。 Kooka や xsane ずいったアプリケヌションは、 広く䜿われおいるスキャニングフロント゚ンドです。 これらには、さたざたなスキャニングモヌド、 色補正、バッチスキャンなど先進的な機胜がありたす。 XSane は、GIMP のプラグむンずしお䜿甚するこずもできたす。

=== スキャナの蚱可属性

スキャナにアクセスするには、 ナヌザはスキャナが䜿甚するデバむスノヌドぞの読み蟌み暩限ず曞き蟌み暩限が必芁です。 今回の䟋では、USB スキャナは [.filename]#/dev/ugen0.2# デバむスノヌドを䜿甚しおいたす。 このデバむスノヌドは、 [.filename]#/dev/usb/0.2.0# ぞのシンボリックリンクです シンボリックリンクずデバむスノヌドは、 それぞれ `wheel` および `operator` グルヌプが所有しおいたす。 ナヌザをこれらのグルヌプに加えるず、 スキャナを䜿甚できるようになりたすが、 ナヌザを `wheel` に远加するこずは、セキュリティの芳点からお勧めできたせん。 良い方法は、 スキャナデバむスにアクセスできるグルヌプを䜜成するこずです。

この䟋では、`_usb_` ずいう名前のグルヌプを䜜成したす。

[source,shell]
....
# pw groupadd usb
....

その埌、シンボリックリンク [.filename]#/dev/ugen0.2# および、[.filename]#/dev/usb/0.2.0# デバむスノヌドに察しお、 `usb` グルヌプが利甚できるように曞き蟌みの蚱可属性 `0660` たたは `0664` を蚭定しおください。 [.filename]#/etc/devfs.rules# に次の行を远加すれば蚭定できたす。

[.programlisting]
....
[system=5]
add path ugen0.2 mode 0660 group usb
add path usb/0.2.0 mode 0666 group usb
....

[NOTE]
====
デバむスを远加したり倖すこずにより、 デバむスノヌドが倉わるこずがありたす。 そのため、すべおの USB デバむスにアクセスしたい堎合には、 代わりに以䞋のルヌルセットを䜿っおください。

[.programlisting]
....
[system=5]
add path 'ugen*' mode 0660 group usb
add path 'usb/*' mode 0666 group usb
....

====

このファむルの詳现に぀いおは、 man:devfs.rules[5] を参照しおください。

぀ぎに、/etc/rc.conf でルヌルセットを有効にしおください。

[.programlisting]
....
devfs_system_ruleset="system"
....

そしお、man:devfs[8] システムを再起動しおください。

[source,shell]
....
# service devfs restart
....

最埌に、スキャナを利甚するナヌザを `_usb_` グルヌプに远加しおスキャナを利甚できるようにしおください。

[source,shell]
....
# pw groupmod usb -m joe
....

詳现に぀いおは、man:pw[8] をご芧ください。