I digitized a demo!

Yep, title says it, I finally took up the courage to digitize a demo. I’ve been wanting to digitize Future Crew’s Second Reality for a long time but last time I tried, I had to find out that it wouldn’t run on any of my PCs with Composite/S-Video output and the shots I grabbed from an emulated version had all kinds of issues (this demo actually uses a lot of video modes, thus my shots end up in many different resolutions, and the emulation layer causes performance issues and audio synchronization problems).

So no Second Reality for now, instead I decided to digitize ‘1995’ by kewlers and mfx, and spent nearly half a day doing so. Read on for the story and the download link…

OK, the first thing some of you are probably going to ask is: Why go through all the trouble when there is already a downloadable video plus a hosted one on Youtube? Well the reason is simple: I didn’t like their quality and thinking I could do better, I bit the bullet and embarked on a journey of research, trial and error.
It started out with setting up the PC to render the demo and the recording system. This posed a problem already because my most powerful PC is usually the one I use to record, but in this case, it had to play the demo, so the recording stuff had to be switched over to my laptop. Hadn’t the latter decided to mysteriously break its wireless drive, I’d have been up much quicker but after half an hour of tinkering I actually got the WLAN up again and was set to record. Another 15 minutes were spent setting up the playback system to get the best output (I have to use its TV-Out, so I squeezed as much overscan out of the Radeon card as it would bear), up the bitrate on my hardware MPEG-2 encoder and then I was off to record the video.

I pretty much stuck with the first recording, it only had two slight problems: First with the MPEG-2 encoder’s delay, I couldn’t exactly determine when to start the recording (which is basically just done by cat’ing data from a video device node to a file under Linux) and when to stop. As a result of that, I both had my Windows desktop and some video-mode switching flickering at the beginning and the end of the video which had to be cut away. Let’s not forget second: I decided that if I was going to lose quality by using an analog TV-Out link to my graphics card, I wasn’t going to do that to the fantastic audio track of the demo, so I somehow had to get the digital audio data from the demo linked together with the video.
For the first problem, I started browsing around for software that could actually cut MPEG-2 video. MEncoder, FFMPEG and mpgcut probably all can do it but I somehow failed to find out how to coerce them into doing what I wanted but luckily for me I found gopchop which worked out fine, though I did spent a considerable amount of time finding the proper cut point.

The second issue proved to be much more challenging. I had the soundtrack of the demo in MP3 format, and the video stuff in my MPEG-2 file: How to get them together? I opted for muxing them with Virtualdub, simply because I’ve already done that to other videos and know how to do it. So first, I had to convert the MPEG-2 video stream to the final encoded format (MPEG-4 in this case). Sounds easy? Well normally it is, unless you’re a perfectionist and try to cut off the borders induced by the TV-Out transfer AND getting the video to a standard resolution. So there goes another hour, tinkering with cropping settings, scaling configurations and deinterlacing filters, wouldn’t want people to have to endure interlaced video on their PCs, especially if it involves a lot of moving and flickering stuff like this one.

But I digress, I did eventually manage to get a working avi file with acceptable looking MPEG-4 video, only to find that I couldn’t mix it with the MP3 from the demo without seriously desynchronizing audio and video (the video has a few extra milliseconds at the start causing the sound to be too early). So now I was down to editing the original soundtrack with Audacity to add some extra silence at the beginning until I got both audio and video in sync, the process being: add silence, export to MP3, add WAV header to MP3 so that VirtualDub accepts it, copy video stream and hacked MP3 together into AVI, watch result to check synchronization at start, middle and end of the video (quite many sensitive scenes to check there). To be honest, I ended up rerendering the transcoded AVI intermediate in Xvid as the LAVC output from MEncoder, while working fine in MPlayer, turned out to be problematic when viewed in Windows Media Player which I wanted to be able to play this video too (hence MPEG-4 and MP3 and not h.264 / AAC). Why the compatibility fuss? Well, my only reason to render a demo to video is to make it more accessible, so h.264 or a badly behaving LAVC output would be counterproductive.

Anyway, I guess that about rounds up the process. If I were to do it again, there are several things I’d like to try, namely using a non-linear video editing tool instead of a collection of free utilities to convert, assemble and sync the entire production. Overall I’m pretty happy with the result of my little experiment. Unfortunately it seems that my graphics card displays the polys in the initial scene a little strangely (they appear as white mostly solid surfaces instead of 3D items). I’d also like to have some more contrast in the video as the credits scene doesn’t quite have the ‘kick’ that the original does. I guess next time I’ll have to fiddle with the contrast settings of the MPEG-2 encoder a little more but for now it’ll have to do. I simply don’t have the energy to redo all the work from scratch again and therefore I’m just going to hope that the demoscene gods will forgive me and approve of the final result anyway. I doubt my version will work better on Youtube, but at least the full video should be OK. So, that leaves me with the ‘promotional’ part of this text and of course the juicy bit, the link to the torrent:

Demo rendering PC:
Intel Pentium 4 2.533
512MB RDRAM (PC1066)
Gigabyte GA8-IHXP
HIS Radeon 9700 Pro

Recording hardware:
Dell Latitude D610
Hauppauge WinTV-PVR-USB2

Software used:
Microsoft Windows 98
Microsoft Windows XP
Debian GNU/Linux (etch/testing)
gopchop
MeWiG
MPlayer / MEncoder
Audacity
WaveMP3
VirtualDub

Final video specifications:
Video: MPEG-4 (Xvid / 3500kbps)
Audio: MP3 (192kbps)
Resolution/FPS: 640×400 / 25
Filesize: 128MB
Original demo: http://www.pouet.net/prod.php?which=25783
Download link: 1995_by_kewlers_and_mfx.avi.torrent

Youtube link:
[youtube]IyHt0BbI1a0[/youtube]

(Hosting offers for direct download will gladly be accepted, please use the contact link at the top.)

Update: I rendered a better version of this demo.

Join the Conversation

2 Comments

  1. I like this demo very much. Especially how the old effects are recreated with some creativness. It’s just charming. :D

    Need seeding for the torrent…

  2. There are two seeds online, you should be able to download it right away (I recommend watching the actual demo though, my video is of pretty low quality compared to it).

Leave a comment

Your email address will not be published. Required fields are marked *

Bear