AvsPmod is better - it has a built-in list of Avisynth functions and a preview function.
VirtualDub (or at least VirtualDubMod) also has an Avisynth editor.
The code is correct; if the .AVI file has the audio already included then you don't need the AudioDub call. If it has audio but you don't want to read it you can use AVISource("myGameVideo.avi", audio=false) which might be slightly faster / use less memory.
Open the .AVS file with an encoder. This can be a command-line ones like
- x264.exe
- ffmpeg.exe
- MEncoder (part of MPlayer)
...or a GUI like
- VirtualDubMod
- AviDemux
- Handbrake
- MeGUI
In VirtualDub, you just select the video codec in "menu|video|compression" (needs x264vfw for h264 encoding). Select the codec and click "configure" for its options. Make sure "menu|video|fast recompress" is selected. ("direct stream copy" is useful if you just want to edit the audio.)
The audio can be dumped via "menu|file|export|raw audio" or if you're using VirtualDubMod, "menu|streams|save wav". If you encode the audio from VirtualDubMod, get the Lame ACM codec, select "full processing" and then the codec from the list.
Of course you can, but as long as you're editing it should be via lossless clips (either Lagarith/CamStudio/ZMBV-encoded files or directly via .AVS file).
Simple timeline edits can be done with Trim and Dissolve.
Oh, something I forgot to mention: If you encode for internet streaming flash sites that don't support 60fps, put a "SelectEven" at the end of your Avisynth script (and check with "Info" that it's really <= 30fps).
It's probably hardwired to dump uncompressed data. This should be fine (170KB/s for 44100Hz 16-bit stereo PCM), you can compress it after recording.
Yeah, Avisynth can open various sources.
The minimum required to dump all resolutions that the game might switch to. Most games will probably be fine with 640x480. If not sure check the recording if something looks off. If you're going the 720p route then record at 960x720 if possible (I don't know PSXjin). Links:
http://www.assemblergames.com/forums/showthread.php?39221-List-of-PS1-game-resolutionshttp://www.razyboard.com/system/morethread-native-resolution-pete_bernert-41709-4996857-0.htmlhttp://psxemulator.proboards.com/index.cgi?board=support&action=display&thread=1049
Going from the filesize, 100MB for 10 minutes == 10MB / 60s == 1MB / 6s == 1024KB / 6s == 8192kbit / 6s == 1365kbit/s; of course that's shared between video and audio. Assuming 192kbit/s for the audio this leaves ca. 1170kbit/s for the video.
How well these bits are chosen for encoding is determined by how much time you want to spend encoding. x264 has presets for that, not sure about ffdshow. It also depends on the resolution: as a rule of thumb, larger ones require more bits.
Select GZIP in the CamStudio codec's options, and enable Multithreading support in Lagarith's options (unless you don't have a multicore CPU). You will get large recordings; this is normal. For the final encode, try 500, 1000 and 1500kbit/s in single-pass encoding.
Multi-pass encoding will analyze the video and distribute more bits to scenes that need them, but of course it takes longer.
You sent the raw 60fps 256x224 capture, which has a couple of problems...
- YT throws away frames until it's <=30fps, so your upload could've finished in about half the time solely with doing that before uploading
- you may have wanted to have the TV aspect ratio (4:3) instead of the unstretched ratio (8:7)
- the audio is raw PCM data which could've been compressed with a lossy codec at least down to 1/10th of its size
- YT uses lower quality settings for <720p videos, including the audio iirc - not a major issue if you didn't mind it.
Yes.
CamStudio download + codec downloadLagarith
These are lossless, fast codecs intended for recording and editing. They produce large files but are bit-perfect. Useful for encoding from the emulator. Every frame is encoded completely with no relation to previous frames.
ZMBV codec (included with DOSBox)
Also lossless, but spends more time finding similarities to previous frames. Also for editing, useful if HDD space is scarce. Note: Accepts only 16-bit and 32-bit input videos, so it can't be used with SNES9x.
x264 (or x264vfw for VirtualDub)
Lossy and small encodes; lots of experimentation required to get a feel for your preferred compromise between quality, size and speed.
lame (or this site)
Audio encoder. Use it from the command line, VirtualDub (after installing the ACM version), Foobar2000 etc. There are also other codecs you could use, e.g. AAC or OGG Vorbis.
Avisynth only opens files and manipulates the uncompressed data; writing it is the responsibility of the host program and its codecs. MKVtoolnix needs the streams already saved into files.
You really need 720p for Youtube videos, even for low-res content, otherwise it will look worse than it could and might even load slower than HD videos.
Personally I use VirtualDubMod with x264vfw to encode h264 video (constant rate factor = 20), lame for MP3 audio, and mkvtoolnix to combine both.
See the articles re: publication work.
The emulator dumps a lightly-compressed (large) .avi file - between several hundred MB up to a few dozen GB. Then you edit it to remove unwanted parts (frames recorded before and/or after the movie) and encode it at a higher resolution with web-friendly codecs (e.g. h264 and ogg).
If the emulator itself dumps the movie then it won't drop any frames.
Yes, but some versions are more official than the others. ;)
When a game designer looks back at his game, s/he will (imo) consider the latest version the definite one.
But not the majority?
1.34, I'd say without knowing what was fixed. (EDIT: Seems like no game-changing issues were fixed.)
We can, just not as featured videos.
re: revisions
I'd say use the latest revision for publications because it's the "official" (most complete) game & shows more of it, and use previous revisions with their glitches for playarounds.
re: b/w vs. color
While the b/w version was released much earlier, sold more carts and is my favorite, I'd publish the color version for the same reason as above.
AVISource("C:\myavi.avi")
# your processing before ng_deblink
ng_deblink(...) # use it as described by nanogyth
# your processing after ng_deblink
LoadPlugin("mvtools2.dll")
LoadPlugin("mt_masktools-26.dll")
function ng_deblink(clip clp,
\ float "ratio",
\ int "level",
\ clip "blinkmask"
\){
#...