Additional Recipes - webdino/meta-browser GitHub Wiki
Gecko 本体以外の追加レシピについて
Gecko (Firefox/WebViewer) 本体以外に追加のレシピをビルドする場合について説明します。
Tanzanite デモ
サンプルHTMLコンテンツ「gem-tanzanite」をインストールしたい場合は、以下の手順を行う。
meta-gecko-embeddedのclone
$ git clone https://github.com/webdino/meta-gecko-embedded.git
レイヤーを追加する。ビルドディレクトリ(${WORK}/build)のconf/bblayers.confに以下を追加する。
BBLAYERS += " ${TOPDIR}/../meta-gecko-embedded/meta-demo "
gem-tanzaniteの起動イメージへの追加。ビルドディレクトリ(${WORK}/build)のconf/local.confに以下を追加する。
IMAGE_INSTALL_append = " gem-tanzanite "
以上の設定でrootfsイメージを再ビルドする。
$ cd ${WORK}/build
$ bitbake core-image-weston
WPT テスト
WPT テストを行いたいときは動画・音声コーデックが必要なので ffmpeg を追加し、pulseaudio-server を使って PulseAudio で音声再生が可能なようにする。
IMAGE_INSTALL_append = " ffmpeg "
IMAGE_INSTALL_append = " pulseaudio-server "
以上の設定でrootfsイメージを再ビルドする。
$ cd ${WORK}/build
$ bitbake core-image-weston
/usr/lib/firefox/defaults/pref/openmax.js
に以下の行を追加して、OpenMAXモジュールが優先してvideoタグの動画・音声を処理するのを防ぐ。
pref("media.omx.enabled", false);
PulseAudioはsystemctl経由で強制的に立ち上げることができる。
# systemctl --user start pulseaudio
使用するオーディオデバイスを変更するには、pactlコマンドでデバイス名を確認した後、設定ファイルに書き込む。
sinkデバイスの名前を調べる:
# pactl list sinks | grep Name
Name: alsa_output...
set-default-sinkにデバイスの名前(ここでは alsa_output...)を与え、pulseaudioを再起動する:
# echo "set-default-sink alsa_output..." >> /etc/pulse/default.pa
# systemctl --user restart pulseaudio
Firefoxを立ち上げ、about:support を開く。
Audio Backendでremote
の表示となっていれば音声バックエンドはPluseAudioを使用している。