FFmpeg  4.0
Data Fields
FrameThreadContext Struct Reference

Context stored in the client AVCodecInternal thread_ctx. More...

Data Fields

PerThreadContextthreads
 The contexts for each thread. More...
 
PerThreadContextprev_thread
 The last thread submit_packet() was called on. More...
 
pthread_mutex_t buffer_mutex
 Mutex used to protect get/release_buffer(). More...
 
pthread_mutex_t hwaccel_mutex
 This lock is used for ensuring threads run in serial when hwaccel is used. More...
 
pthread_mutex_t async_mutex
 
pthread_cond_t async_cond
 
int async_lock
 
int next_decoding
 The next context to submit a packet to. More...
 
int next_finished
 The next context to return output from. More...
 
int delaying
 Set for the first N packets, where N is the number of threads. More...
 

Detailed Description

Context stored in the client AVCodecInternal thread_ctx.

Definition at line 117 of file pthread_frame.c.

Field Documentation

◆ threads

PerThreadContext* FrameThreadContext::threads

The contexts for each thread.

Definition at line 118 of file pthread_frame.c.

Referenced by ff_frame_thread_free(), ff_frame_thread_init(), ff_thread_decode_frame(), ff_thread_flush(), and park_frame_worker_threads().

◆ prev_thread

PerThreadContext* FrameThreadContext::prev_thread

The last thread submit_packet() was called on.

Definition at line 119 of file pthread_frame.c.

Referenced by ff_frame_thread_free(), ff_thread_flush(), and submit_packet().

◆ buffer_mutex

pthread_mutex_t FrameThreadContext::buffer_mutex

Mutex used to protect get/release_buffer().

Definition at line 121 of file pthread_frame.c.

Referenced by ff_frame_thread_free(), ff_frame_thread_init(), ff_thread_release_buffer(), release_delayed_buffers(), and thread_get_buffer_internal().

◆ hwaccel_mutex

pthread_mutex_t FrameThreadContext::hwaccel_mutex

This lock is used for ensuring threads run in serial when hwaccel is used.

Definition at line 126 of file pthread_frame.c.

Referenced by ff_frame_thread_free(), ff_frame_thread_init(), ff_thread_finish_setup(), and frame_worker_thread().

◆ async_mutex

pthread_mutex_t FrameThreadContext::async_mutex

◆ async_cond

pthread_cond_t FrameThreadContext::async_cond

◆ async_lock

int FrameThreadContext::async_lock

Definition at line 129 of file pthread_frame.c.

Referenced by async_lock(), async_unlock(), and ff_frame_thread_init().

◆ next_decoding

int FrameThreadContext::next_decoding

The next context to submit a packet to.

Definition at line 131 of file pthread_frame.c.

Referenced by ff_thread_decode_frame(), ff_thread_flush(), and submit_packet().

◆ next_finished

int FrameThreadContext::next_finished

The next context to return output from.

Definition at line 132 of file pthread_frame.c.

Referenced by ff_thread_decode_frame(), and ff_thread_flush().

◆ delaying

int FrameThreadContext::delaying

Set for the first N packets, where N is the number of threads.

While it is set, ff_thread_en/decode_frame won't return any results.

Definition at line 134 of file pthread_frame.c.

Referenced by ff_frame_thread_init(), ff_thread_decode_frame(), and ff_thread_flush().


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