We are happy to announce that video calls that use H.264 video codec can now be recorded. Recorded video calls that use H.264 will be stored as mp4 files (calls with video in VP8 format are stored as webm files). There are few ways to enable H.264 in your video calls:
– Use H264first Config param (Web SDK)
– Use H264first flag in CallSettings (Web SDK)
– Mobile SDKs are being updated to let developers enable H264 in video calls
According to the following research from Chris Koehncke using H.264 instead of VP8 can save up to 50% in terms of power consumption https://www.chriskranky.com/webrtc-impacts-on-battery-life/ , in addition to that mp4/avc is widely used and supported by most players in both online and offline worlds.
See the example of video recording below (Firefox->Voximplant, no post-processing)
P.S. Feel free to ping us if you have any problems with video call recording
Dear Voximplant developers, we are happy to announce that Voximplant now supports VoIP Push Notifications for calls to iOS SDK. We tried to make everything as simple for developer as possible; the following steps are required to enable VoIP Push Notifications for your app:
1. Upload your Apple VoIP Push certificate at https://manage.voximplant.com/#certificates and specify (bind) Voximplant application(s) where you will be using VoIP Push functionality
in the beginning of your VoxEngine scenario
3. Now VoxEngine’s callUser and callUserDirect functions will start using VoIP Pushes to notify the SDK about incoming calls. (same applies to helper functions: forwardCallToUser and forwardCallToUserDirect)
4. Get new version of iOS SDK at http://voximplant.com/docs/references/mobilesdk/ios/
P.S. Android Push support is on its way to production, expect it right after the New Year in January 2017!
- Support for audio calls in Microsoft Edge. With Microsoft recently updating the browser’s web and audio support, Voximplant is one of the first companies to make its platform compatible with Edge. With Web SDK 4.0, web apps are empowered to handle incoming and outgoing voice calls from within the Edge web browser. Video calls in Edge will be functional as soon as VP9 or h.264 codec support is added to the browser.
- Video can be enabled during an existing audio call. Now developers can create web apps that offer a Skype-like “enable video” option during active audio calls. Video can be enabled or disabled at any time during the call.
- Both local and remote audio and video streams can be modified by applying filters. Developers can now modify video and audio streams in realtime. Possible applications of this feature include using video and audio filters to add watermarks, hide or alter faces, mask voices, etc.
- h.264 video codec can be set as “high priority”. The “h.264” video codec is known for its valuable speed in modern hardware, especially in mobile devices. Developers can now force this codec to provide better video quality with less CPU usage.
Additional enhancements include:
- Reduced latency of audio and video calls.
- Improved syncing between audio and video tracks.
- Calls within the Chrome browser now maintain better performance – even with poor network conditions.
- Audio and video codec priorities can be manually configured.
- Full support for WebRTC to offer users the best in voice and video quality.
New SDK also supports asynchronous initialization and drops support for Flash, which can still be used with legacy systems via 3.x versions of the SDK. Complete documentation for Voximplant’s Web SDK 4.0 beta can be found at https://voximplant.com/docs/references/websdk4/
This post is short and simple: your mp3 or ogg files played on VoxEngine scenario level with call.startPlayback or using Player will be played on the Web or Mobile SDK side in HD quality (48KHz), or on SIP side if it does support wideband audio codecs (Speex or Opus). It also appeared that Opus has 3 encoding presets – auto / speech / music, currently we use auto, but maybe we will let developers decide which preset can be used on VoxEngine scenario level later.
One of the most popular scenarios for our Web/Mobile SDK is about enabling true click-to-call/tap-to-call function in web and mobile applications. True click-to-call means that it’s not about callback version when a call is initiated from the platform to both parties and connects them together, it means that call is initiated from the client side and goes via IP to the platform and then routed to required destination. True click-to-call is cheaper, faster and offers better UX; of course, you need to have the internet connection to use it (shouldn’t be an issue these days). This tutorial explains how to easily embed click-to-call into your app using VoxImplant SDKs and setup call routing using VoxEngine scenarios.
We recommend to check our Quickstart before you proceed
We’ve been offering audio recording for a while, but our audio recorder was saving audio in 8KHz, since it’s the most used format in good old telephony and when we have calls to/from PSTN. When we work with VoIP endpoints that do support wideband audio (WebRTC, SIP, mobile SDKs) we can save audio with much better quality without downsampling it to 8KHz. We chose 48 KHz as the base sample rate for HD audio recorder, since WebRTC/Opus can offer this quality, audio from endpoints with lower sample rate will be re-sampled.
It’s easy to use HD audio recording, just add hd_audio parameter in the recorder params:
Feel free to start recording your calls in HD today, wideband audio conferencing is coming soon, stay tuned!
If you are embedding VoIP functionality into your web application then it’s a good idea to show end user some feedback from the system about his audio settings, especially related to his microphone / audio recording device. Combining the power of WebRTC , HTML5 and Web we can visualize audio stream coming from microphone after user allowed access to the device. The last version of Web SDK (3.6.294) provides developers with access to MediaStream object – it’s available as stream property of MicAccessResult event, or as successCallback function argument which itself is an argument of the following functions attachRecordingDevice, useAudioSource, useVideoSource, setVideoSettings.
It’s been awhile since we announced video calls support for VoxImplant. There are number of ways how developers can implement video calling with VoxImplant using Web/Mobile SDKs or SIP video phones as endpoints. If call is made in non-P2P mode then its media stream goes via our media servers and we can record it if required.
We like React Native and believe in its bright future, that’s why we created react-native-voximplant module.
A lot of people use video conferencing functionality in Skype, but Skype is standalone application and it’s hard to integrate it with your own service. VoxImplant lets developers embed similar functionality into any web or mobile application. This tutorial will explain how to build video conferencing service with dial-in/dial-out functionality (to connect PSTN participants) and browser-based client application using WebRTC capabilities and VoxImplant.
- Sep 21, 2017 12:03
- Safari 11 support
- Aug 17, 2017 11:59
- Messaging update
- Aug 14, 2017 03:22
- Hot Summer Speech-to-Text Updates
- Aug 02, 2017 12:47
- Screen Sharing in VoxImplant
- May 02, 2017 12:08
- H.264 video call recording is now available (in mp4 format)
- Apr 17, 2017 10:58
- Voximplant mobile SDK for Unity in now available
- Feb 13, 2017 10:22
- Authorization using tokens instead of passwords
- Feb 03, 2017 01:45
- Push Notifications for Android
- Feb 03, 2017 01:45
- Push Notifications for iOS
- Jan 19, 2017 08:38
- Speech-to-text: ASR
- September 2017
- August 2017
- May 2017
- April 2017
- February 2017
- January 2017
- December 2016
- November 2016
- October 2016
- September 2016
- July 2016
- June 2016
- April 2016
- March 2016
- February 2016
- January 2016
- December 2015
- September 2015
- August 2015
- July 2015
- May 2015
- March 2015
- February 2015
- January 2015
- December 2014
- November 2014
- October 2014
- September 2014
- July 2014
- June 2014
- May 2014
- April 2014
- January 2014
- December 2013
- November 2013
- October 2013
- September 2013
- August 2013