Posts for nanogyth

1 2 3 4 5 6
9 10
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
Tub wrote:
So the actual problem is that youtube destroys aspect ratio information when re-encoding into their different formats?
Youtube will try to re-encode everything to square pixels. Since that isn't what we're after, TAS doesn't send any aspect ratio info with the 8x8 resizes, and relies on the stretch tag to fix things. So what we'd want is for Youtube to pass the stretch info onto the css.
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
I did this: 200_disc1_end.avs
Language: avisynth

avisource("177_disc1-640x480.avi") #357 reverse crop(31,38,580,406) separatefields selectevery(12, 0,5, 2,7, 10,9) weave interleave(last,last) reverse deleteframe(358) #0 2 4 6 8 X #B;.;.;;B;.;. #;.;.B;.;.;;B
And using something like this might be helpful for getting the different frame sizes to play nice together.
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
They're looking into it. If anyone else has this problem go here and post the url.
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
Bubble Bobble was giving my regular techniques some trouble, so I came up with a new method. ColorKeyMask is made for greenscreening and such. I'm using it here to pick out just the colors of the sprites that are blinking. This works fine on NES where the palette is limited, but probably wouldn't work on 16bit+ consoles. The blinking scores were tricky because the main character is the same color. When I first did it using just 1 frame forward/back the eyes got wonky. Searching 4 frames f/b cleans up most of the visible artifacts. http://pastebin.com/MbksNPiJ
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
http://www.w3.org/TR/html5/the-video-element.html#concept-video-intrinsic-height I haven't wrapped my head around that concept, but I'd be shocked if html5 only worked with square pixels.
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
Did you file a bug report? Because if Youtube could fix it on their end that would be best
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
Thank you
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
I'd like to do something like this
function my_fun()
    repeat
        FCEU.frameadvance()
    until FCEU.lagged()
end

taseditor.registermanual(my_fun)
Is that possible?
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
My copy of fceux 2.1.6 is missing the "taseditor" subfolder of "luaScripts". Do you have a link to a build that includes it?
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
AnS wrote:
I think this can be further automated by finding a memory address that can serve as an indicator of sync,
But I'd need that data from Famtasia, right? Which would be tricky since its source is lost.
Post subject: Setting up a resync workflow
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
I'm doing a little write-up to give some idea for what kind of dark art I'm performing to get famtasia movies running on fceux. So, starting with the .fmv, first you'll need a clean dump from famtasia (or a pre-made file you trust the frame-accuracy of). I run it through vdub to get it to lagarith. Then I start fceux, Open ROM..., Pause, Record Movie..., Stop Movie. This sets up the headers and I drag this file from the movie directory to my working directory. I add the frame data with this python/batch script. (nesmock should work too) Make sure the names of the .fmv and fm2 match. The underscore is to keep my utility stuff away from the other files. _py.bat
@ECHO OFF
IF NOT [%~nx1]==[%~n1.fmv] ECHO drag+drop .fmv & PAUSE & GOTO :EOF
IF NOT EXIST "%~n1.fm2" ECHO "%~n1.fm2" not found & PAUSE & GOTO :EOF

python _py.py %1 >> %~n1.fm2
_py.py
import sys

with open(sys.argv[1], "rb") as f:
    f.read(10)
    print("comment author ")
    print("comment original_rerecordCount",
          int.from_bytes(f.read(4), 'little') + 1)
    print("comment original_framecount ")
    f.read(2)
    print("comment original_emulator", str(f.read(64), "utf-8").strip('\0'))
    f.read(64)
    print("comment emulator_conversion nanogyth")

    while True:
        byte = f.read(1)
        if not byte:
            break
        byte = int.from_bytes(byte, 'little')
        list = ["RLUDBAST"[n] if byte & 1 << n else '.'\
            for n in [0,1,3,2,7,6,4,5]]
        print("|0|", ''.join(list), "|||", sep='')
Edit in the author and original framecount. Start the movie in fceux and open Tools/TAS Editor... Advance frames til the screen is black instead of grey. Make an avs to load your reference dump. dump.avs
avisource("dump.avi")
notes="
"
trim(0,0)
Load that in vdub and advance to the same point in the movie. Adjust your windows so you can see the frame number of each. Make note of the framenumbers then adjust the trim so that the frame numbers will match. Advance til something notable happens and see if they are still in sync (probably not). Add/delete frame from the fm2 til they do sync. Make note of which frame matched and what adjustments you made. Hopefully the only desyncs occur at lag frames. I use this lua script to jump to the next lag frame. _lag.lua
FCEU.speedmode("turbo");

repeat
    FCEU.frameadvance();
until FCEU.lagged();

FCEU.pause();
(is there a way to force an unpause in a lua script?) Look for a notable frame after the lag and check that fceux and the reference file are still in sync. If they're out of sync make note of it and maybe double check that they were really in sync the previous time. Adjust the trim in the .avs and reload to regain sync. Clone/delete an equal number of frames in TASEdit. Repeat until the end of movie, save the fm2 and fm3, close everything and check that the fm2 plays correctly. If you are doing a PAL resync things are much worse. Fceux didn't have any lag frames after the start for the one file I tried this with. And things desynced almost every time the screen went black (and there are a lot of scene changed in solstice).
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
jackiechankungfu-tas-jeffc.mkv jackiechankungfu-tas-jeffc_10bit444.mkv jackiechankungfu-tas-jeffc_512kb.mp4 jackiechankungfu-tas-jeffc_8sl.mkv Let me know if any of the other encodes with the 8 sprite limit are desired. p.s. Another nice thing about having this on fceux is that it is relatively painless to redump.
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
Famtasia -> Fceux conversion Needed 4 frames at the start and clones at 14318, 46674 to make up for lag frames. .fm2 http://www.youtube.com/watch?v=p4irPtgh7rE P.S. First desync took a long time to figure out, but once i figured out it was a lag frame the second one was really easy.
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
Another problem with playing this game in Famtasia is that it is a PAL game forced to run at 60fps. Here is a resync that runs on fceux as PAL. http://www.mediafire.com/download.php?td8ic5p9v2u78dg The desyncs only occur when the screen is black, so there is almost no impact on visible frames. But it also desyncs EVERY time the screen is black, so this project took longer than I expected. I should probably stick more of the original data in as metadata, like the original framecount. Dropped ~700 frames in the conversion. I have original author, original rerecord count, and original emulator. Anything else?
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
It is a little annoying that Famtasia looks better in this respect because it isn't advanced enough to mimic this idiosyncrasy of real consoles.
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
natt wrote:
fceux has an option to enable more than 8 sprites per scanline. guidelines say to leave it off though.
Seems a bit silly when other encodes are rendering at 1440p to remove aliasing. But I guess the rules are the rules. ;)
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
"fastest death" and "fastest end of input that results in death" have the same meaning for official timing. But for a viewer unfamiliar with the official definition some clarification would be helpful.
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
I thought this was some kind of desync, but apparently ending input and waiting for the first mob to run into him is the run. What are the voting guidelines (and why aren't they auto linked to the poll)? Needs to be in a "fastest end of input that results in death" category. It is a slow and boring death and seemingly devoid of technical merit if not properly qualified.
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
Output has to be shifted one line. It outputs text overlays. No option to disable more than 8 sprites per line. (but I don't think that comes up in this run) The avi output is YUY2 instead of RGB. Color palette is different, but maybe fceux is the one that is wrong. ...Actually, it is a PAL game, so it is likely that both are wrong and I should be loading a PAL palette, which is something I can do with fceux. Sure, maybe not needed in this case, but I wanted to practice this technique with a run I was familiar with. Famtasia YouTube FCEUX YouTube
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
This one was more challenging to hammer out a sync, but the process is pretty simple. Playing the famtasia dump in vdub next to the movie in TASEdit. When the movie desyncs, roll both to the previous scene change. Clone/delete frames from the movie and adjust the trim of the dump so they line back up. http://www.mediafire.com/?9yyhyhn3a4ad9a9
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
I made a syncing file for fceux. Three frames needed to be added, 2 at 700, and 1 at 49609. http://www.mediafire.com/?qjya7aedq81q3h4 Does fceux have an 8 sprite limit? It looks a lot better without it, but I thought it was required from an authenticity standpoint???
Experienced Forum User, Published Author, Player (65)
Joined: 4/21/2011
Posts: 232
creaothceann wrote:
It's a serious suggestion (at least the "use Aegisub" aspect - how else will non-static info be included, via image editor?)
I'd use avisynth, but I think this is the wrong way to go. You're basically copying all the information that is readily available on the run page and leaving off the one piece of information that isn't on the run page, the encoders name... :(
1 2 3 4 5 6
9 10