FFmpeg
Loading...
Searching...
No Matches
FFVkEncodeLoop Struct Reference

Frame loop for compute encoders. More...

#include <vulkan_video.h>

Data Fields

FFVulkanContext * s
 
FFVkExecPool * pool
 
int(* submit_frame )(AVCodecContext *avctx, FFVkExecContext *exec, AVFrame *frame)
 
int(* get_packet )(AVCodecContext *avctx, FFVkExecContext *exec, AVPacket *pkt)
 
AVFrame * frame
 
AVPacket * pkt
 
struct { 
 
   int64_t   pts 
 
   int64_t   duration 
 
   void *   opaque 
 
   AVBufferRef *   opaque_ref 
 
} * frames 
 
int head
 
int in_flight
 

Detailed Description

Frame loop for compute encoders.

Keeps up to pool_size frames in flight, submitting each into its own execution context, and returns their packets in order as soon as they complete, or once the pool is full.

Definition at line 163 of file vulkan_video.h.

Field Documentation

◆ s

FFVulkanContext* FFVkEncodeLoop::s

Definition at line 164 of file vulkan_video.h.

Referenced by ff_vk_encode_loop_init(), and loop_oldest_done().

◆ pool

◆ submit_frame

int(* FFVkEncodeLoop::submit_frame) (AVCodecContext *avctx, FFVkExecContext *exec, AVFrame *frame)

Definition at line 166 of file vulkan_video.h.

Referenced by ff_vk_encode_loop_init(), and ff_vk_encode_loop_receive_packet().

◆ get_packet

int(* FFVkEncodeLoop::get_packet) (AVCodecContext *avctx, FFVkExecContext *exec, AVPacket *pkt)

Definition at line 167 of file vulkan_video.h.

Referenced by ff_vk_encode_loop_init(), and loop_get_packet().

◆ frame

AVFrame* FFVkEncodeLoop::frame

◆ pkt

AVPacket* FFVkEncodeLoop::pkt

◆ pts

int64_t FFVkEncodeLoop::pts

Definition at line 172 of file vulkan_video.h.

Referenced by ff_vk_encode_loop_receive_packet(), and loop_get_packet().

◆ duration

int64_t FFVkEncodeLoop::duration

Definition at line 173 of file vulkan_video.h.

Referenced by ff_vk_encode_loop_receive_packet(), and loop_get_packet().

◆ opaque

void* FFVkEncodeLoop::opaque

Definition at line 174 of file vulkan_video.h.

Referenced by ff_vk_encode_loop_receive_packet(), and loop_get_packet().

◆ opaque_ref

AVBufferRef* FFVkEncodeLoop::opaque_ref

◆ [struct]

◆ head

◆ in_flight


The documentation for this struct was generated from the following file: