Voip conference implementation - audio

Hi I need some information on how to implement Voip (RTP) audio conference. I need an algorithm description. Can someone point me to relevant resource on web.

FreeSWITCH is a open source, which has a support for Audio conferencing upto 10,000 simultaneous calls (may be more). You may not find any conferencing algorithm lying open. Search for white papers on audio mixing.

The RFCs are the obvious starting points.
https://www.rfc-editor.org/rfc/rfc3550
https://www.rfc-editor.org/rfc/rfc3551
I'm not sure what algorithms you are asking for, but the RFCs contains algorithms for RTCP and other things.

Related

Portable api to get bluetooth audio latency?

We know that when we playe videos, there is usually a compensation for the latency of audio output device, to synchronise the sound and pictures.
To achieve this, one must have some way to know the value of the latency.
How is that achieved? Is there a portable api to get this value? This sounds very simple, but after searching a bit, I have not found anything. Latency is a complicated issue, but such an api should tell us about at least part of the latency. (If it is hard to find portable api, then platform-specific apis are also fine.)
It would be really helpful if I can find a simple demo implementation of a media player with latency compensation.

Getting started with Bluetooth Low Energy (BLE) beacon development

I have a couple of questions concerning BLE beacons:
1) Are beacons based on nRF51822 chip the best solution? Or are there any other chips better than nRF51822? I want to take up BLE beacon development and struggling to find the right hardware for these needs. As a novice developer I want the beacon to be as cheap as possible in order not to waste money in case of a failure.
2) Is it possible to buy pure Eddystone beacon (not iBeacon)? The reason for choosing Eddystone is that Eddystone is capable of broadcasting URLs that are essential for me.
The second question stems from my failed attempts to find a pure Eddystone beacon on Chinese electronics sites like alibaba.com or aliexpress.com where the only firmware available is iBeacon. But iBeacon is not an option because it can't broadcast URL the way Eddystone does.
Apart from the above questions It would be great if someone wrote a quick guide for taking up BLE development with Eddystone and covered basic topics like: chip to use, beacon model, best website to buy beacons at, etc.
Thanks in advance,
Pavel
1) I've worked with Estimote beacons and Chinese beacons from Amazon and in my opinion, they do not differ in terms of accuracy too much. Especially for prototyping, I'd buy cheaper ones to test if your use case can be satisfied with BLE beacons. If it is too inaccurate with Chinese beacons, chances are that it won't work with more expensive ones either.
2) Why do you need the URL broadcast? If the app is going to use the url, it would have to be connected to the internet. Therefore, you can just query the beacon's IDs to a web service to get back an URL and use that. Personally, I think this is a better approach as you can configure the web service from anywhere to change the url for beacons where as if you want to change the URL of the Eddystone, you have to go to the beacon to configure it.
The nRF51822 is a common implementation, is flexible, well understood and can be very inexpensive. Be aware though that development costs, add on circuitry for power and/or peripherals, and packaging can easily eclipse the Bluetooth chip when you get to production cost savings.
If you want to buy an off the shelf beacon, most models supporting Eddystone also support iBeacon, simply because supporting both adds no additional hardware cost. Newer Radius Networks and Estimote beacons all support both. And, yes, cheaper generic Chinese suppliers often have bulk manufactured inventory from before Eddystone existed at only support iBeacon.

Which developer roles or titles are needed to build a software DAW?

So far, I've used many different Audio Production software on Mac and Windows platforms. Often times, I ponder on the idea of creating my own DAW, but I realize that would be an extremely difficult challenge for a single person to undertake (especially if only knowledgeable in one particular area / language of programming).
There's a flood of ideas / features that comes to my mind just by the thought of some of the other DAWs I've used. From implementing MIDI in/out, Audio Routing, Mix Buses, VST support, User Interface for a Piano Roll and Song view, etc...
So my question is...
Which roles would be required in a team of developers to create a complete Digital Audio Workstation (DAW) Software?
I think the right answer is several good developers (you don't need so many, perhaps 3) a good product manager, an ui designer/graphist a lot of testers. And a good coffee machine.
The real problem is what kind of DAW do you want, portable on mac and windows, which OSs, which formats (vst 2, 3, AU, RTAS, AAX, rack extension, DX), do you want only MIDI and adio tracks, which external MIDI devices you want to support, do you support OSC, other protocols?
What will be the features of you mixer, integrated effects? What support of audio API on windows (wasapi, asio ...) do you want some cloud feature ? community or online store integration?
What kind of breakthrough would you have compared to cubase, live, PT, DP, Logic, garage band, bitwig, studio one, sonar, fl studio ...? Do you want modular patches or just tracks? Will you have advanced integrated controls or midi modifiers?
All that is the problem...
This is a very complex question!

Difference between SIP and H.323

What is the difference between SIP and H.323, I mean what are the salient features between them?
To start with ,
SIP is text based while H.323 is binary.
SIP is by IETF while H.323 by ITU.
SIP is basically request-response based like HTTP, while H.323 is not like that(is based on session).
What were the motivating factors which led to SIP's development?
How is one advantageous from other?
Both are relatively the same on the technical side - there are differences, but you can use both to run a VoIP service.
They both started at about the same time to develop, with H.323 gaining more traction in the beginning and SIP taking center stage in the past several years.
The main advantages of H.323 is the level of interoperability it provides in existing video conferencing equipment - something that can't be matched by SIP today (yet), and the fact that it holds most of the deployments of video conferencing in enterprises.
The main advantages of SIP is a larger ecosystem and dominance in voice calls and PBX systems. And the fact that it is viewed as the future of VoIP (at least to some extent).
I also wrote about it in the past in my company's blog: http://blog.radvision.com/voipsurvivor/2011/03/24/ask-an-expert-which-protocol-do-you-prefer-sip-or-h323/
H323 is familiar to telecommunications people. It reuses many concepts, terms and protocols from ISDN.
SIP is familiar to internet people. It's a lot like HTTP, re-uses all the response codes and standards like URI-s, uses the DNS well, etc.

QOS measurement tool?

Can anyone suggest a good audio QOS monitoring tool?
If its a open source one and freely available, it will be great. Its fine otherwise too.
Iam trying to measure QOS for a softphone on a PC and also on a mobile.
Try the following link and search for QoS: http://www.slac.stanford.edu/xorg/nmtf/nmtf-tools.html
Bear in mind that a users perception of the quality of a voice call is not an absolute thing so treat any results with this in mind. See: http://en.wikipedia.org/wiki/PESQ for one way (probably the most accepted way) to measure and score voice quality.
You can measure absolutely the delay and packet loss which may give you the information you need.
We have developed a tool for Measuring QoS for both Audio and Video and have some patented algorithms to find out the MOS for Video and used E-model for Audio MOS.
It has been tested on VoIP calls over LTE.
You can check one more tool from EMpirix called Hammer Call analyser or any Elecard tool as well.
But i don't know of any freeware tool in this domain.
I have done voice quality monitoring system for conferencing services provider. Tools used: Empirix Hammer and CallMaster. System in a nutshell: every so often two virtual participants called into conference call. Then each of them spoke a phrase and the other one measured PESQ score. Results were sent to another monitoring system. This worked well. I think PESQ measurement is the way to go for automated testing.

Resources