Crash, apparently in initializeAudio() [r8179 & r8209, Win7-64, OpenGL disabled]

Started by oktal3700, October 11, 2012, 05:28:54 PM

Previous topic - Next topic

oktal3700

Input file is a recording from the game X-Plane, and according to MediaInfo is a vbr Quicktime MPEG4 MOV with an MJPEG video track and no audio track.

The crash does not happen in 2.5.6-1. It does happen in 2.6.0 r8179 and r8209 binaries from http://avidemux-mswin.sourceforge.net/.

My OS is Windows 7 Home Premium 64-bit. OpenGL is disabled in the Avidemux preferences.

According to the log, the crash happens in GUIPlayback::initializeAudio().

Sample input file, MediaInfo report, Avidemux log, crash file, and screenshot of the preferences dialog box, all available here:
https://docs.google.com/folder/d/0B8hGoqCV5Z5AcW9tcG13NUNSaHM/edit

Steps to reproduce: Start Avidemux. Open the file. Click "play".

Let me know if there's anything else I can do to help track down the problem. Thanks.

oktal3700

I've tracked down the revision that introduced the crash to somewhere between r8164 and r8171.

Using the win64 binary installers, r8164 does not exhibit the crash, but r8171 does. Hope this helps.

oktal3700

Having a browse around in the SVN repo, it seems very likely that the problem lies around lines 361-363 of avidemux/common/gui_play.cpp:

EditableAudioTrack *ed=video_body->getDefaultEditableAudioTrack();
if(ed->audioEncodingConfig.shiftEnabled)
  shift=ed->audioEncodingConfig.shiftInMs;


ADM_Composer::getDefaultEditableAudioTrack() will return NULL if there are no audio tracks.

So to fix the crash it should be enough to just change line 362 as follows:

if(ed && ed->audioEncodingConfig.shiftEnabled)

Hope my hunch proves correct. :) Please let me know how it goes.

Maybe this thread should be moved to the 2.6 subforum, if it affects all OSes.

mean