adoption trends for chromium browsers | akamai...adoption trends for chromium browsers

12
Adoption Trends for Chromium Browsers Testing for performance differences in Android browsers

Upload: others

Post on 27-Jun-2020

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Adoption Trends for Chromium Browsers | Akamai...adoption trends for chromium browsers

<?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStart-Time=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameR-ate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <Segment-Template timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBuffer-Depth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” ini-tialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStart-Time=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameR-ate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <Segment-Template timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBuffer-Depth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” ini-tialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStart-Time=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameR-ate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <Segment-Template timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBuffer-Depth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” ini-tialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStart-Time=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameR-ate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <Segment-Template timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBuffer-Depth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” ini-tialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Period> </MPD>ID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSam-plingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-

Adoption Trends for Chromium BrowsersTesting for performance differences in Android browsers

Page 2: Adoption Trends for Chromium Browsers | Akamai...adoption trends for chromium browsers

<?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLoca-tion=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimu-mUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInfor-mation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <Adap-tationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabil-ityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Represen-tation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitch-ing=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_chan-nel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabil-ityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representa-tion> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:i-soff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabil-ityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInforma-tion> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” band-width=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Representa-tionID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlign-ment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:-dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” dura-tion=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTem-plate> </Representation> </AdaptationSet> </Period> </MPD>

2 | ADOPTION TRENDS FOR CHROMIUM BROWSERS

I N T R O D U C T I O N

On Android, Chrome may not be Chrome. That is, there are several browsers that use the Chromium open source browser but nonetheless are not Google Chrome.

Mobile performance is essential to engage today’s

consumers. It’s critical to optimize websites to meet

user expectations for consistent, fast, secure digital

experiences. Testing mobile websites in as many

different browsers as possible is an important part

of that optimization process. Yet there are many

complications involved in testing for Android

browsers. This white paper will examine some of

those complications in detail to determine if there

are notable performance differences between

common Chromium-based Android browsers, and

to outline how you can optimize your testing process.

On Android, Chrome may not be Chrome. That is,

there are several browsers that use the Chromium

open source browser but nonetheless are not

Google Chrome. We discussed this state of affairs in

the “When Chrome Isn’t Chrome” white paper. Since

we’re going to continue our study of Chromium-

based browsers in this white paper, it’s useful to

repeat the main conclusions of the previous one:

• There are many Android browsers based on Chromium,

Google’s open-source browser that anyone can use.

Google Chrome is the best-known one, but far from

the only one.

• About 70% of Google Chrome users update their

browsers within three weeks of a new version being

released. On the other hand, 30% do not, and

frequently stay on an older version for a long time.

Page 3: Adoption Trends for Chromium Browsers | Akamai...adoption trends for chromium browsers

<?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”-dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” avail-abilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” du-ration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Repre-sentation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlign-ment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <Audio-ChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_con-figuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” dura-tion=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Rep-resentation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encod-ing=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimu-mUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStart-Time=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShift-BufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” fram-eRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Repre-sentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Num-ber%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” co-decs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelCon-figuration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabil-ityTimeOffset=”5.979” initialization=”1551938403/init-stream$Representation-ID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Peri-od> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:x-link=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:sche-ma:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” du-ration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Repre-sentation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlign-ment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <Audio-ChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_con-figuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” dura-tion=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Rep-resentation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encod-ing=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimu-mUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStart-Time=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShift-BufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” fram-eRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Repre-sentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Num-ber%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” co-decs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelCon-figuration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” avail-abilityTimeOffset=”5.979” initialization=”1551938403/init-stream$Representa-

C H R O M I U M B R O W S E R S

3 | ADOPTION TRENDS FOR CHROMIUM BROWSERS

• About one in four Samsung device users do not use Google

Chrome — and about 23% use Samsung Internet.

• Samsung Internet is also based on Chromium, but is not exactly the

same as Google Chrome.

• Other Chromium-based browsers include the Xiaomi default

browser, the UC browser, discontinued browsers on older HTC and

LG phones, and Microsoft Edge for Android.

• These browsers resemble one another but are not exactly the same.

In fact, this white paper studies one way in which they’re different.

• In addition to all these browsers, there are also WebViews. These

are separate browsers used by native apps such as Twitter for

displaying HTML content without leaving the app. WebViews are

overwhelmingly Google Chrome-like, but they might be slightly

behind the latest Google Chrome version.

• Browser detection scripts often cannot handle this browser diversity

and count all these browsers as Chrome. This artificially inflates

Google Chrome’s market share somewhat. We recommend the site

WhichBrowser, which powers the HTML5 Test site.

In this white paper, we’re going to concentrate on the high-level

performance data of three Chromium-based browsers: Google

Chrome, Samsung Internet, and the MIUI Browser created by Xiaomi

for its devices. Is there a notable performance difference between

the three browsers, or do they roughly perform the same? What

consequences does this have for your testing setup?

Page 4: Adoption Trends for Chromium Browsers | Akamai...adoption trends for chromium browsers

<?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynam-ic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabili-tyStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShift-BufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameR-ate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” avail-abilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Representa-tionID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitch-ing=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration sche-meIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOff-set=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” me-dia=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNum-ber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynam-ic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabili-tyStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShift-BufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameR-ate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” avail-abilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Representa-tionID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitch-ing=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration sche-meIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOff-set=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” me-dia=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNum-ber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynam-ic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabili-tyStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShift-BufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameR-ate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” avail-abilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Representa-tionID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitch-ing=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration sche-meIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOff-set=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” me-dia=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNum-ber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynam-ic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabili-tyStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShift-BufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameR-ate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” avail-abilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Representation-ID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <Adapta-tionSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:-dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.979” ini-tialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTem-plate> </Representation> </AdaptationSet> </Period> </MPD>

THE BROWSER DATA

We used about 5.5 billion hits from Chromium 61, 67, and 73 Android browsers

between February and May 2019 for testing. We selected 61 and 67 because

those are the versions that MIUI Browser and Samsung Internet use (though

shortly after the test period, Samsung Internet started its upgrade to 73). As for

73, it was the most recent Google Chrome version in the test period, and we

used it for comparison.

We subdivided the 61, 67, and 73 buckets into MIUI, Samsung Internet, and

Other: 15.6% of hits came from Samsung Internet 67 and 2.4% from MIUI

Browser 61. The Other category, good for 82% of the hits, is overwhelmingly

Google Chrome, though it likely contains trace elements of other Chromium-

based browsers.

The Xiaomi 67 and 73 and the Samsung Internet 61 buckets were too tiny for

robust measurements with fewer than 10,000 hits each, and we excluded them.

We did use the Samsung Internet 73 bucket, even though it only contains

500,000 hits and may thus not be entirely reliable, either.

We subdivided the 61, 67, and 73 buckets into MIUI, Samsung Internet, and Other.

4 | ADOPTION TRENDS FOR CHROMIUM BROWSERS

C H R O M I U M B R O W S E R S

Page 5: Adoption Trends for Chromium Browsers | Akamai...adoption trends for chromium browsers

<?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLoca-tion=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimu-mUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInfor-mation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <Adap-tationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabil-ityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Represen-tation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitch-ing=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_chan-nel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabil-ityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representa-tion> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:i-soff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabil-ityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInforma-tion> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” band-width=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Representa-tionID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlign-ment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:-dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” dura-tion=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTem-plate> </Representation> </AdaptationSet> </Period> </MPD>

C H R O M I U M B R O W S E R S

To users, the page appears to be considerably faster — and the customer experience much better — than total loading time would suggest.

4 KEY PERFORMANCE METRICS

For all these browsers, we looked at four

performance metrics:

1. Total loading time

2. The DOMContentLoaded event (DCL)

3. Time to interactive (TTI)

4. Longtasks

The total loading time is just that: How long did it

take for the page to be completely loaded? This is

an easy metric to gather but potentially also a

misleading one. For instance, it could be that one

script or image is very slow in loading and thus

drives up the total loading time, or that such script

or image is not required to start using the page.

Thus, users will start interacting with the page long

before loading has officially finished; to users, the

page appears to be considerably faster — and the

customer experience much better — than total

loading time would suggest.

That’s why we need the three additional metrics.

The DCL event fires when the page has been loaded

completely, but external assets such as images or

scripts may still be coming in. Technically speaking,

it fires when the HTML parser is done parsing the

page. From this moment on, changes to the DOM

structure can be made. Thus, it is an excellent

measurement for determining whether a page is

technically ready for interaction.

5 | ADOPTION TRENDS FOR CHROMIUM BROWSERS

Page 6: Adoption Trends for Chromium Browsers | Akamai...adoption trends for chromium browsers

<?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”-dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” avail-abilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” du-ration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Repre-sentation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlign-ment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <Audio-ChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_con-figuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” dura-tion=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Rep-resentation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encod-ing=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimu-mUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStart-Time=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShift-BufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” fram-eRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Repre-sentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Num-ber%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” co-decs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelCon-figuration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabil-ityTimeOffset=”5.979” initialization=”1551938403/init-stream$Representation-ID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Peri-od> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:x-link=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:sche-ma:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” du-ration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Repre-sentation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlign-ment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <Audio-ChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_con-figuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” dura-tion=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Rep-resentation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encod-ing=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimu-mUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStart-Time=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShift-BufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” fram-eRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Repre-sentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Num-ber%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” co-decs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelCon-figuration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” avail-abilityTimeOffset=”5.979” initialization=”1551938403/init-stream$Representa-

C H R O M I U M B R O W S E R S

<?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLoca-tion=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimu-mUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInfor-mation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <Adap-tationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabil-ityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Represen-tation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitch-ing=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_chan-nel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabil-ityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representa-tion> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:i-soff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabil-ityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInforma-tion> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” band-width=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Representa-tionID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlign-ment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:-dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” dura-tion=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTem-plate> </Representation> </AdaptationSet> </Period> </MPD>

However, it could be that there is a script not yet loaded that makes

important changes to the page; so important, in fact, that the page is

not usable without these changes. That’s where the TTI measurement

comes in. It measures the moment at which the user can safely start

interacting with the page; for instance, clicking on a button, which

fires up a script that does something useful to the page.

Finally, we use longtasks in our measurements. Longtasks are exactly

that: long tasks that the browser executes and that tie up its resources.

More important, while these longtasks are running, browsers can do

nothing else. If a user clicks on a link during a longtask, the browser

finishes the longtask first and then reacts to the click. This might have

a jarring effect on the customer experience. mPulse only measures

longtasks that take place up to TTI, so longtasks that take place after

page load are not part of this survey.

One more note before we look at the results: Because all Akamai

clients do not have TTI and longtask measurements configured, TTI

and longtask data are available for only about 40—45% of the pages

in our sample. Still, they sketch roughly the same picture as total

loading time and DCL.

This might have a jarring effect on the customer experience. mPulse only measures longtasks that take place up to TTI, so longtasks that take place after page load are not part of this survey.

6 | ADOPTION TRENDS FOR CHROMIUM BROWSERS

Page 7: Adoption Trends for Chromium Browsers | Akamai...adoption trends for chromium browsers

<?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”-dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” avail-abilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” du-ration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Repre-sentation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlign-ment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <Audio-ChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_con-figuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” dura-tion=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Rep-resentation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encod-ing=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimu-mUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStart-Time=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShift-BufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” fram-eRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Repre-sentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Num-ber%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” co-decs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelCon-figuration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabil-ityTimeOffset=”5.979” initialization=”1551938403/init-stream$Representation-ID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Peri-od> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:x-link=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:sche-ma:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” du-ration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Repre-sentation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlign-ment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <Audio-ChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_con-figuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” dura-tion=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Rep-resentation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encod-ing=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimu-mUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStart-Time=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShift-BufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” fram-eRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Repre-sentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Num-ber%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” co-decs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelCon-figuration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” avail-abilityTimeOffset=”5.979” initialization=”1551938403/init-stream$Representa-

7 | ADOPTION TRENDS FOR CHROMIUM BROWSERS

0

10

20

30

40

50

Google 61 Google 67 Google 73

< 2 Seconds

Total load times

TTI

Longtasks

DCL

> 8 Seconds

Xiaomi 61 Samsung 67 Samsung 73 Google 61 Google 67 Google 73 Xiaomi 61 Samsung 67 Samsung 73

0

5

10

15

20

0

10

20

30

40

50

0

5

10

15

20

25

30

Google 61 Google 67 Google 73

< 2 Seconds > 8 Seconds

Xiaomi 61 Samsung 67 Samsung 73 Google 61 Google 67 Google 73 Xiaomi 61 Samsung 67 Samsung 73

Google 61 Google 67 Google 73

< 1 Second > 4 Seconds

Xiaomi 61 Samsung 67 Samsung 73 Google 61 Google 67 Google 73 Xiaomi 61 Samsung 67 Samsung 73

Google 61 Google 67 Google 73

< 1 Second > 4 Seconds

Xiaomi 61 Samsung 67 Samsung 73 Google 61 Google 67 Google 73 Xiaomi 61 Samsung 67 Samsung 73

Per

cent

age

Per

cent

age

Per

cent

age

Per

cent

age

BROWSER PERFORMANCE RESULTS

With this methodology, what did we find?

The main conclusion is easy: Of the six browsers,

Samsung Internet 67 and Google Chrome 73 are

the fastest across all four metrics. The others,

Google Chrome 61 and 67, Samsung Internet 73,

and MIUI 61, are noticeably slower.

C H R O M I U M B R O W S E R S

The total load time data clearly shows this. About 20%

of Google Chrome 73s and Samsung Internet 67s

manage to load pages within two seconds, while only

about 10% of the other four browsers manage to do

so. Conversely, between 40% and 45% of the other

four browsers take more than eight seconds to load

a page, while only 20% of Google Chrome 73s and

Samsung Internet 67s take that much time.

Page 8: Adoption Trends for Chromium Browsers | Akamai...adoption trends for chromium browsers

<?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”-dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” avail-abilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” du-ration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Repre-sentation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlign-ment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <Audio-ChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_con-figuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” dura-tion=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Rep-resentation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encod-ing=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimu-mUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStart-Time=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShift-BufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” fram-eRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Repre-sentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Num-ber%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” co-decs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelCon-figuration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabil-ityTimeOffset=”5.979” initialization=”1551938403/init-stream$Representation-ID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Peri-od> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:x-link=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:sche-ma:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” du-ration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Repre-sentation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlign-ment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <Audio-ChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_con-figuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” dura-tion=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Rep-resentation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encod-ing=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimu-mUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStart-Time=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShift-BufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” fram-eRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Repre-sentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Num-ber%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” co-decs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelCon-figuration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” avail-abilityTimeOffset=”5.979” initialization=”1551938403/init-stream$Representa-

C H R O M I U M B R O W S E R S

8 | ADOPTION TRENDS FOR CHROMIUM BROWSERS

0

10

20

30

40

50

Google 61 Google 67 Google 73

< 2 Seconds

Total load times

TTI

Longtasks

DCL

> 8 Seconds

Xiaomi 61 Samsung 67 Samsung 73 Google 61 Google 67 Google 73 Xiaomi 61 Samsung 67 Samsung 73

0

5

10

15

20

0

10

20

30

40

50

0

5

10

15

20

25

30

Google 61 Google 67 Google 73

< 2 Seconds > 8 Seconds

Xiaomi 61 Samsung 67 Samsung 73 Google 61 Google 67 Google 73 Xiaomi 61 Samsung 67 Samsung 73

Google 61 Google 67 Google 73

< 1 Second > 4 Seconds

Xiaomi 61 Samsung 67 Samsung 73 Google 61 Google 67 Google 73 Xiaomi 61 Samsung 67 Samsung 73

Google 61 Google 67 Google 73

< 1 Second > 4 Seconds

Xiaomi 61 Samsung 67 Samsung 73 Google 61 Google 67 Google 73 Xiaomi 61 Samsung 67 Samsung 73

Per

cent

age

Per

cent

age

Per

cent

age

Per

cent

age

0

10

20

30

40

50

Google 61 Google 67 Google 73

< 2 Seconds

Total load times

TTI

Longtasks

DCL

> 8 Seconds

Xiaomi 61 Samsung 67 Samsung 73 Google 61 Google 67 Google 73 Xiaomi 61 Samsung 67 Samsung 73

0

5

10

15

20

0

10

20

30

40

50

0

5

10

15

20

25

30

Google 61 Google 67 Google 73

< 2 Seconds > 8 Seconds

Xiaomi 61 Samsung 67 Samsung 73 Google 61 Google 67 Google 73 Xiaomi 61 Samsung 67 Samsung 73

Google 61 Google 67 Google 73

< 1 Second > 4 Seconds

Xiaomi 61 Samsung 67 Samsung 73 Google 61 Google 67 Google 73 Xiaomi 61 Samsung 67 Samsung 73

Google 61 Google 67 Google 73

< 1 Second > 4 Seconds

Xiaomi 61 Samsung 67 Samsung 73 Google 61 Google 67 Google 73 Xiaomi 61 Samsung 67 Samsung 73

Per

cent

age

Per

cent

age

Per

cent

age

Per

cent

age

The TTI and DCL metrics show the same: Google

Chrome 73 and Samsung Internet 67 perform

significantly better than the other four browsers.

Page 9: Adoption Trends for Chromium Browsers | Akamai...adoption trends for chromium browsers

9 | ADOPTION TRENDS FOR CHROMIUM BROWSERS

0

10

20

30

40

50

Google 61 Google 67 Google 73

< 2 Seconds

Total load times

TTI

Longtasks

DCL

> 8 Seconds

Xiaomi 61 Samsung 67 Samsung 73 Google 61 Google 67 Google 73 Xiaomi 61 Samsung 67 Samsung 73

0

5

10

15

20

0

10

20

30

40

50

0

5

10

15

20

25

30

Google 61 Google 67 Google 73

< 2 Seconds > 8 Seconds

Xiaomi 61 Samsung 67 Samsung 73 Google 61 Google 67 Google 73 Xiaomi 61 Samsung 67 Samsung 73

Google 61 Google 67 Google 73

< 1 Second > 4 Seconds

Xiaomi 61 Samsung 67 Samsung 73 Google 61 Google 67 Google 73 Xiaomi 61 Samsung 67 Samsung 73

Google 61 Google 67 Google 73

< 1 Second > 4 Seconds

Xiaomi 61 Samsung 67 Samsung 73 Google 61 Google 67 Google 73 Xiaomi 61 Samsung 67 Samsung 73

Per

cent

age

Per

cent

age

Per

cent

age

Per

cent

age

<?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”-dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” avail-abilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” du-ration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Repre-sentation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlign-ment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <Audio-ChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_con-figuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” dura-tion=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Rep-resentation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encod-ing=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimu-mUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStart-Time=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShift-BufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” fram-eRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Repre-sentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Num-ber%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” co-decs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelCon-figuration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabil-ityTimeOffset=”5.979” initialization=”1551938403/init-stream$Representation-ID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Peri-od> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:x-link=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:sche-ma:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” du-ration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Repre-sentation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlign-ment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <Audio-ChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_con-figuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” dura-tion=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Rep-resentation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encod-ing=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimu-mUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStart-Time=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShift-BufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” fram-eRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Repre-sentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Num-ber%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” co-decs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelCon-figuration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” avail-abilityTimeOffset=”5.979” initialization=”1551938403/init-stream$Representa-

C H R O M I U M B R O W S E R S

Only the longtasks metrics are slightly less

clear. Although, again, Google Chrome 73

and Samsung Internet 67 perform better

than the other four, the difference is smaller

than in the other three measurements.

Page 10: Adoption Trends for Chromium Browsers | Akamai...adoption trends for chromium browsers

<?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLoca-tion=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimu-mUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInfor-mation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <Adap-tationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabil-ityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Represen-tation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitch-ing=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_chan-nel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabil-ityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representa-tion> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:i-soff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabil-ityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInforma-tion> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” band-width=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Representa-tionID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlign-ment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:-dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” dura-tion=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTem-plate> </Representation> </AdaptationSet> </Period> </MPD>

In this theory, Samsung Internet cooperates just a little bit better with the underlying hardware, software, and networking stacks.

WHAT DO THE RESULTS MEAN?

We find that, across the board, Samsung Internet 67

is roughly as fast as Google Chrome 73. Consumers

won’t notice much difference between the two

browsers — and neither will web developers. More

interestingly, Samsung Internet 67 is significantly

faster than Google Chrome 67, which theoretically

should be the most comparable browser.

Why is that? They should be the same browser, right?

The most interesting answer to this question is that the

remaining Google Chrome 67 users are not unwilling

to upgrade to a newer version; rather, they are unable

to do so because of the limitations of their device. Thus,

the cause of the performance difference would be the

device, not the browser.

This line of reasoning also explains why Samsung Internet

67 and Google Chrome 73 are roughly similar: both run

on similar hardware since they are the latest versions

of these browsers.

Another reason might be that Samsung Internet is

optimized for Samsung devices. In this theory,

Samsung Internet cooperates just a little bit better

with the underlying hardware, software, and networking

stacks. Even a slight improvement across the board in

this area could lead to much better performance results.

Unfortunately, all this remains somewhat-educated

guesswork; we do not actually know why some people

don’t upgrade their browsers. We also do not know

everything about Samsung Internet’s integration with

Samsung software and hardware. Therefore, we will

have to leave it at this.

10 | ADOPTION TRENDS FOR CHROMIUM BROWSERS

C H R O M I U M B R O W S E R S

Page 11: Adoption Trends for Chromium Browsers | Akamai...adoption trends for chromium browsers

<?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:sche-ma:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLo-cation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” pro-files=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimu-mUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabili-tyStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInfor-mation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInforma-tion> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” seg-mentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” band-width=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <Seg-mentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOff-set=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </Adaptation-Set> <AdaptationSet contentType=”audio” segmentAlignment=”true” bit-streamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <Audio-ChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_channel_con-figuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” dura-tion=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$Repre-sentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Rep-resentation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encod-ing=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” min-imumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabil-ityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInforma-tion src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlign-ment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representa-tion id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate times-cale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initial-ization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet con-tentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” band-width=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration sche-meIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabili-tyTimeOffset=”5.979” initialization=”1551938403/init-stream$Representa-tionID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Num-ber%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:-dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:sche-maLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” mini-mumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabili-tyStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInforma-tion src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlign-ment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representa-tion id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate times-cale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initial-ization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet con-tentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” band-width=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration sche-meIdUri=”urn:mpeg:dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabili-tyTimeOffset=”5.979” initialization=”1551938403/init-stream$Representa-tionID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Num-ber%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:-dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:sche-maLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” mini-mumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabili-tyStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInforma-tion src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlign-ment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representa-tion id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate times-cale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initial-ization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet con-tentType=”audio” segmentAlignment=”true” bitstreamSwitching=”true”>

As one would expect, the higher the Google Chrome

version, the better the performance. This is likely due

to a combination of running on newer devices and the

performance tweaks Google builds into each new

version. Samsung Internet bucks the trend here; the

new 73 version, which was on the verge of being

rolled out when this research took place, had distinctly

worse performance than the 67. However, the Samsung

Internet 73 sample is really small (about 0.01% of the

total sample), so we should be careful not to draw too

many conclusions from such a narrow base.

The only clear outlier is the relation between MIUI

61 and Google Chrome 61. On average, they have

roughly the same performance, which is odd if we

assume that Google Chrome 61 runs on outdated

devices while MIUI does not, as we theorized for

67. Maybe it’s genuinely a worse browser from a

performance perspective?

There is one other interesting point, and that is that

the differences are much less pronounced when we

look at longtasks. We think that this is due to device

fragmentation — some devices have worse processors

than others, and it seems that the browser used has

fairly little to do with longtask time.

Still, it’s clear that performance differences can be

large during page load. A good performance strategy

addresses those loading problems first. An occasional

glitch while a customer is using your website can be

mildly annoying, but otherwise-happy customers may

forgive it, especially if it’s not recurring.

Conversely, when a new visitor comes to your site, the

first impression they get is the load time. If it takes too

long, they leave, never to return. Thus the cost of long

load times is higher than the cost of occasionally slow

interactions coupled with decent load times.

11 | ADOPTION TRENDS FOR CHROMIUM BROWSERS

C H R O M I U M B R O W S E R S

Page 12: Adoption Trends for Chromium Browsers | Akamai...adoption trends for chromium browsers

<?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLoca-tion=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:isoff-live:2011” type=”dynamic” minimu-mUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabilityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInfor-mation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInformation> <Period start=”PT0.0S”> <Adap-tationSet contentType=”video” segmentAlignment=”true” bitstreamSwitching=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” bandwidth=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabil-ityTimeOffset=”5.967” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Represen-tation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlignment=”true” bitstreamSwitch-ing=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:dash:23003:3:audio_chan-nel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” duration=”6000000” availabil-ityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representa-tion> </AdaptationSet> </Period> </MPD> <?xml version=”1.0” encoding=”utf-8”?> <MPD xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns=”urn:mpeg:dash:schema:mpd:2011” xmlns:xlink=”http://www.w3.org/1999/xlink” xsi:schemaLocation=”urn:mpeg:DASH:schema:MPD:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd” profiles=”urn:mpeg:dash:profile:i-soff-live:2011” type=”dynamic” minimumUpdatePeriod=”PT500S” suggestedPresentationDelay=”PT6S” availabil-ityStartTime=”2019-03-07T06:00:04Z” publishTime=”2019-03-07T22:26:16Z” timeShiftBufferDepth=”PT18.0S” minBufferTime=”PT6.0S”> <ProgramInformation src=”https://preview.tinyurl.com/y6fb2nhr”> </ProgramInforma-tion> <Period start=”PT0.0S”> <AdaptationSet contentType=”video” segmentAlignment=”true” bitstreamSwitch-ing=”true” frameRate=”30000/1001”> <Representation id=”0” mimeType=”video/mp4” codecs=”avc1.64001f” band-width=”2000000” width=”1280” height=”720” frameRate=”30000/1001”> <SegmentTemplate timescale=”1000000” duration=”6000000” availabilityTimeOffset=”5.967” initialization=”1551938403/init-stream$Representa-tionID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTemplate> </Representation> </AdaptationSet> <AdaptationSet contentType=”audio” segmentAlign-ment=”true” bitstreamSwitching=”true”> <Representation id=”1” mimeType=”audio/mp4” codecs=”mp4a.40.2” bandwidth=”96000” audioSamplingRate=”48000”> <AudioChannelConfiguration schemeIdUri=”urn:mpeg:-dash:23003:3:audio_channel_configuration:2011” value=”2” /> <SegmentTemplate timescale=”1000000” dura-tion=”6000000” availabilityTimeOffset=”5.979” initialization=”1551938403/init-stream$RepresentationID$.m4s” media=”1551938403/chunk-stream_t_$RepresentationID$-$Number%05d$.m4s” startNumber=”1”> </SegmentTem-plate> </Representation> </AdaptationSet> </Period> </MPD>

TESTING RECOMMENDATIONS

It’s obvious that testing your websites on Samsung

Internet in addition to Google Chrome is a good

idea. While similar, these browsers are not the same,

and although Samsung Internet has the edge in

performance, it could be that Google Chrome is

better at other tasks. The only way of finding this

out is being aware of differences in browsers and

performing rigorous tests of your websites.

In order to do so, you should establish, or expand,

your device lab. We’d like to close this paper with

some recommendations in this area:

1. Add a state-of-the-art Samsung Galaxy, with both

Samsung Internet and Google Chrome.

2. Add a much cheaper Samsung. Buy a popular model

for about $200, and you will test on a device that

people actually have in their pockets.

3. Add a non-Samsung device such as a Huawei, Xiaomi,

Sony, or Motorola. As we saw in this article, Xiaomi

phones have their own default browser, so you

should pick that brand if you go for browser

diversity. Note: Any Google-branded phone does

not count, because they’re not actually being used

all that much by consumers. You should test on

what’s in consumers’ pockets; not what’s in your

developers’ pockets.

4. If you can afford another non-Samsung phone,

buy one. Maybe make it a cheaper model in

addition to the flagship model you already have.

5. Then, install browsers on these phones. Google

Chrome and the vendor default browser will

already be present, but you should install Firefox,

Opera Mobile, Opera Mini, and UC, at the

minimum. Make sure each browser runs on a

high-end and a mid-range device; you might

find interesting differences.

6. Make a list. That is, if a website is being formally

tested, developers should go through all devices

and all browsers and not forget to test in one or two.

A list helps here; it will tell even new developers

and interns what your testing process looks like.

They’ll appreciate the clarity (though not the extra

browser bugs they’ll find).

Data for this research was collected

using mPulse. Start monitoring real

user performance today.

Get Started: www.akamai.com/trympulse12 | ADOPTION TRENDS FOR CHROMIUM BROWSERS

C H R O M I U M B R O W S E R S