#topicpath
*OpenBSDで動画・音声を扱う [#eed9227a]
RIGHT:EBUG 第73回会合 ~
RIGHT:EBUG 第77回会合(オンライン) ~
2021年5月29日 ~
川俣吉広、kaw@on.rim.or.jp

*準備 [#j14ecc2b]
-X11 - リリースに最初から入っている((FreeBSDでは、Xはports/packagesから入れる必要がある)) ~
... セキュリティが強化された "xenocara"

-音声
--ドライバレベルで [[audio(4)>https://man.openbsd.org/audio.4]]を提供

--その上に[[sndio(7)>https://man.openbsd.org/sndio.7]]フレームワークが構築されている~
... 過去の勉強会資料 - [[OpenBSD発の音声フレームワーク - sndio>EBUG勉強会/20180825_sndio]]

---[[sysctl(8)>https://man.openbsd.org/sysctl.8]]により kern.audio.record=1 として音声入力が使用可能になる

---制御コマンド~
...ドライバレベル - [[audioctl>https://man.openbsd.org/audioctl.8]]~
...CODEC内のミキサ - [[mixerctl>https://man.openbsd.org/mixerctl.8]]~
...一般ユーザ用の音量制御 - [[sndioctl>https://man.openbsd.org/sndioctl.1]]

-動画
-- [[video(4)>https://man.openbsd.org/man.4]] - V4L2 (Video for Linux 2) API準拠のビデオドライバ
---USBカメラ ([[uvideo(4)>https://man.openbsd.org/uvideo.4]])使用については再配布不可なfirmwareが必要なものあり~
...インストール時に [[fw_update(1)>https://man.openbsd.org/fw_update.1]] により自動的に導入される

---[[sysctl(8)>https://man.openbsd.org/sysctl.8]]により kern.video.record=1 と設定して映像が使用可能に(/etc/sysctl.confに追記する)。~
...デフォルトではkern.video.record=0 ... 映像はブランク

---/dev/video? は owner=root:wheel, perm=0640 のため、デフォルトではrootしかアクセスできない。wheelグループに対して許可を与える。 ~
... OpenBSDでは普通に chmod コマンドで変更 - chmod 0660 /dev/video? ~
... 河豚板では/devはkernel built-inなファイルシステムの一部であるため、/etc/rc.localに chmod 0660 /dev/video? を記述

*アプリケーション [#h4194d85]
-音声
--[[aucat(1)>https://man.openbsd.org/aucat.1]] - PCM/WAV音声の基本的な操作、sndiodとのやりとり

--ports/packagesから
---ミキサー - xfce4mixer, pavucontrolなど

---音声再生 - audaciousなど

---音声編集 - audacityなど

---その他ツール - normalize, vorbistoolsなど

-動画
--[[video(1)>https://man.openbsd.org/video.1]] - カメラ入力(/dev/video?からの映像信号)を表示/記録/再生する

--ports/packagesから
---表示、変換等諸々の操作 - mplayer, ffmpeg など

---動画編集 - blenderのVSE (Video Sequence Editor), shotcut など

-ウェブブラウザ
--Firefox (firefox-i18n-ja), Chromium, Iridium など
---動作再生, WebRTC等に対応

---動画再生にはffmpegも必要 (portsでは依存関係により自動的にインストール''されるわけではない''ので注意!)

---/etc/{firefox,chromium}/* ~
... [[pledge(2)>https://man.openbsd.org/pledge.2]], [[unveil(2)>https://man.openbsd.org/unveil.2]]によるセキュリティ機能を設定するファイル群~
... デフォルトではpledgeによりshmem関連の機能が制限され、画面共有が使えないため、無効化が必要。

----
#topicpath

Front page   Edit Diff History Attach Copy Rename Reload   New Page list Search Recent changes   Help   RSS of recent changes