View Full Version : Compressor fccHandler ID's
ExperimentalAnimations
14th September 2010, 00:50
From http://www.virtualdub.org/docs/vdscript.txt
int GetCompression(int var);
Retrieves a variable for the currently selected compressor:
var=0 Returns the fccHandler ID for the compressor.
var=1 Returns the maximum keyframe interval.
var=2 Returns the quality factor (0-10000).
var=3 Returns the data rate (0=no data rate).
Its formatted in hex, how do i find them? Im looking for lagarith and huffyyuv in particular.
Guest
14th September 2010, 01:19
http://www.fourcc.org
You'll have to convert the hex to string. It's likely just ASCII.
Lagarith = LAGS
HuffYUV = HFYU
ExperimentalAnimations
14th September 2010, 02:20
Thanks but im trying to modify this code
REM echo VirtualDub.video.SetCompression^(0x636c6c63,0,1000 0,0^);
Apparenty 0x636c6c63 is the ID for uncompressed. It seems its not hex, im not sure what it is.
Guest
14th September 2010, 02:28
That's Canopus LossLess v.1.10 CE (CLLC).
You can specify a string:
SetCompression("HFYU",0,10000,0)
mariush
14th September 2010, 03:44
Open Character Map : Start > Accessories > System Tools > Character Map .. Select the "Terminal" font and for each letter you get its hex value 0x63 = c 06c = lowercase L ... so it's "cllc"
ExperimentalAnimations
14th September 2010, 04:18
Thanks for the tip. Ive tried both 4 letter in quotes, and hex and they always default to uncompressed. I dont get why this isnt working.
ExperimentalAnimations
14th September 2010, 04:24
I left it out entirely and its still is doing the same.
Guest
14th September 2010, 04:24
Thanks for the tip. Ive tried both 4 letter in quotes, and hex and they always default to uncompressed. I dont get why this isnt working. Give us your entire script and tell us how you invoked it. Also, are you sure you have those codecs installed?
ExperimentalAnimations
14th September 2010, 04:30
In case anyones wondering, this is from a IVTC script someone wrote, i was just trying to make it more manageable.
Edit: its a .bat file. I got lagarith 1320, vdub 1.9.10, avisynth 2.5.7.
for %%f IN (*.mts) DO (
echo directshowsource^("%%f"^).AssumeTFF^(^).SeparateFi elds^(^) > %%~nf.avs
echo Assert^(width^(^) == 1920, "Not a 1080p24 source"^) >> %%~nf.avs
echo x0 = selectevery^(10, 0,1^).Weave^(^) >> %%~nf.avs
echo x1 = selectevery^(10, 2,3^).Weave^(^) >> %%~nf.avs
echo x2 = selectevery^(10, 5,6^).Weave^(^) >> %%~nf.avs
echo x3 = selectevery^(10, 8,9^).Weave^(^) >> %%~nf.avs
echo Interleave^(x0,x1,x2,x3^) >> %%~nf.avs
)
for %%f IN (*.avs) DO (
echo VirtualDub.Open^("%%f"^); > %%~nf.script
REM echo VirtualDub.video.SetCompression^(0x636c6c63,0,1000 0,0^); >> %%~nf.script
echo VirtualDub.video.SetOutputFormat^(11^); >> %%~nf.script
echo VirtualDub.SaveAVI^("%%~nf.avi"^); >> %%~nf.script
echo VirtualDub.Close^(^); >> %%~nf.script
)
for %%f IN (*.script) DO (
"C:\Program Files\VirtualDub\vdub.exe" /min /x /s %%~ff
)
for %%f IN (*.script) DO (
del /Q %%f
)
for %%f IN (*.avs) DO (
del /Q %%f
)
Guest
14th September 2010, 04:35
In your AVS file loop, your SetCompression line is commented out and specifies "clls".
ExperimentalAnimations
14th September 2010, 04:43
Yes, that was the default script. I dont see any // for comments, where do you see comments?
Guest
14th September 2010, 04:44
Take away the REM at the beginning of the line. It stands for REMARK and is used as a comment in batch files.
ExperimentalAnimations
14th September 2010, 04:50
Ok, still doing uncompressed. I tried "LAGS" and it crashed, then i did the hex version and nothing. I also did the hex of "Lags", uncompressed.
Edit: Tried just "Lags" and behold i got a compressed file, however i cant get any programs to recognize it as such.
Guest
14th September 2010, 04:54
You have to give us the script after you change it. We can't guess what you did.
ExperimentalAnimations
14th September 2010, 05:01
Oh, here it is
for %%f IN (*.mts) DO (
echo directshowsource^("%%f"^).AssumeTFF^(^).SeparateFi elds^(^) > %%~nf.avs
echo Assert^(width^(^) == 1920, "Not a 1080p24 source"^) >> %%~nf.avs
echo x0 = selectevery^(10, 0,1^).Weave^(^) >> %%~nf.avs
echo x1 = selectevery^(10, 2,3^).Weave^(^) >> %%~nf.avs
echo x2 = selectevery^(10, 5,6^).Weave^(^) >> %%~nf.avs
echo x3 = selectevery^(10, 8,9^).Weave^(^) >> %%~nf.avs
echo Interleave^(x0,x1,x2,x3^) >> %%~nf.avs
)
for %%f IN (*.avs) DO (
echo VirtualDub.Open^("%%f"^); > %%~nf.script
echo VirtualDub.video.SetCompression^("Lags",0,10000,0^); >> %%~nf.script
echo VirtualDub.video.SetOutputFormat^(11^); >> %%~nf.script
echo VirtualDub.SaveAVI^("%%~nf.avi"^); >> %%~nf.script
echo VirtualDub.Close^(^); >> %%~nf.script
)
for %%f IN (*.script) DO (
"C:\Program Files\VirtualDub\vdub.exe" /min /x /s %%~ff
)
for %%f IN (*.script) DO (
del /Q %%f
)
for %%f IN (*.avs) DO (
del /Q %%f
)
Guest
14th September 2010, 05:03
You're being really imprecise. You said you tried "LAGS" but you give a script with "Lags".
Sorry, but I cannot work like that. Maybe someone else can help.
Last idea: Open VirtualDub. Set the Lagarith codec. Then save processing settings. Open the settings file and see what fourcc VirtualDub used.
Guest
14th September 2010, 05:10
Edit: Tried just "Lags" and behold i got a compressed file, however i cant get any programs to recognize it as such. Open it in VirtualDub. Is it OK?
ExperimentalAnimations
14th September 2010, 05:14
Yes, i said i tried "LAGS" then the hex of that, then i tried the hex of "Lags", then i did just "Lags" and it worked.
Checked the process settings, and it gives me "sgal". Ah, ok, ive seen that before in AE. For some reason it will flip from time to time.
It will open and work fine, its just that nothing recognizes it as lag, so its anyones guess if lagarith itself will.
Guest
14th September 2010, 05:22
That's weird. I confirm it gets saved as "sgaL"!
I suggest taking this to the VirtualDub forum:
http://forums.virtualdub.org/
ExperimentalAnimations
14th September 2010, 06:31
Oh ok, thanks for the help.
Guest
14th September 2010, 12:22
I think I know what's going on.
VirtualDub stores the 4 character string as an int and not an array of 4 characters. So because of the byte ordering of ints, it appears reversed. If you just use the string representation you should be fine. So use "Lags" in your batch file. Other applications should have noproblem with the resulting encoded file.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.