FFmpeg
|
Context used by codec threads and stored in their AVCodecInternal thread_ctx. More...
Data Fields | |
struct FrameThreadContext * | parent |
pthread_t | thread |
int | thread_init |
unsigned | pthread_init_cnt |
Number of successfully initialized mutexes/conditions. More... | |
pthread_cond_t | input_cond |
Used to wait for a new packet from the main thread. More... | |
pthread_cond_t | progress_cond |
Used by child threads to wait for progress to change. More... | |
pthread_cond_t | output_cond |
Used by the main thread to wait for frames to finish. More... | |
pthread_mutex_t | mutex |
Mutex used to protect the contents of the PerThreadContext. More... | |
pthread_mutex_t | progress_mutex |
Mutex used to protect frame progress values and progress_cond. More... | |
AVCodecContext * | avctx |
Context used to decode packets passed to this thread. More... | |
AVPacket * | avpkt |
Input packet (for decoding) or output (for encoding). More... | |
AVFrame * | frame |
Output frame (for decoding) or input (for encoding). More... | |
int | got_frame |
The output of got_picture_ptr from the last avcodec_decode_video() call. More... | |
int | result |
The result of the last codec decode/encode() call. More... | |
atomic_int | state |
int | die |
Set when the thread should exit. More... | |
int | hwaccel_serializing |
int | async_serializing |
int | hwaccel_threadsafe |
atomic_int | debug_threads |
Set if the FF_DEBUG_THREADS option is set. More... | |
Context used by codec threads and stored in their AVCodecInternal thread_ctx.
Definition at line 76 of file pthread_frame.c.
struct FrameThreadContext* PerThreadContext::parent |
Definition at line 77 of file pthread_frame.c.
Referenced by ff_thread_finish_setup(), frame_worker_thread(), init_thread(), submit_packet(), thread_get_buffer_internal(), and thread_set_name().
pthread_t PerThreadContext::thread |
Definition at line 79 of file pthread_frame.c.
Referenced by ff_frame_thread_free(), and init_thread().
int PerThreadContext::thread_init |
Definition at line 80 of file pthread_frame.c.
Referenced by ff_frame_thread_free(), and init_thread().
unsigned PerThreadContext::pthread_init_cnt |
Number of successfully initialized mutexes/conditions.
Definition at line 81 of file pthread_frame.c.
pthread_cond_t PerThreadContext::input_cond |
Used to wait for a new packet from the main thread.
Definition at line 82 of file pthread_frame.c.
Referenced by ff_frame_thread_free(), frame_worker_thread(), and submit_packet().
pthread_cond_t PerThreadContext::progress_cond |
Used by child threads to wait for progress to change.
Definition at line 83 of file pthread_frame.c.
Referenced by ff_thread_await_progress(), ff_thread_finish_setup(), ff_thread_report_progress(), frame_worker_thread(), and submit_packet().
pthread_cond_t PerThreadContext::output_cond |
Used by the main thread to wait for frames to finish.
Definition at line 84 of file pthread_frame.c.
Referenced by ff_thread_decode_frame(), frame_worker_thread(), and park_frame_worker_threads().
pthread_mutex_t PerThreadContext::mutex |
Mutex used to protect the contents of the PerThreadContext.
Definition at line 86 of file pthread_frame.c.
Referenced by ff_frame_thread_free(), frame_worker_thread(), and submit_packet().
pthread_mutex_t PerThreadContext::progress_mutex |
Mutex used to protect frame progress values and progress_cond.
Definition at line 87 of file pthread_frame.c.
Referenced by ff_thread_await_progress(), ff_thread_decode_frame(), ff_thread_finish_setup(), ff_thread_report_progress(), frame_worker_thread(), park_frame_worker_threads(), and submit_packet().
AVCodecContext* PerThreadContext::avctx |
Context used to decode packets passed to this thread.
Definition at line 89 of file pthread_frame.c.
Referenced by ff_frame_thread_free(), ff_thread_decode_frame(), ff_thread_flush(), frame_worker_thread(), init_thread(), submit_packet(), and thread_set_name().
AVPacket* PerThreadContext::avpkt |
Input packet (for decoding) or output (for encoding).
Definition at line 91 of file pthread_frame.c.
Referenced by ff_frame_thread_free(), ff_thread_decode_frame(), frame_worker_thread(), init_thread(), and submit_packet().
AVFrame* PerThreadContext::frame |
Output frame (for decoding) or input (for encoding).
Definition at line 93 of file pthread_frame.c.
Referenced by ff_frame_thread_free(), ff_thread_decode_frame(), ff_thread_flush(), frame_worker_thread(), and init_thread().
int PerThreadContext::got_frame |
The output of got_picture_ptr from the last avcodec_decode_video() call.
Definition at line 94 of file pthread_frame.c.
Referenced by ff_thread_decode_frame(), ff_thread_flush(), frame_worker_thread(), and park_frame_worker_threads().
int PerThreadContext::result |
The result of the last codec decode/encode() call.
Definition at line 95 of file pthread_frame.c.
Referenced by ff_thread_decode_frame(), ff_thread_flush(), and frame_worker_thread().
atomic_int PerThreadContext::state |
Definition at line 97 of file pthread_frame.c.
Referenced by ff_thread_can_start_frame(), ff_thread_decode_frame(), ff_thread_finish_setup(), frame_worker_thread(), init_thread(), park_frame_worker_threads(), submit_packet(), and thread_get_buffer_internal().
int PerThreadContext::die |
Set when the thread should exit.
Definition at line 99 of file pthread_frame.c.
Referenced by ff_frame_thread_free(), and frame_worker_thread().
int PerThreadContext::hwaccel_serializing |
Definition at line 101 of file pthread_frame.c.
Referenced by ff_thread_finish_setup(), and frame_worker_thread().
int PerThreadContext::async_serializing |
Definition at line 102 of file pthread_frame.c.
Referenced by ff_thread_finish_setup(), and frame_worker_thread().
int PerThreadContext::hwaccel_threadsafe |
Definition at line 108 of file pthread_frame.c.
Referenced by ff_thread_finish_setup(), submit_packet(), and update_context_from_thread().
atomic_int PerThreadContext::debug_threads |
Set if the FF_DEBUG_THREADS option is set.
Definition at line 110 of file pthread_frame.c.
Referenced by ff_thread_await_progress(), ff_thread_report_progress(), init_thread(), and submit_packet().