Sony torne CECH-ZD1J を Windows の TVTest、または Linux の Mirakurun から利用するためのソースコードと設定例です。Windows は C/C++ 製 BonDriver、Linux は Rust 製受信機を使います。
| ディレクトリ | 内容 |
|---|---|
| bondriver/ | Windows x64 用 BonDriver、ビルド・テスト手順 |
| linux/ | Rust 受信機、Mirakurun・udev 設定例 |
| nixos/ | Nix パッケージと NixOS モジュール |
| firmware/ | 差分パッチ、適用ツール、開発用 C/Rust ソース |
| windows/ | CECH-ZD1J 用 Zadig 設定例 |
| tests/ | ネイティブ処理とソース配布物の検査コード |
CECH-ZD1J、アンテナ、通常受信では B-CAS カードが必要です。次のファイルは利用者が別途用意し、プロジェクト直下を基準に配置してください。受信機は対応ファイルのハッシュを検証します。
BCJB95006/USRDIR/mb86h47_aac_idle.bin
BCJB95006/USRDIR/mb86h47_aac_trc.bin
research/decrypted/PvrRecSvr.prx
research/decrypted/libM2tsAes.elf
元ファームウェア、改変済みファームウェア本体、復号済みモジュール、SPI ダンプ、TVTest 本体、コンパイラ、受信データは同梱しません。配置先とローカルのログ・解析資料・旧配布物は .gitignore で公開対象から除外しています。
Windows x64 と Zig 0.15.2 を用意し、プロジェクト直下で実行します。
./bondriver/build.ps1 -ZigPath C:/tools/zig/zig.exebondriver/dist/ の DLL と INI を、終了した 64bit TVTest のフォルダへコピーします。コピー先 INI の Root をプロジェクトの絶対パスへ変更し、対象 USB 機器を WinUSB へ設定してください。詳細は Windows の利用方法 を参照してください。
Rust 1.85 以降、C コンパイラ、pkg-config、libusb の開発用ファイルを用意します。
cargo build --release --locked --manifest-path linux/receiver/Cargo.toml
sh linux/torne-recv --channel 20 --check
sh linux/torne-recv --channel 20 --seconds 10 > sample.ts物理チャンネルは受信地域に合わせて指定してください。USB 権限、Mirakurun、NixOS の設定は Linux の利用方法 に記載しています。
Python 3.10 以降の標準ライブラリだけで元ファイルへ差分を適用できます。SPI ダンプや追加 Python パッケージは不要です。
python firmware/tools/apply-patch.py --variant psi-passthrough入力と出力の SHA-256 を照合し、firmware/build/ へ新規保存します。元ファイルは上書きしません。INI や受信コマンドから生成物を明示指定してください。方式・対応範囲は パッチの説明 を参照してください。
python scripts/package-source.py
python -m unittest discover -s tests -p test_source_distribution.pydist/tvtuner-source.zip と SHA-256 ファイルを生成します。Git が無視していないファイルだけを収録し、元ファームウェアやビルド生成物の混入を検査します。Git リポジトリで実行してください。コミットやリモートへの送信は行いません。
Git 登録前に git status --short --untracked-files=all と git add --dry-run . で対象を確認できます。既存の archive/、rel/、diagnostics/、research/、TVTest フォルダはローカル保管用です。
ファームウェア全体の置換、全多重 TS の完全性、すべての TVTest 機能や長時間運転は保証しません。Linux は純正と PAT/PMT 保持版に対応します。スクランブル保持版は Windows 用の実験的構成です。機器への転送は RAM ロードで、SPI Flash 書き換え用イメージは含みません。
第三者由来コードの表記は bondriver/THIRD_PARTY_LICENSES.txt を参照してください。プロジェクト全体の新たなライセンス指定は行っていません。