My previous comment was wrong. After some more testing I can confirm that it does indeed support streaming of video. I've added a small video to the demo.
Yes, I could host the demo on my server and move the code to the root directory. However, I am not sure about the benefit.
In my understanding the main reason why people put code in the root is so that you can use "go get" to do a checkout. "Go get" then creates a src dir and puts the code there. This functionality is already covered by my server. Since my code path uses devt.de "go get" will always use my server and not github.
The only way someone could use the github code would be with "git clone" and here I think the src dir in the repo might be useful. Otherwise, you have to make sure to create this yourself.
I am currently travelling but once I have a stable connection I can upload it.
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.
No, SHOUTcast is only about audio. It is quite simple and straight forward.
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.
Hmm, I would like to provide a demo. For now I host the GOPATH structure on github, which includes a demo, while the code which you get via "go get" is on a self hosted server. So you can write:
go get -d devt.de/common devt.de/dudeldu
if you want just the source (vendor form) or you can:
if you want it with a demo. You can then build the executable and run it with the demo folder.
I use a self hosted machine to run the build and unit tests overnight. I know the vast majority of Go projects does it differently - I am still unsure but so far it worked for me ...
Feedback is always appreciated. Please raise a bug if you have concrete suggestions on how to improve my project.