Som tidigare skrivit arbetar vi just nu med ett störe videoprojekt där vi skall publicera flera hundra timmar video. Vi kommer enbart att använda oss av flashvideo då helst MP4 med H264-encodning. Själva encodningen av filmer i stor skala har vi löst och nu har vi fokuserat på att försöka lösa streaming av filmfiler på ett bra sätt. Anledningen till att vi vill ha streaming istället för bara buffrade filmfiler(som t.ex. Vimeo kör) är att man vill kunna hoppa in i en filmfil var som helst för att dels kunna skapa bokmärkning av filmer men även ge en bättre användarupplevelse så man kan hoppa i filerna utan att behöva invänta buffring av hela filen.

Länge var vi inställda på att hyra in en extern tjänst för streaming eller att använda oss av det öppna alternativet Red5(andra alternativ som vi inte undersökt vidare: FMS, Wowza). Båda vägarna skulle helt klart vara möjliga även om jag tycker det är skönt att slippa blanda in externa leverantörer om man inte måste. Red5 har vi tittat på några gånger men det känns lite som att jaga älg med bazooka. Lite overkill, halvtaskigt dokumenterat och känns inte helt färdigt. Detta gjorde att vi länge övervägde en extern streamingtjänst ända till vi upptäckte ett par andra intressanta alternativ.

H264 Streaming Module för Apache/Lighttpd samt PHP-streaming av FLV-filer. Den senare metoden är den enklaste att komma igång med då den bara kräver att man lägger in ett PHP-script(XMoov-PHP) och konfigurerar JW Media Player. Detta gör att man har fejkad streaming inom några minuter. Nackdelarna med detta är att det dels belastar PHP men även bara fungerar på FLV-filer. Vi vill använda oss av MP4. Därför testade den ovan nämnda streamingmodulen för Apache. Och den tog inte mycket längre tid att installera. Efter 10 minuter hade vi lyckats få till en väl fungerande streaming av MP4 bara genom att installera en modul till Apache.

Modulen fungerar så att den fångar all hantering av MP4-filer och streamar dem till klienten. Genom att skicka in query-parametrar direkt på filanropet kan man välja om man vill starta en bit in i filmen eller bara visa ut delar av filmklippet. Det senare är riktigt användbart då vi vill reducera antalet filmklipp som används och skapa klipp genom att peka på delar av en större film snarare än att klippa upp längre filmer i kortare klipp.

Resultatet är helt klart tillfredsställande . Ett par exempel nedan:

Stream en helt film på 20 minuter
http://tvinterplay.swedmedia.se/streamtest/readme.html

Visa bara 20 sekunder av filmen från: 00:40 till 00:60
http://tvinterplay.swedmedia.se/vischan.mp4?start=40&end=60


Del 1


Del 2


Del 3