I understand that the question is very old, although I would like to contribute to it, since I am also working on a similar application
There are many available for recognizing faces, emotions and voices now, find below some parameters
1) Face recognition and recognition using OpenCV: http://ahmedopeyemi.com/main/face-detection-and-recognition-in-c-using-emgucv-3-0-opencv-wrapper-part-1/
Pro: open source, so mostly free. You can change the code to suit your needs. Multiple platforms supported.
Con: Accuracy is acceptable, but not great. This can be solved by modifying the library to suit your needs.
2) Face recognition and emotion recognition: try the Microsoft Cognition Service API
Pro: very accurate. It includes many other services, such as NLP, speech to text, text to speech, computer vision, RT language translator, etc. The accuracy is great because the services are hosted on the cloud and are trained for each data entry.
Con: Paid solution. A bit expensive. You must pay for each service separately.
3) Speech recognition: Google Voice Pro API: similar to serving MS. Accuracy is better in noise. con: Paid. It may not be good for one commercial commercial product
4) Speech recognition and NLP: wit.ai/api.ai Pro: Free. Can use data from other public applications. Accuracy is good. Con: I do not find any
Try a few more links as follows. May help a bit.
Security system based on the MS Face API https://www.hackster.io/peejster/facial-recognition-security-system-c6ca6c