Windows: XP. (win32)
"avidemux.exe",
v2.6.8v2,
v2.6.9v2 + usp10.dll,
v2.6.10 + usp10.dll,
v2.6.11 + usp10.dll:
work fine.
v2.6.12 + usp10.dll,
v2.6.13 + usp10.dll,
v2.6.14:
Audio "Copy" works fine.
But converting mp2 + ts to Faac/MP3 (for example) + ts/mp4 (for example) starts, then immediately hangs (0% cpu). Need to kill avidemux.exe process.
Issue 1: Do not hang.
Issue 2: Convert audio.
Windows Vista works fine:
Windows XP only issue.
Quote from: mm0359 on August 23, 2016, 06:41:24 AM
v2.6.12 + usp10.dll,
v2.6.13 + usp10.dll:
[...] immediately hangs (0% cpu). Need to kill avidemux.exe process.
v2.6.12 + usp10.dll,
avidemux_2.6.13_r160823_win32.exe nightly (http://www.avidemux.org/nightly/win32/) + usp10.dll
admlog.txt ends with (2) EXCEPTION_ACCESS_VIOLATION
...
[FF] Saving
[saveLoop] avg fps=50000
[initUI] Muxer, creating UI, video duration is 00:16:59,240
Paint event
Paint event
Paint event
[startThread] Starting thread...
[startThread] Thread created and started
Saving crash file to ...\avidemux\crash.py
Scripting video streams
Scripting segments
Scripting markers
Scripting post-processing
Scripting video encoder
Scripting video filters
Scripting audio tracks
Scripting muxer
EXCEPTION_ACCESS_VIOLATION
wscanf [msvcrt.dll]
Crash Dump for ExceptionFilter
EXCEPTION_ACCESS_VIOLATION
wscanf [msvcrt.dll]
ADM_setCrashHook [libADM_core6.dll]
ADM_setCrashHook [libADM_core6.dll]
XcptFilter [msvcrt.dll]
endthreadex [msvcrt.dll]
GetModuleFileNameA [kernel32.dll]
v2.6.12 + usp10.dll, on WinXP:
ftr, copying avidemux.exe + libADM_core6.dll from v2.6.11,
works around this issue.
At least, this narrows down (somewhat) where the issue actually is.
v2.6.13 + usp10.dll, on WinXP:
More dlls would need to be copied, I gave up for the time being.
Quote from: mm0359 on August 26, 2016, 08:46:06 PM
v2.6.12 + usp10.dll, on WinXP:
ftr, copying avidemux.exe + libADM_core6.dll from v2.6.11,
works around this issue.
At least, this narrows down (somewhat) where the issue actually is.
Works
Avidemux v2.6.11 (0) // Release (2016.01.29)
Crashes
Avidemux v2.6.11 (160210_f4e7b7ff081) // Debug nightly (http://www.avidemux.org/nightly/win32_debug/)
admlog.txt ends with
...
[FF] Saving
[saveLoop] avg fps=50000
[initUI] Muxer, creating UI, video duration is 00:16:59,240
[startThread] Starting thread...
[startThread] Thread created and started
SysInternals Process Monitor confirms last actions:
1- Create a thread. (From avidemux + 0x9b88 > mx_ffTS + 0x18f2 > coreMuxer6 + 0x36ef > coreAudio6 + 0x1d0c > coreUtils6 + 0x99f7.)
2- Write the end of admlog.txt.
3- Crashes.
Ftr, copying avidemux.exe (only) from v2.6.11,
works around this issue.
At least, this narrows down (somewhat more) where the issue actually is.
(Currently,) Starting at
https://github.com/mean00/avidemux2/commits/master?page=12 (https://github.com/mean00/avidemux2/commits/master?page=12)
Commits on Feb 9, 2016
[i]f4e7b7f[/i]
[Muxer/webm] Also allow VP9 and Opus
mean committed Feb 9, 2016
[win/installer] Add webm
mean committed Feb 9, 2016
[muxer] Add webm
mean committed Feb 9, 2016
[core/ffmpeg] Enable webm muxer
mean committed Feb 9, 2016
Commits on Feb 8, 2016
[jobs] Use the right signal
mean committed Feb 8, 2016
Commits on Feb 7, 2016
[editor/audio] Display in 00:00:22.22 rather than in microseconds
mean committed Feb 7, 2016
[Demux/ts/Audio] dont take dts unknown as valid seek point
mean committed Feb 7, 2016
[Demux/Ts] Cosmetic
mean committed Feb 7, 2016
Commits on Feb 6, 2016
[build] We are not in release mode anymore
mean committed Feb 6, 2016
Commits on Feb 5, 2016
[bootStrap] Set the env variable so that qtselect picks the right flaââ,¬Â¦
mean committed Feb 5, 2016
[ffmpeg] Remove 2.7.2
mean committed Feb 5, 2016
Commits on Feb 2, 2016
[i]dd4a5e0[/i]
[core] update ffmpeg to 2.7.6
mean committed Feb 2, 2016
Commits on Jan 29, 2016
[i]372a52b[/i]
[installer] update whats new
mean committed Jan 29, 2016
[i]a75a7e1[/i]
[2.6.11] Release
mean committed Jan 29, 2016
Likely
(!?) trigger/culprit: FFmpeg 2.7.2 to 2.7.6 upgrade.
Is it possible to rebuild a win32_debug 2.6.11_r160202, to test&confirm?
Ftr, in case it would be related/relevant,
FFmpeg (https://ffmpeg.org/) doesn't seem to say which Windows versions were/are supported...Windows XP Support And Intel QSV (https://ffmpeg.zeranoe.com/forum/viewtopic.php?f=2&t=2937)
Making Zeranoe builds work under XP & XP builds by rogerdpack (https://ffmpeg.zeranoe.com/forum/viewtopic.php?f=13&t=3572)
Vista support also dropped? (https://ffmpeg.zeranoe.com/forum/viewtopic.php?f=7&t=3728)
"Or", is it a (triggered) compiler issue (here) too?
Quote from: mm0359 on August 24, 2016, 11:47:58 PM
admlog.txt ends with (2) EXCEPTION_ACCESS_VIOLATION
Ftr, switch(++) to clang from gcc would not fix this issue
(yet).
Minor change in stack:
first ADM_setCrashHook become UnhandledExceptionFilter + installSigHandler()
Avidemux v2.6.13 (160827_3bbe49d1383) .
Avidemux v2.6.13 (160828_bc4c29c4e69) .
...
Scripting muxer
EXCEPTION_ACCESS_VIOLATION
wscanf [msvcrt.dll]
Crash Dump for ExceptionFilter
EXCEPTION_ACCESS_VIOLATION
wscanf [msvcrt.dll]
ADM_setCrashHook [libADM_core6.dll]
installSigHandler() [libADM_core6.dll]
UnhandledExceptionFilter [kernel32.dll]
XcptFilter [msvcrt.dll]
endthreadex [msvcrt.dll]
GetModuleFileNameA [kernel32.dll]
Ftr, upgrade(++) of gcc to 4.9.4 from 4.8.3 would not fix this issue (yet).
The underlying problem is probably 16 bytes stack alignment
It is workarounded more or less successfully on win32
Works by design on all 64 bits OS
Quote from: mean on October 03, 2016, 01:18:52 PM
The underlying problem is probably 16 bytes stack alignment
Fwiw,
Windows Data Alignment on IPF, x86, and x64 (https://msdn.microsoft.com/en-us/library/aa290049%28v=vs.71%29.aspx)
QuoteWith that said, there are situations on the x86 and x64 platform where unaligned access will generate a general-protection exception. (Note that these are general-protection exceptions, not alignment-check exceptions.) This is when the misalignment occurs on a 128-bit typeââ,¬â€specifically, SSE/SSE2-based types.
The WinXP computer I'm using has MMX(EXT) and SSE(2), but no (S)SSE3.
Setting cpu mask to 0 doesn't help.
Do you think it's SSE(2)-related? If yes, shouldn't mask=0 work around it?
Is it "expected" that Vista/(S)SSE3 succeeds?
(Still) Crashes
Avidemux v2.6.14 (0) // release (http://www.fosshub.com/Avidemux.html/avidemux_2.6.14_win32.exe)
(Still) Crashes
Avidemux v2.6.14 (161024_8b5bfb9baa1) . // nightly (http://www.avidemux.org/nightly/win32/)
Quote from: mm0359 on October 24, 2016, 10:43:30 PM
(Still) Crashes
Avidemux v2.6.14 (161024_8b5bfb9baa1) . // nightly (http://www.avidemux.org/nightly/win32/)
Work:
Copy/FDK/Dummy
Copy/Faac/Dummy
null/Faac/Dummy
(very slow(er), but anyway)Hang with exception:
Copy/FDK/MP4
Copy/Faac/TS
Fwiw, the Dummy Muxer works (around?) this issue.
Fwiw, same exception after upgrading Windows XP to SP3 (from "SP2").
Installed Debug Diagnostic Tool 1.2:
Avidemux v2.6.14 (161024_8b5bfb9baa1) .
Type of Analysis Performed Crash Analysis
Thread 8 - System ID 5588
Entry point msvcrt!_endthreadex+3a
Full Call Stack
Function Arg 1 Arg 2 Arg 3 Arg 4 Source
msvcrt!_output+655 082cfc98 0061eb14 082cfce8 00000000
msvcrt!_vsnprintf+2f 65755980 000003ff 0061eb14 082cfce8
libADM_core6!ADM_info2+27 0061ec99 0061eb14 00000000 030156b0
avidemux!ZN25ADM_edAudioTrackFromVideo12getPCMPacketEPfjPjPy+2dc 7c90d04c 7c90e43f 082cfd30 00000001
ntdll!_LdrpInitialize+246 082cfe0c 00000023 00000023 05f3a8a0
avidemux!ZN22AUDMAudioFilter_Bridge4fillEjPfP10AUD_Status+35 082cfe54 7c90e900 04ff3108 082cfecc
ntdll!RtlFreeHeap+1e9 04ff39f8 040fbc38 65741b50 082cfef8
libADM_core6!ZN8admMutex6unlockEv+13 05f3a8a0 00414951 05fb6090 082cff24
avidemux!ZN22ADM_audioAccess_thread9runActionEv+b1 05ffafe8 05f3a8a0 0000ca3f 05f32c90
msvcrt!_endthreadex+a9 05f32c90 05f3a8a0 0000ca3f 05f32c90
kernel32!BaseThreadStart+37 77c3a341 05f32c90 00000000 00000000
Exception Information
...
the assembly instruction at msvcrt!_output+655 in ...\msvcrt.dll from Microsoft Corporation has caused an access violation exception (0xC0000005) when trying to read from memory location 0x00000000 on thread 8
Symbol File Name: ...\msvcrt.pdb\7BCF30D8C91B4F1B85FA4E55896250111\msvcrt.pdb
NB: This example is with my LoadTst.ts file.
PS: "getPCMPacket", as in the playing issue ;->
Ftr, "same" crash with win32/avidemux_2.6.18_r170113_win32.exe (http://www.avidemux.org/nightly/win32/avidemux_2.6.18_r170113_win32.exe)
Fixed by
[edAudio] simplify debug statements, may help on win32 (https://github.com/mean00/avidemux2/commit/7e566f0b9804d90e296d8716d313b9b669c39a30)
in
win32/avidemux_2.6.18_r170127_win32.exe (http://www.avidemux.org/nightly/win32/avidemux_2.6.18_r170127_win32.exe)