Log in

View Full Version : L-SMASH Source


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 [15] 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

speedyrazor
2nd August 2017, 06:34
What error specifically ? Was there an message ?

I noticed the MOV container; XDCAM HD422 in MXF container works ok in 64bit vpy with lsmash - could it be container related issue ? Maybe try re-wrapping it

In VapourSynth Editor I am using:

import vapoursynth as vs
core = vs.get_core(threads=4)
ret = core.lsmas.LibavSMASHSource(source=r"M:\797.mov")
ret.set_output()

And the error is:

Failed to evaluate the script:
Python exception: [Fatal]: Failed to get media parameters.

Traceback (most recent call last):
File "src\cython\vapoursynth.pyx", line 1491, in vapoursynth.vpy_evaluateScript (src\cython\vapoursynth.c:26897)
File "", line 3, in <module>
File "src\cython\vapoursynth.pyx", line 1383, in vapoursynth.Function.__call__ (src\cython\vapoursynth.c:25204)
vapoursynth.Error: [Fatal]: Failed to get media parameters.

poisondeathray
2nd August 2017, 07:04
@speedyrazor - like I said earlier, XDCAM HD422 works in mxf container with lsmash (using LWLibavSource, because it's not MP4/MOV) , so I would try rewrapping it with something like ffmpeg

If you want to upload a sample I can take a look, but I doubt that I'll magically be able to open it when you couldn't with l-smash. Unless maybe you're on different OS ? Im on Windows

You can also try ffms2 as an alternative

speedyrazor
2nd August 2017, 07:14
@speedyrazor - like I said earlier, XDCAM HD422 works in mxf container with lsmash (using LWLibavSource, because it's not MP4/MOV) , so I would try rewrapping it with something like ffmpeg

If you want to upload a sample I can take a look, but I doubt that I'll magically be able to open it when you couldn't with l-smash. Unless maybe you're on different OS ? Im on Windows

You can also try ffms2 as an alternative

Thanks for your reply, I understand. I have been using LibavSMASHSource so I don't have to index (way too time consuming on a 2 hour HD file). Is there an alternative which I can use that also does not require indexing?

poisondeathray
2nd August 2017, 07:17
Thanks for your reply, I understand. I have been using LibavSMASHSource so I don't have to index (way too time consuming on a 2 hour HD file). Is there an alternative which I can use that also does not require indexing?

Not that I know of; ffms2 will index

I would use LibavSMASHSource too for MP4/MOV sources for the same reason :)

But I wouldn't call it "way too time consuming", it might take a few minutes.

In avisynth there are directshow alternative source filters that don't require indexing, but they can be less reliable

manolito
2nd August 2017, 12:46
Probably the best of the DirectShow based source filters is DSS2Mod by forclip used together with LAV Filters. With a sensible "Preroll" value (for "normal" sources I use 15, interlaced HD .TS sources need higher values) this gives surprisingly good results without the need for indexing.


Cheers
manolito

LigH
2nd August 2017, 13:07
I like it too, as a "backup strategy"; unfortunately, it is not up-to-date with the AviSynth+ and LAV Filters development, the Xvid4PSP release 2.0.0.13 (https://code.google.com/archive/p/xvid4psp/downloads) is from 2013, the x64 DLL (http://avisynth.nl/index.php/AviSynth%2B#AviSynth.2B_x64_plugins) (Web Archive (http://web.archive.org/web/20160224130625/https://filetea.me/t1siAfoCvW5Sy2d2BbRx2WBjg/dl), no source diff) from 2014: It may or may not work with current versions.

poisondeathray
2nd August 2017, 14:23
Probably the best of the DirectShow based source filters is DSS2Mod by forclip used together with LAV Filters. With a sensible "Preroll" value (for "normal" sources I use 15, interlaced HD .TS sources need higher values) this gives surprisingly good results without the need for indexing.



Sorry, a bit off topic, but does this fix the missing frame problem ?

All versions of DSS2 / mod I have used have a missing frame

manolito
2nd August 2017, 15:41
This was discussed in the original thread...
forclip made a few test builds, for two of them (for "ceiling" and "round") the links are dead, but the test version from this post:
https://forum.doom9.org/showthread.php?p=1723627#post1723627
can still be downloaded.

Personally I do not care too much about the first frame missing, as long as audio stays in sync. I deal a lot with TV captures where the beginning is problematic (orphaned B-Frames), and DSS2Mod handles them nicely. I remember a discussion with Donald Graft in a different thread where he defended his method to handle such sources. Instead of discarding those frames (which means that audio must also be cut) his source filters insert repeated frames at the beginning so audio can be left untouched. Just a matter of taste...


Cheers
manolito

MysteryX
8th August 2017, 18:20
There's a nasty bug in LWLibavVideoSource causing misplaced frames under certain circumstances
https://forum.doom9.org/showthread.php?p=1814489#post1814489

lansing
4th September 2017, 10:06
I'm trying to open a m2ts file with LWLibavVideoSource in vapoursynth, but on my 5G video file, the filter is creating a 760MB lwi cache file, and the script initiation time took about 10 seconds when trying to preview it in the editor, is this normal?

LigH
4th September 2017, 10:26
Creating an index file once should be normal. The next times you open the script, the index should be re-used and loading should be more or less immediate.

If the index is recreated each time, though, something may be unusual...

Groucho2004
4th September 2017, 10:46
loading should be more or less immediate.Loading and parsing a 760MB text file takes time even with a fast CPU and disk. 10 seconds seems reasonable.

lansing
4th September 2017, 10:57
The initiation time always took about 10 seconds even with the index file present, I checked the last modified time of the index file, it didn't change from the initial time it was made, so it's not being rewritten each time.

MysteryX
4th September 2017, 18:22
Loading and parsing a 760MB text file takes time even with a fast CPU and disk. 10 seconds seems reasonable.

76MB/s disk read is actually quite good if it's a laptop hard drive

stax76
7th September 2017, 03:05
Is it normal that smash source gives only 50 fps for VC1 BD decoding? ffms2 gives 100, D GDecNV outputs green frames and DSS2 (copy back) gives 320 fps.

`Orum
27th February 2018, 17:59
Is there any way to get frame type out of this filter, in a manner similar to FFVideoSource()'s "FFPICT_TYPE" variable (http://avisynth.nl/index.php/FFMS2#Exported_AviSynth_variables)? It would be quite handy for a filter I'm working on, and I'd like to support as many source filters as possible.

Or, if you'd like, I can probably write a patch for this and submit it if you'd prefer.

LigH
21st March 2018, 08:21
Is the last release now already a year old?

amayra
22nd March 2018, 13:26
Is the last release now already a year old?
you are right the last Commits on Feb 23, 2017

LigH
22nd March 2018, 14:23
Well, at least a fresh build with current libav libraries would be nice (e.g. decoding HEVC may have developed since); but I guess new quirks would be required then?

Sparktank
22nd March 2018, 15:15
+1 for fresh biuld, especially where libav is concerned.

LSmash might not progress, but Libav might.

I don't know, I'm no programmer, but a public repository might help a lot of experienced users.

qyot27
22nd March 2018, 20:19
I don't know, I'm no programmer, but a public repository might help a lot of experienced users.
There always was?
https://github.com/VFR-maniac/L-SMASH-Works

And there was some recent activity in one of the forks:
https://github.com/hydra3333/L-SMASH-Works

Of course, that does require building L-SMASH itself (https://github.com/l-smash/l-smash) and [FFmpeg or Libav] first, and then the LSMASHSource AviSynth plugin. For the VapourSynth plugin, all of that can be done in GCC, for the AviSynth plugin, you have to use MSVC and manually copy things like AviSynth's headers/lib around first.

Sparktank
23rd March 2018, 00:39
Thanks for those!

Especially for the hydra3333 fork.

I never really thought to search for it on github in case someone created a fork.

It'll be nice to check on the commits.

LigH
23rd March 2018, 00:46
As I did not install any MSVC, I'll have to wait for a new binary AviSynth compatible release by anyone else then...

LigH
12th May 2018, 11:34
But there is noone else?

DJATOM
12th May 2018, 19:37
x64 version (AvisynthPluginInit3) with ffmpeg libs built near 1 month ago: https://mega.nz/#!GTxkmbJD!FgOYX1dJV8XWqus-c-Y2fT9tBRdtOEm5BmZ2nwM4xiw
x86 will require building 32 bit libs for linking, I'm too lazy for this.

MysteryX
14th May 2018, 00:22
There's a nasty bug in LWLibavVideoSource causing misplaced frames under certain circumstances
https://forum.doom9.org/showthread.php?p=1814489#post1814489
This bug still hasn't been resolved, so I'll post it again.

MysteryX
21st May 2018, 00:15
I was reading this about FFSM2. Does the same issue apply to L-SMASH Source when not using cache file?

FFAudioSource will have to remake any index implicitly created by FFVideoSource and therefore code like
AudioDub( FFVideoSource(X), FFAudioSource(X) )
will require two indexing passes. Apart from the time consumed this is harmless. To work around it open the audio first.

LigH
21st May 2018, 06:04
IIRC, only one of them required this quirk, so if it was FFMS2, it's not LSW. But it doesn't hurt to write scripts in this order (if you need audio at all, use it first) in any case.

masterkivat
27th May 2018, 04:53
x64 version (AvisynthPluginInit3) with ffmpeg libs built near 1 month ago: https://mega.nz/#!GTxkmbJD!FgOYX1dJV8XWqus-c-Y2fT9tBRdtOEm5BmZ2nwM4xiw
x86 will require building 32 bit libs for linking, I'm too lazy for this.

I hope someone can provide a 32-bit build anytime soon :) :thanks:

l33tmeatwad
30th May 2018, 16:50
So this was kind of a pain to figure out so I decided I would post some build notes to help anyone else out trying to compile their own. The static libs build is a single DLL file and the shared libs contains the libav DLLs.

LSMASHSource r941 (hydra3333 Mod (https://github.com/hydra3333/L-SMASH-Works))
Static Libs Build (x86 & x64) (http://www.mediafire.com/file/id4dp2zqha08wvx/) | Shared Libs Build (x86 & x64) (http://www.mediafire.com/file/6pd12ypbvhb8m9c/) | Sources (https://www.mediafire.com/folder/3tv37w2c9ibps/Source)
Bonus: FFMS2 with Shared Libs (http://www.mediafire.com/file/dffpprzgud9xid6/)

Build Notes:
Compiled with Microsoft Visual Studio 2015
Shared Libs & Include Files were copied to the Visual Studio Directories in: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC
Patch included with previous releases was applied to FFmpeg before compiling.

Static FFmpeg compiled with:
./configure --toolchain=msvc --enable-gpl --enable-version3 --disable-encoders --disable-programs --disable-filters \
--disable-network --disable-doc --disable-avdevice --disable-swresample --disable-postproc --disable-avfilter --enable-avresample
make install
Shared Libs FFmpeg compiled with:
./configure --toolchain=msvc --enable-gpl --enable-version3 --enable-shared --disable-encoders --disable-programs --disable-filters \
--disable-network --disable-doc --disable-avdevice --disable-swresample --disable-postproc --disable-avfilter --enable-avresample
make install

Visual Studio Project Modifications (x86 Static Build)
Project Properties > Configuration Properties > VC++ Directories
- Include Directories: C:\msys32\usr\local\include
- Library Directories: C:\msys32\usr\local\lib
Project Properties > Configuration Properties > Linker > General
- Additional Library Directories: C:\msys32\usr\local\lib
Project Properties > Configuration Properties > Linker > Input
- Additional Dependencies: libavutil.a;libavcodec.a;libavformat.a;libswscale.a;libavresample.a;

Visual Studio Project Modifications (x64 Static Build)
Project Properties > Configuration Properties > VC++ Directories
- Include Directories: C:\msys64\usr\local\include
- Library Directories: C:\msys64\usr\local\lib
Project Properties > Configuration Properties > Linker > General
- Additional Library Directories: C:\msys64\usr\local\lib
Project Properties > Configuration Properties > Linker > Input
- Additional Dependencies: libavutil.a;libavcodec.a;libavformat.a;libswscale.a;libavresample.a;

Changes to exlibs.cpp (both Static Builds)
//#pragma comment( lib, "libmingwex.a" )
//#pragma comment( lib, "libgcc.a" )
#pragma comment( lib, "lsmash.lib" )
#pragma comment( lib, "bcrypt.lib" )
//#pragma comment( lib, "avutil.lib" )
//#pragma comment( lib, "avcodec.lib" )
//#pragma comment( lib, "avformat.lib" )
//#pragma comment( lib, "swscale.lib" )
//#pragma comment( lib, "avresample.lib" )

Changes to exlibs.cpp (both Builds w/ Shared Libs)
//#pragma comment( lib, "libmingwex.a" )
//#pragma comment( lib, "libgcc.a" )
#pragma comment( lib, "lsmash.lib" )
#pragma comment( lib, "avutil.lib" )
#pragma comment( lib, "avcodec.lib" )
#pragma comment( lib, "avformat.lib" )
#pragma comment( lib, "swscale.lib" )
#pragma comment( lib, "avresample.lib" )

Included Libs:
LibAV (from FFmpeg 4.0) (https://github.com/ffmpeg/ffmpeg/releases)
L-Smash 2.14.5 (https://github.com/l-smash/l-smash/releases)

Other Software:
MSYS2 (https://www.msys2.org/) (i686 & x86_64)
Yasm 1.3.0 (http://yasm.tortall.net/Download.html) (General Use Executables)

poisondeathray
30th May 2018, 16:52
Thanks for the updated build

LigH
30th May 2018, 17:06
https://cosgan.de/images/smilie/musik/e050.gif
:thanks:

poisondeathray
30th May 2018, 17:12
Would it be possible to build an updated vapoursynth vslsmashsource.dll companion please ?

l33tmeatwad
1st June 2018, 04:51
Added a copy of FFMS2 that works with the same shared libs in case that's useful for someone, to like safe space and stuff maybe?

LigH
1st June 2018, 07:13
That's an interesting bonus. Let's hope they work well.

:thanks:

l33tmeatwad
1st June 2018, 14:57
Would it be possible to build an updated vapoursynth vslsmashsource.dll companion please ?
That's low on my priority list, but I'll see what I can do.

Richard1485
3rd June 2018, 12:59
When decoding 10-bit YUV 4:2:0, is there a need/way to specify whether the source is Rec.709 or Rec.2020? My source is Rec.709.
I'm using this bit of code from the wiki:


## Decoding 10bit, YUV 4:2:0 source
LSMASHVideoSource(<path>, stacked=true, format="YUV420P10")
ConvertFromStacked(bits=10)


It works. I'm just wondering if there's anything else that I need to add.

sneaker_ger
3rd June 2018, 13:21
Not in that simple script because you are not doing any "real" color conversions (like YUV to RGB or vice versa), only changing the storage format. (But you should set the correct flags in the encoder like x265/x264 you feed the script to.)

Yanak
3rd June 2018, 13:33
Hello and thank you for the update of L-SMASH,

Previously i was using the FFMS2 shipped with Staxrip ( version 2.23.1 too apparently ), to give it a try I replaced it by the one released with libs and tried to open a .GIF file as input/source and it does not like this :
Indexing using ffmsindex failed with exit code: -1073741701 (0xC000007B)
Tried some other files and getting the same kind of error messages with some MKV's or MP4's containers having some x264 streams inside.

Then tried to replace the ffmsindex.exe provided in the zip file by the one shipped in Staxrip (while keeping all other dll's you provided) and it seems to work like this, not sure what is going on.

Noticed that here https://github.com/FFMS/ffms2/releases there is a different ffmsindex.exe for both x86 and x64 ( hash is different ), while on your release a single one is provided for both, not sure if normal or not.

Using win7 x64 and all the workflow in Staxrip is x64 if this helps.

Thanks a lot :)

Edit : command used triggering the problem when i use your release:

LoadPlugin("H:\StaxRip-x64-1.7.0.6-test\Apps\Plugins\both\ffms2\ffms2.dll")
FFVideoSource("H:\test.mkv", colorspace = "YUV420P8", \
cachefile = "H:\TEMP\test_temp\test.ffindex")

Richard1485
3rd June 2018, 13:58
Not in that simple script because you are not doing any "real" color conversions (like YUV to RGB or vice versa), only changing the storage format.

Thanks! I should have thought of that. May I ask how I convert the video to 10-bit RGB? (The source is progressive, and I'm using Avisynth+.)

Sorry for this! I've looked at the Wiki but can't work it out. I've never worked with a 10-bit source before...

Music Fan
3rd June 2018, 14:15
May I ask how I convert the video to 10-bit RGB?
I never did this but it's probably ConvertToRGBP10 ;
http://avisynth.nl/index.php/Avisynthplus_color_formats

And maybe add matrix="Rec709".

Richard1485
3rd June 2018, 14:22
^ Yeah, thanks. :-) That's what I tried (with the matrix), but I received the standard "There is no function..." error message.

sl1pkn07
3rd June 2018, 15:18
So this was kind of a pain to figure out so I decided I would post some build notes to help anyone else out trying to compile their own. The static libs build is a single DLL file and the shared libs contains the libav DLLs.

LSMASHSource r941 (hydra3333 Mod (https://github.com/hydra3333/L-SMASH-Works))
Static Libs Build (x86 & x64) (http://www.mediafire.com/file/id4dp2zqha08wvx/) | Shared Libs Build (x86 & x64) (http://www.mediafire.com/file/6pd12ypbvhb8m9c/) | Sources (https://www.mediafire.com/folder/3tv37w2c9ibps/Source)
Bonus: FFMS2 with Shared Libs (http://www.mediafire.com/file/dffpprzgud9xid6/)

Build Notes:
Compiled with Microsoft Visual Studio 2015
Shared Libs & Include Files were copied to the Visual Studio Directories in: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC
Patch included with previous releases was applied to FFmpeg before compiling.

Static FFmpeg compiled with:
./configure --toolchain=msvc --enable-gpl --enable-version3 --disable-encoders --disable-programs --disable-filters \
--disable-network --disable-doc --disable-avdevice --disable-swresample --disable-postproc --disable-avfilter --enable-avresample
make install
Shared Libs FFmpeg compiled with:
./configure --toolchain=msvc --enable-gpl --enable-version3 --enable-shared --disable-encoders --disable-programs --disable-filters \
--disable-network --disable-doc --disable-avdevice --disable-swresample --disable-postproc --disable-avfilter --enable-avresample
make install

Visual Studio Project Modifications (x86 Static Build)
Project Properties > Configuration Properties > VC++ Directories
- Include Directories: C:\msys32\usr\local\include
- Library Directories: C:\msys32\usr\local\lib
Project Properties > Configuration Properties > Linker > General
- Additional Library Directories: C:\msys32\usr\local\lib
Project Properties > Configuration Properties > Linker > Input
- Additional Dependencies: libavutil.a;libavcodec.a;libavformat.a;libswscale.a;libavresample.a;

Visual Studio Project Modifications (x64 Static Build)
Project Properties > Configuration Properties > VC++ Directories
- Include Directories: C:\msys64\usr\local\include
- Library Directories: C:\msys64\usr\local\lib
Project Properties > Configuration Properties > Linker > General
- Additional Library Directories: C:\msys64\usr\local\lib
Project Properties > Configuration Properties > Linker > Input
- Additional Dependencies: libavutil.a;libavcodec.a;libavformat.a;libswscale.a;libavresample.a;

Changes to exlibs.cpp (both Static Builds)
//#pragma comment( lib, "libmingwex.a" )
//#pragma comment( lib, "libgcc.a" )
#pragma comment( lib, "lsmash.lib" )
#pragma comment( lib, "bcrypt.lib" )
//#pragma comment( lib, "avutil.lib" )
//#pragma comment( lib, "avcodec.lib" )
//#pragma comment( lib, "avformat.lib" )
//#pragma comment( lib, "swscale.lib" )
//#pragma comment( lib, "avresample.lib" )

Changes to exlibs.cpp (both Builds w/ Shared Libs)
//#pragma comment( lib, "libmingwex.a" )
//#pragma comment( lib, "libgcc.a" )
#pragma comment( lib, "lsmash.lib" )
#pragma comment( lib, "avutil.lib" )
#pragma comment( lib, "avcodec.lib" )
#pragma comment( lib, "avformat.lib" )
#pragma comment( lib, "swscale.lib" )
#pragma comment( lib, "avresample.lib" )

Included Libs:
LibAV (from FFmpeg 4.0) (https://github.com/ffmpeg/ffmpeg/releases)
L-Smash 2.14.5 (https://github.com/l-smash/l-smash/releases)

Other Software:
MSYS2 (https://www.msys2.org/) (i686 & x86_64)
Yasm 1.3.0 (http://yasm.tortall.net/Download.html) (General Use Executables)

this is a avs 2.5 API. can you update this to avs 2.6? greetings

StainlessS
3rd June 2018, 15:31
^ Yeah, thanks. :-) That's what I tried (with the matrix), but I received the standard "There is no function..." error message.

Got same message here using trial avs+ from a couple of days back (not todays issue).

Tried with RT_Stats Make_Avisynth_BuiltIn_FunctionList.avs
Got this (partial output below)


AviSynth+_0.1_(r2693,_MT,_i386)_ORDERED_Function_List


There follows a list of all function names together with CPP style argument specifiers that inform
Avisynth the argument types and optional names. Optional arguments have square brackets surrounding
their name as in [name] and are followed by a type specifier character that gives the type.
Unnamed arguments are not optional. eg "cc[arg1]b[arg2]i" would be two compulsory unnamed clip args,
followed by optional 'arg1' of type bool and optional 'arg2' of type int.

# Argument type specifier strings.
c - Video Clip
i - Integer number
f - Float number
s - String
b - boolean
. - Any type (dot)
# Array Specifiers
i* - Integer Array, zero or more
i+ - Integer Array, one or more
.* - Any type Array, zero or more
.+ - Any type Array, one or more
# Etc
###################################

BitsPerComponent "c"
BuildPixelType "[family]s[bits]i[chroma]i[compat]b[oldnames]b[sample_clip]c"
ColorSpaceNameToPixelType "s"
CombinePlanes "cccc[planes]s[source_planes]s[pixel_type]s[sample_clip]c"
ComponentSize "c"
ConvertBackToYUY2 "c[matrix]s"
ConvertBits "c[bits]i[truerange]b[dither]f[dither_bits]i[fulls]b[fulld]b"
ConvertTo16bit "c[bits]i[truerange]b[dither]f[dither_bits]i[fulls]b[fulld]b"
ConvertTo8bit "c[bits]i[truerange]b[dither]f[dither_bits]i[fulls]b[fulld]b"
ConvertToFloat "c[bits]i[truerange]b[dither]f[dither_bits]i[fulls]b[fulld]b"
ConvertToMono "c"
ConvertToPlanarRGB "c[matrix]s[interlaced]b[ChromaInPlacement]s[chromaresample]s"
ConvertToPlanarRGBA "c[matrix]s[interlaced]b[ChromaInPlacement]s[chromaresample]s"
ConvertToRGB "c[matrix]s[interlaced]b[ChromaInPlacement]s[chromaresample]s"
ConvertToRGB24 "c[matrix]s[interlaced]b[ChromaInPlacement]s[chromaresample]s"
ConvertToRGB32 "c[matrix]s[interlaced]b[ChromaInPlacement]s[chromaresample]s"
ConvertToRGB48 "c[matrix]s[interlaced]b[ChromaInPlacement]s[chromaresample]s"
ConvertToRGB64 "c[matrix]s[interlaced]b[ChromaInPlacement]s[chromaresample]s"
ConvertToY "c[matrix]s"
ConvertToY8 "c[matrix]s"
ConvertToYUV411 "c[interlaced]b[matrix]s[ChromaInPlacement]s[chromaresample]s"
ConvertToYUV420 "c[interlaced]b[matrix]s[ChromaInPlacement]s[chromaresample]s[ChromaOutPlacement]s"
ConvertToYUV422 "c[interlaced]b[matrix]s[ChromaInPlacement]s[chromaresample]s"
ConvertToYUV444 "c[interlaced]b[matrix]s[ChromaInPlacement]s[chromaresample]s"
ConvertToYUY2 "c[interlaced]b[matrix]s[ChromaInPlacement]s[chromaresample]s"
ConvertToYV12 "c[interlaced]b[matrix]s[ChromaInPlacement]s[chromaresample]s[ChromaOutPlacement]s"
ConvertToYV16 "c[interlaced]b[matrix]s[ChromaInPlacement]s[chromaresample]s"
ConvertToYV24 "c[interlaced]b[matrix]s[ChromaInPlacement]s[chromaresample]s"
ConvertToYV411 "c[interlaced]b[matrix]s[ChromaInPlacement]s[chromaresample]s"
Is420 "c"
Is422 "c"
Is444 "c"
IsFloatUvZeroBased ""
IsPackedRGB "c"
IsPlanar "c"
IsPlanarRGB "c"
IsPlanarRGBA "c"
IsRGB "c"
IsRGB24 "c"
IsRGB32 "c"
IsRGB48 "c"
IsRGB64 "c"
IsVideoFloat "c"
IsY "c"
IsY8 "c"
IsYUV "c"
IsYUVA "c"
IsYUY2 "c"
IsYV12 "c"
IsYV16 "c"
IsYV24 "c"
IsYV411 "c"
MergeARGB "cccc"
MergeChroma "cc[chromaweight]f"
MergeLuma "cc[lumaweight]f"
MergeRGB "ccc[pixel_type]s"
NumComponents "c"
PixelType "c"
PlaneToY "c[plane]s"
RemoveAlphaPlane "c"
ShowAlpha "c[pixel_type]s"
ShowBlue "c[pixel_type]s"
ShowGreen "c[pixel_type]s"
ShowRed "c[pixel_type]s"
ShowU "c[pixel_type]s"
ShowV "c[pixel_type]s"
ShowY "c[pixel_type]s"
VToY "c"
VToY8 "c"
YToUV "cccc"
YToUV "cccc"
YToUV "cccc"


This works OK

ColorBars.Killaudio
#ConvertToRGBP10(Matrix="rec709") # Fail
#ConvertToPlanarRGB "c[matrix]s[interlaced]b[ChromaInPlacement]s[chromaresample]s"
#ConvertBits "c[bits]i[truerange]b[dither]f[dither_bits]i[fulls]b[fulld]b"
ConvertToPlanarRGB() # Presumably dont need matrix here as from RGB
ConvertBits(10)
Info
ConverttoRGB32 # for display


https://s20.postimg.cc/u6wy8varh/R1485.jpg (https://postimages.org/)

EDIT: ConvertBits only works on Planar RGB, but OK on Planar YUV, eg YV12,
produces ColorSpace: YUV420P10, BitsPerComponent: 10.

EDIT:
AviSynth+_0.1_(r2693_ORDERED_Function_List.TXT.7z (Does not included any updated builtin filter definitions for todays updated avs+).
7Zip file ~5KB, expanded ~ 22KB text file.
http://www.mediafire.com/file/3ub7ldg860qdl87/AviSynth+_0.1_%28r2693_ORDERED_Function_List.TXT.7z

EDIT: Have extended partial output of builtin function definitions earlier in this post, Its possible that I may have missed one or two out.

EDIT: Only Single function definitions given in earlier text file, eg BlankClip has multiple alternate arg lists, but the RT_Stats script
cannot output multiple, they all produce same result text (there was no way to parse multiples external to avs Standard, I assume this has not changed in avs+).

EDIT: The ColorSpaceNameToPixelType() listed takes a colorspace name eg "RGBP10" and returns hex 0x90050001 [internal bit flags descriptor].
Perhaps some other missing definition (missing multiple definition) can take a PixelType and produce a clip, maybe eg
BlankClip(PixelType) exists, dont know (or some clip conversion filter).

Richard1485
3rd June 2018, 17:25
^ I appreciate your help and interest in this problem. With your script, I get an error message that says: "There is no function named ConvertToPlanarRGB()", which baffles me. When I call Version(), the correct AviSynth+ version is displayed: I'm using the one released today (r1576, x64).

poisondeathray
3rd June 2018, 17:32
I'm using the one released today (r1576, x64).

Seems old ? StainlessS is on r2693 if you look above

LigH
3rd June 2018, 17:35
Page
long
full
quote
wasting
space
One line

Just a matter of taste? :rolleyes:

If I refer to a specific part of a quote, I crop the quote down to the relevant part. Or just mention "@ author".
__

@ Richard1485:

Still the "ancient" version from http://avs-plus.net/ ... no, this page seems to be abandoned since 2014.

Richard1485
3rd June 2018, 17:39
Seems old ?

That's very strange, because I reinstalled it today. But you're right. It must be picking up an old version from somewhere. I'll try installing it again.

EDIT: Okay. The version information is now correct. (Thanks, LigH!)

EDIT: Now there's a message about the conversion to RGB being possible only from an 8-bit source. It must be the call to ConvertToRGB32() at the end.

EDIT: Well, if I remove the call to ConvertToRGB32(), the error message goes away, but VirtualDub2 chokes on the video because it "can't locate a decompressor for format "G3[0][10]" (unknown)".

pinterf
3rd June 2018, 18:50
Ok. In latest avs+ _test_ build, see avs+ topic for r2696, I have made ConvertoRgb32 callable from any bitdepth, helping the previewing. When you removed the conversion, your clip is fed to vdub as planar 10 bit rgb fooucc code: G3[0][10] which is not handled by your system. You may do Convertbits(8).Converttorgb32 or Convertbits(16). Converttorgb64 if you are using avs+ r2664 (latest official). Latter needs Vdub2

Richard1485
3rd June 2018, 21:01
Yeah, I guessed the reason for the last error message. Thanks! Is ConvertToRGBP10() not an option at present? I'm just trying to get my head round this high bit-depth stuff. ☺