MPEG-2 VIDEO VFAPI Plug-In ver. 0.7.15 を公開しました。ダウンロードは [URI] からどうぞ。更新内容は次の通りです。
一部の TS ファイルが開けないバグについては tana3n さまからのサンプル提供でこの問題を認識することができました。情報提供ありがとうございます。「パナソニック製のマスターを採用した放送局から送出されるMPEG2-TSで発生すると思われる」「テレビ信州のマスター更新前2020年以前のTSファイル全般で発生」していたと聞いています。
ver.0.7.14 までは TS をパースする処理に問題があり一部変数を未初期化のまま放置していたために今回の問題が発生していました。PES::stream_id が 0xE0 の場合は偶然動いていたという状況でした。
残りの変更点はこの機会に今でも入手可能なコンパイラでビルドできるようにしておくかとコンパイラ変更に手を出したために付随的に発生したものです。
今回のバージョンは Microsoft Visual Studio 2019 Comunity Edition と Intel OneAPI DPC++/C++ Compiler 2022.0.0 でビルドしました。これ自体は Makefile の微調整で済んだのですが、Intel OneAPI DPC++/C++ Compiler ではインラインアセンブリからのグローバル変数参照がうまく行えなくなっているようで浮動小数点 IDCT の SSE コードでリンクエラーが出るようになっていました。
MASM を使ってオブジェクトファイルを生成している純アセンブリコードは特に問題が起きていなかったので、浮動小数点 IDCT の SIMD 実装も純アセンブリで書き直して回避することにしてしまいました。面倒でしたが高速化できたのでヨシという風に考えています。
旧実装との比較では浮動小数点 IDCT 部分がざっくり倍速になってくれました。通常はより高速な AP-922 を選択する人が多いので労力を投入する意味はほぼ無いのですが純全たる趣味のコードなので。