FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
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 115 of file pthread_frame.c.

Field Documentation

PerThreadContext* FrameThreadContext::threads

The contexts for each thread.

Definition at line 116 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().

PerThreadContext* FrameThreadContext::prev_thread

The last thread submit_packet() was called on.

Definition at line 117 of file pthread_frame.c.

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

pthread_mutex_t FrameThreadContext::buffer_mutex

Mutex used to protect get/release_buffer().

Definition at line 119 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().

pthread_mutex_t FrameThreadContext::hwaccel_mutex

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

Definition at line 124 of file pthread_frame.c.

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

pthread_mutex_t FrameThreadContext::async_mutex
pthread_cond_t FrameThreadContext::async_cond
int FrameThreadContext::async_lock

Definition at line 127 of file pthread_frame.c.

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

int FrameThreadContext::next_decoding

The next context to submit a packet to.

Definition at line 129 of file pthread_frame.c.

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

int FrameThreadContext::next_finished

The next context to return output from.

Definition at line 130 of file pthread_frame.c.

Referenced by ff_thread_decode_frame(), and ff_thread_flush().

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 132 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: