Steve Jobs tager fejl: Flash er ikke en processor-tyv

Apple-boss Steve Jobs har anklaget Adobe Flash for at stjæle CPU-kraft og strøm. Men video-alternativet med HTML5 er ligeså slemt, viser en test.

Da Apple lancerede tablet-computeren iPad i januar, var et af de største kritikpunkter, at computeren ikke kunne vise websider med Flash.

Det fik firmaets direktør Steve Jobs til at skrue op for retorikken og karaktermyrde Flash godt og grundigt. Adobes browser-plugin er et fejlbehæftet, usikkert og processorslugende stykke software, som heldigvis snart er fortid, lød det fra Apple-bossen. Havde Apple gjort det muligt at bruge Flash på iPad, ville batteritiden falde fra 10 timer til kun halvanden fortsatte han.

Mens ingen har forsøgt at bevise, at der aldrig er kritiske sikkerhedshuller i Flash, har påstanden om den store appetit på processorkraft og strøm vakt mere opsigt. Og her viser det sig, at Steve Jobs er på dybt vand, skriver it-mediet The Register.

Firmaet Streaming Learning Center, der arbejder med netvideo, har undersøgt strømforbruget ved at vise video både via Flash og via HTML5 og H.264-codec'et. Konklusionen var, at der ikke var nogen særlig forskel i CPU- og strømforbrug. Det hele afhang af, om der var adgang til hardware-acceleration af videofremvisningen.

Når der blev afspillet video via Apples browser Safari på en Mac-computer, var det således HTML5-løsningen, der var mest effektiv, fordi browseren får hjælp fra hardwaren til at dekode videoen. Men i Chrome-browseren for Mac var CPU-forbruget helt ens, da Chrome ikke understøtter hardware-acceleration.

På en Windows-platform, hvor Flash har adgang til hardware-hjælp, var Flash således også en mere effektiv løsning end HTML5 med H.264, viste undersøgelsen.

Dermed kan det være rigtigt nok, at det er en bedre løsning at droppe Flash til Safari-browseren på Apples maskiner, men skylden ligger ikke hos Adobe og Flash, der fik mulighed for hardware-acceleration fra version 10.1. Hvis Apple kastede sig helhjertet over Flash-understøttelse, ville problemet kunne løses, lyder det fra Streaming Learning Center.

Undersøgelsen og artiklen ser dog ikke på rene Flash-baserede websider, men kun på videoafspilning. En sammenligning mellem en ren HTML-side og en Flash-side vil helt sikkert vise et højere strømforbrug ved Flash-løsningen.

Tips og korrekturforslag til denne historie sendes til tip@version2.dk
Kommentarer (38)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
#4 Daniel Madsen

Jeg tror at pointen er at Apple skal give Adobe Flash adgang til hardware-acceleration i Safari, hvilket de tilsyneladende ikke er meget for. Det kan der så være mange både tekniske, sikkerhedsmæssige og forretningsmæssige årsager til.

Adobe kan ikke få adgang til dette i det miljø browser-plugins afvikles i uden Apples hjælp.

  • 0
  • 0
#5 Klaus Skelbæk Madsen

At måle på CPU forbruget ved video-afspilning er ikke specielt vigtigt, og slet ikke i relation til "hvorfor er der ikke Flash på iPad'en" diskussionen som kører for tiden.

Langt det meste flash bliver jo brugt til reklamer, og jeg har indtryk af at de fleste af dem er implementeret som Flash animationer.

Derudover:

En sammenligning mellem en ren HTML-side og en Flash-side vil helt sikkert vise et højere strømforbrug ved Flash-løsningen.

Det er bestemt ikke givet hvis HTML-siden kan det samme som Flash-siden kan. Og det vil være 100% browser-afhængigt.

  • 0
  • 0
#6 Anders Sørensen

So what. Når folk køber en ipad, iphone, ipod touch etc., ved de godt at det er Apple der bestemmer hvilket software der på være på enheden. At han prøver at begynde det er bare dumt - han sku bare ha holdt sin mund... ;)

MEN tror jeg nu artiklen er lidt fordrejet. Når Steve Jobs siger det er en cpu tyv, er det nok fordi det er den (og det er decoding af H.264 generelt). Jeg tvivler på at iPad'en vil holde batteri særlig længe, hvis den sku decode H.264. Hvis man ser på Apples valg af design, hardware og software har det været til for at "sikre" lang batteri tid. Det er jo et trade-of og tror mange Apple bruger (af små enheder) har det bedste med at Apple bestemmer. Man ser i det mindste folk forsvare Appstore gang på gang.

  • 0
  • 0
#7 Loke Dupont

@Anders

Jeg går nu ud fra at iPad'en godt kan holde batteri samtidig med den decoder H.264 da det er det format apples håndholdte enheder bruger normalt. Der er det jo så bare lagt ud til noget hardware der er dedikeret til det.

Teoretisk set kunne man jo gøre det samme med flash på iPad/iPhone, eneste issue er jo så at overlay af flashanimationer og knapper ovenpå den hardware decodede video sikkert kunne blive en udfordring.

  • 0
  • 0
#10 Jimi Hansen

Testen er foretaget på en MacBook Pro, som har en hel del mere regnekraft end en iPhone/iPad - Steve's udtalelser handlede netop om de mobile enheder.

Apple bruger hardware-decoding for at afspille H.264 på iPhone, så vidt jeg ved har Adobe endnu ikke lavet en version af Flash, til nogen mobil enhed, som kan klare dette tilnærmelsesvist lige så effektivt som Apple's løsning.

  • 0
  • 0
#13 Deleted User

@Jørgen.

Det er jo netop det skjulte budskab, jeg vil af med. At bare fordi Flash ikke er så godt på en iPad, behøver hverken iPad eller Flash være noget skidt. Synes bare efterhånden, at de fleste større sw/hw-leverandører whiner mere over de andres "BIP" end at udtænke en løsning i fællesskab, hvis førnævnte leverandør mener, at det er nødvendigt at understøtte førnævnte "BIP".

Kunderne vælger alligevel i sidste ende det produkt, de har mest brug for.

  • 0
  • 0
#14 Jesper Lund

Jeg har også observeret at CPU belastningen er væsentlig større hvis en flash video fra f.eks. YouTube afspilles "i browseren" (på den tiltænkte måde) sammenlignet med at downloade .flv filen (på den ikke-tiltænkte måde, sikkert i strid med diverse EULA'er blah blah blah) og afspille med en software media player (reelt uanset hvilken, så længe det ikke er en wrapper for Adobe Flash libs som FLV Player til Windows er det). Det gælder både på Windows XP og Linux, i begge tilfælde med et gammelt grafikkort, så der er næppe nogen hardware acceleration.

Mange andre har observeret dette, og Adobe har givet følgende svar på kritikken http://blogs.adobe.com/penguin.swf/2010/01/solving_different_problems.html

Deres påstand er at den ekstra CPU belastning skyldes uundgåelige YUV <-> RGB konverteringer. Jeg synes ikke at jeg er overbevist..

Jeg har set meget lidt HTML5 video tag indhold, så jeg har ikke undersøgt om det samme gør sig gældende her.

  • 0
  • 0
#15 Martin Jakobsen

Nemlig og det er fordi at Flash dekodes med software. (der er en hardware dekodning i beta til windows iirc) Men for alle andre end Windows brugere er der noget skrammel.

Når jeg ser Youtube, bruger jeg html5 i Safari(OS X). Så kan jeg snildt spille 1080p HD indhold. Jeg kan ikke spille det i flash (tror min maskine har en 2,6GHz dualcore ting).

  • 0
  • 0
#16 Jesper Lund

Nemlig og det er fordi at Flash dekodes med software. (der er en hardware dekodning i beta til windows iirc)

I mine sammenligninger var det 100% software decodning i begge tilfælde, både i browseren (flash player) og ved download af flv filen og afspilning i noget ffmpeg-baseret media player software.

  • 0
  • 0
#17 Martin Jakobsen

Men den måde som folk vælger at bruge Flash, primært til reklamer, ender ofte med at bruge 30% tid bare til dette ene formål. Derfor er jeg glad for at der ikke er flash på min iPhone. Det ville være et helvede at skulle surfe på sites hvis den også skulle køre rekvalmer.

  • 0
  • 0
#21 Baldur Norddahl

Det er min erfaring. Og ja, det er helt sikkert inkompetente programmører som laver flash reklamer der har skylden. Men det ændrer ikke på det faktum, at den bedste strømbesparer du kan få, er en flash blokker plugin til browseren.

Så er det lidt mindre interessant hvem der er bedst til at afvikle video.

  • 0
  • 0
#23 Daniel Madsen

OK det ser ud til at jeg faktisk tager fejl, problemet ifølge Adobe ligger åbenbart i OS'et og ikke i browseren. Troede faktisk de her plugins var sandboxed, men det lader ikke til at være tilfældet.

In Flash Player 10.1, H.264 hardware acceleration is not supported under either Linux or Mac OS X. Linux currently lacks a developed standard API that supports H.264 hardware video decoding, and Mac OS X does not expose access to the required APIs. The Flash Player team will continue to evaluate adding hardware acceleration to Linux and Mac OS X in future releases.

http://www.streamingmedia.com/article.asp?id=11740&c=8

Så MacOSX har support for hardware-acceleret H.264 afvikling, men de tillader åbenbart ikke at 3. parter får adgang til det.

  • 0
  • 0
#25 Deleted User

Hvorfor tester firmaet op imod HTML5? Altså har Mr. Jobs været ude og sige at han glæder sig til at HTML5 kommer ud da video tagget er en revolution? For jeg har fulgt meget med i denne iPad debat på nettet, og jeg har måske overset Steve Jobs udtalelse omkring HTML5. Er der eventuel en der kan finde den til mig, for jeg har googlet lidt, og har intet fået.

  • 0
  • 0
#26 Jimi Hansen

Daniel Eran Dilger fra RoughlyDrafted er kendt som en narhat - en ultra-fanboy af værste skuffe - alt hvad han skriver er fordrejet.

F.eks påstår han i den artikel du linker til at Flash er en lukket, proprietær standard...

The problem is that when content creators built stuff using Flash, they’re locking up their code in a form that can only be rendered by Adobe’s sanctioned Flash Player plugin. Nobody else can create their own legitimate implementation of Adobe’s Flash Player because Flash isn’t an open specification. It’s a proprietary technology fully owned by Adobe.

Specifikationen for swf-formatet ligger på nedenstående link, og det er tilladt for enhver at lave en konkurrencerende afspiller til formatet...

http://www.adobe.com/devnet/swf/

Der findes sågar en ren Javascript-implementering...

http://ajaxian.com/archives/gordon-flash-runtime-implemented-in-javascript

  • 0
  • 0
#27 Jimi Hansen

Hvorfor tester firmaet op imod HTML5? Altså har Mr. Jobs været ude og sige at han glæder sig til at HTML5 kommer ud da video tagget er en revolution?

Apple har ikke officielt udtalt sig om HTML 5, men de arbejder hårdt på at implementere det i deres WebKit browser engine.

http://www.geektechnica.com/2009/10/apple-com-leading-the-way-with-html5...

...Og hvorfor skulle man lave noget i Flash, som kan laves nemmere og bedre i HTML?

  • 0
  • 0
#28 Ricki Gregersen

Apple vil ikke tillade properitære plug-ins få adgang til deres hardware. Det er et helt overordnet design valg. Kode Apple ikke kan verificere og ikke kan påvirke udviklingen af, får ikke lov til at stikke snablen dybere end de API's Apple stiller til rådighed.

Det er selvfølgelig både godt og dårligt, de platforme der tillader dette har nogle fordele og nogle ulemper og omvendt. En ting man dog kan være sikker på er at hvis Apple "committer" sig til en teknologi, så er den også understøttet fantastisk godt igennem alle lag. Javascript/html5/H.26x/mp3/mp4 etc. Feks. er indstillinger, brugerflader og hvad OS X ellers har puttet ovenpå Darwin kernen lagt ud i XML hierarkier.

På den anden side har Apple en interesse i at indhold der bliver leveret på deres enheder er under deres kontrol. Tænk hvis de havde baseret det indhold de sælger på flash, iTunes er en flere mia. kroners forretning, skulle de basere det på en potentiel konkurrents lukkede format. Det turde jeg heller ikke, især ikke hvis jeg var en lille spiller på et meget stort marked.

Jeg har selv udviklet i Flash og Java både i Mac og Windows og der er ingen tvivl om hvem der ser meget løst på ting som garbage collection og tråde.

  • 0
  • 0
#29 Bjørn Nielsen

"Når der blev afspillet video via Apples browser Safari på en Mac-computer, var det således HTML5-løsningen, der var mest effektiv, fordi browseren får hjælp fra hardwaren til at dekode videoen. Men i Chrome-browseren for Mac var CPU-forbruget helt ens, da Chrome ikke understøtter hardware-acceleration."

Denne påstand kan jeg simpelthen ikke forstå, den passer på ingen måde med hvad jeg har oplevet. Da youtube begyndte at udbyde html5 i beta, kiggende jeg på cpu forbruget i chrome på min Macbook. Det var en markant forbedring. Fra cpu på mellem 50-70% cpu, er jeg med html5 nu nede på omkring 30% for at afspille en youtube-video.

  • 0
  • 0
#30 Jesper Louis Andersen

... er at jeg ikke kontrol over den binære klump kode som flash er. 9/10 gange hvor jeg bliver irriteret over et browservindue var det som regel flash som skabte problemet.

Enten fordi det havde grabbet keyboardet, eller fordi det afspillede lyd. Det er et dårligt UI, hvis brugeren ikke er i kontrol, og det er sjældent tilfældet med flash. Med HTML5 bliver det pludselig en konkurrence-parameter browserne imellem at kunne dæmme op for latterlige reklamer som æder din sparsomme batteritid. Det kan aldrig blive en mulighed med flash i den nuværende form.

Jeg er iøvrigt enig med Baldur: Det handler ikke om hvor god flash er til at afspille video. Det handler om at flash ikke kan levere varen i andre forbindelser. Den kan man ikke når der findes værktøjer til at holde øje med een enkelt applikation for at kunne slå den ihjel når den bruger for mange CPU-resources:

http://www.bashflash.com/

  • 0
  • 0
#31 Jakob Damkjær

http://www.mikechambers.com/blog/2010/03/01/relative-performance-of-rich...

og så til the monneyshot

på en MacPro3,1 (Dual 3 GHz Quad-Core Intel Xeon med 8 GB RAM)

tar h.264 HD video (http://jilion.com/sublime/video) 24% og Vimeo Flash HD video (http://vimeo.com/1694439) tar 58%

og det er på en top of the line mac pro... QuicktimeX > Flash 10.1 til HD video QED

Grunden til at det ikke er smart at flash får direkte adgang til hardwaren er den endeløse mænge af sikkerheds exploits der er til flash.

På desktop platformen arbejder flash hardware accelelration gennem OpenGL Quartz eller Quickdraw APIen, men den hardware acceleration der er understøttet af flash 10.1 på Mac OS X er ET grafikkort så det kan ikke bruges som referancetil at vudere mobil flash preformancen eller generel preformance på Mac OS X for hvis du ikke har det ene grafik kort så er du tilbage til nær 10.0 prefomance.

QuicktimeX der er et totalt redesign af hele medie arkitekturen i Mac OS X 10.6, så det er nok en del af forklaringen på at safari til mac har bedre ydelse mht HD video ifht safari på windows i undersøgelsen.

Så generelt kan man sige at til video så er flash mere end dobbelt så processor intensiv som quicktimeX. Er dog ikke helt sikker på at der er OS paritet mellem Mac OS X og iPhone OS for tiden. Det er muligt at iPhone OS ikke har QuicktimeX endnu.

Så EKK version 2, hvis man havde lavet kildekritik så ville man finde ud af at en af forfatteren til den undersøgelse også er forfatter til en bunkebøger om netop flash... Så der kan stilles spørgsmålstegn ved hans habilitet til at lave en sådan undersøgelse.

Specielt når der er andre undersøgelser der tyder på et noget andet billede (IE at flash ikke køre godt på Mac OS X hvilket er i overensstemmelse med stort set alle mac brugeres oplevelse ofte er der en masse visuelle artefakter som banding, pixelering tilfældige stop i videostreamen..

/J.

  • 0
  • 0
#32 Christian E. Lysel

Ricki Gregersen, 12. marts 2010 17:20

En ting man dog kan være sikker på er at hvis Apple "committer" sig til en teknologi, så er den også understøttet fantastisk godt igennem alle lag. Javascript/html5/H.26x/mp3/mp4 etc. Feks. er indstillinger, brugerflader og hvad OS X ellers har puttet ovenpå Darwin kernen lagt ud i XML hierarkier.

Så kan Adobe "bare" give flash player kildeteksten til Apple ... og alle er glade? eller?

Det lyder som to modsatrettet ønsker ... både Apple og Adobe ønsker kontrollen over deres teknologi/produkt/marked.

De vil så bare ikke melde sådan nogle "slemme" holdninger ud officielt, og kommer med påstande der ikke har hold i virkeligheden.

Til dem der påstår at Flash æder 100% CPU, så er det en dårlig flash implementering der æder idle cpu ... min Ubuntu 64bit performer ringe, muse events bliver ikke fanget, og efter 1 timer virker flash ikke længere ... den samme maskine på en 32 bit ubuntu virker fint, uden alle ovestående problemer.

  • 0
  • 0
#33 Martin Kofoed

Jeg er heller ikke på nogen måde tilhænger af binære browserplugins, men lyder quotes ovenfor som denne ..:

Apple vil ikke tillade properitære plug-ins få adgang til deres hardware. Det er et helt overordnet design valg.

... ikke i betænkelig grad som noget, Microsoft ville få på puklen for at udtale? Jeg kan i hvert fald ikke lade være med at tænke tilbage på den ildhu hvormed MS forsøgte (og til dels havde held med) at holde Suns JVM langt væk fra Internet Explorer. Eneste forskel er, at Apple ikke propper en bevidst buggy og ikke-opgradérbar Flash ind i Safari.

Bliver spændende at følge plugin-krigen i de kommende år. Personligt tror jeg, at bred udbredelse af html5 dels vil gå hurtigere, end man lige regner med, og dels vil betyde døden for halv-tykke browserapplikationer hvad enten de er udviklet i Flash, Silverlight eller JavaFX. Jeg spår dog, at egentlige net-applikationer baseret på teknologier såsom Java WebStart, stadig har en fremtid. Men det er naturligvis rent gætværk! :)

  • 0
  • 0
#34 Jakob Damkjær

"Apple vil ikke tillade properitære plug-ins få adgang til deres hardware. Det er et helt overordnet design valg.

... ikke i betænkelig grad som noget, Microsoft ville få på puklen for at udtale? "

Så længe der er en åben API der tillader hardware acceleration (OpenGL) og der ikke er en hemlig API modus så Apples egen flash klon ekslusivt kan bruge, så er der absolut ingen grund til at lade et browser plugin få direkte adgang til hardwaren.

Det ville være som at ha ubeskyttet sex i Sydafrika...

  • 0
  • 0
#36 Ricki Gregersen

CHRISTIAN E. LYSEL, 14. MARTS 2010 13:04

Så kan Adobe "bare" give flash player kildeteksten til Apple ... og alle er glade? eller?

Tror ikke Apple ville ønske sig forklaringsproblemet hvis det skete, så var undskyldningen jo væk;)

På et tidspunkt hvor Apple var meget pressede og deres maskiner hovedsageligt blev brugt i den grafiske branche hvor Photoshop og hvad der nu hører til, var deres redningsplanke. Da trak Adobe stikket ud og forsinkede opdateringen af deres programmer til Mac platformen samtidig med de udsendte opdateringer til de langt yngre windows versioner. Det har nok kostet Apple, mindst, skindet på næsen at lægge deres succes i hænderne på Adobe.

Husk Apple er et hardware firma der også laver software. De er dybt afhængige af den kontrol det giver at kunne designe softwaren til en specifik hardware. Derfor er de interesserede i gennemsigtige teknologier. De er ikke interesserede i at være i lommen på et firma der har magten til at slukke for opdateringer af et eller andet plugin eller en softwarepakke. Sikkert også den overvejende grund til de skiftede til Intel arkitekturen og nu forsøger sig selv som chip producent.

MS Office vinder en del indpas på Mac platformen disse år (sikkert fra Win -> Mac switchere der har behovet for at tage den pakke med). MS kunne ude at miste noget særligt på bundlinien stoppe med at tilbyde Office på Mac og det ville Apple nok kunne mærke.

Så det er nok et strategisk valg ligeså meget som det er et teknologisk valg.

  • 0
  • 0
#37 Jakob Damkjær

"Det har nok kostet Apple, mindst, skindet på næsen at lægge deres succes i hænderne på Adobe."

På samme måde som alle hardware/OS producenter er til en vis grad afhængige af software udviklere... det kan næppe kaldes at være i hænderne på for Adobes succes er også bygget på ryggen af macens evner indenfor grafik branchen...

"Husk Apple er et hardware firma der også laver software. De er dybt afhængige af den kontrol det giver at kunne designe softwaren til en specifik hardware. "

På OS level er de det nok, men hvis Adobe nu havde lagt bare en lille smule indsats i at få flash til at virke ordenligt på mac tror jeg aldrig det var kommet så langt som det er nu i den konflikt der er mellem Apple og Adobe.

Problemet er at alle mac brugere ved at flash er og har altid været supercrap på mac og nu har Apple lavet arbejdet med at gennemrenovere quicktime fra bunden af med QuicktimeX i 10.6 og nu vil Adobe ha at Apple glemmer den lille detalje og falder tilbage til paen fordi Adobe nu i en betaversion har lavet hardware acceleration på et grafikkort...

For at sige det som El Jobso nok har sagt til et møde med Adobe... SIOMA

Samtidigt har Apple sammen med html5/CSS3 arbejdts grupperne lagt grunden til at erstatte flash mht webapps og animationer...

No wonder at Adobe ikke er glade for det.

"MS Office vinder en del indpas på Mac platformen disse år (sikkert fra Win -> Mac switchere der har behovet for at tage den pakke med). MS kunne ude at miste noget særligt på bundlinien stoppe med at tilbyde Office på Mac og det ville Apple nok kunne mærke."

MS Office er en af de ældste software pakker til Mac OS den gang det hed system 5 6 og 7... men det er nok en overaskelse for windows brugere.

Og hvorfor tror du at Apple har lavet en ganske kapabel office pakke selv ???

Så hvis microsoft beslutter sig for at være nogle idioter så er Apple ikke afhængige af dem længere.

Den hedder iWork og de har pt en dokument delings service i beta der hedder iwork.com... (kombiner det med iWork til iPad og du har et godt bud på hvor mobile me kunder skal gemme deres iPad iWork dokumenter.

/J

  • 0
  • 0
#38 Gert Agerholm

Er helt enig, det er også min erfaring.

Hvis Apple kastede sig helhjertet over Flash-understøttelse, ville problemet kunne løses, lyder det fra Streaming Learning Center.

Testede sidste dag en enkelt flash reklame på måske 600x150. Har flashblocker i min Firefox. Under Windows! steg CPU temperaturen 10 grader da jeg tillod den flash reklame at blive vist!!!!

  • 0
  • 0
Log ind eller Opret konto for at kommentere