Log in

View Full Version : Fake avi with Win10?


gispos
21st November 2023, 19:56
What is the best way to transfer avs as fake avi to other programs under Win10 ?
Pismo File Mount ? does it still work with Win10 ?

poisondeathray
21st November 2023, 20:12
avfs . You can extract commandline version in vapoursynth portable archive . It supports avs and vpy scripts

eg.

avfs script.avs


It depends on what your target is, but vpy script version has fourcc emulation . Fourcc's such as "UYVY" for 8bit422 and "v210" for 10bit422 get preferential treatment in programs such as NLE's - they get passthrough and YUV treatment instead of automatically being converted to RGB

gispos
21st November 2023, 20:24
Does python or varpoursynth have to be installed for this?
Thanks

poisondeathray
21st November 2023, 20:29
Does python or varpoursynth have to be installed for this?
Thanks

No for avs script mounting ; yes for vpy script mounting

poisondeathray
21st November 2023, 20:33
The old avfs with pismo file mount works too - but it only supports x86 avisynth

gispos
21st November 2023, 20:43
But Pismo File Mount is still needed?

ERROR: Unable to open PFM interface. PFM probably not installed.

poisondeathray
21st November 2023, 20:47
But Pismo File Mount is still needed?

ERROR: Unable to open PFM interface. PFM probably not installed.


It doesn't have to be installed. There is one in the portable folder ("pfm-192-vapoursynth-win.exe" or something like that), it has to be in the path, or call avfs from that folder

DTL
23rd November 2023, 00:45
The stack of software is:

Operating System layers (kernel) - > Pismo File Mount (virtual file emulator) -> AVFS plugin for PFM (AVI file structure emulator with AVS input).

AVFS AVI file emulator is simple enough software - if no x64 builds available it looks can be produced (also with latest AVS+ headers). But also needs PFM builds compatible with Win10 x64.

poisondeathray
23rd November 2023, 03:51
AVFS AVI file emulator is simple enough software - if no x64 builds available it looks can be produced (also with latest AVS+ headers). But also needs PFM builds compatible with Win10 x64.

It's compatible with Win 10 x64 host OS

One thing I like about the old version for avs is the context menu support (right click an .avs file => mount) , it was a handy option, but the old version was avs x86 only.

Very old versions had their fake "avi" placed in the same directory as the avs. An option for location could be handy in a few rare situations. The newer versions all mount at C:\Volumes\<scriptname> , but a few programs have problems with virtual avi's at the C: location

And the fourcc emulation that vapoursynth has is very useful. Proper YUV treatment for 8bit 420, 8bit 422, 10bit 422 in commercial NLE's, instead of RGB conversion and clipping

And if MOV support could be added as an option, it would be a bonus too. Some programs do not support AVI as well

Sharc
23rd November 2023, 09:46
And the fourcc emulation that vapoursynth has is very useful. Proper YUV treatment for 8bit 420, 8bit 422, 10bit 422 in commercial NLE's, instead of RGB conversion and clipping

And if MOV support could be added as an option, it would be a bonus too. Some programs do not support AVI as well
I have been using AVFS with PismoFileMount successfully with Win 10 x64 OS for importing avisynth scripts into the NLE. The file creation and import into the NLE's timeline was just a bit slow, but has worked without issues.
Alternativley I take the intermediate lossless (or near lossless) files route, using ffmpeg to create the (large) intermediate editable file for importing into the NLE. There is hardly a speed penalty, just the large intermediate file.
It's a pity that NLE's usually don't support scripts as inputs. Maybe they see it too much as a competition to their own filtering options.

tormento
23rd November 2023, 09:58
If you have a fast hw encoder, HEVC supports lossless even 4:4:4. The only question is if you have space enough :)

Anyway even a very low CRF does its job with no visible artifacts at all.

DTL
23rd November 2023, 10:30
It's compatible with Win 10 x64 host OS

One thing I like about the old version for avs is the context menu support (right click an .avs file => mount) , it was a handy option, but the old version was avs x86 only.



If it starts from command line you can try to add custom explorer option (new command in the context menu) in the registry with start of this command line.

Sort of https://www.groovypost.com/howto/add-any-program-windows-context-menu/

I not remember how to add argument of selected file object - may be %1 or close. Or auto added as 1st param to started process params list ?

" RGB conversion and clipping"

AVS can do narrow RGB. It is a job for NLE to do correct range mapping. More sadly RGB in old AVI may be only 8bit ? So typical only supported format for old AVFS was RGB24 interleaved ?

poisondeathray
23rd November 2023, 15:27
" RGB conversion and clipping"

AVS can do narrow RGB. It is a job for NLE to do correct range mapping. More sadly RGB in old AVI may be only 8bit ? So typical only supported format for old AVFS was RGB24 interleaved ?

You can have limited range YUV with overshoots - this is not necessarily a range mapping narrow vs. extended range issue for YUV or RGB . The correct mapping would "computer RGB", but then you clip the overshoots before you correct them - that occurs on import

It's not just clipping. YUV to 8bit RGB potentially loses an incredible amount of information. Some NLE's can work natively in YUV, and have YUV filters , and nothing is lost. The proper fourcc "unlocks" that ability in most NLE's . Avisynth AVFS serves "YV12" for 8bit420, "YUY2" for 8bit422 - those get clipped and converted to RGB automatically in most commercial NLE's. The vapoursynth fourcc emulation enables them to be handled properly - if that feature could be ported, it would be handy for avs. "v210" as 10bit422 is very useful and the "universal currency" for pro NLE's for many years . The old AVS AVFS never supported 10bit (avisynth back then was 8bit only)

Yes RGB AVI from avfs is Interleaved RGB32 (dummy alpha)