can we use Exoplayer for Websites? - amazon-web-services

I am working on an AWS cloud project which involves video streaming. For this case, a media player needs be to used is Exoplayer along with required AWS services but I am not able to find anything regarding Exoplayer's use on Websites. Can anyone help me with the usage of Exoplayer for web applications?

ExoPlayer is an Android player - for websites, you would typically use a HTML5/JavaScript player assuming your service is using a typical video streaming technology such as HLS or DASH.
OpenSource HTML5/JavaScript players are readily available:
https://github.com/videojs/video.js
https://github.com/shaka-project/shaka-player
There are also multiple commercial players also like BitMovin, TheoPlayer, JWPlayer etc.

Related

Periscope-like application architecture

Are there any cloud services that will greatly simplify Periscope-like application development? We also need to record (archive) live streams for further playback on mobile devices.
I see that many well-known cloud services like Azure Media Services or AWS Elemental Media Live have a low default limit for maximum number of live channels, like 5-10.
See a response to a similar question here. Others have tried using products from Wowza, building and managing their own deployment of VMs running their streaming engine.

Accessing microphone from a service on Glass

I would like a service to access the microphone (and do some signal processing on it a bit like what the google music is doing to recognise songs)
Is there a public API for that ? can't seem to find it :/
Have you tried the AudioRecord class in Android? That should do everything you need. You might also find the waveform sample on the Google Glass GitHub page to be a useful example.
Keep in mind that recording audio from a service (as in a background service) might be dangerous since other applications could need the microphone for voice recognition and so forth. Using an immersion for this might be a better approach.

How to stream video in a django app

I'm looking to stream video's as part of a django app, but I've never done anything with video and don't really know where to start. I don't have all the details of the project yet, but I'm expecting a fairly small library of videos uploaded by one or two people (Think less than 100 videos of about 5 mins length).
I'm looking for a solution that allows users to upload videos using django admin. I want to reach the majority of desktop browsers (95%+), and obviously I want to keep my costs down. Saying that I do like the idea of using some sort of cloud based CDN (I've no idea if that's possible / appropriate for this size of project)
I really want to ask if anyone can point me int he right direction (tutorials / services / projects / code), but I realise that might not be specific enough.
So to be more specific -
Is it possible to stream video to browsers using just django and an apache web server?
What cloud hosting providers will support easy integration with a django app?
Will I need to convert the format of my video's before they're ready to stream?
Can I use Red5 with a cloud hosting solution.
I want to host the project on a Ubuntu server that I use to host a
couple of other (low traffic) django apps - would it be a mistake to install Red5
on a server with existing sites.
From recollection, the server has 12GB RAM and 4 cores (in a 1and1
uk datacentre). Will I have enough power / bandwidth to stream say 3-5 video's simultaneously? (assuming red5 / wowza).
I'm not interested in Flash because I was rooting for Apple. Do I
need to need to re-evaluate my prejudices to be free of my ignorance?
I never streamed videos using Django/Python, but I have some experience in the field of streaming video in frontend apps. I can certainly not answer all your questions. In my experience it does not really matter where the video is hosted, a CDN is fine if you want to distribute the video world-wide.
I personally think you should start with the question on how you want to play the video in the browser. Choose an appropriate video player (could be html5 video) and you have an idea of what is possible to play and what not.
3) The format matters depending on how you want to stream the video. Progressive download (e.g. mp4)? Live streaming (unprogressive, e.g. HLS)? You can find example videos online and test if your video player can play the videos on the platform you want to support.
7) As said, you need to check out which player to use in this case. HTML5 video is not widely supported enough yet in my opinion, but can play most formats in the most modern browsers (Chrome, Safari).
Hope that helps.

Akamai Integration

I want to use Akamai to store files. I want to know whether Akamai provides any API (e.g. web services) for us to upload, download, list files? Appreciate if anyone could provide some documents for a newbie.
Another question is, if I upload video files to Akamai, does it provide video streaming capability?
Akamai provide an API to allow your customers to download files.
From their web site it is called "Client-side Downloads"
Client-side Downloads offers the ability to offload a significant
portion of edge delivery onto a managed and secure network of clients
- using client-to-client delivery - to provide a lower cost download
solution that respects the clients. Good uses may include software
downloads, patches, and updates, background software and drivers, and
downloadable video and games used by about a thousand or more people.
http://client.akamai.com/misc/demos
Here is further detail on how to interact with their API
http://client.akamai.com/misc/demos/csd-index.html
I was at their presentation the other day and they spoke about a Video Stream product coming out mid to late 2012.
I ran into another company that did video hosting and streaming called Movideo

Speech recognition (web) services?

I have a buffer of audio and I'd like to perform speech recognition/transcription on it. I have limited CPU and RAM locally so I want to perform recognition on a server.
Are there any (web) services that allow me to do this?
My searches so far have led nowhere...
Google has just introduced browser-based access to its speech engine through HTML5.
http://slides.html5rocks.com/#speech-input
To get this page to work, I launched the Chromium browser as follows in Ubuntu:
$ chromium-browser --enable-speech-input
I believe that the idea is to be able to build applications that use Google's speech recognizer, but I haven't had a chance to look deeply into it.
Another interesting project is WAMI from MIT:
http://wami.csail.mit.edu
Lumenvox offers such a service but seems expensive for your needs.