試験運用中なLinux備忘録・旧記事

はてなダイアリーで公開していた2007年5月-2015年3月の記事を保存しています。

GNU/Linux上のopenBVEのサウンド出力と路線/車両データについて

サウンド出力について

(2010/8/4)2010年夏現在の多くのディストリではOpenAL Softのバージョンが上がって設定方法も変わっている。「OpenAL Softの新しい設定ファイルとその書式について」を参照。また、PulseAudioについてもOpenAL Softのバックエンドとして利用できるようになっている。
以下、以前の内容となる。
音声はOpenALによる3Dサウンドで、出力先のサウンドシステムは${HOME}/.openalrcで調整できる。
以下はALSAのPCMデバイス「default」へ出力するための設定例。

(define devices '(alsa))
(define alsa-device "default")

PulseAudioへ出力するのであれば「Wine上の音声をPulseAudioへ渡す」に書いた${HOME}/.asoundrcの記述をしてから上の「alsa-device」を「pulse」に、JACK Audio Connection Kitへ出力するのであれば同様に「ALSA PCMデバイスとしてJACK Audio Connection Kitを使用」に書いた${HOME}/.asoundrcの設定を記述した後「pjack」に指定する。JACKを使用することで、音声付きスクリーンキャストもrecordMyDesktopを使用することで作成できる。

参考URL:

路線/車両データについて

openBVEの実行方法とMandriva Linux向けRPMパッケージ(2009/1/14現在)」の最初に書いたディレクトリ構成を再び貼り付ける。
(2009/3/18)バージョン0.9.6系からディレクトリのレイアウトが変わっている。

[トップ]-+-[Data]                        付属データ
         +-[Settings]                    設定保存
         +-[Railway]-+-[Route]-[路線名]  路線データ
         |           +-[Object]-[路線名] 路線用オブジェクト
         |           +-[Sound]-[路線名]  路線用サウンド
         +-[Train]-[車両名]              車両データ
         +-OpenBve.exe                   アセンブリ

下はバージョン0.9.5系までのレイアウト。

[トップ]-+-[Compatibility]               付属データ
         +-[Controls]                    付属データ
         +-[Graphics]                    付属データ
         +-[Interface]                   付属データ + 設定保存
         +-[Railway]-+-[Route]-[路線名]  路線データ
         |           +-[Object]-[路線名] 路線用オブジェクト
         |           +-[Sound]-[路線名]  路線用サウンド
         +-[Train]-[車両名]              車両データ
         +-OpenBve.exe                   アセンブリ

路線や車両のデータは別途入手(あるいは作成)して、上のディレクトリ配置に従った場所へ入れることになる。ただしRailwayTrainどちらのディレクトリも別の場所に配置することは可能。
Windows以外においてopenBVEを実行する上でかなり厄介なのがデータの展開で、場合によっては.zipファイルを展開して配置するだけで済むこともあるが、Windows上でないと動かないインストーラや自己展開書庫*1にデータを入れて配布していることも多く、データファイル群を得るのに苦労する。
ものによってはcabextract(Cabinet形式の自己展開書庫の場合)などで展開できたりするが、日本語ファイル名を含むものではWine上の7-Zip File Managerなどのツールで取り出す必要がある。また、どうやっても取り出せない独自のWin32なインストーラだったりすると、Wineでそれを実行して展開後にファイルを移動してくるしかない。確実な方法ではあるかもしれないが、Win32の.exeファイルなので実行に抵抗があるかもしれない。そのときには一時的に環境変数WINEPREFIXを指定して別のWine環境の中で処理するのも手。

$ mkdir /tmp/work/data -p
$ WINEPREFIX=/tmp/work/data wine [.exeファイルの場所]

上の例ではWine環境を/tmp/work/data/へ作成しているので、インストーラ形式のもので標準の場所に入れた場合は/tmp/work/data/dosdevices/c:/Program Files/以下から種類ごとにデータを取り出して配置するということになる。

内房線データについて

本家BVE Trainsimの作者mackoy氏が作成・配布している内房線のデータは、openBVEのデモ路線を含め、色々な路線から使用されている。路線データによってはこれが入っていないと表示がおかしくなる場合がある。
内房線にはBVE Trainsimのバージョン2系向けとバージョン4系向けとがあり、両方とも入れておいたほうがよい。しかし、このデータもWin32向けの.msiインストーラなので、Winemsiexecによりデータを抽出する。

(BVE Trainsim 2系向けの内房線)
$ msiexec /a [uchibo9.msiの場所] targetdir="$(winepath -w ~/openbve)" /qn
(BVE Trainsim 4系向けの内房線)
$ msiexec /a [uchibo10.msiの場所] targetdir="$(winepath -w ~/openbve)" /qn

「~/openbve」の部分は必要に応じて展開先(RailwayTrainディレクトリのある階層)に合わせる。
このままだとアンインストール情報がWine環境に残ってしまうが、コントロールパネルか

$ msiexec /x [uchibo9.msiの場所] /qn
$ msiexec /x [uchibo10.msiの場所] /qn

でアンインストール処理を行うと消せる(targetdirを指定しなければファイルは消えない)。

参考URL:

路線/車両データ作者様へのお願い

openBVEクロスプラットフォームなので、Windows上でしか展開できないインストーラの形式で配布されると上のように他のOSではインストールしにくくなってしまうため、7-Zip書庫あるいは7-Zip自己展開(自己解凍)書庫*2による配布を行っていただけると大変ありがたいです。(日本語ファイル名が確実に扱えることや高い圧縮率などからも推奨)

関連記事:

使用したバージョン:

  • Wine 1.1.12
  • openBVE 0.9.3.3

*1:いずれの場合もWin32向けの実行ファイルの形

*2:7-Zip自己展開書庫の場合、Windows上では直接実行で展開でき、GNU/Linux上ではFile Roller7z(p7zip)のような7z形式を扱えるツールから展開可能