Skip to content

Vonage/vonage-video-windows-sdk-samples

Vonage Windows SDK Samples

This repository provides sample applications for you to better understand the features of the Vonage Windows 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 Vonage Windows SDK. See the License for more information.

Quick Start

  1. Get values for your Vonage Application ID, Session ID, and Token. See Obtaining Vonage Credentials for important information.

  2. In Visual Studio, open the .sln solution file for the sample app you are using (CustomVideoRenderer/CustomVideoRenderer.sln, ScreenSharing/ScreenSharing.sln, or SimpleMultiparty/SimpleMultiparty.sln).

  3. Open the MainWindow.xaml.cs file for the app and edit the values for APP_ID, SESSION_ID, and TOKEN to match Application ID, session ID, and token data you obtained in step 1.

NuGet automatically installs the Vonage SDK when you build the project.

Test on non-development machines: Vonage SDK includes native code that depends on Visual C++ Redistributable for Visual Studio 2015. It's probably already installed on your development machine but not on test machines. Also, you may need 32-bit version even if all your code is AnyCPU running on a 64-bit OS.

What's Inside

BasicVideoChat

This app shows how to implement a simple video call.

BasicVideoChatWinForms

Similar to BasicVideoChat but using WinForms as the presentation framework.

BasicVideoChatUWP

Similar to BasicVideoChat but using UWP as the presentation framework. Keep in mind that this sample only works for a windows desktop UWP app. For a general UWP app that works on any UWP enabled platform (windows phone, hololens, XBOX, etc.), UWP SDK must be used instead (check nuget package Vonage.Client.Video.UWP).

SimpleMultiparty

This app shows how to implement a video call application with several clients.

CustomVideoRenderer

This app shows how to use a custom video renderer. Most applications work fine with the default renderer (VideoRenderer) included with the Vonage Windows SDK. However, if you need to add custom effects, this sample application provides an understanding of how to implement a custom video renderer.

ScreenSharing

This app shows how to publish a screen-sharing stream to a session. This implements a custom video capturer to capturer to capture the screen as the video source for an Vonage publisher.

FrameMetadata

This app shows how to add metadata to video frames in a published stream and how to read the metadata in a subscriber to the stream. It also shows to to use a very simple custom video capturer and custom video renderer.

AudioDeviceNotifications

This app shows more advanced management of audio devices with notifications capabilities that allow detecting when new devices are added, removed or the default selection is changed at windows OS level.

FileAudioSource

This sample implements the renderer subsystem of a custom audio device (IAudioDevice) to read audio from a file and use it as input for the audio stream of a publisher.

Transformers

This sample shows how to leverage the media processing API to apply transformations to the video and audio streams. The sample uses both custom transformers and standard transformers like blur and noise suppression provided by Vonage. For the latter, and additional package "Vonage.Client.Video.Transformers" is required.

AudioRecording

This sample uses the AudioData API to record the audio received by a subscriber and save it to a wav file.

CustomAudioFileCapturer

This sample implements the capturer subsystem of a custom audio device (IAudioDevice) to record received audio to a wav file.

Obtaining Vonage Credentials

Step by step tutorial

To use the Vonage platform you need a session ID, token, and APP ID. You can get these values by creating a project in your Vonage Dashboard, using the project Tools. For production deployment, you must generate the session ID and token values using one of the Vonage 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

About

Sample applications for windows using the Vonage SDK

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages