RadioTunes SDK

RadioTunes SDK

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.

  • Language: Objective-C
    Framework: UIKit
    Platform(s): iPad
  • Released: Oct 11, 2011
    Last Update: Nov 23, 2014

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.

Proudly used by

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, armv7s, arm64, x86_64 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.1 with iOS Base SDK 7.1. RadioTunes SDK works on a deployment target of iOS 6 or greater on armv7, armv7s, arm64 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];    
Hide

F.A.Q

I am developing an application for a customer. Which license should I use? The single app license cannot be used for building applications for your customer since the license cannot be sub-licensed nor transferred to your customer. In that case you will either have to purchase a developer license or have your customer purchase a single app license which you can then use to develop the application. However purchasing the Developer license will be a valuable investment which will pay off if you'll use it in more than one client project.

What's the difference between the Developer and Enterprise license? Both the Developer and Enterprise license allow usage in unlimited number of apps. The only difference is that the Enterprise license doesn't require license key activation. This is especially useful if you offer a product that generates custom iOS apps on demand.

Is it possible to upgrade between different licenses? An upgrade is possible. Contact us for more information or browse to the "My Purchases" section to upgrade your license.

My license is expired. What does this mean? Each of our licenses include 1 year free updates. If you want to keep receiving new updates and support you can do so by paying a renewal fee which is about 25% of the current license price. If you don't renew your license you can still keep using the version you have on hand. It will keep working without any restrictions.

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 » $349.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
    1 year 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
    3 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
  • S Sergio 3 weeks ago
    I would like to know if the previous versions of the sdk will continue working because I have my app already published on the store and now I read that you add a license key verification. So, my app will continue working or I need to update it immediately? Thank you.
    • Kemal Taskin Developer 3 weeks ago
      Hi Sergio, Your app will continue to work. If you want to use the latest version however you should request a license key.
  • M Michael 2 months ago
    i try to use this sdk,but there is i want to know where can i find the world popular radios mms to add to my app
    • Kemal Taskin Developer 2 months ago
      Hi Michael, I won't be able to help you with that. I'm sure you'll find some mms radio list by searching Google.
  • B BB 2 months ago
    any new upcoming features?