Flipboard Blog

Hvernig við gerðum myndspilara hraðari og sveigjanlegri fyrir streymisapp sjónvarpsstöðvar

Í hröðum heimi streymis er notendaupplifun afar mikilvæg. Þrátt fyrir að margar öpp leggi mikla áherslu á leiðsögn og uppgötvun efnis fær myndspilarinn sjálfur oft ekki þá athygli sem hann á skilið — jafnvel þó að það sé þar sem notendur eyða mestum tíma sínum. Nýlega unnum við að metnaðarfullu verkefni fyrir sjónvarpsstöð: að sameina 4 mismunandi XIB-miðaða myndspilara fyrir iPhone og iPad fyrir mismunandi streymisform — SVOD, PVOD, AVOD, línulega sjónvarpið, íþróttir í beinni, kvikmyndir og sjónvarpsþætti — í eina, kóða-undirstaða lausn með Swift og UIKit.



Þessi breyting gerði spilara ekki aðeins sveigjanlegri og auðveldari í viðhaldi, heldur bætti einnig afköst tækjanna verulega, sem tryggði að app sjónvarpsstöðvarinnar gæti unnið með hvaða efni, stefnu eða tæki sem er. Hér er hvernig við tókumst á við þetta verkefni.

Áskorunin: Stjórnun á mismunandi efnistegundum


Streymisapp sjónvarpsstöðvarinnar þurfti að styðja við fjölbreyttar kröfur um efni. Til dæmis notar AVOD HLS Interstitials og krefst þess að kalla-til-aðgerða (CTA) hnappur sé birtur á meðan auglýsingar eru spilaðar. Íþróttir í beinni fela oft í sér lifandi tölfræði eða rásalista (fyrir sama atburð) í hliðarvalmynd. Samkvæmt áskriftaráætlunum, eða PVOD, hegða eignir sér öðruvísi þegar spilari er ræstur. Að viðhalda aðskildum XIB-miðuðum spilurum fyrir hverja tegund efnis leiddi til tvöföldunar á kóða og hægari hleðslutíma.
Markmiðið var að búa til samræmdan spilara sem gæti aðlagast á kraftmikinn hátt að öllum þessum umhverfum, stjórnað mismunandi stjórntækjum og stutt öll iOS og iPadOS tæki — á meðan hann væri samt svarfljótur og auðveldur í notkun.

Kraftur AVPlayer: Innbyggð afköst og háþróuð eiginleikar


Í hjarta myndspilarans er AVPlayer, innbyggður spilari Apple fyrir vídeóspilun. AVPlayer er afkastamesti spilari sem völ er á fyrir iOS og iPadOS þar sem hann er djúpt samþættur í kerfið. Hann veitir einnig aðgang að nýjustu streymiseiginleikunum sem sérstaklega eru hannaðir fyrir Apple tæki. Með því að byggja spilara ofan á AVPlayer gátum við nýtt allan kraft Apple’s mediakerfa, sem tryggði mjúka spilun, streymi með lítilli seinkun og óaðfinnanlega samþættingu við háþróaða eiginleika Apple eins og AirPlay, Mynd-í-mynd (Picture-in-Picture), HLS Interstitials og HDR. Innbyggðir eiginleikar AVPlayer gerðu hann að fullkominni undirstöðu fyrir afkastamikinn spilara, sem gaf okkur sterkan grunn til að byggja sveigjanlegt og aðlögunarhæft notendaviðmót.

Einkenni sjónvarpsstöðvarinnar í UX/UI hönnun


Fyrir neðan spilarann notuðum við AVPlayer sem grunn fyrir myndspilun, sem er algengur valkostur í streymisöppum. Hins vegar var öll UX/UI hönnunin unnin byggð á Figma-skjölum sjónvarpsstöðvarinnar, sem gerði spilarann einstakan og auðþekkjanlegan hluta af þeirra appi. Þessi sérkennilega hönnun, sem innlimar vörumerki og notendaupplifun sjónvarpsstöðvarinnar, tryggði að spilarinn passaði óaðfinnanlega inn í restina af appinu og viðhélt einstöku útliti stöðvarinnar. Frá því hvernig stjórntæki voru birt til heildar notendaflæðis, þurfti spilarinn að endurspegla sýn sjónvarpsstöðvarinnar á meðan hann skilaði toppafköstum.

Ákall til að laga DRM og stutt HLS lotur


Eitt af þeim flóknari þáttum þessa verkefnis var að tryggja samfellda samvirkni milli AVPlayer og sérsniðna streymissetups sjónvarpsstöðvarinnar, sem innifalið notkun stuttra HLS lota (40 rammar) fyrir lága seinkun í beinni útsendingu. Þótt AVPlayer styður innbyggt HLS streymi, settu þessar stuttu lotur aukið álag á spilarann, sem þrífst á því að hafa háþróað efni til að bregðast rétt við og stjórna eiginleikum eins og Mynd-í-mynd (PiP), biðminni og samfelldri spilun. Stutta biðminnið þýddi að spilarinn þurfti stöðugt að laga sig, til að tryggja að streymið yrði slétt án truflana.
Það er vert að nefna að lengd lotna, sérstaklega fyrir VOD efni, verður líklega endurskoðuð í framtíðinni til að samræmast betur iðnaðarstöðlum og bæta heildar notendaupplifunina. Hins vegar, eins og er, tekst samræmdum spilaranum á við þessa flækju á skilvirkan hátt og viðheldur þeim háu afkastakröfum sem búist er við fyrir fjölbreytt efni sjónvarpsstöðvarinnar.

Skýrt meðhöndlun á aðalþræði með UIKit


Þegar unnið er með UIKit er eitt af mikilvægustu þáttunum að stjórna því hvernig og hvenær viðmótið uppfærist. Þar sem UIKit vinnur allar breytingar á viðmóti á aðalþræðinum — sá hluti kerfisins sem hefur beint samskipti við það sem notandinn sér — þurfa forritarar að vera skýrir um að tryggja að allar breytingar eða uppfærslur eigi sér stað á réttum tíma. Ef þetta er ekki gert vandlega getur appið hægt á sér eða hrunið, eða ákveðnir eiginleikar, eins og mynd-í-mynd, hætt að virka rétt. Þetta á sérstaklega við þegar farið er um appið meðan reynt er að halda myndspilaranum gangandi í bakgrunni (PiP).

Meðhöndlun Mynd-í-mynd (PiP)


Ein af erfiðari eiginleikunum er vissulega PiP, sérstaklega in-app PiP sem blandar myndspilun og leiðsögn um appið. Þar sem UIKit krefst vandaðrar meðhöndlunar á aðalþræðinum, var mikil prófun nauðsynleg til að tryggja að PiP virkaði óaðfinnanlega. Sérhvert leiðsögusviðsmynd innan appsins þurfti að vera íhugað til að tryggja að PiP héldi áfram að virka vel þegar notendur skiptust á milli mismunandi svæða í appinu. Hvort sem notað var system-level PiP eða sérsniðið in-app PiP sjónvarpsstöðvarinnar, var afköst og notendaupplifun í fyrirrúmi.

Aðrar gagnavinnslur á meðan spilun á sér stað


Fyrir utan myndspilun sjálfa, þurfti spilarinn einnig að stjórna stöðugri gagnaflutningi með utanaðkomandi þjónustum. Til dæmis er gagnaöflun frá Nice People At Work (NPAW) samþætt til að fylgjast með og hámarka upplifun notandans. Þetta kerfi safnar rauntímagögnum til að tryggja að spilunin sé slétt og að greina hvers kyns afköstuvandamál. Að auki, á spilarinn reglulega samskipti við API sjónvarpsstöðvarinnar til að senda spilunarstaðsetningu. Þetta gerði notendum kleift að hefja spilun á sama stað á hvaða tæki sem er, sem tryggði samfellda upplifun á mörgum tækjum. Þessar bakgrunns vinnslur þurfa að vera stjórnaðar á skilvirkan hátt án þess að hafa áhrif á heildarafköst spilunar.

Sveigjanleg stjórntæki fyrir mismunandi efnistegundir


Einn af lykileiginleikum spilarans eru sveigjanleg stjórntæki hans, sem aðlagast kraftmikið eftir efnistegund og umhverfi notandans. Til dæmis:
  • Tungumálastjórnun (hljóð og texti) er nauðsynleg fyrir flestar tegundir efnis.
  • "Næsta þáttur"-hnappur birtist aðeins fyrir sjónvarpsdrama.
  • Rásaval er aðeins fáanlegt fyrir íþróttir í beinni útsendingu.
  • Rauntíma tölfræði er aðeins birt fyrir íþróttir með tölfræði.

Þessi stjórntæki þurfa einnig að aðlagast eftir skjávídd og tæki, til að tryggja að spilarinn sé auðveldur og skýr. Þegar stærð eða stefna spilara breytist, stillast stjórntækin sjálfkrafa til að hámarka notendaupplifunina.

Bætt afköst: Dæmi um kóða-undirstaða spilara


Annað verulegt gagn af því að skipta yfir í kóða-undirstaða spilara var bætt afköst. XIB-skjöl þurfa að öll atriði séu undirbúin fyrirfram, sem þýðir að kerfið þarf að hlaða öllu XIB áður en spilari birtist. Þegar unnið er með fjórar aðskildar XIB-skjöl þarf þetta hleðsluferli að endurtaka sig fjórum sinnum, sem leiðir til hægari afkasta og vandamála með minni.



Í staðinn gerir kóða-undirstaða nálgun mögulegt að stjórna minni betur, með því að hlaða aðeins þau úrræði sem þarf á hverjum tíma og losa þau þegar þau eru ekki lengur notuð. Þessi nálgun styttir hleðslutímana verulega og bætir afköstin, sérstaklega á eldri tækjum með takmarkaða örgjörva og minniúrræði. Nýi spilarinn er hraðari, skilvirkari og forðast algengar gildrur ofnotkunar á XIB-skjölum.

Prófanir á meðan stór iOS uppfærsla á sér stað


Verkefnið stóð samhliða útgáfu iOS 18, fyrstu iOS útgáfu sem byggð er á Swift 6, sem gerði prófanir flóknari. Það var ekki alltaf ljóst hvort vandamálin voru vegna kóðans, kerfisins eða umhverfisins. Sérstakri athygli var beint að prófunum á eldri tækjum, þar sem bættu afköstin voru mest áberandi vegna takmarkaðra úrræða þeirra.

Mælingar og viðbrögð notenda (kemur fljótlega)


Á þessu stigi eru engar staðfestar notendamælingar — svo sem villutíðni, minniþörf eða viðbrögð úr umsögnum og NPS kannunum — en fyrstu prófanir sýna verulega bætingu í hraða og sveigjanleika. Þessi tilviksrannsókn verður uppfærð þegar fleiri notendagögn verða fáanleg.

Sveigjanleiki og afköst eru nauðsynleg


Í nútíma streymisöppum er sveigjanleiki og afköst lykilatriði til að veita frábæra notendaupplifun. Með því að sameina myndspilara sjónvarpsstöðvarinnar í eina kóða-undirstaða lausn einfölduðum við þróun, bættum afköst og tryggðum að spilarinn gæti aðlagast mismunandi efnistegundum og umhverfum á auðveldan hátt.
Þetta verkefni undirstrikar mikilvægi þess að einblína á sjálfan myndspilarann, ekki bara leiðsöguna í kringum hann, þar sem það er í raun þar sem notendur eyða mestum tíma sínum.


Get your own TV channel on iOS, Android, Roku, Fire TV and Connected TV like this one easily

Unlimited, automated, 24/7 TV Channels from your content at $0.001 per minute

Cars and Roads - Brands (https://ireplay.tv/carsandroads/brands.m3u8)

Trusted by

trusted by Sky for native iOS development, SGAI interstitials, infrastructure and headend consulting
trusted by Arte for low-latency live streaming
trusted by DJing for VOD2Live, very high quality live streaming, Jukebox TV, private podcasts, paygate, iOS, iPadOS apps
trusted by CNRS for 'Antarctica to World' Live Streaming
trusted by Velocix for consulting and ops services
trusted by Thomson Video Networks/Harmonic for OTT/cloud training


A portion of iReplay.TV's revenues, specifically 1%, is being allocated towards funding research and providing assistance for children's cancer treatment at Gustave Roussy Institute
Learn more about Gustave Roussy cancer Institute