Opened 5 years ago

Closed 4 years ago

#393 closed defect (needs_more_info)

H264 + FF_THREAD_SLICE + w32thread crashes

Reported by: ronag Owned by:
Priority: normal Component: avcodec
Version: 0.8.1 Keywords: crash win32 h264
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Running w32thread with H264 and FF_THREAD_SLICE caused access violation inside "thread_func" at line 60:

ret= c->func(c->avctx, (uint8_t *)c->arg + jobnr*c->argsize);

None of the arguments seem to be null, so the access violation probably occurs inside the called function.

This problem does not occur with mpeg2 in same setup.

Change History (4)

comment:1 follow-up: Changed 5 years ago by cehoyos

Can you reproduce the problem with ffmpeg (the application)?

In any case, please provide a backtrace.

comment:2 in reply to: ↑ 1 Changed 5 years ago by ronag

Replying to cehoyos:

Can you reproduce the problem with ffmpeg (the application)?

In any case, please provide a backtrace.

I don't know how to run sliced threads instead of frame threads with ffmpeg (the application). I assume I would also need an -enable-w32thread build?

Also I cannot provide any meaningful backtrace as I'm on windows and cannot build ffmpeg. I compiled the w32thread.c class in my windows project and called ff_thread_init, before the usual avcodec_open.

The FF_SLICE_THREAD option only seems to call the "execute" function at all if I encode the file with the options, -slices 8 -tune fastdecode, if I don't provide -tune fastdecode then it won't call the execute function at all.

Version 0, edited 5 years ago by ronag (next)

comment:3 Changed 5 years ago by cehoyos

It is possible to get a useful backtrace on Win32 with gdb, please try that.

comment:4 Changed 4 years ago by cehoyos

  • Keywords crash added; mt thread slice removed
  • Resolution set to needs_more_info
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.