View Full Version : AviSynth 2.60a5: WavSource can't load IEEE Float WAV (ID 3) in Win7 64b
LigH
6th April 2014, 11:13
The WavSource() function in the AviSynth kernel (MT version 2.60 alpha 5, 32 bit) is unable to open WAV files with 32-bit IEEE Float samples (Codec-ID 3) under Windows 7 SP1 64-bit.
Does the kernel only expect Integer samples (Codec-ID 1)? Does it not try to use ACM codecs? Or even if it would, is the "Microsoft Wave Mapper" (which translates between uncompressed sample formats) not exactly an ACM codec?
Of course, it would be loadable using NicAudio (RaWavSource), FFMS2 (FFmpegAudioSource) or L-SMASH Works (LwLibavAudioSource). But why not with the AviSynth kernel functions? Float samples are not exactly "complicated" enough to fail implementing it.
raffriff42
6th April 2014, 11:41
Works for me. Generated with Audacity; exported as "Other uncompressed files," WAV 32 bit float.
https://www.dropbox.com/s/xsd67a60i06mevq/wav-float-test-2.jpg?raw=1General
Complete name : D:\VideoProjects\work\wav-f32-192k-test-pluck.wav
Format : Wave
File size : 188 KiB
Duration : 1s 0ms
Overall bit rate mode : Constant
Overall bit rate : 1 537 Kbps
Audio
ID : 0
Format : PCM
Format profile : Float
Format settings, Endianness : Float
Codec ID : 3
Codec ID/Hint : IEEE
Duration : 1s 0ms
Bit rate mode : Constant
Bit rate : 1 536 Kbps
Channel(s) : 1 channel
Sampling rate : 48.0 KHz
Bit depth : 32 bits
Stream size : 188 KiB (100%)
LigH
6th April 2014, 11:54
Not here:
---------------------------
VirtualDub Error
---------------------------
Avisynth open failure:
AVIFileSource: couldn't open file 'Float.wav'
(F:\Audio\Float.avs, line 2)
---------------------------
OK
---------------------------
Do you have any kind of additional ACM codec installed which may be able to handle IEEE Float?
Hmm, and ... how to list all installed ACM codecs under Windows 7? There was a list in the Sound CPL in Windows XP...
raffriff42
6th April 2014, 12:02
I have ffdshow, LAV filters and AC3Filter installed, as shown on Codec Tweak Tool.
GraphStudio shows [file]->[LAV splitter]->[AC3Filter]->[output]
EDIT above was opening the WAV file in GraphStudio directly.
Opening remote graph on MPC-HC+Avisynth, I get:
[AVI/WAV Source] -> [AC3Filter]->[DirectSound output device]
\-> [video] ...
LigH
6th April 2014, 12:09
Ah, so you are "cheating" by using a DirectShow decoder. ;)
That's not using WavSource().
__
Oh, sorry, I mis-interpreted that remark. I see the code in the screenshot now.
GraphStudio shows you the DirectShow filter graph. But WavSource() won't use DirectShow. It uses AviFile functions; WavSource is a kind of alias to AviSource, but returns only the audio stream (if it is able), so it may possibly use the VfW ACM (Video for Windows Audio Compression Manager).
raffriff42
6th April 2014, 12:30
Sounds reasonable. ffdshow is probably decoding it.
LigH
6th April 2014, 12:35
But I have ffdshow installed too. GSpot 2.70a (the only tool I know which is able to "List Codecs and Other Filters" including installed ACM codecs) only reports ff_acm.acm as decoder for ID 0x3313, but no ACM codec responsible for ID 0x0003.
LigH
7th April 2014, 10:17
Interesting remark in the HydrogenAudio forum (http://www.hydrogenaudio.org/forums/index.php?showtopic=105257&view=findpost&p=862403):
WAVEFORMATEX specification in the Microsoft Developer Network (http://msdn.microsoft.com/en-us/library/windows/desktop/dd757713(v=vs.85).aspx)
Formats that support more than two channels or sample sizes of more than 16 bits can be described in a WAVEFORMATEXTENSIBLE (http://msdn.microsoft.com/en-us/library/windows/desktop/dd757714(v=vs.85).aspx) structure, which includes the WAVEFORMAT (http://msdn.microsoft.com/en-us/library/windows/desktop/dd757712(v=vs.85).aspx) structure.
Alas! ... I don't read that as "mandatory". But it seems to be preferred.
LigH
7th April 2014, 19:27
In Windows XP SP3, AviSynth can open all the here contained scripts (http://www.ligh.de/tmp/WAV-EX.7z); the WAV files were created with Audacity 2.0.5, exporting to other uncompressed formats, selecting "WAV (Microsoft)" or "WAVEX (Microsoft)" respectively.
raffriff42
7th April 2014, 20:56
I have both LAV Filters and AC3Filter installed, but I wanted to see which one was most essential for this task:
Disable LAV filters pcm handling, enable AC3Filter: OK
Enable LAV filters pcm handling, disable AC3Filter: fail
(Source: 6-channel float WaveEx)
So try AC3Filter (http://www.ac3filter.net/) :)
LigH
7th April 2014, 22:50
I wonder why DirectShow filters affect VfW codecs availability.
LigH
8th April 2014, 07:29
Under Windows 7 SP1 64-bit, AviSynth opens 16 bit integer in both variants, but 32 bit float only with extensible header, with simple header it fails. Installing AC3Filter doesn't matter.
Wilbert
8th April 2014, 18:41
http://msdn.microsoft.com/en-us/library/windows/hardware/dn653308%28v=vs.85%29.aspx contains some more info.
LigH
8th April 2014, 18:54
But IMHO (!) no reason to remove support of WAV files with type 3 samples and only basic WAVEFORMAT header between XP and Vista/7. ;)
They have a constant bitrate. They are plain. Every required detail is specified in the WAVEFORMAT header and the IEEE 754 specs. There is no really urgent need to go EXTENSIBLE if there are no more than 2 channels. And also no urgent need to drop its support.
But it happened. So the question will be: Is any developer interested in adding something to the AviSynth core to recover support, or shall we start to rely on source plugins already when reading plain WAVs?
Wilbert
21st April 2014, 21:41
But it happened. So the question will be: Is any developer interested in adding something to the AviSynth core to recover support
Could you upload some samples somewhere? Of course, a patch would be even beter ;)
LigH
22nd April 2014, 05:08
Could you upload some samples somewhere?
I already did:
In Windows XP SP3, AviSynth can open all the here contained scripts (http://www.ligh.de/tmp/WAV-EX.7z); the WAV files were created with Audacity 2.0.5, exporting to other uncompressed formats, selecting "WAV (Microsoft)" or "WAVEX (Microsoft)" respectively.
Under Windows 7, AviSynth can open WAVEX_32sf.wav but fails opening WAV_32sf.wav. The reason is probably in a dropped support in ACM. Currently it requires plugins to load raw WAV without relying on Windows built-in support.
Of course, a patch would be even beter ;)
I am no C programmer. And I don't understand AviSynth interna.
Groucho2004
22nd April 2014, 09:42
Under Windows 7, AviSynth can open WAVEX_32sf.wav but fails opening WAV_32sf.wav.
Could you please try that with Avisynth 2.5.8?
LigH
22nd April 2014, 10:20
Interesting development...
AviSynth 2.57, 2.58
WAV_16si: OK
WAV_32sf: AVIFileSource: couldn't open file 'WAV_32sf.wav'
WAVEX_16si: No compatible ACM codec to decode 0xFFFE audio stream to PCM.
WAVEX_32sf: No compatible ACM codec to decode 0xFFFE audio stream to PCM.
AviSynth_110525 (2.6.0 a3), AviSynth_130114 (2.6.0 a4), AviSynth_110525 (2.6.0 a5), AviSynth_20130928 (MT 2.6.0 a5)
WAV_16si: OK
WAV_32sf: AVIFileSource: couldn't open file 'WAV_32sf.wav'
WAVEX_16si: OK
WAVEX_32sf: OK
Each on Windows 7 SP1 64-bit
Wilbert
22nd April 2014, 22:16
Interesting development...
AviSynth 2.57, 2.58
WAV_16si: OK
WAV_32sf: AVIFileSource: couldn't open file 'WAV_32sf.wav'
WAVEX_16si: No compatible ACM codec to decode 0xFFFE audio stream to PCM.
WAVEX_32sf: No compatible ACM codec to decode 0xFFFE audio stream to PCM.
AviSynth didn't support 0xFFFE audio (WAVEX format) then. So the latter two would have failed with XP too.
Must have something to do with AVIFileSource and Windows 7 :confused: Can anyone try to load it using Windows 7 SP1 32-bit?
Tom Keller
23rd April 2014, 03:44
So the latter two would have failed with XP too.
Actually they did not fail under XP. I tested all 4 scripts with VirtualDub and MPC-HC under XP SP3 (with AviSynth 2.5.8 installed) and every single one worked without any problems. Same with AviSynth MT 2.6.0 a5.
Can anyone try to load it using Windows 7 SP1 32-bit?
Under Windows 7 SP1 32bit (with both: AviSynth MT 2.6.0 a5 AND AviSynth 2.5.8) i only get:
WAV_16si.avs
http://abload.de/img/wav_16si.avs_snapshotjysr8.png
WAV_32sf.avs
http://abload.de/img/wav_32sf.avs_snapshotmes9f.png
WAVEX_16si.avs
http://abload.de/img/wavex_16si.avs_snapshqbsbx.png
WAVEX_32sf.avs
http://abload.de/img/wavex_32sf.avs_snapshbssis.png
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.