This guide aims to teach how to stream ToME4 over ustream. This a Windows only guide, so if you're using Mac or Linux, feel free to openly weep at my inability to support multiple platforms.
What you'll need
Yes, everything here is absolutely necessary, but luckily, I'm offering freeware options for everything.
A copy of ToME:
Technically, you should be able to get every version to work in some fashion, but this guide is written with ToME 4 in mind.
VH Toolkit (v1.0.46 is located here: http://www.mediafire.com/?52b2d1g97uxeal3)
- VHScrCap (it's part of VH Toolkit)
- VH Multi Cam (it's part VH Toolkit)
A soundcard that support Stereo Mix/Wave Out. Google a guide on how to tell if your computer has it, since not every computer does.
- OR, if Stereo Mix won't work, Virtual Audio Cable. It's 30 dollars, and complicated enough to warrant a guide of it's own, but it's amazingly good and has tons of options. You can find it here: http://software.muzychenko.net/eng/vac.htm
For commentary:
A working computer mic. You can buy plenty of mics for cheap, but a really good one can be very expensive. Just remember to use one that suits your needs, and not waste 100 dollars for the occasional ToME 4 streaming.
For encoding/broadcasting:
Adobe Flash Media Encoder (located here: http://www.adobe.com/products/flashmediaserver/flashmediaencoder/)
A free Ustream account (at Ustream.tv)
- You could presumably use other video streaming services, but ustream is decent, it works, and their help documentation wasn't half a century old. If someone really needs a different service though, I'll try to modify the guide.
Workflow
I won't go into too much detail yet, but here's basically how your programs will work together.
1. We start with ToME 4, set to 800x600 windowed resolution.
2. VHScrCap. This will capture the footage of ToME at 800x600.
3. VH Multi Cam. We set this to 640x480 and add VHScrCap as a source, scaling down the footage.
4. Adobe Flash Media Encoder. We select VH Multi Cam for video, and then Stereo Mix (or Virtual Audio Cable) for sound.
5. Ustream. It connect to Adobe Flash Media Encoder, and lets you broadcast the game.
All of these steps are very important. We want ToME to run as quickly as possible, so I selected 800x600, the minimum resolution. But, Adobe Flash Media Encoder won't accept 800x600, so you have to scale down to 640x480 using VH Multi Cam. Adobe Flash Media Encoder allows Ustream to use higher resolutions (i.e. 640x480 vs. 320x240), and without Ustream you can't broadcast.
So now, to explain how you actually set everything up.
Installing the programs
I can't stress this enough, install VH Toolkit, Adobe Flash Media Encoder, and anything else you'll be using (like Virtual Audio Cable), restart whenever one of the installs asks you too (don't just wait and keep installing), THEN follow the guide.
You could register a Ustream account before the guide too, but it's not necessary.
Setting up ToME 4
This part is basic. Open ToME, select Options, then select Video Options. Here's what everything does.
Resolution: Changes the scale. Set it to 800x600 (NOT 800x600 fullscreen)
Requested FPS: Leave this however it's currently set. If things are laggy when you're streaming, you might want to lower the value.
Particle Effects Density: Leave this set the same too. This is the first thing you should change if effects cause too much lag.
Antialiased texts: Enabled. Disabling might give you a slight boost, but not much.
Framebuffers: Enabled. Don't disable this unless necessary.
OpenGL Shaders: Enabled. Don't disable this either.
Mouse Cursor: Disabled. It doesn't make any difference, but I prefer the regular mouse. :)
That's all there is too it, so on to the next step!
Setting up VHScrCap
Go to Start Menu > Programs > Hmelyoff Labs > VHScrCap > Config. Then select "Create new one".
Capture
Under the capture tab, you have a few options. Make sure "Track window" and "Track screen" are unchecked. Make sure "Show frame" is checked.
Now, open ToME. Move the ToME window somewhere that you can easily move it to again and again. I move it against the very far left of my screen, against the very top, so that I can always tell exactly where to put it.
Click "Select" in VHScrCap, click and hold down at ToME's top left corner, then drag to the bottom right corner so that you cover the whole game (not the window's frame, just the game).
Your Left, Top, Width, and Height values should of changed.
Left how many pixels from the left of the screen your selection is.
Top is how many pixels from the top of the screen your selection is.
Width is how far your selection stretches to the right.
Height is how far your selection stretches to the bottom.
Your width should be 800, and your height 600.
Since I'm using Windows XP, because of my positioning, my values were Left: 4, Top: 30, but they can be different for everyone. We will check during the VH Multi Cam selection if the Left and Top values are correct, so for know, you can Close ToME and move on to the next tab in VHScrCap.
Settings
Border color: Leave it the same color.
Magnitude: Drag it all the way to the right (for maximum visibility). Feel free to change this later, when everything is working properly.
Frame rate: Whatever the frame rate in ToME is set to.
Align video: Unchecked.
Show mouse: Checked.
Show clicks: Unchecked. If it's checked, whenever you click the mouse a little effect will be shown, but it's unnecessary for this game.
Capture layered windows: Checked.
Optimize screen capture: Checked.
Optimize screen deliver: Checked.
Resize to output size: Unchecked.
Track mouse: Unchecked.
Specify output size: Unchecked.
Register in ROT: Unchecked.
Now you should exit out of VHScrCap, and continue to the next step.
VH Multi Cam
This is located at Start Menu > Programs > Hmelyoff Labs > VH Multi Cam Studio. Once it's open, go to Tools then check "Enable output to VHMultiCam video capture device" and "Default source (VH MultiCam connects to this)".
Leave "Disable auto start (STOP OPEN annoying mixer)" and "Interact with Skype" unchecked.
Now go to View > Frame Rate > Custom and enter in whatever ToME is set to. Then go to View and check "Highlight sources". Next, go to View > Resolution > Custom and enter in 640 x 480.
Select something from P1 through P12 in the bottom corner (any of them will work), and changes "Presets: P(number)" to "Presets: ToME". Then, select File > Add Camera > VHScrCap. You'll need to click and drag the corners/sides so that it fills up VH Multi Cam.
Now to make sure everything is working correctly. After you opened VHScrCap, you should have seen some colored borders. This is to let you know the area of the screen that VHScrCap is capturing.
Open up ToME again, and see if you can easily position it so that none of ToME's window borders are inside VHScrCap's borders. If you can't, you'll want to open the VHScrCap Config, "Select" the driver being used by VHMultiCam, adjust the Left/Top values then exit VHScrCap Config to make sure things change correctly.
After everything is positioned just right, you can close everything, and move on to the next step.
Ustream
Yes, you need to set this up before modifying your Adobe Flash Media Encoder settings. Don't worry, it will make sense later.
Now, go to Ustream.tv and click Sign Up. It's been a while since I signed up, so you're on your own unless a new user helps out with the guide.
Anyway, you'll eventually add a Show at some point. I suggest making the Show Name the same as your user name to simplify things.
Show Info
Go to the Manage Your Show > Show Info page on the dashboard, and change your category to something relevant, add some tags, and add a general description under "About". You can add a Channel Picture (logo) but it's not necessary. For me, the settings are:
Show Name: SenorPwnage
Category: Other Gaming
Show Tags: 4, TOME, angband, let's, like, maj'eyal, of, play, rogue, roguelike, tales, variant
About: Let us play TOME4, the best rogue-like in the entire universe!
Do something similar and move on.
Design
Yeah, this part isn't important. Change it to whatever you want, and then move on.
Your Videos
While broadcasting with Ustream, you can choose to record video/clips of your stream. These will show up here.
Your Events
Completely pointless. Skip it.
Settings
Make your show private: Unchecked. This lets you add a password, but you shouldn't need one.
Display Social Stream: Unchecked. You can try it if you want, but I found it to be worthless.
Display Chat: Checked. Adds a box for the viewers of your channel (and yourself) to chat. You can use this for all sorts of fun things, like having viewers decide how you should level up, or if you should accept/refuse a quest!
Require my approval for comments on my videos, highlights: Unchecked. It doesn't hurt anything.
Display number of viewers: Checked. It lets everyone know how many people are viewing.
Off air settings: If you've got some good clips recorded, "Play your videos". Otherwise, "Show slideshow" is probably the better option.
Now for the "Advanced settings" at the bottom of this page.
Co-host preferences: Ask before allowing co-hosting. Among other things, co-hosting let's two people manage the same broadcast, which sounds like good fun if you've got someone willing to help.
Now, Download the Adobe Flash Media Encoder XML file. See? I told you there was a reason to set this up before Adobe Flash Media Encoder. Now to set up... well, you know.
Adobe Flash Media Encoder
Make sure that ToME, VHMultiCam, and VHScrCap are CLOSED for now.
Go to Start Menu > Programs > Adobe > Adobe Flash Media Live Encoder. You'll notice some "Preview:" selections in the top right corner, under the display. The first one shows what you're recording, the second one shows the compressed output, the third one shows audio volume. Once you're sure everything is running properly, uncheck the first two boxes and leave the audio one checked.
Video
Device: VHMultiCam. Once you've selected VHMultiCam, the VHMultiCam program should open, along with those VHScrCap borders. If the borders didn't open, make sure you have the ToME preset selected.
Format: H.264. It works good enough for me.
Frame Rate: Whatever ToME is set to.
Input Size: 640x480
Maintain Aspect Ratio: Checked
Bit Rate: Check off one box, and one box only. 100 Kbps or so works fine for tiles, and you could easily go even lower with ASCII.
Output Size: 640 x 480
Crop: Unchecked.
Deinterlace: Unchecked.
Timecode: Unchecked.
Audio
Device: Stereo Mix, Wave Out, or your Virtual Audio Cable output. You can disable audio if it makes things too laggy, or doesn't work well with your stream.
Format: Mp3. It's, unsurprisingly, decent.
Channels: Shouldn't make much of a difference for streaming ToME 4. Pick stereo for quality, and mono to save some bandwidth.
Sample Rate: I say 44100. You can lower it if you need to decrease your bandwidth usage.
Bit Rate: 128 Kbps should be more than enough, so definitely no higher than that, but lowering it is always an option. To go under 96 Kbps though, you'll have to lower the Sample Rate.
Volume: Adjust to your tastes. It's different for everyone, and shouldn't effect bandwidth.
Broadcasting
The moment of truth has arrived! Will it fail, or will it work? There's only one way to find out.
Now, for this part, you'll probably want someone on another computer to look at your stream and see if it's working. If you don't want to bug a friend, feel free to drop by the ToME IRC chat room (#tome at irc.rizon.net). Moving on...
The first and most important part is to know what your show's url is. It's based on your ustream Show Name, so (for instance) since my Show Name is SenorPwnage, my channel is ustream.tv/channel/SenorPwnage. You can also click "Go To Show Page" on your Ustream dashboard overview and get the link there.
Next, open up Adobe Flash Media Encoder if you've closed it, and make sure all your settings are correct. Then, open ToME, start a new game or load a game so that you're ready to broadcast immediately, and click the green Start bar in Adobe Flash Media Encoder.
You're not done yet though, so go to Ustream and click "Broadcast". It will see that you're using Adobe Flash Media Encoder, and react accordingly. In the Ustream broadcast window you can select "Start Broadcast" to start broadcasting live, and select "Start Recording" to record clips for later. You can even display those recorded clips for people to watch when you're not currently live! Also, feel free to disable the server monitor thing for extra speed.
You Still Have Questions?
This guide aims to cover all possible questions, so feel free to submit all questionss to the talk page, or if you think you can do better, edit the guide yourself!
