DS

From SDA Knowledge Base

Jump to: navigation, search

--Adapted from a post by Nate

With recent revelations about video quality achievable with the new DS Lite, I thought it would be a good idea to lay down guidelines for how to record video suitable for release on Speed Demos Archive. Note that the decision about whether to post video based on its quality will always be made on a case-by-case basis: following these guidelines is no guarantee that your video will be posted. However, failure to follow these guidelines will almost certainly result in rejection.

First and foremost


You must NOT use a DS Phat (Original Model DS*)!

I realize that this will be expensive for virtually everyone, but the DS Lite slaughters the old DS in terms of potential picture quality. There is no substitute for a DS Lite when recording your run. Also, remember that you can only use a camera to record DS games, not Game Boy games; you can already play those with a Game Boy Player and record like a normal GameCube game, so there is no need to use a camera. For more information on that, see here.

The DSi (Original and XL models) and 3DS are also acceptable for recording runs. Know that with the 3DS that when starting the NDS game, you need to hold Start and Select when booting it, which runs the game in native DS mode, instead of stretching the game to the full 3DS screens (which will ruin the quality).


  • This only applies if you were recording a run by using both a DS phat and a camera. If you look further down the page it's possible to mod the DS phat to enable the system to record footage directly!

DS Phat Capture device

As of Fall 2011 there is a modification that enables players to record gameplay from a real DS, however this mod only works on a DS phat and it uses a mini USB connection (As if you were using a USB Capture card). For more details clickhere and here This is recommended if you are speed running a DS game that heavily uses the Touch Screen as the main input. You will need a more up to date PC, a USB Slot (2.0 works ok but 3.0 is preferred if possible according to Greenalink), some lossless codecs and a pretty good amount of spare memory in your hard drive to record them as it uses up 0.3-2GB per minute depending on the lossless codec the runner is using.

DS Capture device scripts

So when you are encoding the runs by using Anri-chan it's possible to tweak the script to make a video a bit more watchable.


The screen seperation script:

Uses: Games that involve using both screens to function as 1 tall screen, there usually is a gap inbetween the 2 screens making it look inaccurate if it doesn't have a black bar in between.

Notable Games:

Contra IV

Yoshi's Island DS

Sonic Rush games

Yoshi Touch and Go

The first part is your usual script when processing through anri-chan

import("C:\Program Files\anrichan3.3\plugins\plugins.avs") 
import("Yoshitouchandgo_source.avs")
converttoyuy2
sourcewidth=last.width
sourceheight=last.height
DAR=2./3 * float(last.width)/last.height * float(sourceheight)/sourcewidth
prenmfrate=last.framerate
Try{import("Yoshitouchandgo_source_nmf.avs")
nmf=true}catch(err_msg){nmf=false}
last.height > 700 ? (last.width > 480 * DAR ? lanczos4resize(sda_even(round(480 * DAR)),480) : lanczos4resize(last.width,480)) : (last.width > last.height * DAR ? lanczos4resize(sda_even(round(last.height * DAR)),last.height) : NOP)
last.height % 2 == 1 ? AddBorders(0,0,0,1) : NOP
last.width % 4 <> 0 ? AddBorders(floor((4 - last.width % 4) / 2.), 0, ceil((4 - last.width % 4) / 2.), 0) : NOP
changefps(prenmfrate/1)
statid=nate_statid(last,"\n\n\n","","")
statid=statid.AddBorders(int((statid.width * float(2*statid.height)/float(3*statid.width) - statid.width) / 2.), 0, int((statid.width * float(2*statid.height)/float(3*statid.width) - statid.width) / 2.), 0).Lanczos4Resize(statid.width,statid.height)
changefps(last.framerate)
assumeframebased

The outcome will look like this: Without DS gap.jpg Notice the orange bubble does not look right at all.

Luckily there is a way you can copy this script below and paste it to the main avs file, but change the source avs file (Yoshitouchandgo_source.avs) to the one you are using.

a = import("Yoshitouchandgo_source.avs").crop(0,0,-0,-192) 
b = import("Yoshitouchandgo_source.avs").crop(0,192,-0,-0).AddBorders(0,32,0,0, 0) 
return StackVertical(a,b)

The outcome will look like this: With DS gap.jpg Now we get an idea exactly where the orange bubble is.

.AddBorders(0,32,0,0, 0) The red value can either be 5, 8 or 32 depending on the game. Yoshi Touch and Go looks very accurate when setting that figure to 32.

See the sample in motion File:Black bar demostration.mp4

Other considerations

1) Use a good camera. We're not talking your ten year old digital camera that takes five frames per second and records to a codec available in Quicktime 1.0 here. Recording should always be done with the camera's highest quality settings (fps, frame size, etc). If possible, record using "NTSC" (not "PAL"). As Nate cannot capture video 8, hi 8 or similar formats, you will have to use DV and copy the file to your computer (PM Nate for help with that) or (if all else fails) VHS. For these reasons, digital cameras (like the kind you normally would use to take pictures of people) are preferred, the more recent and expensive the better.

2) Turn the lights off. You don't want any other lights competing with the DS's screen light (leave that on the brightest setting!) or corrupting its color.

3) Make sure the screen(s) are in focus. Unfocused (blurry) video will not be accepted. If the game you are running has gameplay in both screens (such as Contra 4), you will need to film both screens. If only one screen is used for gameplay (such as New Super Mario Bros.), only record the one that is necessary.

4) Don't move either the camera or the DS. This will interfere with cropping. Video with excessive movement will not be accepted.

5) Record the audio directly. Plug an 1/8" miniplug cable into your DS Lite's headphone port and plug the other end into your camera (if possible) or else your computer and record the audio at an acceptable level that way. Videos with audio recorded "over the air" will not be accepted. Sound should be recorded in 48000 hz 16-bit stereo waveform (.wav) using a program such as Audacity

6) Do not attempt to process the video yourself. Yank it off the camera and send it in, on CD-R or DVD-R if necessary. Videos altered in any way from how the camera made them will not be accepted. This includes attempting to integrate audio recorded separately: audio sync will be handled by SDA.


Conclusion

It's probably a good idea to take some test footage so that we can approve your video quality before you record an entire run, only to have it rejected. Please refer to the rules, FAQ and submission guidelines available at SDA for additional information.

I apologize for the Twin Galaxies-esque length and strictness of these regulations, but no one wants to watch crappy video. Remember that you have earned the right to be showcased to thousands of eager viewers, and your product should be superior in all aspects of production.

Personal tools