MPEG 4 / H.264

ffserver -formats



Webm VP8/9 encoding set - Royalty free encoding algorithms -
with variable bitrate - ffmpeg -i input.mp4 -c:v libvpx-vp9 -b:v 1M -c:a libvorbis output.webm

The Theora video format, Vorbis audio format, and Ogg container formats are an  "Modern Open Source  Encoding Set" - Encoding algorithms which do not have complicated licensing issues, but is older than VP8/VP9 & Webm

Containers - Chrome can potentially handle .mp4 .webm & .ogg containers

For mp4 (H.264 / ACC):
ffmpeg -i INPUTFILE -b 1500k -vcodec libx264 -vpre slow -vpre baseline -g 30 "OUTPUTFILE.mp4"
For webm (VP8 / Vorbis):
ffmpeg -i "INPUTFILE"  -b 1500k -vcodec libvpx -acodec libvorbis -ab 160000 -f webm -g 30 "OUTPUTFILE.webm"
For ogv (Theora / Vorbis):
ffmpeg -i "INPUTFILE" -b 1500k -vcodec libtheora -acodec libvorbis -ab 160000 -g 30 "OUTPUTFILE.ogv"

Progress with H.264

H.264 is a codec - which is important for sending larges amounts of data (like audio & video) over the network.  Telerobotics would benefit from H.264.

For maximum confusion there are a variety of acronyms which all mean the same thing.
Here are 3 which mean exactly the same thing.

MPEG 4 Part 10 = H.264 = AVC

We want the webgui capable of working like skype - with more options :)
In order to do that we first try to get our webgui to return some necessary HTTP header info regarding our file

Content-Type will need to be video/mp4

And here I sent video back to the webgui

We are closer !!

It's H264 Encoded with OpenCV Yay !
Its got a video and an audio channel Yay !
It was recorded by MRL & the OpenCV Service Yay !
It was played by the WebGUI using HTML5 video tags Yay !

Now we need it live - so that OpenCV is continuously reading & writing to a stream which the WebGUI served and the browser plays ...

More pipes to connect !

Installing ffserver with h264 encoding on an Amazon AMI image:


Centos 6.5

- rpmforge

rpm -Uhv

yum install lame-devel lame opencore-amr