RadioTunes SDK for iOS

RadioTunes SDK for iOS

An audio streaming and recording SDK for iOS with support for the http and mms protocols. Plays mp3, aac, aac+ and wma audio streams. Includes documented Objective-C code of a demo XCode project, demonstrating usage.

A Powerful Audio Streaming Framework for building iOS radio stations!

RadioTunes SDK is written for iOS developers who want to add audio streaming / recording functionality to their app using a couple lines of code. Behind the scenes RadioTunes relies on the iOS AudioQueue framework and the open source LGPL licensed FFmpeg library.

If your app does not require mms/wma codec functionality you can also use the RadioTunes SDK without including the FFmpeg library. The code for mms streaming is completely separated from the code for http streaming so that you can choose which portions of code you want to include in your project.

Disclaimer: RadioTunes SDK can play all Window Media Audio version 9 streams but some streams based on version 10 could fail.

Download the FREE Trial now and see how simple it is to add audio playback functionality to your app.

Hide

Features & Package

Features

  • NEW FEATURE IN VERSION 2.1!
    • ASX playlist support.
  • NEW FEATURES IN VERSION 2.0!
    • Realtime audio recording.
    • Improved audio session management.
    • Bandwidth usage statistics.
  • Support for the http and mms protocols.
  • Supports mp3, aac, aac+ and wma audio streams.
  • PLS, M3U, ASX, XSPF and direct URL support.
  • Parsing of Shoutcast/Icecast metadata.
  • Automatic handling of interruptions like incoming phone calls.
  • Background playback.
  • Robust error handling.
  • Auto reconnect feature.
  • Works on Edge/3G/WiFi.

Package

  • Complete Objective-C source code of RadioTunes SDK.
  • Detailed documentation with integration instructions.
  • Demo Xcode project.
  • Fully automated FFmpeg build scripts that will build universal static libraries for the armv7 and i386 architectures.
  • Pre-built FFmpeg universal static libraries with support for the mms protocol and wma audio codec.
Hide

Documentation

Code Documentation

All public classes of RadioTunes SDK are documented using appledoc. See the documentation for further information.

Requirements

The source code of RadioTunes SDK is developed on Xcode 5.0 with iOS Base SDK 7.0. RadioTunes SDK works on a deployment target of iOS 5 or greater on armv7 and armv7s and can be used in ARC and non-ARC projects.

Integration

RadioTunes SDK can be integrated in two ways into your app.

1. Add the binary RadioTunes.framework

  • Drag RadioTunes.framework into the "Frameworks" group of your Xcode project.
  • Add the required libraries as shown in the screenshot below. You can add the FFmpeg libraries (libavcodec.a, libavformat.a, libavutil.a and libswresample.a) by dragging them from the "External/ffmpeg/lib" directory into your "Frameworks" group.
  • Open the Build Settings tab and apply the following changes:
    • Other Linker Flags -> -all_load -ObjC -lxml2
  • Add the "Required background modes" key to your project's plist file and set it's value to "App plays audio".
  • Add the following import statement everywhere you want to use RadioTunes SDK: #import <RadioTunes/RadioTunes.h> Binary

2. Add RadioTunes.xcodeproj as a dependency

  • Copy the whole RadioTunes folder into your project's root folder.
  • Drag RadioTunes.xcodeproj into the "Frameworks" group of your Xcode project.
  • Add RadioTunes as a target dependency.
  • Add the required libraries as shown in the screenshot below.
  • Open the Build Settings tab and apply the following changes:
    • Other Linker Flags -> -all_load -ObjC -lxml2
    • Add the following paths to "Header Search Paths":
      • $(SRCROOT)/RadioTunes/External/ffmpeg/include"
      • $(SRCROOT)/RadioTunes/RadioTunes"
    • Add the following path to "Library Search Paths":
      • **$(SRCROOT)/RadioTunes/External/ffmpeg/lib"
  • If your project uses ARC, open the Compile Sources section in the Build Phases tab. Add the -fno-objc-arc compiler flag to all .m source files belonging to RadioTunes SDK!
  • Add the "Required background modes" key to your project's plist file and set it's value to "App plays audio".
  • Add the following import statement everywhere you want to use RadioTunes SDK: #import "RadioTunes.h" Source

Sample Usage

YLHTTPRadio *radio = [[YLHTTPRadio alloc] initWithURL:[NSURL URLWithString:@"http://someurl"]];
[radio play];

YLMMSRadio *radio = [[YLMMSRadio alloc] initWithURL:[NSURL URLWithString:@"mms://someurl"]];
[radio play];
[radio startRecordingWithDestination:filePath];    
You need to log-in or create an account
  • Create an account
  • Log-in
Please use your real name.
Activation link will be sent to this address.
Minimum 8 characters
Enter your password again

Clicking this button confirms you read and agreed to the terms of use and privacy policy.

X

Save your watchlist

Fill your details below to receive project updates from your watch list - including new versions, price changes and discounts.

I agree to the terms of use and privacy policy.

4 licenses, starting from From » $199.99 14 day money-back guarantee View Licenses
or Get a quote

for customization or integration services

  • Awesome component, and even more awesome support. The developer is well experienced and had a respectable answer on every issue/question I encountered within the boundaries on the component and beyond. Two thumbs up!! keep up the great work.
    A arrows
    11 months ago, 0 comments
    Was this helpful?
    Flag 2 of 2 people found this review helpful
  • Great SDK, looks good, workes awesome !
    PR Patrick Rørth
    2 years ago, 0 comments
    Was this helpful?
    Flag 2 of 2 people found this review helpful
  • Nice SDK for mms! Very easy to use.
    S superkam
    2 years ago, 0 comments
    Was this helpful?
    Flag 2 of 2 people found this review helpful
Post a comment

Or enter your name and Email
  • H Hughes 2 months ago
    HI Kemal, Thanks for the URL. I did download the demo app and build it. I tried the wma and mp3 streaming and they worked. But the aac+ streaming didn't work. It just displayed "Network connection error". I was running the app on iOS simulator. Is there something wrong with the aac+ streaming? Thanks again.
    • Kemal Taskin Developer 2 months ago
      Hi Hughes, If you get a "Network connection error" it means that the stream is not reachable or available. Can you share the aac+ url?
    • H Hughes 2 months ago
      The aac+ URL is in "MainViewController.m" of the demo project: http://46.20.4.43:8130/listen.pls I used this URL on Safari browser and still didn't work. It just said "Safari can't connect to the server". However, I tried an MP3 URL (http://stream.radiojavan.com/radiojavan) on Safari it worked just fine.
    • Kemal Taskin Developer 2 months ago
      The AAC+ url is currently not accessible. The server hosting it could be down.
  • H Hughes 2 months ago
    I clicked the "VIEW DEMO" button but nothing happened. Following is the URL: http://www.binpress.com/app/demo/app/596 Thanks.
  • H Hughes 2 months ago
    Hi, Does RadioTunes SDK support all the following formats: • AAC+ 256K • FLAC 854K • MP3 1141K (CD quality) Thanks in advance.
    • Kemal Taskin Developer 2 months ago
      Hi Hughes, AAC+ and MP3 are supported but FLAC isn't. The best way to find out is by downloading the demo and trying out the streams you're interested in.
    • H Hughes 2 months ago
      Thanks for your quick reply, Kemal. Still have some other questions: 1. So, any bit rate of AAC+ (eg. 256K) and MP3 (e.g. 1141K) are fully supported by RadioTunes SDK. Is it correct? 2. Does the SDK support Mac OS X applications? 3. I am not a license holder yet. How should I download the demo? Thanks again.
    • Kemal Taskin Developer 2 months ago
      I'm using the native iOS AudioQueue API to play AAC+ and MP3 streams. The only way to find out if your bit rate is supported is by downloading the demo. You can download the demo by clicking the "View Demo" button at the top of this page. You can also put the URLs here if you want me to quickly test them for you. Mac OS X is currently not supported but you can request a quote (See the "Get a Quote" button on the right of this page) to get RadioTunes SDK ported to the Mac OS X platform.