単なるメモです。
+obs_video_thread (obs-video.c) +render_displays +output_frame +render_video | +render_main_texture (1) | | +obs_view_render [main_view のレンダリング] (obs-view.c) | | +obs_source_video_render [source のレンダリング] (obs-view.c) | | +obs_source_video_render (obs-source.c) | | +以下ごにょごにょ | +render_output_texture (2) | +render_convert_texture (3) | +stage_output_texture (4) +download_frame (5)
流れとしては
- メインの描画をする。transition などもここで処理される。【今のメインデータ】として 1 フレームが完成する。
- 出力用の画面を【以前のメインデータ】から【今の出力データ】コピー。
- 出力画面をリサイズする用。【以前の出力データ】から【今のリサイズされた出力データ】へ。(GPU が有効であれば)←※
- 最後に【以前のリサイズされた出力データ】(GPU 無効化時: 【以前の出力データ】)から【今のコピー用データ】へコピー。
- 【以前のコピー用データ】をダウンロード。
※ 個人的にやっぱりこの工程いらないと思うんよなぁ。
あくまで雑記です。ここをみてどういう風にするか考えていくので。