I did implement some time ago a basic video streaming server (in Java) using Adobe's Real Time Messaging Protocol (only a partial implementation). It worked well enough for jwplayer and flowplayer. However, Flash is now on the decline and also it was a real pain to implement it.
I would be interested in implementing a video streaming server in Go. Does anyone know a good streaming protocol for HTML5 video? It should support seeking though - this was one of the main points why I went through the RTMP implementation.
What is Icecast, the program?
Icecast is a streaming server, which can stream audio (and video) to listeners/viewers. It supports Ogg (Vorbis, Theora), Opus, FLAC and WebM (VP8/VP9), nonfree codecs/formats like MP4 (H.264, MPEG4), M4A, NSV, AAC and MP3 might work, but we do not officially support those.
EDIT: is your Java code for video streaming somewhere? I'm interested in streaming my Raspberry Pi camera as all existing solutions don't satisfy me at the moment.
If you just want streaming (unidirectional) then you could just write a simple server which streams the byte stream from the camera. I remember one of my colleagues at work did this for our foos table scoring system. I suspect this is also what Icecast does.
I went through the pain of RTMP because I wanted support for seeking which requires bidirectional communication.
http://devt.de/tmp/rtmp_example.zip
It is just an experiment so not much documentation and/or unit tests. I hope it helps.
Though sadly, I understand that this will not allow seeking.