#include "avcodec.h"
#include "internal.h"
#include "thread.h"
+#include "libavutil/common.h"
#if HAVE_PTHREADS
#include <pthread.h>
PerThreadContext *p = arg;
FrameThreadContext *fctx = p->parent;
AVCodecContext *avctx = p->avctx;
- AVCodec *codec = avctx->codec;
+ const AVCodec *codec = avctx->codec;
while (1) {
if (p->state == STATE_INPUT_READY && !fctx->die) {
{
FrameThreadContext *fctx = p->parent;
PerThreadContext *prev_thread = fctx->prev_thread;
- AVCodec *codec = p->avctx->codec;
+ const AVCodec *codec = p->avctx->codec;
uint8_t *buf = p->avpkt.data;
if (!avpkt->size && !(codec->capabilities & CODEC_CAP_DELAY)) return 0;
static void frame_thread_free(AVCodecContext *avctx, int thread_count)
{
FrameThreadContext *fctx = avctx->thread_opaque;
- AVCodec *codec = avctx->codec;
+ const AVCodec *codec = avctx->codec;
int i;
park_frame_worker_threads(fctx, thread_count);
static int frame_thread_init(AVCodecContext *avctx)
{
int thread_count = avctx->thread_count;
- AVCodec *codec = avctx->codec;
+ const AVCodec *codec = avctx->codec;
AVCodecContext *src = avctx;
FrameThreadContext *fctx;
int i, err = 0;
void ff_thread_flush(AVCodecContext *avctx)
{
+ int i;
FrameThreadContext *fctx = avctx->thread_opaque;
if (!avctx->thread_opaque) return;
fctx->next_decoding = fctx->next_finished = 0;
fctx->delaying = 1;
fctx->prev_thread = NULL;
- for (int i = 0; i < avctx->thread_count; i++) {
+ for (i = 0; i < avctx->thread_count; i++) {
PerThreadContext *p = &fctx->threads[i];
// Make sure decode flush calls with size=0 won't return old frames
p->got_frame = 0;