Commit 1be112b6 authored by Rémi Denis-Courmont's avatar Rémi Denis-Courmont

Fix FfmpegExecute callback prototype

parent 862258e8
...@@ -70,7 +70,7 @@ struct thread_context_t; ...@@ -70,7 +70,7 @@ struct thread_context_t;
static void* FfmpegThread( vlc_object_t *p_this ); static void* FfmpegThread( vlc_object_t *p_this );
static int FfmpegExecute( AVCodecContext *s, static int FfmpegExecute( AVCodecContext *s,
int (*pf_func)(AVCodecContext *c2, void *arg2), int (*pf_func)(AVCodecContext *c2, void *arg2),
void **arg, int *ret, int count ); void *arg, int *ret, int count, int );
/***************************************************************************** /*****************************************************************************
* thread_context_t : for multithreaded encoding * thread_context_t : for multithreaded encoding
...@@ -751,25 +751,25 @@ static void* FfmpegThread( vlc_object_t *p_this ) ...@@ -751,25 +751,25 @@ static void* FfmpegThread( vlc_object_t *p_this )
static int FfmpegExecute( AVCodecContext *s, static int FfmpegExecute( AVCodecContext *s,
int (*pf_func)(AVCodecContext *c2, void *arg2), int (*pf_func)(AVCodecContext *c2, void *arg2),
void **arg, int *ret, int count ) void *arg, int *ret, int count, int size )
{ {
struct thread_context_t ** pp_contexts = struct thread_context_t ** pp_contexts =
(struct thread_context_t **)s->thread_opaque; (struct thread_context_t **)s->thread_opaque;
int i; void **argv = arg;
/* Note, we can be certain that this is not called with the same /* Note, we can be certain that this is not called with the same
* AVCodecContext by different threads at the same time */ * AVCodecContext by different threads at the same time */
for ( i = 0; i < count; i++ ) for ( int i = 0; i < count; i++ )
{ {
vlc_mutex_lock( &pp_contexts[i]->lock ); vlc_mutex_lock( &pp_contexts[i]->lock );
pp_contexts[i]->arg = arg[i]; pp_contexts[i]->arg = argv[i];
pp_contexts[i]->pf_func = pf_func; pp_contexts[i]->pf_func = pf_func;
pp_contexts[i]->i_ret = 12345; pp_contexts[i]->i_ret = 12345;
pp_contexts[i]->b_work = 1; pp_contexts[i]->b_work = 1;
vlc_cond_signal( &pp_contexts[i]->cond ); vlc_cond_signal( &pp_contexts[i]->cond );
vlc_mutex_unlock( &pp_contexts[i]->lock ); vlc_mutex_unlock( &pp_contexts[i]->lock );
} }
for ( i = 0; i < count; i++ ) for ( int i = 0; i < count; i++ )
{ {
vlc_mutex_lock( &pp_contexts[i]->lock ); vlc_mutex_lock( &pp_contexts[i]->lock );
while ( !pp_contexts[i]->b_done ) while ( !pp_contexts[i]->b_done )
...@@ -786,6 +786,7 @@ static int FfmpegExecute( AVCodecContext *s, ...@@ -786,6 +786,7 @@ static int FfmpegExecute( AVCodecContext *s,
} }
} }
(void)size;
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment