Adeiladu Romulus

Adeiladu Romulus 1

Pan ddechreuodd Wistia, roedd fideo Flash yn rheoli’r byd. Nid dyma’r ffordd orau i ffrydio fideo ar-lein yn unig – dyna’r unig ffordd. Yn y pen draw, cafodd safon fideo HTML5 ei genhedlu gan y we rydd, ac er ei fod yn ifanc ac yn amherffaith, roedd y gymuned yn deall y byddai’n frenin ryw ddydd.

Yn Wistia, rydyn ni wedi bod yn cwympo’n ôl i HTML5 cyhyd ag y bu o gwmpas. Bu rhyfeloedd dros godecs, gweithrediadau gwrthdaro, a chwilod ar hyd y ffordd. Ond ar ôl blynyddoedd o ddatblygiad, mae’r dechnoleg wedi gwella o’r diwedd i bwynt lle gallwn ei ddefnyddio fel sail i’n chwaraewr diofyn.

Mae’r swydd hon yn bodoli i roi eglurder ar fanylion technegol ein chwaraewr HTML5 newydd, Romulus, a’r rhesymeg y tu ôl iddynt.

Rwy’n falch eich bod wedi gofyn! Dyma rai digwyddiadau allweddol yn nhir fideo HTML5.

  • 2008-2009: Mae Chrome, Safari, a Firefox yn cael cefnogaeth fideo HTML5 yn gynnar.
  • Mawrth 2011: Rhyngrwyd archwiliwr 9 yn ychwanegu cefnogaeth ar gyfer fideo HTML5, gan nodi gwawr IE modern.
  • Mehefin 2011: Mae Chrome yn cefnogi webm a h.264. Yn dweud y bydd yn gollwng cymorth h.264, ond byth yn gwneud hynny.
  • 2011-2012: Mae llawer o gnashing dannedd dros webm vs. h.264.
  • Ebrill 2013: Mae Mozilla yn ildio ac yn caniatáu cefnogaeth h.264 i Firefox, gan ei wneud y porwr mawr olaf i wneud hynny.
  • Ebrill-Hydref 2013: Mae Chrome, Safari, a Firefox yn gweithredu drafftiau cynnar o’r API sgrin lawn HTML5.
  • Tachwedd 2013: Mae Cisco yn prynu hawliau i h.264 ac yn ei agor.
  • Tachwedd 2013: Mae IE11 yn ychwanegu cefnogaeth API sgrin lawn HTML5, y porwr mawr olaf i wneud hynny.

Siart trwy garedigrwydd CanIUse.com.

Y tri gofyniad mawr ar gyfer Romulus yw fideo HTML5, datgodio h.264, a chymorth API sgrin lawn. Ar ben y gofynion hynny, mae porwyr yn gyffredinol yn dod yn fwy gelyniaethus i Flash. Er enghraifft:

  • Nid yw Safari bellach yn dod â Flash wedi’i osod.
  • Nid yw fersiynau tabled o IE modern bellach yn caniatáu Flash.
  • Mae Firefox bellach yn gofyn am “clic-i-fflach” yn ddiofyn.

O edrych ar yr amgylchiadau yn eu cyfanrwydd, mae’n eithaf amlwg mai nawr yw’r amser i ddechrau symud i HTML5-by-diofyn.

Roedd symud i chwaraewr HTML5 newydd yn ein galluogi i wella llawer o bethau. Mwynhewch y rhestr hir a chrwydrol hon!

Chwilio ffrâm wrth ffrâm

Rydym yn awr yn cefnogi ffrâm wrth ffrâm chwilio. Os byddwch yn oedi’r fideo ac yn hofran drosto gyda’ch llygoden, gallwch ddefnyddio’r bysellau saeth i gam wrth ffrâm. Mae’r gwelliant hwn hefyd yn caniatáu newid llif llyfnach wrth newid i HD. Yn olaf, oherwydd bod newid ffrwd yn rhan annatod o fideo HTML5, gall rhestri chwarae drosglwyddo rhwng fideos heb adael sgrin lawn. Rwyf wedi bod yn aros am yr un honno ers amser maith.

Amseroedd llwyth cyflymach

Gan nad oes angen i ni lwytho’r chwaraewr Flash ac aros i’r rhyngwyneb Javascript ddod i fyny, mae’n llwytho’n gyflym iawn. Hynny yw, tua 10ms yn lle 600ms. O, ac mae yna hefyd dim mwy o fflachiadau ar lwyth oherwydd nid oes angen i’r chwaraewr Flash ymgychwyn!

Cyfradd chwarae cyfnewidiol

Gan ddefnyddio’r API Chwaraewr, gallwch chi newid y gyfradd chwarae o’r fideo. Un cafeat: nid yw yn y ddogfennaeth eto gan nad yw Flash yn ei gefnogi o gwbl!

Cefnogaeth sgrin lawn ar gyfer ategion a labordai

Rydym yn defnyddio’r API sgrin lawn HTML5 i cefnogi ategion a Labs ar sgrin lawn. Fodd bynnag, dim ond lle mae’n gwneud synnwyr yr ydym yn dal i’w wneud. Nid yw’r API sgrin lawn yn holl-bwerus. Er enghraifft, nid yw Safari yn caniatáu unrhyw fewnbwn bysellfwrdd yn y modd sgrin lawn.

Newid bach yr ydym yn ei hoffi mewn gwirionedd: gallwch chi o’r diwedd sgrin lawn cyn chwarae.

Yn arbed lled band

Bydd rhai porwyr arbed lled band trwy throtling. Er enghraifft, mae Google Chrome yn ceisio byffer 25 eiliad yn unig o flaen y ffrâm gyfredol. Nid ydym yn rheoli’r nodwedd hon, ond mae’n fonws cŵl sy’n dod gyda HTML5!

Gan fod y fideo yn HTML pur, gallwn wneud dewislen cyd-destun personol arno. Ar hyn o bryd, mae hynny’n golygu y gallwch chi neidio yn syth i’r fideo yn eich cyfrif Wistia. Peidiwch â phoeni, dim ond os ydych chi wedi mewngofnodi ac yn berchen ar y fideo y mae’r opsiwn hwn ar gael.

Fideos mwy sefydlog

Mae croestoriad Flash, gyrwyr graffeg, a’r porwr yn creu rhai chwilod eithaf gnarly. Mae fideo HTML5 yn torri allan un parti, felly mae llai o ryngweithio rhyfedd. Trwy symleiddio, gwnaethom wella’r siawns y bydd eich fideo yn gweithio.

Rydym yn well am y technolegau y tu ôl i HTML5

Yn olaf ac, yn fy amcangyfrif, yn bwysicaf oll, mae ein harbenigedd yn Wistia mewn HTML, Javascript, a CSS – nid Flash. Rydyn ni’n gwybod digon o Flash i fynd heibio, ond gyda’n chwaraewr diofyn yn defnyddio HTML5, gallwn ailadrodd yn gyflymach a gwneud gwaith gwell.

Roedd gan Flash lawer o faterion rhyfedd.

A bod yn deg, nid bai Adobe yn gyfan gwbl ydyw. Roedd yn rhaid i Flash ddawnsio o gwmpas gyrwyr trydydd parti, systemau gweithredu, a chaledwedd gwahanol. Roedd angen i bob porwr gynnal ei integreiddiad Flash ei hun. Mae’n amhosibl rhoi cyfrif am yr holl gyfnewidiadau posibl, ac mae’n drawiadol bod Flash yn integreiddio cystal ag y mae.

Ond yn y diwedd, nid yw pobl yn poeni am hynny. Maen nhw eisiau i’w fideos weithio. Dyma rai o’r bygiau mwyaf gwaethygol y bydd HTML5 yn ein helpu i osgoi:

Ni ellir cuddio Flash heb i’r rhyngwyneb Javascript dorri

Nid wyf yn gwybod yn union pam mae hyn yn digwydd – rhywfaint o optimeiddio, mae’n debyg. Ond oherwydd y mater hwn, rydym yn monitro cyflwr gwelededd ein mewnosodiadau Flash, ac yn eu hailadeiladu pan fydd yn newid. Mae hynny’n sicrhau bod y Javascript yn gweithio, ond nid yw’n edrych yn wych oherwydd bod y fideo’n fflachio wrth ailadeiladu.

O bryd i’w gilydd, mae Flash yn methu â llwytho neu’n achosi gwallau

Dydw i ddim yn siŵr sut mae’n mynd i mewn i’r cyflwr rhyfedd hwn, ond pan fydd yn digwydd, yr unig atgyweiriad yw ailgychwyn eich porwr neu’ch cyfrifiadur. Nid yw hynny’n brofiad da i neb.

Mae natur anrhagweladwy gyda CSS yn trawsnewid

Mae porwyr modern wedi bod yn gweithredu trawsnewidiadau CSS, sy’n aml yn defnyddio cyflymiad caledwedd i gyflymu cyfrifiant. Ond pan fyddwch chi’n cyfuno Flash a thrawsnewidiadau CSS wedi’u cyflymu â chaledwedd, byddwch chi’n cael canlyniadau rhyfedd ac anrhagweladwy. Gall y fideo ymddangos 600px o dan ei leoliad go iawn, neu gael ei rendro wyneb i waered ac yn ôl. O ddifrif.

Mae llawer o’r sefyllfaoedd hyn yn digwydd pan fydd pobl yn adeiladu safleoedd deinamig gyda llithryddion neu ffenestri naid wedi’u teilwra. Rydyn ni’n disgwyl y bydd hi’n llawer haws gwneud pethau cŵl fel yna gyda Romulus!

Ar y cyfan, mae HTML5 yn uwchraddiad enfawr, ond mae rhai mân anghyfleustra yr ydym am eu datrys.

Priodweddau “sgrin lawn” ofynnol

Mae angen priodoleddau “sgrin lawn” ar gyfer ymgorfforiadau IFRAme ar gyfer cefnogaeth Romulus lawn. Nid oes dim byd yn union o’i le ar hynny – mae’n nodwedd ddiogelwch dda – ond mae llawer o systemau rheoli cynnwys wedi’u hadeiladu gyda dilysiad HTML rhestr wen, ac nid yw pob un ond y dilyswyr mwyaf newydd yn cynnwys y priodoleddau hynny. Twitter mae gan gardiau broblem debyg: rydyn ni’n darparu’r priodoledd IFRAme src, ac nid ydyn nhw’n cynnwys priodoleddau “allowfullscreen” yn ddiofyn. Dylai’r sefyllfa hon wella gydag amser a chynefindra.

Mae maint atom MOOV yn cynyddu gyda hyd fideo

Mater mwy yw bod ein hasedau HTML5 wedi’u hamgodio mewn cynhwysydd MP4, ac mae fformat MP4 yn mynnu eich bod yn lawrlwytho atom MOOV llawn cyn y gellir chwarae’r fideo. Mae maint yr atom MOOV yn cynyddu gyda hyd y fideo, sy’n golygu aros hirach ar ôl clicio chwarae am fideos hir.

Mae byffro ar unwaith yn ffordd dda o golli gwyliwr, a dyna pam rydyn ni’n defnyddio Romulus ar gyfer fideos o dan 15 munud yn ddiofyn yn unig. Yn y cyfamser, rydym yn chwilio am wahanol ffyrdd o fynd o gwmpas y cyfyngiad hwn.

Mae rhai porwyr yn dibynnu ar ddatgodio h.264 brodorol

Yn olaf, a lleiaf gobeithio, rhai porwyr, fel Firefox on Windows, dibynnu ar weithrediad datgodio h.264 sy’n frodorol i’r system weithredu. Nid yw’n amlwg eto a yw’r gweithrediad hwnnw’n gweithio’n gywir 100% o’r amser. Rydyn ni’n cadw ein llygad arno rhag ofn. Efallai eu bod yn dechrau defnyddio gweithrediad Cisco h.264 yn lle hynny, a ddylai normaleiddio ymddygiad ar draws cyfrifiaduron.

Mae Flash yn ddrwg iawn, ond mae’n dal i gael ei ddefnyddio yn y dyfodol agos.

  • Dyma’r dull cyflwyno gorau (a’r unig un) ar gyfer porwyr heb fideo HTML5. Rwy’n edrych arnoch chi, IE8 ac isod. Hefyd chi porwyr sydd wedi esgeuluso eich diweddariadau ers blynyddoedd. Grr.
  • Mae’r fformat FLV – dyna mae Flash yn ei ddefnyddio yn lle MP4 – yn trin fideos hir yn dda oherwydd nid oes angen iddo lawrlwytho’r holl fetadata cyn y gall chwarae.
  • Diogelwch? Nid yw Flash yn poeni am briodoleddau “sgrin lawn”, felly gallwch chi ddal i sgrin lawn o’r hen fewnosodiadau IFRAme (ac o bosibl wedi’u mangled).
  • Hefyd, mae’n boen i mi ei ddweud, ond mae yna rai amgylcheddau sy’n Fflach yn unig o hyd. Dim Iframes, dim sgriptiau, dim ond gwrthrych / mewnosod tagiau. Rwy’n edrych arnoch chi, Facebook! Dewch gyda’r amseroedd!

Rwyf wedi sôn mewn ychydig o leoedd ein bod yn ceisio dewis yn ddeallus pa chwaraewr, HTML5 neu Flash, sy’n cael ei ddefnyddio ar gyfer pob gwreiddio. Rwyf am roi mwy o eglurder ynghylch sut yn union yr ydym yn bwriadu gwneud hynny.

Yn gyntaf, os ydych chi’n gyfarwydd â’n API Chwaraewr, efallai eich bod wedi gweld opsiwn o’r enw “platformPreference,” a oedd yn caniatáu ichi ddewis rhwng “fflach” a “html5” – hynny yw, Flash a’r chwaraewr HTML5 brodorol, nid Romulus.

Delwedd trwy garedigrwydd Opera.

Rydym yn anghymeradwyo’r opsiwn hwnnw o blaid un o’r enw “playerPreference,” sy’n caniatáu ichi ddewis rhwng “auto,” “html5,” a “fflach.” Y gwahaniaeth yw bod “html5” yn y cynllun hwn yn golygu Romulus os yw’n cael ei gefnogi, a’r chwaraewr HTML5 brodorol os nad yw (yn enwedig IE9 ac IE10). SYLWCH: Mae “platformPreference” yn anghymeradwy, ond mae’n dal i weithio ac yn dechnegol yn diystyru “playerPreference.”

Dyma borwyr sydd, ar adeg postio, â chefnogaeth Romulus sylfaenol:

  • Google Chrome
  • saffari
  • IE11+
  • Firefox ymlaen Windows

I gael cefnogaeth Romulus lawn, mae angen i’r fideo fodloni’r gofynion canlynol:

  • Mae’n llai na 15 munud.
  • Mae ganddo amgodau MP4 o ansawdd uchel. Mae gan bob fideo newydd y rhain, ond mae’n debyg nad oes gan hen rai.
  • Gellir ei sgrinio’n llawn. (Os yw mewn IFrame, rhaid iddo feddu ar briodoleddau “sgrin gyflawn”.)

Yn ddiofyn, mae “playerPreference” wedi’i osod i “auto,” sy’n golygu y bydd yn ceisio defnyddio Romulus pan fydd yn canfod cefnogaeth lawn. Os na fydd yn canfod cefnogaeth, bydd yn disgyn yn ôl i Flash, yna HTML5 brodorol.

Gallwch ddewis gosod PlayerPreference i “html5” â llaw yn eich cod gwreiddio. Os gwnewch hynny, bydd yn osgoi’r gwiriadau ychwanegol am gefnogaeth lawn, gan ddefnyddio Romulus os yw’n canfod cefnogaeth sylfaenol yn unig. Os na fydd yn canfod cefnogaeth Romulus, bydd yn disgyn yn ôl i HTML5 brodorol, yna Flash.

Roeddem yn ofalus ac yn cymryd ein hamser gyda’r lansiad hwn. Y cynllun oedd galluogi Romulus yn araf ar gyfer cyfrifon â diddordeb. Yna, byddem yn cynyddu’r sylfaen defnyddwyr yn raddol, yn dal unrhyw fygiau mawr, ac yn rhyddhau i bawb unwaith y byddai wedi’i sgleinio.

Fe wnaethom droi Romulus ymlaen ar gyfer ein cyfrif ein hunain ym mis Hydref 2013. Am yr ychydig fisoedd nesaf, wrth i ni siarad â phobl sy’n cefnogi, gwnaethom alluogi Romulus ar gyfer y rhai yr oeddem yn meddwl y gallent elwa ohono. Trodd hyn allan i fod yn ffordd dda o brofi y byddai Romulus yn helpu i ddatrys rhai o’r problemau annifyr a gawsom gyda Flash.

Ar ôl ychydig, fe wnaethom estyn allan at gwsmeriaid â sylfaen defnyddwyr mawr a throi Romulus ymlaen ar eu cyfer. Ar ôl ychydig fisoedd yn fwy o atgyweiriadau bach i fygiau, fe wnaethon ni ddarganfod y rhesymeg dros ein dewis chwaraewr “auto”. Fe wnaeth y rhesymeg honno leihau ein risg o leoli, felly fe wnaethom benderfynu ei bod yn bryd cyflymu’r lansiad.

Peintiad trwy garedigrwydd Jean Auguste Dominique Ingres a Wikipedia.

Bythefnos cyn ei lansio, fe wnaethom newid pob cyfrif newydd i ddefnyddio Romulus yn ddiofyn. Mae hyn yn gadael i ni brofi Romulus yn y gwyllt ar ystod eang o gyfrifon cymharol fach, risg isel. Gan weld dim materion mawr, fe wnaethom barhau.

Roeddem yn hyderus, felly gan ddechrau wythnos cyn ei lansio, gwnaethom alluogi Romulus ar gyfer cyfran fawr o’n cwsmeriaid bob dydd. Cafodd yr holl gyfrifon eu diweddaru’n gyflym, ond roedd gennym rywfaint o ryddid o hyd i fynd i’r afael â materion heb effeithio ar ein sylfaen defnyddwyr cyfan.

Roedd rhai rhwystrau bach – er enghraifft, bu’n rhaid i Turnstile sgrin ganol sgrin lawn gael ei thunio oherwydd cyfyngiadau Safari ar fewnbwn bysellfwrdd – ond ar y cyfan, nid oeddent yn effeithio ar chwarae ac roeddent yn hawdd eu trwsio.

Rydym wedi meddwl llawer am y newid hwn. Gyda phob lwc, bydd y tueddiadau presennol yn parhau. Bydd technoleg porwr yn gwella, bydd defnyddwyr yn uwchraddio i gael cefnogaeth fideo HTML5, a bydd popeth yn iawn gyda’r byd.

Yna, efallai un diwrnod, rhywle yn y dyfodol, gallwn ymddeol ein hen workhorse, Flash. Mae’n haeddu seibiant.