AviSynthPlus
AviSynthPlus copied to clipboard
violation "_ASSERTE(index<array_size)" on "const AVSValue& AVSValue::OPERATOR_INDEX(int index) const"
I see violation "_ASSERTE(index<array_size)" on "const AVSValue& AVSValue::OPERATOR_INDEX(int index) const" (actually, I see index=4 on array_size=2, array=args
static AVSValue __cdecl Create(AVSValue args, void* user_data, IScriptEnvironment* env) {
...
const int vtrack = args[4].AsInt(0);
const int atrack = args[5].AsInt(0);
...
To reproduce
audio = WavSource("wtf.wav")
( sample file to reproduce: https://drive.google.com/file/d/1NHjeJiKFPz4otu9h1x5dm-3ZB9eUNr2W/view?usp=sharing https://cloud.mail.ru/public/5eRX/5yNVrUpkr )
If I use released version of AVS+, I got crush on ffmpeg/VirtualDub exit. On debug version I got this assert violation.
Hi, Avisynth reports "couldn't open file wtf.wav" message, do I need any special codec to open your WAV file?
Hmm. my WAV is simple W64
Input #0, w64, from 'wtf.wav':
Duration: 00:00:03.00, bitrate: 705 kb/s
Stream #0:0: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 44100 Hz, 1 channels, s16, 705 kb/s
At least one output file must be specified
I have installed ffdshow-tryouts...
ffdshow_rev4531_20140628.exe
but in when I disable all audio codecs support in configuration I still got this assert
I got this bug on several versions of AVS+, but for raising this assert I build debug-32 with vs-comminity-2019 (16) version from
commit 968aa33288c76b01ca1878e5d1638ae80fe28816 (HEAD -> master, origin/master, origin/HEAD)
Author: Pinterf <[email protected]>
Date: Wed Nov 20 16:18:54 2019 +0100
Update gitignore
BTW, I upload this debug build with CMAKE files on https://drive.google.com/open?id=15yrMwrOBqe0aU17XpvpLQ46a_bu_0WXe
I will also try to find clear Windows install to check this.
Yep, those asserts were false alarm, they are fixed now. As a side effect I have fixed a parameter error (there is an extra "utf8" parameter in Avisynth+)
Yes, looks like those asserts are really false positives. ffmpeg/vdub with AVS+ still contains crashes on some test AVS-projects, that successfully processed by old AVS (unfortunatelly, now no asserts fired).
I am working on minimizing this projects, to save reproduceability. BTW, what max size of demo project can be proposed? 100Mb? 1GB? 10GB? 100GB? 200GB… ?
<1GB should be enough. Well positioned asserts can help only in obvious cases. Other real crashes (I mean e.g. a "0xC0000005 access violation" and not a well described error message or warning) are usually programming errors. Such crashes should be reported.