All Projects → opentok → Opentok Ios Sdk Samples Swift

opentok / Opentok Ios Sdk Samples Swift

Licence: mit
Sample applications using the OpenTok iOS SDK in Swift

Programming Languages

swift
15916 projects

Labels

Projects that are alternatives of or similar to Opentok Ios Sdk Samples Swift

Lawsroom
Group video chat on your browser. [No plugin required]
Stars: ✭ 87 (-17.14%)
Mutual labels:  webrtc
Webrtc voiceengine
This is the Wrapper Library for WebRTC Voice Engine. Including Acoustic Echo Cancellation (AEC), Noise Suppression (NS), VAD (Voice Active Detection) and so on.
Stars: ✭ 95 (-9.52%)
Mutual labels:  webrtc
Rn Voice Video Call
Usage of WebRTC for voice & video call with peer-to-peer or conference with Login and Register screen using response & Async storage with Call Dis/Connect, Failed and Idle views in react native. Youtube:
Stars: ✭ 100 (-4.76%)
Mutual labels:  webrtc
Libcrtc
WebRTC C++ library built on top of chromium webrtc.
Stars: ✭ 89 (-15.24%)
Mutual labels:  webrtc
Browser Phone
A fully featured browser based WebRTC SIP phone for Asterisk
Stars: ✭ 95 (-9.52%)
Mutual labels:  webrtc
U2web
stream video with p2p
Stars: ✭ 97 (-7.62%)
Mutual labels:  webrtc
Mediasoup3 Record Demo
Simple Record Demo using Mediasoup 3 and GStreamer
Stars: ✭ 84 (-20%)
Mutual labels:  webrtc
Opentok Network Test
Sample app to test network connectivity and statistics (bps, packet-lost)
Stars: ✭ 104 (-0.95%)
Mutual labels:  webrtc
Ice
WIP RFC 8445 ICE implementation in go
Stars: ✭ 95 (-9.52%)
Mutual labels:  webrtc
Kamailio
Kamailio - The Open Source SIP Server for large VoIP and real-time communication platforms -
Stars: ✭ 1,358 (+1193.33%)
Mutual labels:  webrtc
Peerjs
Simple peer-to-peer with WebRTC
Stars: ✭ 9,888 (+9317.14%)
Mutual labels:  webrtc
Opentok React
React components for OpenTok.js
Stars: ✭ 93 (-11.43%)
Mutual labels:  webrtc
Learning Webrtc
Codes and notes while learning webrtc
Stars: ✭ 98 (-6.67%)
Mutual labels:  webrtc
Sip.js
A simple, intuitive, and powerful JavaScript signaling library
Stars: ✭ 1,282 (+1120.95%)
Mutual labels:  webrtc
Cloud Game
Web-based Cloud Gaming service for Retro Game
Stars: ✭ 1,374 (+1208.57%)
Mutual labels:  webrtc
Multihack Web
Realtime collaboration for programmers. (Web Version)
Stars: ✭ 85 (-19.05%)
Mutual labels:  webrtc
Mediasoup Client Android
mediasoup android client side library https://mediasoup.org
Stars: ✭ 96 (-8.57%)
Mutual labels:  webrtc
Callroulette
A WebRTC demo using Python (asyncio + aiohttp) as the backend
Stars: ✭ 104 (-0.95%)
Mutual labels:  webrtc
Translator
Translator.js is a JavaScript library built top on Google Speech-Recognition & Translation API to transcript and translate voice and text. It supports many locales and brings globalization in WebRTC! https://www.webrtc-experiment.com/Translator/
Stars: ✭ 103 (-1.9%)
Mutual labels:  webrtc
Quickblox Javascript Sdk
JavaScript SDK of QuickBlox cloud backend platform
Stars: ✭ 98 (-6.67%)
Mutual labels:  webrtc

Build Status

OpenTok iOS SDK Samples

This repository is meant to provide some examples for you to better understand the features of the OpenTok iOS SDK. The sample applications are meant to be used with the latest version of the OpenTok iOS SDK. Feel free to copy and modify the source code herein for your own projects. Please consider sharing your modifications with us, especially if they might benefit other developers using the OpenTok iOS SDK. See the License for more information.

Quick Start

  1. Get values for your OpenTok API key, session ID, and token. See Obtaining OpenTok Credentials for important information.

  2. Install CocoaPods as described in CocoaPods Getting Started.

  3. In Terminal, cd to your project directory and type pod install.

  4. Reopen your project in Xcode using the new .xcworkspace file.

  5. In the ViewController.swift file, replace the following empty strings with the corresponding API key, session ID, and token values:

    // *** Fill the following variables using your own Project info  ***
    // ***            https://tokbox.com/account/#/                  ***
    // Replace with your OpenTok API key
    let kApiKey = ""
    // Replace with your generated session ID
    let kSessionId = ""
    // Replace with your generated token
    let kToken = ""
    
  6. Use Xcode to build and run the app on an iOS simulator or device.

What's Inside

Basic Video Chat -- This basic application demonstrates a short path to getting started with the OpenTok iOS SDK.

Custom Audio Driver -- This project demonstrate how to use an external audio source with the OpenTok SDK. This project utilizes CoreAudio and the AUGraph API to create an audio session suitable for voice and video communications.

Custom Video Driver -- This project provides classes that implement the OTVideoCapture and OTVideoRender interfaces of the core Publisher and Subscriber classes. Using these modules, we can see the basic workflow of sourcing video frames from the device camera in and out of OpenTok, via the OTPublisherKit and OTSubscriberKit interfaces.

Live Photo Capture -- This project extends the video capture module implemented in project 2, and demonstrates how the AVFoundation media capture APIs can be used to simultaneously stream video and capture high-resolution photos from the same camera.

Screen Sharing -- This project demonstrates how to use a custom video capturer to publish a stream that uses a UI view (instead of a camera) as the video source.

Simple Multiparty -- This project demonstrates how to use the OpenTok iOS SDK for a multi-party call. The application publishes audio/video from an iOS device and can connect to multiple subscribers. However it shows only one subscriber video at a time due to CPU limitations on iOS devices.

FrameMetadata -- This project shows how to set metadata (limited to 32 bytes) to a video frame, as well as how to read metadata from a video frame.

Obtaining OpenTok Credentials

To use the OpenTok platform you need a session ID, token, and API key. You can get these values by creating a project on your OpenTok Account Page and scrolling down to the Project Tools section of your Project page. For production deployment, you must generate the session ID and token values using one of the OpenTok Server SDKs.

Development and Contributing

Interested in contributing? We ❤️ pull requests! See the Contribution guidelines.

Getting Help

We love to hear from you so if you have questions, comments or find a bug in the project, let us know! You can either:

Further Reading

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].