Sign in Join
Wiki copytemporary

Multimedia Programming/ja: what changed

Revision 1 to 2. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
1+**日本語版メニュー**
2+---
3+[[Main Page/ja|メインページ]] \- [[Lazarus Documentation/ja|Lazarus Documentation日本語版]] \- [[Japanese Localization Notes|翻訳ノート]] \- [[Bug Tracking/ja|日本語障害情報]]
4+
5+
16# 動画の再生
27
38## 再生用アプリケーションを起動させる
49
5-コマンドラインとパラメータを知っていれば、以下のように TProcessUTF8 を使って再生用アプリを起動させられます。
6-
7-``` pascal
10+コマンドラインとパラメータを知っていれば、以下のように TProcessUTF8 を使って再生用アプリを起動させられます。
11+```
812uses
9- Classes, ..., LCLProc, UTF8Process;
10-
11-...
12-
13-implementation
14-
15-procedure TMainForm.Button1Click(Sender: TObject);
16-var
17- Player: TProcessUTF8;
18-begin
19- Player:=TProcessUTF8.Create(nil);
20- try
21- Player.CommandLine:=PathToPlayer+' '+ParametersAndMediaFile;
22- Player.Execute;
23- finally
24- Player.Free;
25- end;
26-end;
13+ Classes, ..., LCLProc, UTF8Process;
14+
15+ ...
16+
17+ implementation
18+
19+ procedure TMainForm.Button1Click(Sender: TObject);
20+ var
21+ Player: TProcessUTF8;
22+ begin
23+ Player:=TProcessUTF8.Create(nil);
24+ try
25+ Player.CommandLine:=PathToPlayer+' '+ParametersAndMediaFile;
26+ Player.Execute;
27+ finally
28+ Player.Free;
29+ end;
30+ end;
2731```
2832
29-こちらは Linux 上で起動させる具体例です。動画再生アプリ mplayer を使用します。
30-
31-``` pascal
33+こちらは Linux 上で起動させる具体例です。動画再生アプリ mplayer を使用します。
34+```
3235uses
33- Classes, ..., FileUtil, LCLProc, UTF8Process;
34-
35-...
36-
37-implementation
38-
39-procedure TMainForm.Button1Click(Sender: TObject);
40-var
41- Player: TProcessUTF8;
42- Filename: String;
43- PlayerPath: String;
44- PlayerParams: String;
45-begin
46- Filename:='/home/username/video.mpg';
47- PlayerPath:=FindDefaultExecutablePath('mplayer');
48- PlayerParams:='"'+Filename+'"';
49- Player:=TProcessUTF8.Create(nil);
50- try
51- Player.CommandLine:=PlayerPath+' '+PlayerParams;
52- Player.Execute;
53- finally
54- Player.Free;
55- end;
56-end;
36+ Classes, ..., FileUtil, LCLProc, UTF8Process;
37+
38+ ...
39+
40+ implementation
41+
42+ procedure TMainForm.Button1Click(Sender: TObject);
43+ var
44+ Player: TProcessUTF8;
45+ Filename: String;
46+ PlayerPath: String;
47+ PlayerParams: String;
48+ begin
49+ Filename:='/home/username/video.mpg';
50+ PlayerPath:=FindDefaultExecutablePath('mplayer');
51+ PlayerParams:='"'+Filename+'"';
52+ Player:=TProcessUTF8.Create(nil);
53+ try
54+ Player.CommandLine:=PlayerPath+' '+PlayerParams;
55+ Player.Execute;
56+ finally
57+ Player.Free;
58+ end;
59+ end;
5760```
5861
5962## VFW - Video for Windows
6063
61-Windows 上で TV チューナーカードやウェブカメラから動画の取り込みや再生といったことを [[Glossary|VFW]] [[Glossary|API]] を用いて行っているアプリケーション [[SysRec]] があります。
64+Windows 上で TV チューナーカードやウェブカメラから動画の取り込みや再生といったことを [[Glossary|VFW]] [[Glossary|API]] を用いて行っているアプリケーション [[SysRec]] があります。
6265
6366## MPlayer(Linux gtk2/X 用)
6467
65-**mplayer** はオープンソースでフリーな動画プレイヤーです。この mplayer を埋め込んだ LCL コントロールがあります。これを使えば、動画プレイヤーを構築してアプリケーションで動画を再生させることができます。以下よりダウンロードできます。
66-
67- svn co https://lazarus-ccr.svn.sourceforge.net/svnroot/lazarus-ccr/components/mplayer mplayer
68+**mplayer** はオープンソースでフリーな動画プレイヤーです。この mplayer を埋め込んだ LCL コントロールがあります。これを使えば、動画プレイヤーを構築してアプリケーションで動画を再生させることができます。以下よりダウンロードできます。
69+```
70+svn co https://lazarus-ccr.svn.sourceforge.net/svnroot/lazarus-ccr/components/mplayer mplayer
71+```
6872
6973# 音声の再生
7074
7175## Windows 限定:Windows API を使用する
7276
73-wav ファイルなどであれば以下のように Windows API を使って再生できます。
74-
75-``` pascal
76-...
77-uses MMSystem;
77+wav ファイルなどであれば以下のように Windows API を使って再生できます。
78+```
7879...
79-sndPlaySound('C:\sounds\test.wav', snd_Async or snd_NoDefault);
80+ uses MMSystem;
81+ ...
82+ sndPlaySound('C:\sounds\test.wav', snd_Async or snd_NoDefault);
8083```
8184
82-パスやファイル名に非 ASCII 文字が含まれていても正常に動作させるには以下のようにします。
83-
84-``` pascal
85+パスやファイル名に非 ASCII 文字が含まれていても正常に動作させるには以下のようにします。
86+```
8587sndPlaySound(pchar(UTF8ToSys('C:\sounds\test.wav')), snd_Async or snd_NoDefault);
8688```
8789
88-当然ながら、これはクロスプラットフォームではありません。
90+
91+当然ながら、これはクロスプラットフォームではありません。
8992
9093## オーディオコンポーネントスィートを使用する
9194
92-[[ACS/ja|オーディオコンポーネントスィートに]]関するページをお読みください。
95+[[ACS/ja|オーディオコンポーネントスィート]]に関するページをお読みください。
9396
9497## OpenAL ライブラリを使用する
9598
96-Delphi 用のチュートリアルでしたら、こちら [1](http://www.noeska.com/doal/tutorials.aspx) にあります。
99+Delphi 用のチュートリアルでしたら、こちら [[1]](<http://www.noeska.com/doal/tutorials.aspx>) にあります。
97100
98-Free Pascal では fpc/packages/openal に置いてある OpenAL アクセス用ユニットを使用します。また、使い方のサンプルは [fpc/packages/openal/examples](http://svn.freepascal.org/svn/fpc/trunk/packages/openal/examples) にあります。
101+Free Pascal では fpc/packages/openal に置いてある OpenAL アクセス用ユニットを使用します。また、使い方のサンプルは [fpc/packages/openal/examples](<http://svn.freepascal.org/svn/fpc/trunk/packages/openal/examples>) にあります。
99102
100103## BASS
101104
102-BASS ライブラリは <http://www.un4seen.com/> および <http://www.un4seen.com/forum/?topic=8682.0> よりダウンロードできます。
105+BASS ライブラリは <http://www.un4seen.com/> および <http://www.un4seen.com/forum/?topic=8682.0> よりダウンロードできます。
103106
104107Bass ライブラリを使って Lazarus で書かれた Windows、Linux、Mac OSX 用 DJ アプリケーションがあります。 <https://sites.google.com/site/fiensprototyping/>
105108
106109## Audiere ライブラリ
107110
108-Delphi 用にバインディングされたものです。以下のものがありますが、FPC では動作しません。
111+Delphi 用にバインディングされたものです。以下のものがありますが、FPC では動作しません。
109112
110-- <http://www.casteng.com/whypascal.shtml>
111-- <http://www.afterwarp.net/resources/soundlib>
112-- <http://code.google.com/p/audiere-bind-delphi/>
113+ * <http://www.casteng.com/whypascal.shtml>
114+ * <http://www.afterwarp.net/resources/soundlib>
115+ * <http://code.google.com/p/audiere-bind-delphi/>
113116
114117## Audorra ライブラリ
115118
116-Lazarus で問題なく動作します。
119+Lazarus で問題なく動作します。
117120
118121<http://sourceforge.net/projects/audorra/>
119122
120123## OMEGA Engine
121124
122-OMEGA Engine はわずか 50kb の Omega.dll ファイル 1 つで動作するゲームエンジンです。FLAC、OGG、MP3、MP2、AMR、WMA ファイルの再生が可能です。システムにインストールされている音声コーデックを検出して使用します。
125+OMEGA Engine はわずか 50kb の Omega.dll ファイル 1 つで動作するゲームエンジンです。FLAC、OGG、MP3、MP2、AMR、WMA ファイルの再生が可能です。システムにインストールされている音声コーデックを検出して使用します。
123126
124127<http://sourceforge.net/projects/omega-engine/files/>
125128
126-このプロジェクトは現在活動していませんが、とても簡単に使えるライブラリです。
127-
128-``` pascal
129+このプロジェクトは現在活動していませんが、とても簡単に使えるライブラリです。
130+```
129131Media_Play('Music.mp3', TRUE);
130132```
131133
132134## PortAudio
133135
134-[PortAudio](http://www.portaudio.com/) はさまざまな言語にバインディングされている、クロスプラットフォームでオープンソースな録音・再生ライブラリです。このライブラリはサウンドデバイスにアクセスするためのものなので、ファイルの読み込み部分等は作成する必要があるでしょう。
136+[PortAudio](<http://www.portaudio.com/>) はさまざまな言語にバインディングされている、クロスプラットフォームでオープンソースな録音・再生ライブラリです。このライブラリはサウンドデバイスにアクセスするためのものなので、ファイルの読み込み部分等は作成する必要があるでしょう。
135137
136-フォーラムユーザの FredvS 氏が PortAudio ライブラリを動的読み込みできる Pascal ユニット [2](http://lazarus.freepascal.org/index.php/topic,17521.0.html) を書いています。(訳注:静的読み込み用のヘッダユニットは PortAudio の Links ページより入手できます。)
138+フォーラムユーザの FredvS 氏が PortAudio ライブラリを動的読み込みできる Pascal ユニット [[2]](<http://lazarus.freepascal.org/index.php/topic,17521.0.html>) を書いています。(訳注:静的読み込み用のヘッダユニットは PortAudio の Links ページより入手できます。)
137139
138140## SDL + SDL_mixer
139141
140-基本となる SDL ライブラリにあるサウンドシステムは、とても簡素なものです。一般には、より扱いやすい多くのサウンド API が実装されている SDL mixer を併せて使用します。
142+基本となる SDL ライブラリにあるサウンドシステムは、とても簡素なものです。一般には、より扱いやすい多くのサウンド API が実装されている SDL mixer を併せて使用します。
141143
142-SDL ライブラリアクセス用ユニットは fpc/packages/sdl に置いてあります。
144+SDL ライブラリアクセス用ユニットは fpc/packages/sdl に置いてあります。
143145
144146## FMOD
145147
146-ソースは公開されていません。非商用ソフトウェアにはフリーで使うことができますが、商用ソフトウェアではライセンス料金を払う必要があります。
148+ソースは公開されていません。非商用ソフトウェアにはフリーで使うことができますが、商用ソフトウェアではライセンス料金を払う必要があります。
147149
148150## Squall sound
149151
150-Squall sound は FPC で正常に動作しません。また、立体音響と EAX の音響効果が使えますが、MP3、OGG、WAV フォーマットしかサポートしていません。
152+Squall sound は FPC で正常に動作しません。また、立体音響と EAX の音響効果が使えますが、MP3、OGG、WAV フォーマットしかサポートしていません。
151153
152154<http://www.afterwarp.net/resources/soundlib>
153155
154156## FPSound
155157
156-FPSound は fpspreadsheet や fpvectorial と同様の設計思想に基づいて開発された新しいライブラリです。すなわち、サウンドファイルの読み込み、書き込み、再生するためのモジュールは各々独立していますし、編集方法も抽象化されています。詳しくは、[[FPSound]] を参照してください。
158+FPSound は fpspreadsheet や fpvectorial と同様の設計思想に基づいて開発された新しいライブラリです。すなわち、サウンドファイルの読み込み、書き込み、再生するためのモジュールは各々独立していますし、編集方法も抽象化されています。詳しくは、[[FPSound]] を参照してください。
157159
158160## UOS (United OpenLib of Sound)
159161
160-UOS は United OpenLib of Sound の略語です。UOS は複数のハイクオリティなオープンソースオーディオライブラリを使って作られています。
162+UOS は United OpenLib of Sound の略語です。UOS は複数のハイクオリティなオープンソースオーディオライブラリを使って作られています。
161163
162-UOS で以下のことができます。
164+UOS で以下のことができます。
163165
164-- mp3、ogg、wav、flac などの音声ファイルを再生できます。
165-- データは 16、32 ビット、浮動小数 32 ビットで取り扱えます。
166-- 再生できるすべてのオーディオ形式で保存できます。
167-- 簡単なデジタル信号処理(音量、フィルタ処理)が行えます。
168-- 入出力をマルチチャンネルで行えます。
166+ * mp3、ogg、wav、flac などの音声ファイルを再生できます。
167+ * データは 16、32 ビット、浮動小数 32 ビットで取り扱えます。
168+ * 再生できるすべてのオーディオ形式で保存できます。
169+ * 簡単なデジタル信号処理(音量、フィルタ処理)が行えます。
170+ * 入出力をマルチチャンネルで行えます。
169171
170-UOS はオーディオライブラリに PortAudio、SndFile、mpg123 を使用しています。
172+UOS はオーディオライブラリに PortAudio、SndFile、mpg123 を使用しています。
171173
172-パッケージには以下のものが含まれています。
174+パッケージには以下のものが含まれています。
173175
174-- 使い方のサンプル
175-- Linux 32/64、Windows 32/64、Mac OSX 32 用のバイナリライブラリ
176+ * 使い方のサンプル
177+ * Linux 32/64、Windows 32/64、Mac OSX 32 用のバイナリライブラリ
176178
177179<http://sites.google.com/site/fiensprototyping/U_OS_Test.tar.gz>
178180
179181<http://github.com/fredvs/uos/>
180182
181183# 関連項目
182184
183-- [[Audio libraries|オーディオライブラリ]]
185+ * [[Audio libraries|オーディオライブラリ]]
184186
185187---
186-*From the Free Pascal wiki, page "Multimedia Programming/ja", as it stood on 2020-02-20 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*
188+*From the Free Pascal wiki, page "Multimedia Programming/ja", as the Internet Archive kept it on 2025-01-17, last changed on 2020-02-21. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history