Username:
B
I
U
S
"
url
img
#
code
sup
sub
font
size
color
smiley
embarassed
thumbsup
happy
Huh?
Angry
Roll Eyes
Undecided
Lips Sealed
Kiss
Cry
Grin
Wink
Tongue
Shocked
Cheesy
Smiley
Sad
<- 1  -   of 69 ->
--
--
List results:
Search options:
Use \ before commas in usernames
Edit history:
ballofsnow: 2010-09-04 10:25:27 am
ballofsnow: 2010-09-04 10:23:22 am
*slaps forhead* project_dir is in settings.avs... Probably better to leave them in anyway to make it easier to do custom avisynth edits.

Plugins can be centralized. At the moment the folder is scanned every time Anri runs, if someone sticks in new dll's or avs's they'll have to specify them in import_main.avs. - or write a scanning function in avisynth.

fyi, need an AssumeFrameBased near the end of the scripts for later versions of x264. In the current 3.3 code it's right before the sar log thing.
Edit history:
bmn: 2010-09-04 07:49:37 pm
bmn: 2010-09-04 07:40:48 pm
bmn: 2010-09-04 07:39:40 pm
bmn: 2010-09-04 06:36:21 pm
bmn: 2010-09-04 04:50:38 pm
bmn: 2010-09-04 03:06:39 pm
bmn: 2010-09-04 11:17:22 am
bmn: 2010-09-04 11:12:04 am
bmn: 2010-09-04 11:06:49 am
bmn: 2010-09-04 11:03:31 am
bmn: 2010-09-04 10:59:19 am
bmn: 2010-09-04 10:53:16 am
bmn: 2010-09-04 10:52:15 am
bmn: 2010-09-04 10:46:05 am
bmn: 2010-09-04 10:45:10 am
k kool

One thing about imports that we can use - when a file is imported the cwd is set to that file's directory during that import. If we move plugins.avs to anri_dir+"plugins\plugins.avs", then this code will work:
Code:
loadplugin("ac3source.dll", "Decomb.dll", "EEDI2.dll", "LeakKernelDeint.dll", "MaskTools.dll", "mpasource.dll", "MVTools.dll", "RemoveGrain_v10pre1.dll", "TomsMoComp.dll", "UnDot.dll")
import("mvbob.avs", "MCBob_v03c.avs")

and we get rid of the "where is anri installed" issue for plugins.

...apart from anri_dir in the project settings, which would go out of date with a new anri installation. Not particularly important, but not sure how we'd go about dealing with that one - in fact ideally we'd have it point to the anri version currently being used, in case the user wants to use multiple versions or something crazy like that?


Is there some kind of clever setup for updating the source on the kb? I know it was me that came up with putting the source there in the first place, but eeeeeeugh.

Also has it really been 3 years since the DFnD listing files were last updated? o_O
Edit history:
bmn: 2010-09-05 11:36:19 am
bmn: 2010-09-05 07:51:29 am
bmn: 2010-09-04 11:10:47 pm
bmn: 2010-09-04 10:58:12 pm
bmn: 2010-09-04 10:57:05 pm
http://github.com/bmn/anrichan-3/compare/master...avs

Don't have time to update the wiki right now, so the changes I've made so far are up there if you want to get a hold of them.

In :savesettings we're missing two important vars. directshow (true if directshowsource, false if avisource) I don't know the best way to sort out. As for file, we need to work out how to send over multiple filenames to job_[project].avs, and also have avs_movie.avs turn that into the appropriate aligned splices. I'm drawing a blank on that front, so I'd appreciate if you could have a go at that section.

Also got AVS files for an NMF setup, including a YUY2 conversion on the NMF and YV12 for everything else. That's waiting on the appropriate anri.bat code but I want to get the main bit sorted first.


Edit: Actually changed my mind on the wiki; I'd rather not update it until we have the new stuff working.
Edit history:
ballofsnow: 2010-09-06 10:18:45 am
ballofsnow: 2010-09-06 10:07:54 am
Syntax error on AdvancedMultitrim.avs line 1 col 1.

Am I missing something?

edit- version of AviSynth probably. What are you running?

edit- Ok, so you want to have job_[project].avs contain the file paths and whether they are directshowsource or avisource?
Looking into the multitrim thing now.

Do we want avi/ds for each file, or can we assume all the files will be the same type?
Edit history:
ballofsnow: 2010-09-06 11:03:16 am
ballofsnow: 2010-09-06 10:55:11 am
Safest would be for each file.

A two dimensional array would be cool with file path and avi/ds flag. Unfortunately AviSynth doesn't support arrays natively... Unless we use AVSLib, or http://forum.doom9.org/showthread.php?t=106880&highlight=arrays
Edit history:
bmn: 2010-09-06 11:19:27 am
Multitrim seems to be the comments doing it. Looking at the docs, block comments were added in 2.58 (we're running 2.57).
Edit history:
ballofsnow: 2010-09-06 11:35:48 am
ballofsnow: 2010-09-06 11:33:46 am
ballofsnow: 2010-09-06 11:32:35 am
Ah, it's mentioned in the changelog. I also saw: "Relax YV12 resizer width restriction, now mod 2 was mod 4." which I'll have to look into.

Guess it's time to move to 2.58.

I'm testing http://forum.doom9.org/showthread.php?t=106880&highlight=arrays and here's a simple script that seems to work.

Code:
Dim("avifiles",0,0)
avifiles.set(0, avisource("D:\videoprocessing\clip1.avi"))
avifiles.set(1, avisource("D:\videoprocessing\clip2.avi"))
avifiles.deref(0) ++ avifiles.deref(1) 


Not sure if it does two dimensions, at worst the array can contain avi/ds source + path commands.


What do you think? job_[project].avs contains the array, then we loop through it?
Edit history:
bmn: 2010-09-06 01:24:06 pm
bmn: 2010-09-06 01:20:34 pm
bmn: 2010-09-06 12:57:56 pm
bmn: 2010-09-06 12:45:04 pm
bmn: 2010-09-06 12:17:50 pm
bmn: 2010-09-06 12:15:48 pm
bmn: 2010-09-06 12:09:59 pm
bmn: 2010-09-06 12:09:12 pm
bmn: 2010-09-06 12:05:43 pm
bmn: 2010-09-06 11:52:35 am
bmn: 2010-09-06 11:51:24 am
bmn: 2010-09-06 11:50:20 am
bmn: 2010-09-06 11:48:01 am
bmn: 2010-09-06 11:47:06 am
bmn: 2010-09-06 11:44:56 am
Some of the stuff in the array plugin would conflict with GScript, e.g. for and while.

It may actually be best to stick with what we have already with anri.bat generating the code and putting it in as is, except into the job file instead of the movie files. It'd also have the nice side effect of making the job AVS a working script in its own right (not that that really matters, but still...).

But in this situation we'd really just be making it more complicated trying to do everything through Avisynth, and I don't think we'd get any benefit from doing it with the files. The other stuff, sure...


Edit: Unrelated, but a thought?:
Code:
:batset
ECHO>> "job_%PROJNAME%.bat" SET %*
GOTO :EOF

:savesettings
SETLOCAL ENABLEDELAYEDEXPANSION
IF "%DARnum%"=="" SET DARnum=4
IF "%DARden%"=="" SET DARden=3
REM Make sure there are no spaces at the end of each line.
ECHO> "job_%PROJNAME%.bat" @ECHO OFF
GOTO :batset proj_anriver=%anri_ver%
...
GOTO :batset DARden=%DARden%
ECHO>> "job_%PROJNAME%.bat" IF NOT "%%in_anrichan%%"=="y" call "%anri_path%"
COPY /Y "job_%PROJNAME%.bat" "job_%PROJNAME%.bak" > NUL


Would add 8 lines to the code (if done for both job files) but would save about 1KB in anri.bat and make the code there a bit more manageable.

Edit 2: Also on settings, could we have anri write lines to the two job files as soon as the user inputs the relevant info (the bit in Edit 1 would make that more simple if so)? That would, I believe, allow us to create all the other AVS files right at the start, and have them all work when they're needed (even the ones used during data collection like the field order and pixel shift questions). eg:
Code:
:script_buildfiles
for %%a in (fieldorder pixelshift trim nmf) do (
  echo>  "temp_%%a.avs" import^("job_%projname%.avs"^)
  echo>> "temp_%%a.avs" import^(anri_dir + "avs_%%a.avs"^)
)
REM what's already there



Edit 3: k I can't actually get the settings thing to work; soon as I try to write from the subroutine it ends up as:
Code:
@ECHO OFF
SET 
perl anri/anri 4/"anrix" is dead for the time being. more info here:
http://forum.speeddemosarchive.com/post/amemiya_2.html

thanks for your contributions to anri. great to see it getting better and better.
Edit history:
bmn: 2010-09-08 01:27:24 pm
But I haven't done anything yet >_>

Here's something for you, bos. Alternate echo-multiple-lines-to-file syntax:
Code:
(
  ECHO @ECHO OFF
  ECHO SET proj_anriver=%anri_ver%
  ECHO SET using_settings=y
  ECHO SET dvdsource=%dvdsource%
  ECHO SET avifiles=%avifiles%
  ECHO SET fieldorder=%fieldorder%
  ECHO SET d=%d%
  ECHO SET f=%f%
  ECHO SET vhs=%vhs%
  ECHO SET deflicker=%deflicker%
  ECHO SET deflickeralt=%deflickeralt%
  ECHO SET onepixel=%onepixel%
  ECHO SET onepixelalt=%onepixelalt%
  ECHO SET nes=%nes%
  ECHO SET twod=%twod%
  ECHO SET statid=%statid%
  ECHO SET statid1=%statid1%
  ECHO SET statid2=%statid2%
  ECHO SET statid3=%statid3%
  ECHO SET statid_alternative=%statid_alternative%
  ECHO SET statid_commentary=%statid_commentary%
  ECHO SET driveletter=%driveletter%
  ECHO SET projname=%projname%
  ECHO SET gba=%gba%
  ECHO SET gameboy=%gameboy%
  ECHO SET prog=%prog%
  ECHO SET trim=%trim%
  ECHO SET trimarray=%trimarray%
  ECHO SET maxaudiobitrate=%maxaudiobitrate%
  ECHO SET isPCGAME=%isPCGAME%
  ECHO SET nativewidth=%nativewidth%
  ECHO SET nativeheight=%nativeheight%
  ECHO SET DARnum=%DARnum%
  ECHO SET DARden=%DARden%
  ECHO IF NOT "%%in_anrichan%%"=="y" call "%anri_path%"
) > "job_%PROJNAME%.bat"
Edit history:
ballofsnow: 2010-09-08 02:24:20 pm
Another one of those moments where I wonder "why haven't I seen this before?!".

Nice find. Makes me wonder what other tricks there are.

Quote from bmn:
But I haven't done anything yet >_>

You've come up with good ideas, that counts. thumbsup
Edit history:
bmn: 2010-09-08 08:05:01 pm
bmn: 2010-09-08 03:37:05 pm
bmn: 2010-09-08 03:35:29 pm
bmn: 2010-09-08 03:16:27 pm
bmn: 2010-09-08 03:10:13 pm
bmn: 2010-09-08 03:09:27 pm
I feel loved.

http://wizapp.sourceforge.net/ - Anri-chan wizard edition?
http://dod.codeplex.com/ - The solution to the SDA 2.0 dilemma.

In the log building section I was able to cut out about half of the code (not a lot tbh) by using multiple wildcards in a single for loop as they were actually identical. By doing that, the file listing is first now, however.
Code:
FOR %%G IN (*.bat *.log *.avs) DO (
  (
    ECHO ----------------------------------------
    ECHO  Contents of %%G
    ECHO ----------------------------------------
    ECHO.
    TYPE "%%G"
    ECHO.
    ECHO.
    ECHO.
  ) >> %projname%_finished\%log%
)


Also found a way to sort of work with pseudo-arrays (or hashes or whatever) using SET's wildcard listing behaviour (underscore is to avoid conflicts):
Code:
SET _files.0=something
SET _files.1=something else
FOR /F "tokens=2* delims=.=" %%A IN ('SET _files.') DO (
  ECHO Array key is %%A
  ECHO Key value is %%B
)



Edit: http://github.com/bmn/anrichan-3/commits/avs

The full movie, along with trim, pixel shift and field order, are working for the most part on what I've tested so far. LQ and MQ have a bobbing issue that's likely due to something in the logic of avs_movie.avs.

I don't have a good idea on how the DVD side comes into it (been testing with video captures), so that may well be broken. The source file testing is still on the old code making %projname%.bak still necessary.
snow, have you seen this?

http://avisynth.org.ru/docs/english/externalfilters/colormatrix.htm
Edit history:
ballofsnow: 2010-10-10 11:50:14 am
ballofsnow: 2010-10-10 11:46:53 am
So we have to watch out for conversion between rec.601 and rec.709?

http://avisynth.org/mediawiki/Convert
Quote:
matrix: Default "Rec601", scaled to TV range [16,235].


The 15 or so DVD samples I use for testing are all rec.601 or nearly the same. The one m2ts sample I got from Anubis which is a 720p stream is rec.709, so I'll keep an eye out for this one.


Histogram() may be useful.
Edit history:
ballofsnow: 2010-10-11 08:16:56 pm
bmn, I continued your work a little.

http://dl.dropbox.com/u/1590737/bmnanri3.3.zip

I moved the plugins import to the job avs since it includes dgdecode which is needed for mpeg2source. Right after that it loads projname_source.avs which has the source files. Basically all source lines are kept in that file and never touched again.

DVD should be working, but I'm not sure how you wanted to use the nmf wrapper.

I also have wavi in there in place of vdub wav dump and bepipe. -ignorelength seems to be necessary on neroaacenc because it's using stdin.

The sample creator is also back to looking normal. It's yv12(interlaced=true) and x264 --tff so there shouldn't be any chroma bleeding.

If you can take a look at the code that'd be great. Not sure what else you were planning to do.
Edit history:
bmn: 2010-10-11 10:27:13 pm
Thanks, bos. I was working on the DVD stuff and getting in a big mess which is why you haven't seen anything from me recently (that and I hate batch so much, and shell isn't much better).

IIRC I've got some changes in other areas, so I'll see what I can patch in.
thethrillness.blogspot.com
Sorry to be so demanding but any idea (roughly) on m2ts support? I did segment 1 of my Heavy Rain speedrun and wanna see it once encoded (and post quality tests).
Edit history:
bmn: 2010-10-12 06:11:46 pm
bmn: 2010-10-12 05:39:57 pm
bmn: 2010-10-12 05:29:41 pm
Until then what I believe you can do (unfortunately can't test this as I don't have such a file) is make an Avisynth file (one ending in .avs), with this code:

Code:
DirectShowSource("path/to/m2ts.file")


...load it in the VirtualDub included with anri, and save it as an AVI file (with or without compression). Then use that AVI file as your source in anri. You need a DirectShow filter for the M2TS file type or it won't work.


In the pipeline: Custom statIDs. I've taken out the statid copy to project dir so it uses the versions in anri_dir. If alternative is selected, it'll use statid.png in project_dir if it exists, and statid_alternative.png in anri_dir otherwise. May be able to support other formats with a little work, what's done so far is nothing special.

Attachment:
Edit history:
ballofsnow: 2010-10-12 08:28:07 pm
ballofsnow: 2010-10-12 07:52:44 pm
I should have something soon for AVCHD (m2ts). AnubisGI, you can be the beta tester... Actually can you do me a favour and upload like a 1 minute sample? The one I have has no meaningful content.

edit- ok, so this is early. I don't foresee having much time to work on this for the next few weeks.
http://dl.dropbox.com/u/1590737/bmnanri3.3oct12.zip
edit- forgot to mention, install AviSynth\Avisynth_258.exe before using anri.
Merged your AVCHD stuff into my repo, cheers bos.
thethrillness.blogspot.com
Here is two samples for m2ts.

First is just over a minute long showing fast motion gameplay (it's a crowd part). - http://www.filefront.com/17382842/m2tssample1.M2TS
The second is purely a cutscene that lasts abit less than a minute. - https://www.yousendit.com/download/ZGJjUGhkRkViV3p2Wmc9PQ

I just got done encoding a LQ ver of sample1 from above (thanks snow) and it works.

https://www.yousendit.com/download/ZGJjUGhlcTIwZ252Wmc9PQ

As you can see LQ is useless for such a source resolution. I think HQ and IQ is all that is needed.
Hehe, it's up to whoever's watching whether LQ and MQ are useless. They are still required. And don't forget.. LQ is Lowwwww Quality... expectations should be just that.

Thanks for the samples.
Edit history:
ballofsnow: 2010-10-13 07:13:37 pm
I did say that build was early.

LQ/MQ framerate isn't being adjusted to F2. You may notice that LQ vid is ~60 fps when it should be ~30 fps, and it's one reason the quality is sub-par.
edit - actually, the game is F2 anyway so you shouldn't be encoding as F1.

Download the attached file and place it in the anri folder.
Attachment:
thethrillness.blogspot.com
I am just abit confused as to this F1 and F2 thing. The glossary section says F1 is 59.94 and F2 is 29.97 and my source m2ts is 59.94 so why do I choose F2?

I stuck your new script in and reencoded using F2 and it did look better when I visually compared the two encodes. I actually forgot to say and you probably noticed this when viewing my samples. Every Hauppauge will insert like a 3 pixel line at the top and right side of the video. Any way to crop that out using anri chan? I know virtualdub can do this with a simple filter.