Posts for Ilari


Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
Santiago wrote:
Ok I now use Lagarith and avisynth recognized it as RGB. However, x264 10-bit still outputs YV12 video, wtf? I did add that --outputt 444 or whatever it is called in case you ask.
Does the Avisynth script contain those ConvertToYV24/ConvertToYV12 lines? Don't do that when encoding 10bit444. And the option is '--output-csp i444'.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
feos wrote:
How about adding the canvas layer coloring option? It's the layer that's normally black and comes behind all other layers. Changing its color is necessary for ripping sprites and maps.
Unless there is some "public" variable to muck with in bsnes core, I don't think that would be easy to implement...
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
creaothceann wrote:
You should also mention what your criterium is. CamStudio is very fast and achieves a nice compression for the little time it spends on it.
natt wrote:
ZMBV - no 24 bit input option, only 32 or 16, so mostly only for psxjin.
What would be interesting is a "fake" codec that converts everything to 32-bit (or 16-bit, if the end result is the same) and passes it over to ZMBV.
I have played with the following lossless codecs: * CSCD (Camstudio, gzip mode) * TSCC (Camtasia) * ZMBV (DOSBox) TSCC wins over CSCD in both compression and speed (unfortunately, it has other issues). ZMBV (DOSBox reference implementation)... Settings that get filesizes that are comparable to TSCC/CSCD (I got it between TSCC and CSCD in compression) are much slower than what either CSCD or TSCC can do (less than half of the speed). But then, it could have been the test material I was using... But it looked like the kind of material where ZMBV would really rule (motion estimation!)... For these reasons, I decided not to include ZMBV codec in lsnes (but I still have the fully functional codec code for ZMBV).
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
feos wrote:
Why everything is doubled? I have only one "NES TAS 2011" award XD http://tasvideos.org/Awards/2011.html Or is it just me?
I screwed up the DB work a bit. I have since corrected it, but the incorrect data is cached and I can't flush it.
Post subject: Re: How to make 10-bit encodes?
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
Santiago wrote:
Is 10-bit 1024 shades for RGB?
No, video compression usually uses YCbCr instead of RGB. YCbCr represents colors as follows Convert the image to greyscale. This is the Y channel (called luma). Then compute difference image between the original and greyscale version. The blue channel of this difference image is the Cb channel and the red channel is the Cr channel (both are collectively known as chroma). Now, 10-bit YCbCr depending on the variant has: * 1024 shades for luma, 1024 for each chroma channel (known as full or PC range). * 880 shades for luma, 896 shades for each chroma channel (known as TV range). However, this isn't the reason why 10bit encodes look so much better. Yes, 8-bit YCbCr has some color loss, but it is insignificant (however, 10-bit improves compression). The true reason is follows: Normally every pixel has luma, but only each 2x2 pixel block has chroma (this is chroma subsampling, done since human eye has better resolution for luma than chroma and it improves compression). This of course causes colors to bleed. And on low resolutions, this is very noticeable. However, 10bit444 encodes don't subsample chroma, so every pixel has its own chroma and thus the color is independent from all other pixels. One way to see this: Grab some DOS encode, as VGA pixeldoubles/doublescans, pretty much eliminating chroma subsampling artifacts (but the encodes still are 8-bit).
Santiago wrote:
Also, how do I make a 10-bit encode? I have captured from FCEU in FFV1 video codec but opening it with avisynth gives me low quality YV12 output.
IIRC, there was a bug in AVIsynth that caused FFV1 to be decoded as YV12 unless you overrode this (some AVIsource option I don't remember offhand).
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
feos wrote:
When I try to post a script where something appears to be between <> it gets screwed up. Can this be somehow cancelled when a code is posted?
Disabling HTML ("Disable HTML in this post") should help.
keys.xmouse <= ( x + 62 ) and keys.ymouse >= ( y-10 )
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
Patashu wrote:
the ending of Perilous Pit where you decide not to die
The "die and complete level" trick can only be used on levels that don't have oracle, and PP has one. In general, using glitched level exits on levels with oracle in will make the game uncompleteable. Also, dying and falling on the oracle won't work. There is also another known glitched level exit: Enter invalid door (if door is on air, it is most likely invalid) and keen teleports to (0,0) and the level will end.
Post subject: Re: Controls?
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
rasengan0 wrote:
Hi i'm new to TASing and i was wondering if i just use my own hands to actually move and attack and jump and stuff or if i can just edit in a movement. Do i actually use my keyboard as a controller? or can i remotely input the inputs i want to input into the game?
The ways to generate input (at least): * Keyboard (the usual) * Gamepad (might be handier) * Lua scripts generating input (from autofire through to full-blown botting) * Direct editing of movie files (very easy to mess up)
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
Here's how I map functions to Xbox360 controller when TASing SNES: * Joystick hat up / Right thumbstick up: Dpad up. * Joystick hat right / Right thumbstick right: Dpad right. * Joystick hat down / Right thumbstick down: Dpad down. * Joystick hat left / Right thumbstick left: Dpad left. * A: A * B: B * X: X * Y: Y * LB: L * RB: R * Back: Select * Start: Start * Left trigger: Loadstate selected slot * Right trigger: Frame advance * Xbox: Pause/Unpause * Left thumbstick left: Select previous savestate * Left thumbstick right: Select next savestate * Left thumbstick up/down: Unused * Left thumbstick press: Savestate selected slot. * Right thumbstick press: Readonly/Readwrite toggle. The reason to map dpad twice is to do left+right. Left+Right on joystick hat (same for thumbsticks) can't even be signaled[1]. [1] Left is reported negative, center is reported 0, right is reported positive. So left+right would correspond to number that is at the same time <0>0. Since no such thing exists, left+right is impossiblity.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
HappyLee wrote:
The Nero AAC Encoder is actually delaying the audio. We're removing the delay.
Well, why would the encoder do that? I still don't get it...
Because AAC encoders insert some amount of junk samples (the number depends on encoder and settings used) in the beginning of the audio. Those samples don't just replace the first samples, those really are inserted. Thus, the audio will be late. The idea of compensation is to have the audio early, so the audio being early due to compensation and audio being late due to the delay cancel out. Some delay values: FAAC (full quality; don't use!): 1024 samples NeroAACEnc -q 0.25: 4672 samples NeroAACEnc -q 0.50: 2624 samples Itunes AAC encoder (HE-AAC): 5186 samples. Itunes AAC encoder (LC-AAC): Unknown. These delay values are measured by measuring phase shift of some periodic signals introduced by encoding and then using Chinese Remainder Theorem to compute the actual delay. Then assume the delay is small. When measuring the delay, I used square wave with periods of 127, 131, 137 samples (these all are prime). This allows computing delays up to about 20 seconds, which should be by far sufficient. Oh, and additional note about AR (aspect ratio): There are two ways to correct for the aspect ratio: - AR flagging: The encoded stream contains the information about what is the proper aspect ratio (either aspect ratio of each pixel (called SAR or PAR, used by MP4) or aspect ratio of the entiere video (called DAR, used by MKV)). The video player then resizes the video to proper resolution. Primary and 10bit444 encodes on this site use this method. Pros: Smaller videos because unscaled video compresses better Pros: User can tell the player to ignore scaling, even if the result is distorted. Cons: Requires video player support. - AR precorrection: The AR is corrected before encoding by scaling and the scaled stream is encoded. 512 and YT HD encodes on this site use this method. Pros: No player support needed. Cons: Larger videos (scaling breaks the nice patterns). Cons: No ignoring the scaling. Pretty extreme example of larger videos is Commander Keen 4. Prescaled video is almost twice the size of unscaled one (at the same quality). Pixel graphics compresses nicely unless one breaks that by scaling it. As said earlier, the SAR for NTSC NES is 7:6, since: (7/6)*(256/224)=4/3 Where 4/3 comes from the aspect ratio of old TV sets (4 units of width for 3 units of height). 256 is the width of NES output in pixels, and 224 is the height (of the part that is actually shown).
Post subject: Re: Error 500
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
hegyak wrote:
I am not sure if it's just me, but I keep getting these pages that say, "Error 500 Internal Server Error."
It is not just you... And as a rule, the first digit of HTTP status code tells the type of status: 1xx: Informational (processing continues). 2xx: OK (success). 3xx: Warning (something went wrong, but not seriously). 4xx: Client error (client sent something wrong). 5xx: Server error (server screwed up). So 500 code is sent when something goes wrong in the server.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
CoolKirby wrote:
Wait...what? This movie was previously published January 28th. Why did TASVideoAgent replace the old "This movie has been published" with a new one over a week later?
Ever see those "debug mode" or "this page uses unsupported compression" errors on the forums? Well, TVA is not immune to those. And if that happens, TVA will try again after the submission is next edited, potentially leading to publication / rejection message a long time after the fact.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
ThatGugaWhoPlay wrote:
One question: (For use, the encoders) How we are gonna to encode it if the game is divided by two ROMs?
PSXjin supports storing information about CD-ROM swapping into the movie file, so both CDs can be done in the same run and then encoded as one encode. AFAIK, when playing back and reaching the point where CDs are swapped, PSXjin will ask for the new ISO and then continue from there.
Post subject: Re: Use of Widescreen in HD encodes
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
ThatGugaWhoPlay wrote:
Why we never use it?
If the game is actually widescreen, then primary/10bit444 wil be flagged as widescreen and 512 and HD (or whatever YT encode there is) will be widescreen. See for instance Mega Man 10 "Mega Man".
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
HappyLee wrote:
By the way, could Brandon tell me what's wrong with my primary encode that hasn't made it to the publication? It helps me improve my encoding next time.
Never actually seen the actual encode, but IIRC from IRC discussion, the main reasons were:
  • The logo (animated and sound[1]).
  • Lack of AR correction.
  • Lack of dedup (not that it would matter much with SMB).
  • Apparently flagging TV-range output as full range.
[1] Animated logos are nothing new. But the animation should not be distracting. I don't think I have seen logos with sounds before.
Post subject: Re: First installation
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
dadixon wrote:
I downloaded 2.1.5 and when i run it, there are no games to select in any folder.
To play games, you a need dump of cartridge ROM (called "ROM") of that game. I presume 2.1.5 means FCEUX 2.1.5. The usual file extension of NES ROMs is .nes. Don't ask where to get ROMs.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
Keyboard? That's pretty classical computer input device (yes, I know that some consoles can use that as well, but it is much rarer).
Post subject: Re: Reset during save
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
crollo wrote:
If I remember correctly Kejardon did a Super Metroid run where he could alter the information stored in the save game data with some glitches. Couldn't - theoretically - the same result be achieved if you reset the game at the exact right frame thus corrupting the save game data in a wanted manner? Maybe for another game? Or maybe this always results in a non-working save game data?
It depends on the game if resetting mid-save gives working save or not. Also, due to the fact that there is no emulator that can reset mid-frame, the amount of manipulation is rather limited. And there are published runs using SRAM corruption via reset during save. See SNES Chrono Trigger and GBC Pokemon Yellow Version for instance. There's also demo run (unsubmittable due not being multi-segment) of SNES Chrono Trigger using mid-frame resets. Whereas the published run is about 21 minutes, that run is under 5 minutes (yes, including the animation at start).
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
All winners are now announced (in the thread-starting post) Currently waiting for award images to be uploaded and will then add the awards to the database. EDIT: Also award categories are hardcoded into site code (instead of being in the database), so also waiting for changes to be deployed.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
I cyclically save save slots 1, 2, 3, ..., n, 1, 2, 3, ... n, etc... With no special significance. Exception: When redoing a run, I reserve slot 1 for the old run and use the other slots cyclically. Then when reaching end/start of level or otherwise important waypoint, I save named savestate and commit it to version control.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
ThatGugaWhoPlay wrote:
If it's not strictly required, then I can choose between Point.Resize or Bilinear.Resize, right?
Out of point and bilinear resizes, point resize wins hands down. Bilinear just makes the video a blurry mess. What could win over point resize is more advanced nonlinear resizers like HQx. This heavily depends on the game
  • For some games (anything using 3D), HQx looks terrible.
  • For most games, it looks like nothing special.
  • For some games, it looks nice.
For other advanced nonlinear resizers, the same as above applies, but some games may be in different categories. But even then, point scaling is usually preferred.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
ElectroSpecter wrote:
I don't really understand how emulators work and what it means to be deterministic or not
Determinism in this context means that given the same initial settings and input, the emulation proceeds the same way. This is an absolute requirement for TASing.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
la mammal wrote:
I can't get the Wolverine or Bram Stoker's Dracula videos to play. I am using the most up-to-date FFDShow (revision 4257) and I have tried using it with both the latest version of MPC and MPC-HC. EDIT: I can't get the Ghostbusters video encode to work either.
I looked and found that all those three videos were encoded by Brandon. Do other recent MP4s play?
Post subject: Re: Appeal to Re-examine Submission
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
ZechStein wrote:
I am appealing that this submission be re-examined. I have seen much more "boring" submissions be accepted. And to fans of SCII this TAS is fantastic.
Unfortunately, this runs into trouble with site rules. Basically, some judge would have to get the run to sync (and the emulator isn't very sync-stable between computers). Then there is getting publishable encode (I think converting from existing one might be possiblity).
Post subject: Re: Option of Quality in YouTube
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1142)
Joined: 5/1/2010
Posts: 1217
ThatGugaWhoPlay wrote:
The encodes in HD MUST BE in Original quality?
For 2D games, most of the time one must use original (no console has resolution that would give only fullHD). For 3D, 1440x1080 / 1920x1080 is sufficient.
ThatGugaWhoPlay wrote:
Because my computer can't convert videos more than 1280x720 or it will give an error.
With any sort of decent amount of memory, handing compression at likes of 3584x2688 should be no problem. Of course, limits that low could be from programs you are using. Be careful with using video editors, often you can't avoid quality loss if using those.