ci7lus / miraktest Goto Github PK
View Code? Open in Web Editor NEWMirakurun 用映像視聴アプリ実装研究資料
License: MIT License
Mirakurun 用映像視聴アプリ実装研究資料
License: MIT License
v3以降の名前ごと募集中
表示がそのままなのがまずい、あとデュアルモノ
しばし誤爆するしTVTestに合わせてつけたけどトラックパッド運用だと不要
お忙しいと思いますが、web-bmlを使用したデータ放送プラグインがあったら嬉しいなって思いました
Originally posted by @kilinbox in #12 (comment)
Windowsだと2秒かかるって文句言われた
#67 のリグレッション
canvas要素に適用されたスタイルと食い違っているし、object-fit
再適用で治るのでChromiumのバグのような気がする
pre-built binary の内容があれば動くので、それにライセンス周りの文章を足した分だけ残してソースファイルとかを消したい
どうやって管理すればいいんだろう、TextTrack?
df25596 として修正を試みたが治ってなさそうなのでrevして起票
過負荷状態や複数回リロードを繰り返した状態だと起きやすい気がする
callbackによる値の変化とユーザーの目的値が同期されてるのが根本的な問題なんだけど、逆反映とかのことも考えるとスパッと倒せる方法があんま考えつかない
明示的な再生と停止の際に別途その時間を記録しdiffが500msを超えたら操作を無視する?
#00000 コードブラック OLED用
試したバージョン: MirakTest-2.0.0-rc.1-win
Windows10 21H2で実行.
画面にカーソルを乗せてUI表示されたタイミングでエラー発生
エラー文
Error occurred in handler for 'set-window-button-visibility': TypeError: r.setWindowButtonVisibility is not a function
at C:\Users\unyacat\Downloads\MirakTest-2.0.0-rc.1-win\resources\app.asar\dist\main.electron.js:1932:283733
at node:electron/js2c/browser_init:189:579
at EventEmitter.<anonymous> (node:electron/js2c/browser_init:161:11327)
at EventEmitter.emit (node:events:526:28)
現状実行しているElectronは、簡単のために安全のための措置をあらかた無効化してしまっている。
これでは問題なので、v2.0.0リリースまでにはある程度解消する。
参考: https://www.electronjs.org/docs/tutorial/security
現状有効にしている機能
contextIsolation: false,
nodeIntegration: true,
enableRemoteModule: true,
全部読みだそうとしている?(当環境では上限の20MB/sぐらい読み出す)
関係ありそうなVLC Argは次の通り
--prefetch-buffer-size
--prefetch-read-size
--prefetch-seek-threshold
これのうち --prefetch-seek-threshold
を0にすると再生が始まらないが、1にするとめっちゃ読み出す
番組が短い「ガルパ☆ピコ ふぃーばー! #\1」で検証したが、最初に再生ファイルを読み込んだ後は、視聴終了後まで1MBを超える通信が走らなかったので、全て読み込んでいるものと推察
VLC.app
単体で視聴すると2MB程度の読み込みのため、WebChimera.js側?
よくわからない
必要ないプラグインは切れるようにしたい
多分 vlc が増えてる
試したバージョン: MirakTest-2.0.0-rc.1-win
Windows10 21H2で実行.
実行直後
エラー文
globalScreenshotAccelerator繧定ィュ螳壹@縺セ縺励◆ undefined
莉・荳九・蜷榊燕縺ォ蜷郁・縺吶k繝励Λ繧ー繧、繝ウ繧堤┌隕悶@縺セ縺・ []
Error: spawn EPERM
at ChildProcess.spawn (node:internal/child_process:413:11)
at spawn (node:child_process:709:9)
at Object.execFile (node:child_process:336:17)
at t.<computed> [as execFile] (node:electron/js2c/asar_bundle:5:2208)
at exec (node:child_process:234:25)
at node:electron/js2c/asar_bundle:5:12704
at C:\Users\unyacat\Downloads\MirakTest-2.0.0-rc.1-win\resources\app.asar\node_modules\font-list\libs\win32\getByPowerShell.js:33:3
at new Promise (<anonymous>)
at module.exports (C:\Users\unyacat\Downloads\MirakTest-2.0.0-rc.1-win\resources\app.asar\node_modules\font-list\libs\win32\getByPowerShell.js:30:24)
at module.exports (C:\Users\unyacat\Downloads\MirakTest-2.0.0-rc.1-win\resources\app.asar\node_modules\font-list\libs\win32\index.js:25:21) {
errno: -4048,
code: 'EPERM',
syscall: 'spawn'
}
デフォ左で無効・右も設定できるように?
困った
electron/electron#18876 (comment) みたいに writeBuffer
で書き込むと読み出せななくなる
Images are always copied as bitmaps to the clipboard, the type argument of the API does not specify the image format
Issue立ててきても良いかも
6時間程度?
素のVLCで動作するのは確認できたので各種対応する
VLCをビルドする: https://github.com/vivid-lapin/vlc-miraktest/tree/aarch64
b3f2140 の時点で発現、コンソールが出なくなる(V8クラッシュ?)ので原因がつかみにくくて困っている
映像ソースが切断で停止したまま切り替えでスタック?
player.input.rate
1-2
メディアを切り替えても再生速度は維持されるので、手動で1に戻すようにする
OS: macOS Monterey 12.0.1 aarch64 (Rosetta 2)
Mirakurun: v3.5.0
現象:いかなるサービスでも「映像の受信に失敗しました」となる
Mirakurun logs:
0|mirakurun-server | 2021-12-11T17:17:06.077+09:00 info: 192.168.1.199 - GET /api/services/3273601024/stream HTTP/1.1 403 - - 3.187 ms VLC/3.0.16 LibVLC/3.0.16 vlc-miraktest (+https://github.com/vivid-lapin/vlc-miraktest)
0|mirakurun-server | 2021-12-11T17:17:06.086+09:00 info: 192.168.1.199 - GET /api/services/3273601024/stream HTTP/1.0 403 - - 0.411 ms VLC/3.0.16 LibVLC/3.0.16 vlc-miraktest (+https://github.com/vivid-lapin/vlc-miraktest)
なお、EPGStation を用いる再生は異常なし。
ループしてるのがplayingContentかどうかもわからない、activeWindowIdの変更がループしてる気もするが
次発現したときに要確認
1c06acf
多分ここでstringifyで比較するようになったのが原因?な気がするがよくわからない、idとdurationだけ見るようにしてもいいけど、そもそもウィンドウ間ではkeyごと1秒に1回ぐらいしか更新できないようにしたほうがいいのかもしれない
「設定」から、「プラグインフォルダを開く」を選択すると、以下のメッセージが出て
プラグインフォルダが開けない。
'-------------------------------------------------
'C:\Users\hoge\AppData\Roaming\MirakTest/plugins' が見つかりません。名前を正しく入力したかどうかを確認してから、やり直してください。
'-------------------------------------------------
・・・\MirakTest/ ←ここが /(スラッシュ)になっているのが原因だと思います。
確認の程よろしくお願いします。
よくわからない、正しくイベントが発火していない気がする…
framelessであればstyleでネイティブのドラッグ移動が利用可能になるが、macOS以外での表示が絶望的なのでフレームをあまり消したくない… click判定が消失するらしくて無理
現状組み込みになっているコメントレンダラなどを外部jsに切り出せるようにする
サンプルプラグイン実装: https://github.com/ci7lus/miraktest-plugins
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping P slice due to !sync
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
[mpeg2video @ 0x7fa32b861200] Skipping B slice due to open GOP
@humiaozuzu:
@ci7lus Currently Mirakc do not implement/api/status
API (will return an empty object) and this change will break Mirakc support For Mirakc api docs: https://github.com/mirakc/mirakc/blob/main/docs/web-api.md#apistatus
f2139cf#commitcomment-74042074
VLC Bindingのままでは難しいのではないかと思っている
どこで?
現状(3.0.16)ではVLC側の改造が必要。
カスタムヘッダーとまでいかなくても、Cookie
やAuthorizaion
だけでも任意の値が渡せてほしいものだけど…。
適用済みVLCパッチ: https://github.com/vivid-lapin/vlc-miraktest
レンダラープロセス側で個別に取得しているのは重すぎるし取り回しづらい
一元的に取得、更新できる何かを用意して、取得クエリをhandleできるようにしたい
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.