Mirakurun 用映像視聴アプリ実装研究資料
MirakTest は macOS / Windows / Linux 上で Mirakurun を利用しデジタル放送を視聴するアプリの実装を研究する目的で配布される研究資料です。本アプリに CAS 処理は含まれていないため、デコードされていない放送データを視聴することは出来ません。
macOS / Windows 版ビルドでは aribb24.js による ARIB-STD-B24 形式の字幕表示に対応しています。
プラグインを導入して機能を拡張することが出来ます。
初期設定では字幕の表示に Rounded M+ 1m for ARIB を指定しています。ダウンロードはこちら。
各 OS 向けビルドを Releases にて配布しています。
対応するアーキテクチャの dmg をダウンロード後、マウントして app を Applications にコピーします。
Intel / Apple Silicon mac (aarch64) 上で動作する macOS Monterey での動作を確認しています。
exe のインストーラーをダウンロードして実行するか、zip を解凍して使用してください。
Windows 11 での動作を確認しています。
実験的なサポートのため、環境によっては正しく動作しない可能性があります。Issue で詳細なレポートをいただければ対応できるかもしれませんが、保証はできません。
vlc の導入が必要です。debian の場合は以下のコマンドでインストールできます。
apt-get install vlc
AppImage に実行権限と --no-sandbox
をつけて実行するか、アーカイブ版の chrome-sandbox
を適切な権限に設定してください(参考)。
下記開発手順に沿ってビルドを行うか、CI にてコミット毎にビルドが行われているので、コミットメッセージ右の緑色チェック → Artifacts からダウンロードできます(ログインが必要です)。
プラグインを導入して機能を拡張することが出来ます。
利用できるプラグインの一覧はこちら。
API 仕様はplugin.tsを参照してください。
型定義ファイル(plugin.d.ts
)はリリースにてアプリイメージと一緒に配布しています。
brew install vlc cmake
git clone [email protected]:ci7lus/MirakTest.git
cd MirakTest
yarn
./setup_libvlc_mac.sh
./setup_wcjs.sh
yarn build:tsc
yarn dev:webpack
yarn dev:electron
yarn build
vlc-miraktest の Releases にある dmg から VLC.app
を抽出し MirakTest ディレクトリに配置することで、ビルドが aribb24.js を用いるようになります。
choco install -y cmake powershell-core
git clone git@github.com:ci7lus/MirakTest.git
cd MirakTest
yarn --ignore-scripts
pwsh ./setup_wcjs.ps1
yarn build:tsc
yarn dev:webpack
yarn dev:electron
yarn build
sudo apt-get install build-essential cmake libvlc-dev vlc
git clone [email protected]:ci7lus/MirakTest.git
cd MirakTest
yarn
./setup_wcjs.sh
yarn build:tsc
yarn dev:webpack
yarn dev:electron
yarn build
MirakTest は次のプロジェクトを利用/参考にして実装しています。
- Chinachu/Mirakurun
- RSATom/WebChimera.js
- search-future/miyou.tv
- monyone/aribb24.js
- tsukumijima/KonomiTV
DTV コミュニティの皆さまに感謝します。
MirakTest のソースコードは MIT ライセンスの下で提供されますが、ビルド済みパッケージは libVLC を含んでいる場合があり、その場合は LGPLv2.1 または GPLv2 でライセンスされます(詳細)。ビルド済みパッケージを Releases や Artifacts にて配布する場合は可能な限り周辺情報としてその旨を表示し、パッケージにはライセンス情報を同梱します。