2回連続で投稿した一連のまとめ。

具体的な説明が足りてなかったので、最後に少しばかり補足したい。
自身はkodi v19.4 on ラズパイ3で試しただけなので、それを前提とする。

まず、最初に行なったのはlibaribcaptionのインストールから。
そう言っても、全てREADMEに記されているので説明は不要だろう。
ただ、念のため用意されているテストプログラムくらいは実行しておいた方が良いと思う。
正しい環境が整っていれば、録画データを通すことで字幕の画像が出力される。

次に、FFmpegのパッチ
そもそも、このパッチはkodiの当該バージョンで使用されるFFmpegには対応していない。
よって、バージョンの差異を考慮しながら手作業で修正する必要がある。

大きな違いとして、字幕用codecのコンテキストを定義する構造体が変更されている。
ただ、各々バージョンのソースを見比べると大した違いでない事が分る。
見た目と直感だけのナンチャッテ修正で、コンパイルは通るようになった。
理解していたなら、見るべき所は有ったと思う。
ただ、自身ではこれが精一杯だったので、そのまま進めた。

まぁ、ポジティブに考えれば、その程度の修正しか必要なかったという事だろう。
いずれにしても、コードの理解がまるで無いので、これ以上の対応は不可能なのだが...。

また、上記修正の他に変更点が一箇所ある。
FFmpegを通して字幕デコードされる際、出力形式がデフォルトでass形式が選択されている。
よって、これを変更してbitmap形式をデフォルトにする必要がある(理由は前回ブログで)。

最後にkodiのビルド。
使用したものはpopcornmixのgbm_matrix
ビルドと言ってもスクリプトが用意されているので、それを実行するだけ。
当然だが、パッチで追加したオプション--enable-libaribcaptionを有効にしておく必要がある。
ちなみに、libaribb24とは排他的に使用されるため、こちらは未定義のままにしておく。

そして、今回はラズパイ3を使用したのでkodiインストール時に使用されるFFmpegに修正を加えている。
osがbullseyeで、且つFFmpegがインストールされた環境の場合、FFmpegは環境にあるものが使用される。
そのため、kodiビルドのオプション ENABLE_INTERNAL_FFMPEG を ON に変更した。

以上、後はビルドが終るまで、コーヒーでも飲んで待つだけ。

ビルド後に動作を確認するが、ほぼ完璧!

そして、最後の最後。
念のため、システム情報でメモリーの増減を確認する。

が、あきらかにメモリーが増えてる。

怪しいのは...。

kodiか?
修正パッチか?
それとも、libaribcaptionか?

いやいや、修正パッチに手を加えた箇所だろ...orz