Hi, Up until now, I've been providing narrowband streams at 24kbps MP3. We've reluctantly been using MP3 instead of say Ogg Vorbis due to wider support. But it's getting to the point where low bitrate MP3 doesn't really cut it anymore. With technologies like AACPlus out there in common usage, people have come to expect better and one can hardly blame them. So I thought I'd start a thread on low bitrate streaming in order to find out what people are using and how. There seem to be two issues. The first is which format to use and the second is how to go about transcoding into said format. Right now we're using StreamTranscoderv3 to do our transcoding. It can turn around our broadband stream as a narrowband stream without any intervention. I've successfully used it to turn around streams as MP3 and Ogg Vorbis. It's also meant to support AAC and AACPlus, but I've not managed to figure out how to enable this under Linux or how I would particularly get it to be able to do AACPlus. I considered going so far as to try Nullsoft's sc_trans v2 to encode AACPlus, but it seems it cannot connect to an existing stream and relay it, it can only have a stream connect to it. I don't see how I can get our existing Icecast stream to be relayed to sc_trans as Icecast does not do push relaying, so this option would appear to be out. I also took a brief look at Liquid Soap for doing this. It would appear that it can, but it looks like a lot of work to deploy for a relatively simple task. Still, I'd consider it if it will do the job. This of course leads to the broader question of which format to use. For us, the chief concern is device support. While a lot of people get around this issue by writing their own apps with built-in decoders, this isn't a direction I'd particularly want to go in unless there's something out there that's fairly generic and can be easily customisable. Our station is a volunteer outfit with no budget, so my strong preference would be for us to use a natively supported format so that it "just works". As mentioned, I'm looking to depricate MP3. It's really not possible to get 44.1 kHz MP3 under 56 kbps, and that only in mono. This isn't really "narrow" enough for my tastes. I'm not a big expert on AAC, but it seems to me that plain AAC (no "plus") doesn't really offer much over and above MP3. Certainly, samples I've heard of 56 kbps AAC streams at 44.1 kHz stereo are rolled off to 5 kHz audio, making it sound worse than MP3 at the same rate using 22.05 kHz samples. But there's so many AAC parameters that I'm by no means an expert on this.>From the little I've seen, the favoured option for lower bitrate streamingseems to be AACPlus. And it's not surprising given how good it sounds. I'm not so sure about device support though, and encoding it is a bit of an issue (see above). There is libaacplus, but streamTranscoderv3 doesn't *appear* to support it. I think Liquid Soap might though. There's also something called AACPlusEnc but I can't seem to get to its home page. While we're considering non-free options, Windows Media Audio would seem to be out due to the desire to encode under Linux, and people seem to be moving away from Real Audio. Of course, I'd prefer to use something open if people can actually listen to it. There would appear to be the following options: Ogg Vorbis: Using oggenc with libvorbis 20100325 (1.3.1) at quality -1 with a 44.1 kHz mono source, I can get the bit rate down to about 34 kbps. Stereo is more like 40 kbps. It actually sounds pretty good. Maybe if I took it down to 32 kHz it would go a little ower, or perhaps the quality -2 mode that at least was available in the aoTuV encoder would get it lower with perhaps a little more quality loss. I've not actually tried lower bitrate stuff in either vorbis encoder for some time. Encoding Ogg Vorbis won't present any problems. My concern about Ogg Vorbis is support in mobile devices. I know that iOS devices don't support it natively. Do any stream players for iOS support it, like say Tunein Radio? I believe Android devices do. Don't know about other devices used on the go. The other open option I can think of is Opus. I've not put it through its paces, I really should. But it aims at least to be good for this sort of thing. But I'm really not at all sure what software support is like yet, either for encoding or listening. Anyone know? Are there any other options that are worth looking at? Geoff.
Greg Ogonowski
2012-Aug-01 21:01 UTC
[Icecast] Higher quality narrowband streaming options
Hello Geoff- You and I have not communicated in several years. Orban was the original licensee of HE-AAC/aacPlus back in 2002 for streaming, when I discovered it back then. It was at my request, that Icecast2 finally allowed other content types to be used for streaming AAC/HE-AAC. Thank you for this! HE-AAC is displacing MP3 with more streams on line everyday. We have an HE-AAC centric iPhone App, StreamS HiFi Radio, that has over 5,000 HE-AAC streams so far, with still many more to add, but there are only so many hours in a day. :) HE-AAC is the defacto standard for mobile devices. It is now supported natively in Microsoft Windows 7/8, Apple MacOS, and certainly Adobe Flash. Here is our Orban Eval player, powered by an Icecast2 server: http://www.orban.com/flash/orbaneval/FLVplayer.html HE-AAC is also supported on set-top boxes and the Logitech Squeezebox family of appliance players. Also another fact that is not known by many, is the streaming MP3 requires a Royalty License. http://mp3licensing.com/royalty/ Technicolor, the current MP3 patent holders, are actively pursuing users that are in breach. AAC/HE-AAC does not have this requirement. All royalties are paid with the purchase of a properly licensed AAC/HE-AAC encoder. This by the way, DOES NOT include any third-party apps that use the Winamp .dll. That is an explicit DMCA violation, as can be verified by the Winamp EULA. Simply put, the license fee paid for an AAC/HE-AAC encoder is far less than the grief that MP3 streaming royalties can be. HE-AAC is also less expensive to stream, more reliable for mobile, and less costly for the consumer in terms of data usage. It is now standards-based and widely accepted. Windows Media Player 12 for Windows 7 will play Icecast2 HE-AAC streams, but there is a bug in the Windows 7 version that I am trying to get fixed through Microsoft. It is necessary to click on the scrubber after you connect to the stream to actually hear audio. Go figure. Please let me know if there is any other information I can provide. -greg. VP Product Development Orban -----Original Message----- From: icecast-bounces at xiph.org [mailto:icecast-bounces at xiph.org] On Behalf Of Geoff Shang Sent: Wednesday, 01 August, 2012 13:51 To: icecast at xiph.org Subject: [Icecast] Higher quality narrowband streaming options Hi, Up until now, I've been providing narrowband streams at 24kbps MP3. We've reluctantly been using MP3 instead of say Ogg Vorbis due to wider support. But it's getting to the point where low bitrate MP3 doesn't really cut it anymore. With technologies like AACPlus out there in common usage, people have come to expect better and one can hardly blame them. So I thought I'd start a thread on low bitrate streaming in order to find out what people are using and how. There seem to be two issues. The first is which format to use and the second is how to go about transcoding into said format. Right now we're using StreamTranscoderv3 to do our transcoding. It can turn around our broadband stream as a narrowband stream without any intervention. I've successfully used it to turn around streams as MP3 and Ogg Vorbis. It's also meant to support AAC and AACPlus, but I've not managed to figure out how to enable this under Linux or how I would particularly get it to be able to do AACPlus. I considered going so far as to try Nullsoft's sc_trans v2 to encode AACPlus, but it seems it cannot connect to an existing stream and relay it, it can only have a stream connect to it. I don't see how I can get our existing Icecast stream to be relayed to sc_trans as Icecast does not do push relaying, so this option would appear to be out. I also took a brief look at Liquid Soap for doing this. It would appear that it can, but it looks like a lot of work to deploy for a relatively simple task. Still, I'd consider it if it will do the job. This of course leads to the broader question of which format to use. For us, the chief concern is device support. While a lot of people get around this issue by writing their own apps with built-in decoders, this isn't a direction I'd particularly want to go in unless there's something out there that's fairly generic and can be easily customisable. Our station is a volunteer outfit with no budget, so my strong preference would be for us to use a natively supported format so that it "just works". As mentioned, I'm looking to depricate MP3. It's really not possible to get 44.1 kHz MP3 under 56 kbps, and that only in mono. This isn't really "narrow" enough for my tastes. I'm not a big expert on AAC, but it seems to me that plain AAC (no "plus") doesn't really offer much over and above MP3. Certainly, samples I've heard of 56 kbps AAC streams at 44.1 kHz stereo are rolled off to 5 kHz audio, making it sound worse than MP3 at the same rate using 22.05 kHz samples. But there's so many AAC parameters that I'm by no means an expert on this.>From the little I've seen, the favoured option for lower bitrate streamingseems to be AACPlus. And it's not surprising given how good it sounds. I'm not so sure about device support though, and encoding it is a bit of an issue (see above). There is libaacplus, but streamTranscoderv3 doesn't *appear* to support it. I think Liquid Soap might though. There's also something called AACPlusEnc but I can't seem to get to its home page. While we're considering non-free options, Windows Media Audio would seem to be out due to the desire to encode under Linux, and people seem to be moving away from Real Audio. Of course, I'd prefer to use something open if people can actually listen to it. There would appear to be the following options: Ogg Vorbis: Using oggenc with libvorbis 20100325 (1.3.1) at quality -1 with a 44.1 kHz mono source, I can get the bit rate down to about 34 kbps. Stereo is more like 40 kbps. It actually sounds pretty good. Maybe if I took it down to 32 kHz it would go a little ower, or perhaps the quality -2 mode that at least was available in the aoTuV encoder would get it lower with perhaps a little more quality loss. I've not actually tried lower bitrate stuff in either vorbis encoder for some time. Encoding Ogg Vorbis won't present any problems. My concern about Ogg Vorbis is support in mobile devices. I know that iOS devices don't support it natively. Do any stream players for iOS support it, like say Tunein Radio? I believe Android devices do. Don't know about other devices used on the go. The other open option I can think of is Opus. I've not put it through its paces, I really should. But it aims at least to be good for this sort of thing. But I'm really not at all sure what software support is like yet, either for encoding or listening. Anyone know? Are there any other options that are worth looking at? Geoff. _______________________________________________ Icecast mailing list Icecast at xiph.org http://lists.xiph.org/mailman/listinfo/icecast
If you do further testing with Opus, please let us know your findings. I'm interested in this newer codec myself. I'm currently using vorbis for my radio station (similar to yours, a no-budget Internet station) and support for it is limited (nothing on iOS that I know of, and Android (AFAIK with my very old Android phone) doesn't support it OOTB (but XIAA Live Lite handles vorbis streaming wonderfully). I've looked into having a generic (but customizable) Android/iOS radio player developed that centers on open codecs such as Vorbis/Speex/Opus. Who's willing to chip in with me to get it done? :) Would be really cool to have a definitive player that we could refer people to. - Jordan On 08/01/2012 01:50 PM, Geoff Shang wrote:> Hi, > > Up until now, I've been providing narrowband streams at 24kbps MP3. We've > reluctantly been using MP3 instead of say Ogg Vorbis due to wider > support. > > But it's getting to the point where low bitrate MP3 doesn't really cut it > anymore. With technologies like AACPlus out there in common usage, people > have come to expect better and one can hardly blame them. > > So I thought I'd start a thread on low bitrate streaming in order to find > out what people are using and how. > > There seem to be two issues. The first is which format to use and the > second is how to go about transcoding into said format. > > Right now we're using StreamTranscoderv3 to do our transcoding. It can > turn around our broadband stream as a narrowband stream without any > intervention. I've successfully used it to turn around streams as MP3 and > Ogg Vorbis. It's also meant to support AAC and AACPlus, but I've not > managed to figure out how to enable this under Linux or how I would > particularly get it to be able to do AACPlus. > > I considered going so far as to try Nullsoft's sc_trans v2 to encode > AACPlus, but it seems it cannot connect to an existing stream and relay > it, it can only have a stream connect to it. I don't see how I can get > our existing Icecast stream to be relayed to sc_trans as Icecast does not > do push relaying, so this option would appear to be out. > > I also took a brief look at Liquid Soap for doing this. It would appear > that it can, but it looks like a lot of work to deploy for a relatively > simple task. Still, I'd consider it if it will do the job. > > This of course leads to the broader question of which format to use. For > us, the chief concern is device support. While a lot of people get around > this issue by writing their own apps with built-in decoders, this isn't a > direction I'd particularly want to go in unless there's something out > there that's fairly generic and can be easily customisable. Our station > is a volunteer outfit with no budget, so my strong preference would be for > us to use a natively supported format so that it "just works". > > As mentioned, I'm looking to depricate MP3. It's really not possible to > get 44.1 kHz MP3 under 56 kbps, and that only in mono. This isn't really > "narrow" enough for my tastes. > > I'm not a big expert on AAC, but it seems to me that plain AAC (no > "plus") doesn't really offer much over and above MP3. Certainly, samples > I've heard of 56 kbps AAC streams at 44.1 kHz stereo are rolled off to 5 > kHz audio, making it sound worse than MP3 at the same rate using 22.05 kHz > samples. But there's so many AAC parameters that I'm by no means an > expert on this. > > From the little I've seen, the favoured option for lower bitrate streaming > seems to be AACPlus. And it's not surprising given how good it sounds. > I'm not so sure about device support though, and encoding it is a bit of > an issue (see above). There is libaacplus, but streamTranscoderv3 doesn't > *appear* to support it. I think Liquid Soap might though. There's also > something called AACPlusEnc but I can't seem to get to its home page. > > While we're considering non-free options, Windows Media Audio would seem > to be out due to the desire to encode under Linux, and people seem to be > moving away from Real Audio. > > Of course, I'd prefer to use something open if people can actually listen > to it. There would appear to be the following options: > > Ogg Vorbis: Using oggenc with libvorbis 20100325 (1.3.1) at quality -1 > with a 44.1 kHz mono source, I can get the bit rate down to about 34 > kbps. Stereo is more like 40 kbps. It actually sounds pretty good. > Maybe if I took it down to 32 kHz > it would go a little ower, or perhaps the quality -2 mode that at least > was available in the aoTuV encoder would get it lower with perhaps a > little more quality loss. I've not actually tried lower bitrate stuff in > either vorbis encoder for some time. > > Encoding Ogg Vorbis won't present any problems. My concern about Ogg > Vorbis is support in mobile devices. I know that iOS devices don't > support it natively. Do any stream players for iOS support it, like say > Tunein Radio? I believe Android devices do. Don't know about other > devices used on the go. > > The other open option I can think of is Opus. I've not put it through its > paces, I really should. But it aims at least to be good for this sort of > thing. But I'm really not at all sure what software support is like yet, > either for encoding or listening. Anyone know? > > Are there any other options that are worth looking at? > > Geoff. > _______________________________________________ > Icecast mailing list > Icecast at xiph.org > http://lists.xiph.org/mailman/listinfo/icecast-- Jordan (PGP: 0xDA470FF8)