Streaming MP3 For Linux Server Guide 53
A reader writes: "
Does Howard Stern boil your bacon? Do you wish there was a station that only played songs by the Bouncing Souls? After reading this guide, you can show the world that Howie ain't got game, and that songs about soccer(football) are where it's at. The purpose of this document is to describe the process of using Linux-based tools to setup a server used for streaming MP3 data.
Find out how to setup your own with
this full guide"
Re:I've got some experience in this (quite a lot) (Score:1)
Is there a way to rebroadcast? (Score:1)
I have a server colocated on a nice fat pipe. The only problem is, I'm stuck on a dial up. I've been wondering if anyone knows of a way to do MP3 streaming like the article talks about except have the source data coming from another MP3 stream? The reason is I want to be able to listen to some of the various MP3 stations out there, but as more and more people get cable/DSL/etc, I find that the streams are greater than my bandwidth will allow for. I figured a good solution would be to just stream it through my remote server and downgrade the quality a bit so I can tune in.
Suggestions?
Thanks!
MP3 stream compression (Score:2)
MP3 streams are already compressed. The MP3 system is your basic spectral transform-quantize-encode system. To compress the streams, re-encode them at a lower bitrate with an MP3 encoder designed for this (e.g. Fraunhofer).
(LAME is still illegal in the United States [mp3licensing.com]).Tetris on drugs, NES music, and GNOME vs. KDE Bingo [pineight.com].
only songs by Bouncing Souls? (Score:2)
Re:486? (Score:1)
Re:Copyright (Score:1)
Working at a community radio station with an annual budget of about $120,000 we were able to get away with throwing a few thousand bucks SOCAN's way and playing whatever we wanted.
Do web sites w/streaming audio work like this? If so, is there a lower limit on what is to be paid? It seems to me a non-profit organization could run pretty cheap and keep fees to a minimum.
Or was it only OK because we were broadcasting analog signal?
User Comments/Streaming Question (Score:1)
Anyway....
I've had a question for a while, but wondered if anyone here knew any details. If I stream in an "Internet Radio" type situation, do the same rules that apply for radio apply for Internet streaming? For example, let's say I start an Internet radio station, I play music, sell advertising, etc. Do I still have to track songs and pay royalties? When I worked at a radio station, we had to track what we played on a computer or on paper, and the station paid royalties on it. Anyway, just curious if anyone had any insight on this.
Apache::MP3 (Score:1)
My MP3 wet dream (Score:2)
As I'm not a coder, I would pay serious cash for someone to write a Web interface to my MP3s that would present a dynamically-generated list of all of the several thousand MP3s (broken into several pages), with checkboxes next to each MP3 listed. I'd check the boxes of all the ones I wanted to listen to, and click Submit. It would then make the playlist on the fly from that submission, and fire up a streaming server with that playlist. I'd then point Winamp to it, and I'd have ALL of the MP3s I want to listen to, and NONE that I don't, streamed to me wherever I am.
(I'd put some sort of access protection on the stream, to make sure [a] I get all the bandwidth, and [b] so RIAA can't sue me.)
Better yet, does something like this already exist? Am I the only one that wants something like this?
--
Another RTP streaming tool: liveCaster (Score:1)
One benefit over "Obsequium" is that liveCaster implements RTCP (RTP's companion status reporting protocol), and (optionally) sends SDP announcements for its session. liveCaster also optionally supports an alternative, more loss-tolerant payload format [live.com].
liveCaster (and the RTP plugin for Winamp [live.com]) is built from the Open Source "LIVE.COM Streaming Media [sourceforge.net]" library.
Streaming under Windows... (Score:3)
I'd love to know how I could do something similar with Apache for when I'm in Linux instead.
--
Re:User Comments/Streaming Question (Score:1)
"You may not modify this document" (Score:3)
"This document is copyright © 2000-2001 by Ray. You are encouraged to redistribute it. However you may not modify this document, if you intend to redistribute it in any manner."
Why can't I modify it?
What if someone introduces some new utility in the future which makes this job even easier? What if it's in error? Should I redistribute a faulty document?
Apparently, all of the Linuxlookup guides are copyrighted in this fashion.
Interestingly Linuxlookup.com doesn't quite buy into the whole Open Source thing, at least not when it comes to their creations.
Re:486? (Score:1)
Re:The author didn't try Shoutcast, but... (Score:2)
He doesn't talk about tons of freakin weird features in icecast, or the advangates of shoutcast. for instance, icecast can't do meta streaming correctly (track title info). i've never seen it list on shoutcast.com correctly. it's own meta streaming protocol is not supported. shoutcast has a much better web interface, it also scales better. it generates usagfe charts (i think).
He doesn't talk about how to relay your stream from live365, he doesn't talk about listing on shoutcast.com. lots and lots of crap. damit, i should write my own freakin FAQ.
btw: this is Justin Frankel writer of Winamp i'm replying to, right?
-Jon
Re:My MP3 wet dream (Score:2)
you'll want to use a really crappy bitrate, like 24kbits, which will sound like am-radio. it's a shame you couldn't use something like MSAudio for that, as it sounds much better at lower bitrates.
you *could* also do something much more elaberate with unix, php, icecast, etc.. however the biggest problem i see is re-encoding the mp3s on the fly to something like 24kbit, i think the new version of icecast does handle this, but i can't say for sure, in any account any support it would have would be flaky, and probably pipe through lame of something (lame is not a mp3 encoder, lame)
-Jon
Re:Existing services (shameless plug inside...) (Score:1)
As I said, it does use the Real Player plugin. There is a Unix version available [real.com], but I don't know if it will work with Linux. I'm actually going to be taking my second stab at running Linux over the holidays, so needless to say I don't have enough experience to tell you whether or not it will work.
- Stealth Dave
--
Re:Copyright (Score:4)
1) "Data provider == DJ == Lissener" is the traditional mp3 and CD system.
2) "Data provider == DJ != Lissener" is the trditional radio system.
3) "Data provider != DJ == Lissener" is the fast download system you are describing.
4) "Data provider == Lissener != DJ" is the system used by my artificial intelegence based mp3 player Smartplay [gtf.org]. It only playes songs from your drive, but it uses a simple AI to guess your mood and it had a more efficent user interface to help keep you from waisting a lot of time skipping songs.
Anyway, there is really nothing keeping us from a "Data provider != DJ != Lissener" system. This would mean that the DJs would broadcast URLs and mixing instructions, but not necissarily the mp3 data it's self, and the download sites would wait for a significant portion of the lisseners to login before starting the multicast download of the song. The point is that you would not need to have a lot of bandwidth to be a DJ and the lisseners computer can hack together the playlists from multiple DJs to allow for even greater variety.
I tend to think that a hybrid of the "Data provider != Lissener != DJ" and the artivifial intelegence selection of DJs (ala smartplay's selection of songs, but for whole DJs instead---based on what they were plaing right now and your mood) would be the very best solution.
Jeff
Overcomplicated (Score:1)
Wouldn't it be a lot easier just to run a piece of wire from the output of the computer's sound card to the aux input of the stereo? Seems like this would give you the same functionality.
You could even dispense with a wire. Radio Quack has a little 2.4 GHz transmitter/receiver pair for this purpose (also handles video, but I just don't use this capability). You can also get low power stereo FM transmitter kits, if you feel handy with a soldering iron, but the good ones cost about the same as the 2.4 GHz preassembled solution.
If the second computer has no effective user interface w/r/t the music then it is entirely redundant. Why use a computer when a piece of wire will do the same job?
Re:Best use for this technology... (Score:2)
-Jon
Oh! But I did. (Score:1)
Re:486? (Score:1)
I believe the streaming server doesn't have to encode anything.
AND another thing... (Score:1)
Re:486? (Score:2)
Yes. You want to make the stream as small as possible to allow it to travel over the network taking as little bandwidth as possible. So the stream is encoded by the server and decoded by the client. Generally the stream is made up of pre-encoded MP3 files, because encoding is more compute-intensive than decoding, and a 486 couldn't handle that. Basically, all streaming servers do is read from disk and write to a network pipe.
Re:486? (Score:1)
Where does the MP3 get decompressed then? On the client? That doesn't seem right, but what the hell do I know.
Re:Overcomplicated (Score:1)
1) Geek factor. 'Nuff said.
2) I'm concerned that the sound quality (already down to mp3 levels) might degrade over a 30-foot cable, especially when coming out the back of a soundblaster.
3) My original idea was a webradio receiver (before I nixed the interface). I'm still kicking around some possible tiny interfaces, say an LCD display and a mouse to cycle through preprogrammed 'stations'. Failing that (and that's pushing my technical skills), I could always boot from different floppies to get different stations, or ssh in and change the station manually. Heck, I could even put a PalmPilot cradle there and work something out.
4) Just looking for some experience developing a linux-based appliance.
I do like your 2.4GHz transmitter idea. I'll price them - thanks!
Copyright (Score:3)
Napster can be used like a streaming audio directory if you have enough bandwidth and find users with the right speed. I have played a lot of songs while d/ling them. Pretty cool: 1) Search any song you like, 2) find fastest location, 3) play live. For maximum speed, Kazaa [kazaa.com] is quite cool, it bundles downloads from several locations to achieve higher speeds.
--
Compressing (Score:1)
I found a guide here [linuxdoc.org] that shows how.
beosradio (Score:1)
http://www.beosradio.com
It is done using SoundPlay, an MP3 player for BeOS and some plugins for streaming.
I've got some experience in this (quite a lot) (Score:2)
This was really really hard getting something good.
First I tried icecast, as an open source believer this was my first choice. Believe me I've tried everything, but this is a lot of trouble if you want to stream the name of the song too. The main problem is that if the listener gets out of sync, he won't be able to reconnect correctly automatically. This is VERY VERY annoying and makes icecast practically unusable on my setup. Perhaps I did something wrong, but I never had an answer to my pledges for help to the authors.
So I'm stuck using shoutcasts server, and believe me this is really sad for me, because some of icecast features where relly nice for me, like multiple streams in the same server.
Ok after the server you'll want to have some interactivity with the listener, this is where the stream program shows. I was not satisfied with what I found on the net (and I tried everything). So I ended up using libshout, which is GREAT, really. You've got like 5 functions, and it works incredibly good. My streams are up now since 3 weeks, with no problems, no mem leaks, no nothing.
So for me a good setup for interactive streaming is : shoutcast (unless icecast is fixed, then icecast is 100% the best choice), libshout and some little programming skill, a database for the streaming program to get the files from and of course a nice web site. Those understanding french will see that my site is really interactive.
Of course you'll have to pay RIAA/ SACEM (france)/ whatever hellish company if your country, but that's another story 8(
J-F Mammet
bidemaster@bide-et-musique.com
Streaming Bill Hicks... (Score:1)
(Yes, I know, off-topic, sorta.)
-=-
icecast needs help (Score:1)
How 'bout a Build-Your-Own Decoder HOWTO? (Score:1)
Here's what I'm thinking - take a basic 'distribution' from the Linux Router Project, strip out most of the networking, add mpg123 and set it to start playing the stream at startup. Then run Cat5 cable from my study to the living room.
The idea is that I could stream mp3's continuously from my main computer, and just power up the one in my stereo cabinet when I wanted to hear the stream. Because it's LRP-based, it runs from a write-protected floppy - I can just power it off when I'm done with it.
Any thoughts from the crowd? Am I way off base here? I want an appliance, and LRP seems to be the closest thing to it. I'm looking at using a 486-66, but if it lacks the horsepower to decode the stream, I have a 486-120 available. I'd love to hear what Slashdotters think of this - if I'm way off base, you could save me a lot of time experimenting....
Streaming server on a floppy. (Score:3)
Re:Existing services (shameless plug inside...) (Score:1)
just out of curiousity.. does this work with linux?
thanks john
use LaTeX? want an online reference manager that
Re:Why Icecast uses less memory (Score:2)
Existing services (shameless plug inside...) (Score:2)
There are some services already existing that allow you to do this. Specifically, take a look at the Soundbooth [wallofsound.com] at Wall of Sound [go.com], an offering from the Walt Disney Internet Group [wdig.com] (formerly GO.com [go.com]). It has a very cool interface which allows you to choose what types of songs to play on your station, as well as being able to choose specific artists and songs to be played. You can also choose how often these are played when you set them up AND on-the-fly as they are playing.
The bad part is that the player runs off of Real Player [real.com] which has problems with Netscape 4.x (I haven't tried NS6/Mozilla with this yet, although that's my preferred browser these days). But it is still very cool!
Disclaimer: ;) Go to the Member Made [wallofsound.com] stations and enter "StealthDaveRocks". I've been using it since the internal beta stages, and I can definitely say it rocks!
For those of you who may not have guessed this already, I do work for the Walt Disney Internet Group, albeit in a completely different division (and building for that matter) than Wall of Sound. But that doesn't make it any less cool! Almost everyone in our department uses it instead of downloading MP3s or listening to CDs. If you like modern rock and classic rock, check the StealthDaveRocks station! (I warned you there would be a shameless plug!
Additional Disclaimer:
My opinions are my own, and are not sanctioned by Disney, Bill Nye the Science Guy, or the U.N. Security Council.
- Stealth Dave
--
Re:486? (Score:1)
Live re-streaming from dial-up / slow link? (Score:1)
The earlier versions of Real's streaming server supported one incoming stream from somewhere to feed several outgoing streams. Essentially, I could park a server on a high bandwidth connection and then broadcast from my home PC sitting on 33.6k - the server would relay the incoming feed to many clients. Most of the radio stations that have a streaming server do something like this, because I don't believe their high bandwidth server is IN the radio station itself.
This is, in fact, how modern Radio works - they don't actually broadcast right from the buiding where the studio is. They cable / microwave it out to a transmission tower somewhere else.
Do either of these MP3 streaming solutions support relaying an incoming stream from a remote location? Is there a free / GPL / etc solution that does?
486? (Score:2)
Anyone have any luck decoding MP3s on prehistoric hardware??
Re:486? (Score:1)
but the cost factor for even a first generation pentium makes it not worth the effort. A 486-based solution would make it economically viable.
You are mistaken, an old socket 5 and even a few socket 7 pentium motherboards with a p90 or p100 cpu can be found on ebay for less then $20. I would rather pay $20 for a p100 then pay $10 for a slower 486.
I have used a p100 (OC'ed to 125mhz by upping the bus speed to 83mhz) to play mp3s via winamp under win98, and I experienced no problems as long as I wasn't stressing the CPU in other ways. This was a bloated windows solution, I'm sure you have enough power to stream with a stripped down dedicated linux system. Just don't try to rip with an early pentium, unless you are really, really patient.
Just my $.02
Darwin Streaming Server? (Score:1)
article in linux journal (Score:3)
-mdek.net [mdek.net]
Important? (Score:2)
The author didn't try Shoutcast, but... (Score:3)
mp3 streaming (Score:1)
Steamed MP3s (Score:2)
Oh. stReaming MP3s. My mistake. But MP3 recipes are important, too...
Stream Vorbis! (Score:3)
Best use for this technology... (Score:1)
My elite mp3 jukebox setup (Score:1)
-NG
Why Icecast uses less memory (Score:3)
Tetris on drugs, NES music, and GNOME vs. KDE Bingo [pineight.com].
Re:Important? (Score:1)
Re:HOWTO's for everything these days? (Score:2)
:::