choes
New Member
Hello guys,
I'm reading the source code of obs-studio, and confused about the data source of the rtmp_output plugin.
The av_capture_input plugin puts the captured frame data into async_frames by calling obs_source_output_video(), we can get the frame in obs_source_update_async_video() by calling obs_source_get_frame(), then copy the frame data to the async_texture.
However, I notice that the obs_video_thread uses convert_textures as the source while calling gs_stage_texture(). I'm a novice about the OpenGL, and confused about the relationship between the async_texture and the convert_textures.
So, how does the rtmp_output plugin gets video frame data from these textures?
Maybe I misunderstand the source code, please correct me if that.
Thanks,
Choes
I'm reading the source code of obs-studio, and confused about the data source of the rtmp_output plugin.
The av_capture_input plugin puts the captured frame data into async_frames by calling obs_source_output_video(), we can get the frame in obs_source_update_async_video() by calling obs_source_get_frame(), then copy the frame data to the async_texture.
However, I notice that the obs_video_thread uses convert_textures as the source while calling gs_stage_texture(). I'm a novice about the OpenGL, and confused about the relationship between the async_texture and the convert_textures.
So, how does the rtmp_output plugin gets video frame data from these textures?
Maybe I misunderstand the source code, please correct me if that.
Thanks,
Choes
Last edited: