Software to Buffer and Delay Audio Playback?
NaDrew asks: "Fox has seen fit to use two of its worst broadcasters (Joe Buck and the horrid Tim McCarver) for the upcoming World Series. I'd love to just turn down the TV and listen to the Giants' regular broadcast team (Duane Kuiper, Mike Krukow, Jon Miller) on my local Giants affiliate radio station, but as a DirecTV user this doesn't work. Why? Think about it: The radio signal traverses the 20-odd miles from Sutro Tower to my home in Palo Alto in a fraction of a second, but the video signal goes from KTVU's broadcast center in Oakland via satellite to DirecTV's operations center in Boulder, then via satellite again to my home--22,500 miles x 4 bounces equals almost 100,000 miles. Coupled with the MPEG processing done at DirecTV's operations center, this adds up to a delay of about six seconds.
What I would like to do is buffer the audio from my radio for the appropriate amount of time and then play it back in sync with the video. Ideally I'd like a software solution that will run under Win32. A Google search yielded some specialized hardware solutions but nothing for my purpose.
Ideas, pointers, even 'you idiot it's right here' flames are welcome. Thanks!"
you should get all the delay you want that way
Actually I am suprised that you aren't hit by a seven seccond radio delay. A simple way would be to write the data to disc, and use annother program to follow behind it. I.e. use some program to record the stream, and then 6 secconds later set winamp on the still recording stream, that should work, but no promises.
I'd do something interesting, but my server can't handle a slashdotting.
Take two tape recorders apart (actually only one needs to be able to "record") and mount the guts side by side on a board. You will have to do some modification of the drive assembly so that both mechanisms run from the same motor. Take apart a cassette tape and remove the actual tape. Run this piece of tape through the two tape recorder mechanisms and loop it back over itself -- some scotch tape will hold the two ends together nicely.
Place the sound input to the one of the recorder mechanisms and take the sound output from the other mechanism.
You can controll the amount of delay between the two by varying the speed of the motor.
Put your speaker about 1.167 miles away and turn them up *really* loud...
Athletic Scholarships to universities make as much sense as academic scholarships to sports teams.
Seriously, imagine what the radio comentator says, then use the video to verify it. If it doesn't match, you need to work on your imagination.
-1 Offtopic +2 Funny -3 Funny = doh!
Why not download PD from here and have a play around. Creating a delay between the audio inputs and outputs is very easy...
The only Good System is a Sound System
Very simple solution using 1980's tech. You need a video tape and a cassette tape. Record the television signal on one, and the radio on the other. Afterwards, just cue them up, and you can watch everything in sync.
Somebody Arrest this person.
The modulation of an analog audio signal over a high frequency carrier wave is an "effective" copy control mechanism.
By turning up your speakers really loud so that anybody can hear the broadcast is a circumvention technology that is not only illegal to implement under the DMCA but is also illegal to tell anybody else how to implement it.
You sir are an INTELLECTUAL PROPERTY THIEF and are no better than the cranked up dope head that steals the purse of the poor widowed pensioner to pay for his next hit.
Get a TiVo (you know you want one anyway), start watching the game, pause for six seconds to fill its buffer, then resume watching, happily in sync with the radio.
Get a spool of about 1,800,000 km of wire and use it to connect your speakers to the radio with carefully placed signal boosters/repeaters.
YMMV
If you have, or can get, a TiVo that is seperate from your DirecTV receiver, you can try the following:
1. Run the DirecTV Video straight to the tube.
2. Connect the Audio from your Radio Tuner to the Audio In on the TiVo.
3. Watch the DirctTV feed and listen to the TiVo feed.
4. Pause/Fast Forward the TiVo until the audio is in sync with what you're seeing.
To make sure the TiVo doesn't decide to change channels or anything, you might program it to record something as long as the game (like the game.)
Some people have a way with words, and some people, um, thingy.
http://www.google.com/search?num=100&hl=en&lr=l
> 22,500 miles x 4 bounces equals almost 100,000 miles. Coupled with
> the MPEG processing done at DirecTV's operations center,
> this adds up to a delay of about six seconds.
Given an overall system processing delay more than an order of magnitude larger than the total signal propagation delay through space, why even bother mentioning it, let alone do the math? That 100K miles adds only a small fraction of a second to the many seconds of processing on the ground and in the transponder.
All professional TV broadcasters have equipment that does MPEG processing in realtime (I'm one of the techs that fixes it when it breaks). Yeah, I guess maybe it could contribute a few ms of delay, but nothing you couldn't compensate for with the delay setting in a good reciever, and it is still probably less than the delay introduced by retransmitting, which still doesn't account for the 13-15s your talking about (6s + typical 7-8s delay on live radio).
It's much more likely that KTVU has a playback delay set on their video server, mainly for the same reason that radio has one: bleeping out profanity before it hits the air.
DirecTV certainly has a playback delay of at least 4s, which gives their automation system (which I also service) time to switch to an alternate stream if something goes wrong with the current one.
Anyway, my point is your placing blame on the wrong parts of the process. That doesn't help with your case, of course. But my suggestion is to do exactly what the broadcasters are doing (except a lot cheaper):
Run sound from your reciever to the line in on your soundcard. Record that with any sound recording program (the default Windows Sound Recorder will work just fine). Have a player up with the record target file ready to play, and start playback manually when you think the time is right.
I haven't tried this so it might not work if Windows locks the record file during recording, but essentially that's exactly how it's being done on the video servers the broadcasters are using. I'm sure there's a better way to do this in Linux, but I haven't got around to playing with any of the Linux media tools yet.
Under capitalism man exploits man. Under communism it's the other way around.
and set the streaming buffer to a suitable size. By default it will probably be something like 64 KB which depending on the bitrate of your audiostream may be enough. Otherwise just make it a bit larger. For a 128kbit stream you probably want to set it to 96 KB. Winamp will try to keep the buffer filled so, effectively there will be a delay proportional to the buffersize.
Jilles
I don't know if it's still around, but there was at one point a program called Audiomulch that worked kinda like a modular synthesizer setup. It has input and output modules, and a delay module, so you can just hook the audio out from the radio to your sound card, and connect the delay in-line between the input and output.
A solution to the problem with music today
Get a digital effects module with a delay feature
.
.
I have an Alesis Nanoverb that I use for sound design work. You can get them on Ebay for under $100. Acording to the specs you can get over 1200ms delay per channel (loop left out to right in for 2400ms or about 2.5 seconds). Correcting the delay involves turning a nice analog knob.
The Alesis QuadraVerb has a full 5 seconds of delay per channel and should do the trick for you for about $130
SD
âoeWho knew something as harmless as willful ignorance could end up having real consequences?â
So you want a TiVo for your radio? We're sorry, but with ClearChannel you just need to wait a few minutes before it's broadcast again, so there'd be no market.
Voila, it's that easy.
Musicians have long done audio delay using an analog tape machine with playback "taps" for trippy overlayed sound effects. Just look for DSP software designed to replicate this functionality. There are numerous possibilities for Linux or Windoze.
Then again.. this is all a lot of work just to watch a silly sports event. (:
... it's obvious folks. Get something that will let you do real-time effects (Reaktor springs to mind here). Set up a delay that's 6 seconds minus the latency in the sound card. Tweak for best results.
Forget all this "set up a wma streaming server" etc. It's too complicated for this job.