Q: Does Snatch make perfect copies or grab the actual Real stream? A: No. It captures the decoded audio and video as Real sends it to the sound device and X server. The result of grabbing the data will only be as good as RealPlayer's playback; it will be exactly as you see/hear it. Snatch does not touch the Real stream and does not know how to talk to a Real server; it lets the stock RealPlayer do the decoding. Snatch does not modify or patch RealPlayer in any way or defeat any encryption or password mechanisms built into RealPlayer. Snatch is merely a glorified software camcorder with an easy to use interface. Q: Does Snatch just take lots of fast screen captures? A: No. Snatch watches events going to and from the X server and captures the appropriate video frames off the wire. It will not grab at the wrong rate, hose the machine/X server or 'capture' frames that aren't actually displayed. Q: Can I capture with the RealPlayer window hidden or iconified? A: Yes. Q: Will Snatch try to restart RealPlayer if an error occurs? A: Yes, but mostly for timed recording. If RealPlayer crashes or aborts streaming due to a network error, Snatch will start a new copy if needed and try to pick up any timed recording where it left off. If capture is happening in manual mode, Snatch assumes that user is present and can generally handle any problems better than a dumb, automated Robot, and as such won't try to interfere. Q: Is there a 2GB file limit? A: The short answer depends on Linux version. Snatch uses 64 bit file operations, so there's no limitation there. Captures on Linux 2.4 will go past 2GB smoothly. Many/most machines still running Linux 2.2 can't have > 2GB files as Linux 2.2's ext2fs is limited to 32 bit offsets when running on 32 bit machines. For these machines, if the selected output is a *directory* Snatch will close a grab file when it hits 2GB, open a new file, and continue. If a specific *file* is set for output, Snatch will not be able to continue past 2GB. Q: When I selecting silent video playback, the RealPlayer window mostly stops responding and fills with garbage. Can I fix this? A: No, it's intentional. 'Silent video' stops all X updates from going to the RealPlayer window; it's meant to squeeze any extra performance possible from a machine with slow graphics hardware or slow processor or both. Remember that Snatch doesn't capture the Real stream, it captures the video RealPlayer sends to the display. Any dropped frames due to poor machine performace will show up in the output as jerkiness. Although the video requires cycles to display, RealPlayer is also spewing lots of updates to the interface during playback (like the time display, scrolling info, etc). For best performace, *everything* gets turned off. In this mode, all interaction with RealPlayer should be made through the Snatch Robot. Turning off silent video will bring the RealPlayer window back to life. Q: I begin playing/recording with audio playback set to silent, but changing the setting later has no effect until I start a new stream! Why? A: Snatch doesn't currently try to set up the soundacard for playback after a stream starts because it originally faked successful returns to various sound API ioctl()s that might have failed (requiring RealPlayer to try an alternate setup). Trying to emulate given settings with on the fly resampling is rather complex given the fairly innocuous nature of this 'bug', and not bothering to fake through it correctly would just crash RealPlayer or garble the output. Q: I'm watching/recording video and switching between audio playback and silent playback. When I turn off silent record, the audio I hear is out of sync! What gives? A: Right now, Snatch tracks audio sync only for the output file. It doesn't try to re-sync the sound card if you reenable audio playback during a stream. The captured file *will be fine*. I didn't go through the extra trouble mainly because on-the-fly resync would require extra memory, buffering, and I didn't know if anyone cared that much. Q: Can I use libsnatch without the Snatch Robot application? A: Yes, all the configuration a user can effect from the robot can be done via environment variables. In fact, the shared lib was written and tested and used thoroughly before the Robot was even started. Q: What does Snatch occasionally cause: "undefined symbol: XGetGeometry" or some other undefined symbol? A: RealPlayer is trying to start up external applications; Snatch isn't yet smart enough to know that these external applications are not RealPlayer and thus tries [unsuccessfully] to use the same library capture tricks. The errors are harmless, but they do mean Real will not be able to spawn web browsers or other 'external synchronized multimedia events'. I personally don't consider that a huge loss. This also happens for one other common reason: Having EsounD support enabled, but no EsounD daemon running.