VideoStream SDK for iOS

VideoStream SDK for iOS

Released 5 years ago , Last update 2 years ago

A powerful video streaming Objective-C framework for iOS devices with support for multiple protocols & formats (mms, http, rtsp, rtmp, mjpeg). Built with FFmpeg, OpenGL ES 2.0 & Apple's AudioUnit.


An Objective-C Video Streaming Framework for iPhone and iPad

Apple's video streaming solution is very limited - it supports only http streaming and h264 video codec, while being closed-source, rendering the task of streaming video much more difficult than it should be.

This framework extends the native solution with the following:

  • Supports streaming protocols not supported natively
  • Supports additional codecs not covered by Apple's solution
  • Can be customized, configured and fine-tuned (such as buffering duration, audio or video raw data)


  • Stream video from multiple protocols (http, mms, rtsp & rtmp)
  • Supports all popular audio & video codecs
  • Audio & video syncing
  • Very easy to use (similar to Apple's MPMoviePlayerViewController API)
  • Look & feels like Apple's MPMoviePlayerViewController
  • Works with WIFI & 3G
  • Shows detailed stream information (audio & video codecs, total streamed data in bytes, connection type)
  • Works on all iOS devices (iPhone 4/4S, iPhone 5, 5S, 6, 6+ and all iPads), and supports all screen types and rotation alignments
  • Supports pausing stream
  • Supports streaming in background
  • Robust error handling

Version 3.1 release notes

  • Updated for iOS 9 & XCode 7
  • iOS VideoKit engine is used under the hood
  • Deployment target is set to 7.x
  • Bitcode enabled
  • Free version with Ad Support (banner and interstitial) added 


  • Free version with ads and Single App License: Decoder Binary + UI source code.
  • All other licenses includes the full source code of the decoder.
  • Detailed documentation with integration instructions.
  • Demo Xcode project.
  • Fully automated FFmpeg build scripts that will build universal static libraries for the armv7, armv7s and i386 architectures.
  • Pre-built FFmpeg universal static libraries
  • Free version with ads has same features with the original version except it displays banner and interstitial ads during playback on revenue sharing model. That means the income from advertisements is shared among client and SDK owner with 40% 60% ratio. To do this client needs to provide Google Admob ad unit id's for banner and interstitial ads.

Download the FREE version with ads and see how simple it is to add video streaming functionality to your app.

  • 5 5
  • 4 1
  • 3 0
  • 2 0
  • 1 0
6 Reviews Read Reviews



Dev License (3 apps + Decoder source code)

  • Perpetual license

  • 3 applications

  • Can distribute binary products only

  • Commercial use

  • 3 months support


Dev License (7 apps + Decoder source code)

  • Perpetual license

  • 7 applications

  • Can distribute binary products only

  • Commercial use

  • 6 months support


Distributor License

  • Perpetual license

  • 50 projects

  • Can distribute code and binary products

  • Commercial use

  • 12 months support


Enterprise License (Unlocked)

  • Perpetual license

  • Unlimited projects

  • Can distribute code and binary products

  • Commercial use

  • 12 months support

Need custom services for this product? Get a quote


iOS 6.0 SDK or above is recommended for compiling the VideoStream SDK. However, if necessary, VideoStream SDK can be built for iOS 5.0 with small modifications.

The VideoStream SDK requires the following Apple frameworks:

  • SystemConfiguration (used in Reachability framework by Apple)
  • MediaPlayer (needed by MPVolumeView)
  • AudioToolbox (needed by AudioUnit)
  • OpenGLES (used when rendering pictures to screen)
  • QuartzCore (used to draw StreamInfo view)

And the following frameworks for connecting to stream, decoding Audio&Video packets and similar functionality:

  • libz
  • libavcodec
  • libavformat
  • libavutil
  • libswscale

How to use

Using VideoStreamSDK is similar to Apple's MPMoviePlayerViewController API.

1) First, add include file (#import “VSPlayerViewController.h”) to your parent ViewController

alt text

2) Call VSPlayerViewController with a valid URL

//Call below for example when pressed a button

VSPlayerViewController playerVc = [[[VSPlayerViewController alloc] initWithURL:urlString decoderOptions:NULL] autorelease];

playerVc.barTitle = [channel name];

playerVc.statusBarHidden = YES;

[self.navigationController presentViewController:playerVc animated:YES completion:NULL];

3) You're done!

6 licenses, starting from From » FREE View Licenses

Get A Quote

What do you need?
  • Custom development
  • Integration
  • Customization / Reskinning
  • Consultation
When do you need it?
  • Soon
  • Next week
  • Next month
  • Anytime

Thanks for getting in touch!

Your quote details have been received and we'll get back to you soon.

or Get a quote

for customization or integration services

Or enter your name and Email
  • RG rivki glick 12 months ago
    hi how can i add VideoStream SDK for iOS in to my project to test it?
    • Tarum Nadus Publisher 12 months ago
      Hello Rivki, in VideoStreamSDK folder there is a documentation pdf file and it shows how to integrate. If You encounter a problem, please let me know.
    • RG rivki glick 11 months ago
      hi thank you for your help i have added the VideoStream SDK according to the pdf file that is added to the example project but i get this error: .../VideoStreamSDK/3rd-party/cmdutils.c:33:10: 'compat/va_copy.h' file not found
    • Tarum Nadus Publisher 11 months ago
      This error is taken when the user is not adding VideoStreamSDK folder to the root of the project in xcode. Please check it and be sure that VideoStreamSDK folder is added in the root of Xcode project.
    • RG rivki glick 11 months ago
      yes it's in the root of the project
    • Tarum Nadus Publisher 11 months ago
      OK, then please remove the sensitive code from your project and send it to the I need to see and let you know the issue.
    • RG rivki glick 11 months ago
      ok thank you
    • RG rivki glick 11 months ago
      hi i have send you the project from my email a week . ago did you check it?
    • Tarum Nadus Publisher 11 months ago
      I am sorry, I missed it. I've just look at it, and fixed the issue and send it to you via email.
    • RG rivki glick 10 months ago
      does the SDK works with CocoaPods in the project ?
  • J jack 1 year ago
    i can help you for the same
  • CA Chris A 1 year ago
    For our application we have h264 video frames in buffers and PCM audio frames in buffers each with PTS. Does your library support playing synchronized video and audio from buffers?
    • Tarum Nadus Publisher 1 year ago
      Hello Chris, Currently, this is not supported but If custom context is implemented for ffmpeg, it can be achieved