Difference between revisions of "DS"
From SDA Knowledge Base
Greenalink (Talk | contribs) m (→The screen seperation script:) |
|||
(14 intermediate revisions by 8 users not shown) | |||
Line 1: | Line 1: | ||
+ | --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. | 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 | + | ==First and foremost== |
+ | <br> | ||
+ | <font size="+1">'''You must NOT use a DS Phat (Original Model DS*)!'''</font> | ||
− | + | 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 [[Game Boy Capture|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 click[http://home.comcast.net/~olimar/DSCapture/ here] and [http://forum.speeddemosarchive.com/post/3ds_capture_device_214.html 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 | ||
+ | |||
+ | <pre> | ||
+ | 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</pre> | ||
+ | |||
+ | The outcome will look like this: [[File: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. | ||
+ | |||
+ | <pre> | ||
+ | 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)</pre> | ||
+ | |||
+ | The outcome will look like this: [[File:With DS gap.jpg]] | ||
+ | Now we get an idea exactly where the orange bubble is. | ||
+ | |||
+ | <font color="yellow"> .AddBorders(0,</font><font color="red">32</font><font color="yellow">,0,0, 0)</font> 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 [http://audacity.sourceforge.net/ 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 | + | 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. |
Latest revision as of 10:59, 15 January 2012
--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.
Contents
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: 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: 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.