1 Senast ändrad av Jesper (2012-10-05 16:30:40)

Tråd: Situationen med SVT Play

Ni har säkert märkt att hämtningar från SVT Play inte fungerar längre. I det här inlägget vill jag försöka sammanfatta läget. Här är också lämpligt att ställa frågor.

TL;DR -- för er som vill veta nuuu
Huggpunkt VHS kommer i framtiden att fungera med SVT Play igen. I nuläget finns inga praktiska (utan bara opraktiska) lösningar på de problem hämtning från SVT Play utgör. Därför kommer stöd för SVT Plays nya strömformat att dröja. Det arbete som pågår med att utforska vilka möjligheter som finns sker i en prototyp, som kräver en viss teknisk vana att använda. Om prototypen skriver jag mer längre ned i det här inlägget.

Bakgrund
När SVT Play lanserade en ny sajt i juni, så behöll de av allt att döma en del av sin gamla lösning tills vidare. Därför fortsatte H.VHS fungera med smärre justeringar. Nu verkar det dock som att SVT fullföljt övergången, i så mening att den gamla sajten inte längre finns kvar i kulisserna. Därför behöver H.VHS nu genomgå något större förändringar för att komma ikapp.

Vissa har uppfattat problemen som att SVT försöker "blockera" eller "stryper" nedladdning. Det finns ingenting som tyder på att de gör något sådant. Videoströmmarna (som kommer från Akamais servrar) är i vissa fall krypterade och har regionala begränsningar, vilket rimligtvis beror på villkor som upphovsrättsinnehavarna ställer i sina avtal med SVT.

Om man bortser från de begränsningar i åtkomligheten som uppenbart beror på avtalsvillkor, finns ingenting som tyder på att SVT av "egen fri vilja" varken försöker förhindra eller förenkla laglig nedladdning av strömmarna. Jag tror de utvecklar sin sajt utifrån kriterier som inte berör "skrapning" eller strömhämtning annat än indirekt via avtalsvillkor.

De nya strömformaten
Problemen för Huggpunkt VHS beror på att SVT nu växlar över till nya strömprotokoll. Tidigare sände SVT Play sina program över antingen RTMP- och HTTP-protokollen. Det är dessa två som H.VHS från början är utformat för.

SVT:s nya modell är att sända programmen i form av HDS- och HLS-strömmar. Av allt att döma finns båda varianter tillgängliga för varje video. HDS-strömmarna är till för den Flash-spelare som används i vanliga datorer, medan HLS främst är till för Apple-apparater som iPad.

H.VHS har ännu inte något stöd för vare sig HLS eller HDS. Det beror delvis på att öppen källkod-världen ännu inte hunnit hela vägen med att hantera de här protokollen.

När fungerar det igen?
I praktiken betyder detta att alla eller nästan alla videor på SVT är omöjliga att hämta med den nuvarande versionen av H.VHS.

Programmet kommer givetvis uppdateras med stöd för så många av videorna som möjligt. Vilken metod som ska användas för att hämta videorna är dock inte bestämt ännu. Det verkar finnas flera olika varianter, som behöver utvärderas. Därför kommer det dröja ett tag innan SVT Play fungerar "som vanligt" igen i H.VHS.

Det egentliga problemet
Det egentliga problemet är i själva verket flerdelat:

  • Ingen av dagens lösningar för hämtning av HLS- eller HDS-videor är särskilt roliga.

  • Enbart de internationellt tillgängliga programmen verkar gå att hämta än så länge.

  • HLS-hämtning är en smula enklare att ordna, men HDS-hämtning kommer förr eller senare vara nödvändigt, eftersom flera andra sajter lär gå över till enbart HDS. (TV4 har genomfört vad som verkar vara tester med HDS-strömmar, vilket antyder att de redan kommit en bit i planerna på en övergång.)

Jag vill ogärna släppa någon version av H.VHS som angriper det här problemet under de nuvarande omständigheterna. Den enklaste lösningen just nu vore att rikta in sig på HLS-strömmarna, men detta skulle i bästa fall ge en oberäknelig och fläckvis täckning av SVT Play. Hämtning av HDS-strömmar måste dock byggas in förr eller senare, eftersom de flesta andra sajter gissningsvis kommer gå över till HDS-baserade lösningar i framtiden.

Med andra ord är sannolikheten hög att det mesta av arbetet, som krävs för att i dag få till en halvt-om-halvt fungerande lösning, skulle behöva göras om helt och hållet när bättre metoder för hämtning dyker upp.

Finns några krångligare tills vidare-lösningar?
Ja då. De regionalt obegränsade programmen på SVT Play, alltså dem som "kan ses i hela världen", ska gå att hämta med FFmpeg (för HLS) och AdobeHDS.php (för HDS).

Den mest slipade versionen av sådan hämtning jag känner till är PiratePlay/PiratePlayer. Jag har inte särskilt noga tittat på programmet än, men såvitt jag sett är det FFmpeg och HLS-strömmarna programmet och sajten använder. Du kommer alltså att behöva installera FFmpeg för att använda PiratePlay. (Jag vet inte om FFmpeg följer med Windows-installationen av PiratePlayer eller inte.)

Mitt eget arbete på samma område finns just nu i form av en prototyp (som fått namnet "teve"). Prototypen är en del av det pågående arbetet med H.VHS 0.4, men kommer också utgöra kärnan i efterföljaren till skriptet SVTPlay.sh.

Just nu krävs ett visst tekniskt kunnande för att använda prototypen. Hur den ska användas förändras fortfarande radikalt med (o)jämna mellanrum, eftersom det är där jag bränner allt krut för närvarande.

Hur du provar "teve"-prototypen
Detta är som sagt inte att rekommendera för er som inte har erfarenhet av att själva kompilera program.

För att använda prototypen krävs Chicken Scheme.

Instruktioner för hur du installerar Chicken Scheme samt använder prototypen finns i README-filen som följer med "teve".

Utöver Chicken Scheme och själva prototyp-programmet krävs förstås även de program som sköter den egentliga nedladdningen av strömmarna.

  • För flera av SVT:s "klipp", samt för de lågkvalitativa WMV-strömmar som SVT Play tillhandahåller krävs cURL. Observera att dessa filer dock kan hämtas med en vanlig webbläsare, eftersom de levereras via HTTP.

  • HLS-strömmar kan (i många fall) hämtas med FFmpeg. För Windows-användare rekommenderas den senaste statiska Zeranoe-versionen av FFmpeg, alltså filen ffmpeg-latest-win32-static.7z.

  • HDS-strömmar kan hämtas med hjälp av KSV:s AdobeHDS.php. Eftersom detta är ett PHP-skript krävs dock att du har PHP installerat och förstår dig på att köra sådana skript. För er andra rekommenderas FFmpeg och HLS-strömmarna. (Såvitt jag vet gäller att om ett program kan hämtas via HLS så kan det hämtas via HDS, och kan det inte hämtas via HLS så kan det inte hämtas via HDS, så man behöver inte använda båda metoderna.)

  • De RTMP-strömmar som fortfarande förekommer på SVT Play hämtas som vanligt med RTMPDump.

I nuläget kan prototypen "teve" göra samma sak som PiratePlay-"appen": När du matar "teve" med en adress till en video på SVT Play så svarar programmet med att skriva ut hur du ska köra något av ovanstående program för att ladda ned videon.

I framtiden kommer det dock att få samma funktionalitet och köras på samma sätt som SVTPlay.sh, fast för fler sajter. Programmet kommer som sagt även att utgöra grunden i nästa "generation" av H.VHS, dvs version 0.3.7 och senare.

Frågor? Kommentarer?

Redigering 3 okt: Förtydligande omformuleringar och litet ny information.
Redigering 5 okt: Avsnittet om hur SVT ser på nedladdningar (under rubriken "Bakgrund") uppdaterad.

"It is a damn poor mind indeed which can't think of at least two ways to spell any word."

Webbplats

Dela

2

Sv: Situationen med SVT Play

Eftersom det här inlägget fick något slags kommentar på Twitter, helt utan återkoppling hit, så har jag skrivit replik på bloggen, helt utan återkoppling till Twitter.

"It is a damn poor mind indeed which can't think of at least two ways to spell any word."

Webbplats

Dela

3 Senast ändrad av Hob_goblin (2012-12-02 00:12:36)

Sv: Situationen med SVT Play

Funkade visst inte sad trodde jag hade kommit på en lösning

Dela

4

Sv: Situationen med SVT Play

Det fungerar alldeles utmärkt med pirateplayer på svtplay nu smile

Dela

5

Sv: Situationen med SVT Play

Jesper skrev:

Eftersom det här inlägget fick något slags kommentar på Twitter, helt utan återkoppling hit, så har jag skrivit replik på bloggen, helt utan återkoppling till Twitter.

Och tydligen är det inte bara "piraterna" som har problem utan alla som köpt "smart tv"

Dela

6

Sv: Situationen med SVT Play

http://pirateplay.se/

De värkar ha läst det här med SVT play.

Dela