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.
Some people have way too much time on their hands.
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.
I guess I'm just not a big enough sports fan to understand...
Paul Lenhart writes words!
'You idiot, it's right here' It had to be done.
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.
Horrid is too kind a word to describe Tim...
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.
Dumbass.
The previous post was referring to the DIGITAL MILLENIUM COPYRIGHT ACT. Your post is referring to the DINERS MOVEMENT CRAPPER ACT.
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.
Very easy to do. Get yourself a copy of Windows Media Encoder (free) from Microsoft, and set it up on your PC (or another - doesnt really matter).
Set it up to stream audio, and connect your radio to the sound card that WME is running on. Start it encoding.
Using Windows Media Player you can connect to the encoder (either on your local machine or a network machine) and listen to the streamed audio. There will naturally be a delay, which you should be able to tweak by playing with the buffer settings in WME and WMP.
I reckon you could get this to about 6 seconds.
By the time you get it all running nicely, you would have missed the game and so it is no longer a problem.
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 agree that the buck & tim suck. I would MUCH rather have the locals do the broadcasts for each city. How about starting a protest, calling your senator, burning your bra, etc...
Or you could always just hack the sat. I'm pretty sure Ive seen it done in a movie and it looks easy.
Get an old tape deck from a pawn shop, and disassemble it. Now reposition the parts so that the recording head and playback head are running separate input/output. Adjust the distance between both heads until it syncs up with your video. Tada!
:)
Add more playback heads and you can sell it to your neighbor as a home-made guitar delay box
-Billco, Fnarg.com
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
...and besides the MLB rules that the announcer reads says "...any rebroadcast of the descriptions or accounts of this game without the express written permission of [Team Name and /or Major League Baseball] are expressly prohibited."
The speaker can't "broadcast" beyond your home unless you want the baseball hit squad to show up on your doorstep.
Ever dream you could fly? Get up from the Flight Sim. I Fly
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.
Tape both and synch them up later for viewing/listening. Oh, sorry you didn't specify that you had to be able to start watching the game before it has ended.
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. (:
Don't radio stations buffer their own output for editing purposes? I thought I read once that radio stations buffered anywhere from 5 to 15 seconds of radio play in case something went over the air that wasn't supposed to. Maybe that's just for call-in talk-radio.
..just use esound. All the lag you ever need.
Seriously, check the esound sources for the esddsp program. Modify it so it uses a large buffer, then run it on your radio app. 20 minute job.
I was watching a football (soccer) game once using the superior radio commentary and the sound turned off on the TV. It came down to a penalty shoot-out and the commentator shouted "he's missed it!", a few seconds later the TV showed the striker hoofing the ball straight over the bar. Commentator must have put him off...
... 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.
if it works the way I think it does, and the broadcaster is using the standard 7 (or so) second delay, couldn't a live audience member just swear for more than the delay and the station is suddenly broadcasting in realtime (and broadcasting my swearing)? (If you're a caller, the dump button often dumps the caller at the same time it shortens the delay or plays the filler)
I was just trying to do this myself (actually, originally wanted to get a "rebroadcaster" going for a radio-station -> icecast connection so I could listen to a radio station at work w/o having a radio at work. Wow, that's much geekier than a walkman. :^)
...and don't forget about the "tee" command, which will allow you to "duplicate" an output stream (ie: record one to disk, for archiving, but realtime play the other one).
Anyway, try this. It ends up with about a 10s delay for me to encode / re-encode.
## command to oggenc line-in and play it out again.
rec --type=.wav -o - | oggenc - -q 5 -o - | ogg123 -
Try removing the oggenc line, and do something like the following:
rec --type=.wav -o delayme.wav & ; sleep 6 ; play delayme.wav
I never realized how much fun this kind of stuff is... and consider: plug in a radio overnight and OGG the station to disk. (or do it all with a Hauppauge WinTV/Radio card and you can cron up specific radio shows as you want). With OGG, I'm getting ~25 mb / hour on quality 5 (approximately 64 kbps, which is almost exactly the quality I can get from radio broadcasts). Burn each show to CD and bring it in to work, and skip through all those annoying "Laser eye surgery" commercials, but still listen to the music. You can probably get all this automated w/o much trouble at all, which is the coolest thing about linux for me. Sometimes it's tough to remember just how much power and control you can have by putting simple, well-designed commands together.
rames@spike:/usr/local/music/106.7$ ogginfo Oct18.ogg
Processing file "Oct18.ogg"...
New logical stream (#1, serial: 68036320): type vorbis
Vorbis headers parsed for stream 1, information follows...
Version: 0
Vendor: Xiph.Org libVorbis I 20020717 (1.0)
Channels: 1
Rate: 22000
Nominal bitrate: 50.000000 kb/s
Upper bitrate not set
Lower bitrate not set
Warning: EOS not set on stream 1
Vorbis stream 1:
Total data length: 183817997 bytes
Playback length: 435m:34s
Average bitrate: 56.267717 kbps
--Robert
My experience is that Tim McCarver is so slow witted, it sounds like the game he is watching is 6 to 8 seconds behind the one the rest of us are watching.
I metamoderate, therefore I am
You can make some wild dub!!