http.tv4.se

http.tv4.se

Utvecklare sökes – roliga arbetsuppgifter finnes

Under våren tänkte vi anställa en till utvecklare till Digitala Mediers teknikavdelning (det är vi som gör Sveriges bästa sajt och Sveriges bästa underhållningssajt 2012 enligt Internetworld).

Vi söker en person som gillar utveckling, Ruby/Rails och webb men också är nyfiken på att kliva in i mobilapps-världen (och då tänker jag på iOS och Android). Det är nämligen den stora förändring vi arbetar med just nu – att avdelningen framöver också kommer leverera mobilutveckling till våra appar. Vi gör det därför att upplevelsen av TV4 Play ska hänga ihop oavsett vilken enhet man använder för att ta del av innehållet. De framtida funktioner vi arbetar med kommer finnas i alla former av TV4 Play, oavsett om det är en app, API:t eller i webbtjänsten.

Vi tror därför att personen vi söker är en engagerad och intresserad webbutvecklare men som också sneglat åt app-hållet. Det är ok att du inte arbetat länge eller har världens längsta CV, du kommer lära dig mycket när du är hos oss och vi tror att du kommer växa.

Hela annonsen finns här, om du har några direkta frågor eller tips kan du maila per.astrom@tv4.se, annars kan du ansöka via länken i annonsen.

Så funkar videostreaming

Som en fortsättning på vårt tidigare blogginlägg om adaptiv streaming där vi beskrev hur det går till när en videoström spelas upp på TV4 Play och där vi gav några tips på hur du får ner buffringen kommer här en utförligare beskrivning av hela streamingkedjan från inspelning till uppspelning.

Bilden nedan visar de många steg som strömmen måste gå genom innan den når användaren. För enkelhetens skull har vi delat upp dem i tre områden: produktion, distribution och leverans. Vi kan även kalla dem för ”TV4-huset”, ”molnet” respektive ”internet”.

Videostreaming

I det första steget produceras programmet, antingen direkt genom en liveinspelning eller genom ett inköpt program. Bild och ljud synkas, sändningen kompletteras med textning, grafik etc, den kodas om till rätt videoformat, ett kopieringsskydd läggs på och slutligen skickas den till en dataserver. Allt detta sker tillsammans med vår partner Ericsson som också finns i TV4-huset.

I det andra steget distribueras videoströmmen genom en molntjänst som i vårt fall tillhandahålls av Akamai. Molnet fungerar på så sätt att programmet sprids till strategiskt utplacerade noder som ligger i nära anslutning till de största internetleverantörerna så att så många användare som möjligt kan nås snabbt. Där ligger videon och väntar på nästa steg.

I det tredje och sista steget levereras videoströmmen först när användaren trycker på Play-knappen i sin videospelare. Man hämtar alltså programmet från den närmaste molnnoden och slipper därmed gå hela vägen till våra servrar. Vilken väg som väljs beror helt och hållet på vilken internetleverantör man är ansluten till samt hur denna är sammankopplad med övriga aktörer på nätet.

För att testa hur bra uppkoppling du har till den närmaste leveransnoden (den gula operatörsrutan på bilden) kan du köra Bredbandskollen. Dock säger den ingenting om vad som händer under resten av vägen till det blå fältet.

Om du är nyfiken på vilken väg videoströmmen levereras till dig genom hela det gula fältet kan du använda programmet traceroute på din dator. I Windows kör du programmet cmd.exe och skriver tracert www.tv4play.se i fönstret.

Trace Route på Windows

På en Mac-dator öppnar du ett Terminal-fönster och skriver traceroute www.tv4play.se efter prompten.

Trace Route på Mac OS

Ju fler steg din dator tar genom internet desto större risk är det att något kan gå fel på vägen. Du kommer även att kunna se om din internetleverantör har en direktkoppling till Akamai (som i exemplet ovan) eller om den måste gå genom en annan operatör.

Som ett paket på posten

Har vi krånglat till det ordentligt för dig? Låt oss i så fall likna videostreaming vid ett postorderföretag. Säg att vårt postorderföretag specialiserat sig på tröjor med snygga tryck som vi har tillverkat (steg 1) och fraktat till ett antal lagerhus strategiskt utplacerade runt om i landet (steg 2). Vår kund är intresserad av en av våra fina tröjor och gör en beställning. Det som händer nu är att tröjan skickas till kunden via Posten till det närmaste ombudet (steg 3) där paketet kan hämtas.

Självklart finns det ett antal saker som kan gå fel. Vid tröjtillverkningen kanske någon har gjort ett feltryck eller så har maskinen gått sönder. Ett lagerhus får av misstag inte några tröjor i storleken XL. Och även om Posten säger att leveransen ska ta 2 – 5 dagar finns det ingen garanti på att tröjan kommer fram innan den där viktiga festen i helgen.

Översatt till videostreaming skulle detta kunna vara att fel program lagts in, att en kodare slutat fungera, att den högsta kvaliteten inte når till molnet vilket gör att en loop på en gammal sekvens spelas upp om och om igen samt att videosegmentet kommer för sent till videospelaren vilket tvingar den till buffring.

Videostreaming funkar alltså på samma sätt som vårt postorderföretag med den stora skillnaden att vi strimlat sönder tröjan i hundratals bitar som vi skickar i små paket var tionde sekund!

Epilog: den traditionella TV:n då?

Minns du bilden längst upp med de tre stegen produktion, distribution och leverans? Skrolla upp och begrunda den en stund och jämför den sedan med bilden nedan som representerar den vanliga TV-rutan.

Traditionell TV

Som du säkert insett skiljer sig bilderna ganska mycket. Anledningen är att vi har direktavtal med alla de stora TV-operatörerna och slipper därmed mellanhänder. Om något går fel är det med andra ord antingen vi eller de som kan klandras, men med färre steg blir det också mer sällan fel.

Om videostreaming kan jämföras med ett postorderföretag kan den traditionella TV:n liknas vid morgontidningen på hallgolvet. Du behöver inte beställa den varje dag och du behöver aldrig vänta på den; den bara ligger där lagom tills du vaknar. Vi är inte riktigt där än med våra tröjor men när tillräckligt många beställer sina klädesplagg över nätet kommer vi garanterat att hitta nya och effektivare sätt att leverera dem direkt till din dörr!

Så funkar adaptiv streaming

Ibland får vi frågor om varför det sker en fördröjning jämfört med TV-rutan när man tittar på en livesändning på TV4 Play. Förutom den fördröjning som internet medför är den största bidragande faktorn något som kallas adaptiv streaming.

Adaptiv streaming är en teknik som anpassar bild- och ljudkvaliteten efter användarens datorkapacitet och uppkopplingshastighet. Fördelen är att användaren alltid får den högsta kvalitet som utrustningen klarar av utan att behöva tänka på att justera nivån. TV4 använder adaptiv streaming både på datorer genom Adobes HDS och på mobila enheter genom Apples HLS.

När man startar en adaptiv ström kan man först uppleva en låg kvalitet. Om datorn eller enheten känner att den hinner hämta hem en högre kvalitet kommer den att göra det. Denna kontroll görs därefter under hela uppspelningen och om den skulle uppleva att det sker en nätverksöverbelastning kommer nästa segment att bestå av en lägre kvalitet.

Hos oss kodas allt videomaterial i segment om tio sekunder. Redan där får man en fördröjning på tio sekunder eftersom man måste vänta in produktionen av segmentet innan det kan skickas till användaren. Utöver detta segment behöver användaren ytterligare två segment för att inte riskera att det buffrar i väntan på nästkommande segment. Sammanlagt innebär detta att 30 sekunder av liveinspelningen måste finnas tillgänglig innan den kan skickas till användaren.

Varför ändras kvaliteten?

Nedan följer tre exempel på valet av kvalitet när nästa segment ska hämtas hem. I alla tre fallen har tre segment redan spelats in – A, B och C – varav de två första är hämtade (gröna). Medan vi spelar upp segment A hämtar vi hem segment C (gult). För enkelhetens skull säger vi att kvaliteten på segment D (rött) bedöms utefter hur snabbt vi hämtar hem segment C (i själva verket tas hänsyn även till tidigare segment).

I fall 1 gick det snabbare än tio sekunder att hämta segment C. Därför väljer vi en högre kvalitet på segment D eftersom vi hinner hämta det innan det ska spelas upp.

Högre kvalitet

I fall 2 tog det runt tio sekunder att hämta hem segment C. Därför behåller vi den befintliga kvaliteten även för segment D för att vara på den säkra sidan.

Samma kvalitet

I fall 3 tog det mer än tio sekunder att hämta hem segment C. Därför sänker vi kvaliteten på segment D eftersom vi annars inte hade hunnit hämta det.

Lägre kvalitet

I värsta fall hinner vi inte hämta hem segment C innan det är dags att spela upp det. I det senaste exemplet ovan hade vi endast fem sekunder tillgodo. Om vi inte hinner kommer videospelaren att buffra tills segment C är färdighämtat. Därefter kommer segment D att bestå av en låg kvalitet tills vi är ikapp igen.

Varför buffrar det?

En orsak till att det buffrar kan vara att det sker en hög belastning på datorn (flera andra processer är igång samtidigt) vilket gör att videospelaren inte hinner avkoda det senaste segmentet. Exempel på bakomliggande processer kan vara en Skype-chat eller att man håller på att tanka hem en stor fil. Tipset här är att stänga ner alla program som kan störa videospelaren.

En annan orsak kan vara att det sker en tillfällig överbelastning på nätet. Detta har ingenting med hur hög bandbredd man har utan beror helt och hållet på hur internet är uppbyggt. Precis som all annan trafik skickas segmenten genom olika vägar och ibland stöter man på ett väghinder. Säkert har alla någon gång upplevt att en webbsida tar ovanligt lång tid att ladda; när man sedan provar igen går det snabbare. Här är det samma princip som gäller med skillnaden att vi har ett väldigt snävt tidsfönster att förhålla oss till innan vi upplever ett hack i videouppspelningen.

Tyvärr har vi begränsade möjligheter att förebygga nätverksöverbelastning, framför allt i mobila nät. Det man kan göra är att se över sin bredbandsutrustning (modem, router, etc.) eller att försöka stanna kvar på en plats som har bra täckning. Internet var inte uppbyggt med hänsyn till direkt dataöverföring och även om teknikens utveckling har möjliggjort detta är vi fortfarande inte framme vid en helt buffringsfri TV-upplevelse över nätet.

222 dagar senare..

Hej, jag heter Per Åström och är teknikchef på TV4 Digitala Medier. Jag är tillbaka efter sju månaders frånvaro och det märktes inte att jag var borta.

Nu är frågan: är det bra eller dåligt?

Eftersom jag fortfarande har jobbet kvar tolkar jag det försiktigt positivt.

Jag har ägnat några veckor åt att följa upp allt jag lämnade i juni och att sätta mig in i allt det nya som här utan min vetskap eller inblandning. En blandning av stort och smått: rekryteringar, lanseringar (live-kanaler till exempel), organisationsförändringar, produktutveckling och uppdaterade versioner av vårt arbetsprocesser för att nämna några exempel.

En lärdom i detta är hur viktig organisationen är och hur viktigt det är att skapa en organisation som är mycket större än individerna som utgör den. Det är därför personal kan vara ledig, sjuk, vabba, på utbildning, konferens eller allmänt frånvarande och att verksamheten ändå kör på.

Och att det rullade på här kunde jag bland annat följa på text-tv sid 895.

Många kockar

På TV4 är våra mötesrum uppkallade efter TV4-program. Vi brukar ha våra retrospektiv i Lost, våra estimeringsmöten i Smartskalle, avdelningsmöten i Parlamentet och i somras hade vi annekterat mötesrummet Bläckfisken när vi behövde mer utrymme för konsulter tillfälligt.

När jag under kvällen idag, lördag, kikade in på den pågående Python-sprinten på Spotifys kontor på Birjer jarlsgatan upptäckte jag att vissa av de 30 mikrovågsugnarna fått en etikett med en kocks namn.

Kockar

Kockar

Kockar

Kockar

Det är kanske något vi borde göra på TV4 också? Fast frågan är verkligen om våra kockar verkligen vill förknippas med mikrovågsugnar.

3029Tidigare»
 
NU
 
Visa hela tablån