new input plugin - foo_input_avs (beta!), can play audio from AviSynth scripts |
![]() ![]() |
new input plugin - foo_input_avs (beta!), can play audio from AviSynth scripts |
Mar 21 2006, 13:14
Post
#1
|
|
|
Group: Banned Posts: 149 Joined: 1-September 05 Member No.: 24248 |
|
|
|
|
Jul 30 2009, 06:44
Post
#2
|
|
![]() Group: Admin Posts: 4219 Joined: 15-December 02 Member No.: 4082 |
I've recompiled this component with a more recent SDK, plus some minor changes such as allocation guarding and variable sizes. Please test.
The component is available here. |
|
|
|
Jul 30 2009, 07:06
Post
#3
|
|
|
Group: Validating Posts: 2424 Joined: 21-May 08 Member No.: 53675 |
Thanks, you are hero!
Works as expected. New playground |
|
|
|
Jul 30 2009, 07:24
Post
#4
|
|
![]() Group: Admin Posts: 4219 Joined: 15-December 02 Member No.: 4082 |
I noticed there's a hitch with relative paths in the scripts, which seem to depend on the current working directory of the process. I'm not sure there's any way I can tell AviSynth how to correctly resolve relative paths.
The reason for this problem is that it uses the Eval function on the loaded script, rather than passing the path to the Import function, which would not support Unicode paths, but would tell AviSynth how to resolve relative paths. I suppose I can limit it to supporting only ANSI paths, since the script functions that accept paths already have the same limitation. I'll post about it if I decide to make this change. |
|
|
|
Jul 30 2009, 11:56
Post
#5
|
|
|
Group: Validating Posts: 2424 Joined: 21-May 08 Member No.: 53675 |
To translate that: even if avs script file is in folder as the source it refers, you must use absolute path for source i.e. DirectShowSource("D:\VIDEO_TS\VTS_01_1.VOB") - full path
I've tested it with every possible avisynth plugin that I have, and it's just great Some random freezing like the one with reletive paths, but then on portable install everything is OK I can only suggest that in properties dialog (AVISYNTH SCRIPT tag) we could access the script (change/save) And, I can only encourage you about paths, because all players with avisynth support don't have this problem |
|
|
|
Jul 30 2009, 19:48
Post
#6
|
|
|
Group: Members Posts: 141 Joined: 8-April 07 Member No.: 42330 |
Could we have a pack with the audio plugins for avisynth?
|
|
|
|
Jul 31 2009, 00:50
Post
#7
|
|
![]() Group: Admin Posts: 4219 Joined: 15-December 02 Member No.: 4082 |
I've updated to 0.2, downloadable here.
Now relative paths work properly, although it will only accept local unpacked files with valid ANSI paths. It also supports script editing through the normal file properties dialog. You'll probably want to configure "AviSynth script" as a multi-line tag in the Advanced Preferences dialog. |
|
|
|
Jul 31 2009, 11:13
Post
#8
|
|
|
Group: Validating Posts: 2424 Joined: 21-May 08 Member No.: 53675 |
Thanks for improvements, but I probably did poorly testing yesterday:
foobar (portable - no other components) crashes too ofter and continuously at least here: DirectShowSource with AC3Filter (I use it as DS filter, don't know if it's related to it) ffmpegSource QTInput Other players don't have problems, i.e. VirtualDub, MPC... I'll test more with other plugins later |
|
|
|
Aug 28 2010, 14:29
Post
#9
|
|
|
Group: Members Posts: 12 Joined: 2-May 09 Member No.: 69461 |
I'm not sure, is there any real use of AviSynth scripts in an audio player?
But anyway, it works great as DirectShow wrapper (unlike foo_input_ds which won't play some files), so maybe it's better to let it handle some user defined filetypes, putting filenames into simple script (DirectShowSource(blah) or whatever) without requiring user to do it manually. |
|
|
|
Mar 4 2011, 20:47
Post
#10
|
|
|
Group: Members Posts: 82 Joined: 28-September 07 From: Petrozavodsk Member No.: 47418 |
Thanks for the plugin, I find it very useful. Why there are some clipping sounds when listening to vobs?
|
|
|
|
Mar 5 2011, 08:11
Post
#11
|
|
![]() Group: Admin Posts: 4219 Joined: 15-December 02 Member No.: 4082 |
Probably because AviSynth is limited to outputting integer sample formats, so there will always be clipping on loud files. Unless you can point out where the programming interface can request floating point sample formats.
|
|
|
|
Oct 10 2011, 17:13
Post
#12
|
|
![]() Group: Members Posts: 120 Joined: 31-May 05 From: Netherlands Member No.: 22417 |
Initially I was using WavSource("Sample.wav") for a simple 44.1Khz,16bit,stereo sample, but even after replacing it with NicAudio's RaWavSource("Sample.wav", SampleRate=44100, SampleBits=16, Channels=2), foo_input_avs always seems to output a 24bit audio stream.
Is this meant to be, or is it bug? Of course I can bring it back to 16bit in Foobar's Converter setup (if I don't, the converted output will also be 24bit), but 16bit -> 24bit -> 16bit obviously is undesirable! At least I can't believe the end result is still lossless. -------------------- DC-Bass Source Mod: http://reino.degeelebosch.nl
|
|
|
|
Oct 10 2011, 17:48
Post
#13
|
|
|
Group: Members Posts: 153 Joined: 5-March 08 Member No.: 51815 |
|
|
|
|
Oct 10 2011, 22:59
Post
#14
|
|
![]() Group: Members Posts: 120 Joined: 31-May 05 From: Netherlands Member No.: 22417 |
I didn't have this bit-compare plugin yet, but after I installed it and made a comparison, I can confirm it's lossless indeed. I guess in that case I can confidently do conversions. I still find it weird though foo_input_avs puts out 24bit audio streams.
-------------------- DC-Bass Source Mod: http://reino.degeelebosch.nl
|
|
|
|
Oct 12 2011, 16:54
Post
#15
|
|
![]() Group: Members Posts: 120 Joined: 31-May 05 From: Netherlands Member No.: 22417 |
Bug report:
note 1. The fastest way to get all the needed Avisynth plugins is to install BeHappy and copy the whole plugins directory (which also happens to include NicAudio) to your Avisynth plugins directory. I've done some more testing with BassAudioSource() in combination with foo_input_avs and I'd like to revise my quoted statements. It seems foo_input_avs has some more shortcomings...note 2. I couldn't open lossless audio files (FLAC,WV,APE,...) with BassAudioSource() in combination with foo_input_avs in Foobar at this time. - When you've copied BeHappy's entire plugins directory (BassAudio.dll, bass.dll and bass_xxx.dll) to your Avisynth's plugins directory, foo_input_avs (and Foobar) will crash immediately upon playing anything through Avisynth! It will also even crash when trying to play an audio file with WavSource() or NicAc3Source() through Avisynth. Simply the presence of BassAudio.dll and bass.dll in Avisynth's plugins directory will crash Foobar upon playing anything through Avisynth. It seems foo_input_avs doesn't like non-Avisynth libraries (bass.dll and bass_xxx.dll) in Avisynth's plugins directory. - foo_input_avs having its way, we can of course load BassAudio.dll from elsewhere: Loadplugin("X:\BeHappy 0.2.5.30809\plugins\BassAudio.dll"). This will let BassAudio.dll load bass.dll (WAV/AIFF/MP3/MP2/MP1/OGG)1 but somehow NONE of the other bass_xxx.dlls (AAC/M4A/WMA/FLAC/WV/APE/etc)! Dragging an avs-file with BassAudioSource("Sample.flac") into Foobar won't even load. 1 bass.dll also supports Tracker Audio (MOD/IT/XM/etc), but not through Avisynth. I guess Avisynth is limited to sample audio. All of this happens because of foo_input_avs. Converting an audio file through Avisynth (no matter the ...Source()) with BeHappy works just fine. Playing the avs-file with Media Player Classic works fine too. So to sum up... If you want to convert audio files through Avisynth with Foobar, DON'T copy the content of BeHappy's plugins directory to Avisynth's plugin directory! Use Loadplugin("X:\BeHappy 0.2.5.30809\plugins\BassAudio.dll") instead. But even then, you have to settle for WAV/AIFF/MP3/MP2/MP1/OGG support only as far as BassAudio is concerned. Want to convert from FLAC for instance through Avisynth, use BeHappy. -------------------- DC-Bass Source Mod: http://reino.degeelebosch.nl
|
|
|
|
Aug 18 2012, 16:59
Post
#16
|
|
![]() Group: Members Posts: 120 Joined: 31-May 05 From: Netherlands Member No.: 22417 |
I'm sorry, kode54, but in the end it turned out the old version of Foobar I was still using was the culprit!
Foobar has no problem now opening Bass audio formats through BassAudio and foo_input_avs. Sorry for the trouble, kode54. -------------------- DC-Bass Source Mod: http://reino.degeelebosch.nl
|
|
|
|
![]() ![]() |
|
Lo-Fi Version | Time is now: 21st May 2013 - 11:15 |