Thread: FFmpegSource
View Single Post
Old 6th August 2011, 23:10   #1216  |  Link
qyot27
...?
 
qyot27's Avatar
 
Join Date: Nov 2005
Location: Florida
Posts: 1,421
I wasn't able to get to testing with the different pthreads builds until today, but the results are below.
  • Static pthreads-win32 (July 2011) crashes HCenc (at 3%) on sampling pass
  • Shared pthreads-win32 crashes HCenc (at 3%) on sampling pass with both:
    The pthreadGC2.dll that matched with the version of the library (July 2011) FFMS2 was built against.
    A pthreadGC2.dll from 2008 that was laying around in C:\Windows\system32
  • pw32threads crashes HCenc (at 3%) on sampling pass
The initial stuff as well:
  • w32threads = no crash
  • pthreads-win32 (July 2011) with threading disabled (threads=1) = no crash




As a different test, I decided to use a different file. With the static pthreads-win32 build of r512 (C-plugin).

It crashed at 7% in the sampling pass, because I think the issue has to do with the length of the file and where the threading would actually divvy up the frames.

However, I then remuxed the file from FLV to MKV using ffmpeg and reran the test. No crash with the MKV remux.

I'd overlooked the fact that the MSVC test I'd run earlier was with an MKV remux, so I reran it with the FLV instead. MSVC (r517, as distributed on googlecode) crashed on the FLV at 7%, just like the C-plugin did. As already stated, no crash with the MKV.

It would seem that it's an issue with the FLV demuxer (I'd guess FLV just uses libavformat, since using -m lavf when indexing still resulted in HCenc crashing at 7%) choking with pthreads-win32 when using more than one thread, but it still only happens with HCenc; x264 seems completely unaffected by it, which I wouldn't think would happen if it was something intrinsic to libavformat.

In all cases the video and audio were H.264 and AAC.
qyot27 is offline   Reply With Quote