Slide 1

Slide 1 text

"CFNB57Λࢧ͑Δ ΞϓϦͷ༏͠͞

Slide 2

Slide 2 text

.BTBLJ0HBUB "OESPJE&OHJOFFS"CFNB57 *OD IUUQTHJUIVCDPNPHBDMFKBQBO !PHBDMFKBQBO

Slide 3

Slide 3 text

༏͠͞ͱ͸ʁ

Slide 4

Slide 4 text

Զࢯɿʮ͍ͨͩ·ʔʯ Շࢯɿʮ͓ؼΓʔɺ͝൧࡞ͬͯ͋ΔΑɻʯ Զࢯɿʢ೥ʹҰ౓ͷح੻ʜʣ༏͠͞ʂʂ

Slide 5

Slide 5 text

 lࢥ͍΍Γ͕͋ͬͯ਌੾z  ग़య.BDࣙॻΞϓϦεʔύʔେࣙྛ

Slide 6

Slide 6 text

ΞϓϦͷ༏͠͞ͱ͸

Slide 7

Slide 7 text

ωοτϫʔΫ௨৴Λ͍ͩ͡ʹ ΞϓϦͷͤ͘͞ΜGPS6TFS όοςϦʔΛ͔ͭ͏ͳ ΨϯΨϯ͍͜͏ͥ Ξχϝʔγϣϯͤ͞Ζ

Slide 8

Slide 8 text

6*ʗ69Λ͍ͩ͡ʹ ΞϓϦͷͤ͘͞ΜGPS4ZTUFN ωοτϫʔΫଳҬΛ࢖͏ͳ Ωϟογϡ͠Α͏ͥ ௿ίετͰӡ༻ͤ͞Ζ

Slide 9

Slide 9 text

 lωοτϫʔΫ௨৴ྔΛ཈͑Δz  "CFNB57ΞϓϦͷ༏͠͞

Slide 10

Slide 10 text

"CFNB57Λࢧ͑Δ ΞϓϦͷ༏͠͞  ʙ"OESPJEΞϓϦͷऔΓ૊Έʙ

Slide 11

Slide 11 text

͕ɺɺ

Slide 12

Slide 12 text

݄๭೔ɻ ⚡࣌ؒੜ์ૹಛ൪ܾఆ⚡

Slide 13

Slide 13 text

ෛՙରࡦΛਐΊͨ݁Ռɺ

Slide 14

Slide 14 text

༏͠͞ʹෆඋ͕͋Γ·ͨ͠

Slide 15

Slide 15 text

"CFNB57Λࢧ͑Δ ΞϓϦͷ༏͠͞

Slide 16

Slide 16 text

"CFNB57Λࢧ͑Δ ΞϓϦͷ༏͠͞ XJUI

Slide 17

Slide 17 text

ϓϨΠϦετऔಘ͠ա͗໰୊

Slide 18

Slide 18 text

)-4ʢ)551-JWF4USFBNJOHʣ QMBZMJTU@MJWFNV &95.6 &9597&34*0/ &9595"3(&5%63"5*0/ &959.&%*"4&26&/$& &95*/' UT &95*/' UT &95*/' UT

Slide 19

Slide 19 text

)-4ʢ)551-JWF4USFBNJOHʣ QMBZMJTU@MJWFNV &95.6 &9597&34*0/ &9595"3(&5%63"5*0/ &959.&%*"4&26&/$& &95*/' UT &95*/' UT &95*/' UT UT

Slide 20

Slide 20 text

)-4ʢ)551-JWF4USFBNJOHʣ QMBZMJTU@MJWFNV &95.6 &9597&34*0/ &9595"3(&5%63"5*0/ &959.&%*"4&26&/$& &95*/' UT &95*/' UT &95*/' UT UT UT

Slide 21

Slide 21 text

)-4ʢ)551-JWF4USFBNJOHʣ QMBZMJTU@MJWFNV &95.6 &9597&34*0/ &9595"3(&5%63"5*0/ &959.&%*"4&26&/$& &95*/' UT &95*/' UT &95*/' UT UT UT UT

Slide 22

Slide 22 text

)-4ʢ)551-JWF4USFBNJOHʣ QMBZMJTU@MJWFNV &95.6 &9597&34*0/ &9595"3(&5%63"5*0/ &959.&%*"4&26&/$& &95*/' UT &95*/' UT &95*/' UT UT UT UT

Slide 23

Slide 23 text

)-4ʢ)551-JWF4USFBNJOHʣ QMBZMJTU@MJWFNV &95.6 &9597&34*0/ &9595"3(&5%63"5*0/ &959.&%*"4&26&/$& &95*/' UT &95*/' UT &95*/' UT UT UT UT UT

Slide 24

Slide 24 text

)-4"EBQUJWF4USFBNJOH NBTUFS@QMBZMJTUNV &95.6 &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV

Slide 25

Slide 25 text

)-4"EBQUJWF4USFBNJOH NBTUFS@QMBZMJTUNV &95.6 &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV NV Q

Slide 26

Slide 26 text

)-4"EBQUJWF4USFBNJOH NBTUFS@QMBZMJTUNV &95.6 &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV NV Q NV Q

Slide 27

Slide 27 text

֤σόΠεͷϓϨΠϦετऔಘִؒ ϥΠϒ഑৴Ͱ54ϑΝΠϧͷηάϝϯτִ͕ؒඵͷ৔߹ɻ 1$ 8 J04 "OESPJE

Slide 28

Slide 28 text

֤σόΠεͷϓϨΠϦετऔಘִؒ ϥΠϒ഑৴Ͱ54ϑΝΠϧͷηάϝϯτִ͕ؒඵͷ৔߹ɻ 1$ 8 J04 "OESPJE ໿ඵִؒ ໿ඵִؒ

Slide 29

Slide 29 text

֤σόΠεͷϓϨΠϦετऔಘִؒ ϥΠϒ഑৴Ͱ54ϑΝΠϧͷηάϝϯτִ͕ؒඵͷ৔߹ɻ 1$ 8 J04 "OESPJE ໿ඵִؒ ໿ඵִؒ ໿ ඵִؒ

Slide 30

Slide 30 text

ŧŖƃ

Slide 31

Slide 31 text

݁࿦ɺ&YP1MBZFSͷෆ۩߹Ͱͨ͠ɻɻ IUUQTHJUIVCDPNHPPHMF &YP1MBZFSQVMM

Slide 32

Slide 32 text

ߴϏοτϨʔτ΁੾ΓସΘΓޙ΋Q͕औಘ͞Εଓ͚͍ͯͨ NBTUFS@QMBZMJTUNV &95.6 &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV NV Q NV Q

Slide 33

Slide 33 text

͜ΕͰ໰୊ղফ

Slide 34

Slide 34 text

ը໘ʹ࠷దͳϏοτϨʔτ੍ޚ

Slide 35

Slide 35 text

"CFNB57։ہ౰ॳ೥݄ ΞϓϦ͸ԣը໘ݻఆͰࢹௌ໘ͷը໘αΠζ΋ύλʔϯͷΈɻ

Slide 36

Slide 36 text

"CFNB57։ہप೥೥݄ ΞϓϦ͸ैདྷͷԣը໘ʹՃ͑ɺॎը໘Ͱͷࢹௌʹ΋ରԠɻ

Slide 37

Slide 37 text

"CFNB57։ہप೥೥݄ ͞Βʹɺ"OESPJE৽ػೳͷϚϧν΢Οϯυ΢Ͱ΋ࢹௌՄೳʹɻ

Slide 38

Slide 38 text

ࢹௌ໘ͷύλʔϯ͕ෳࡶԽʜ

Slide 39

Slide 39 text

)-4"EBQUJWF4USFBNJOH NBTUFS@QMBZMJTUNV &95.6 &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV NV Q NV Q

Slide 40

Slide 40 text

)-4"EBQUJWF4USFBNJOH NBTUFS@QMBZMJTUNV &95.6 &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV NV Q NV Q Q 'VMM)% Y

Slide 41

Slide 41 text

)-4"EBQUJWF4USFBNJOH NBTUFS@QMBZMJTUNV &95.6 &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV NV Q NV Q Y Q 'VMM)% Y

Slide 42

Slide 42 text

)-4"EBQUJWF4USFBNJOH NBTUFS@QMBZMJTUNV &95.6 &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV NV Q NV Q Y Q 'VMM)% Y , ໿ഒͷ௨৴ྔʜ

Slide 43

Slide 43 text

)-4"EBQUJWF4USFBNJOH NBTUFS@QMBZMJTUNV &95.6 &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV &959ʜ #"/%8*%5) QMBZMJTU@MJWFNV NV Q NV Q Y Q 'VMM)% Y Q )% Y

Slide 44

Slide 44 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ ͍͔ͭ͘ͷ৚݅Λ૊Έ߹ΘͤͯϏοτϨʔτΛಈతʹมߋ͍ͯ͠Δɻ ը࣭ઃఆ ௨৴ճઢ ը໘෯ ࣗಈ ࠷ߴը࣭ ߴը࣭ ʜ 8*'* .PCJMF ʜ 8JOEPX෯ 7JFX෯ ʜ 04WFS YPSIJHIFS Y ʜ

Slide 45

Slide 45 text

public class VideoBitrateAdjuster { private final VideoBitrateTable auto = new AutoBitrateTable(); private final VideoBitrateTable legacy = new LegacyBitrateTable(); private final VideoBitrateTable manual = new ManualBitrateTable(); public VideoBitrate adjust(@Px int w, VideoQuality quality, NetworkState network) { if (quality == AUTO) { if (isLegacyPlatform()) { return legacy.lookup(w, quality, network); } else { return auto.lookup(w, quality, network); } } else { return manual.lookup(w, quality, network); } } "CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ ˞αϯϓϧίʔυͰ͢

Slide 46

Slide 46 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ public class LimitedBandwidthMeter implements BandwidthMeter { ... public setMaxBitrate(long bitrate) { ... } public long getBitrateEstimate() { return Math.min(bitrateEstimate, maxBitrate); } ... } package com.google.android.exoplayer2.upstream; public interface BandwidthMeter { long getBitrateEstimate(); } ˞αϯϓϧίʔυͰ͢

Slide 47

Slide 47 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer NV UT

Slide 48

Slide 48 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 8*'* QY NV UT

Slide 49

Slide 49 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 8*'* QY NV UT

Slide 50

Slide 50 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 8*'* QY Q NV UT

Slide 51

Slide 51 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 8*'* QY Q CQT NV UT

Slide 52

Slide 52 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 8*'* QY Q CQT NBY#JUSBUFQ NV UT

Slide 53

Slide 53 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 8*'* QY Q CQT NBY#JUSBUFQ NV UT

Slide 54

Slide 54 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 8*'* QY Q CQT NBY#JUSBUFQ NV UT

Slide 55

Slide 55 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 8*'* QY Q CQT NBY#JUSBUFQ NV UT Q

Slide 56

Slide 56 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 8*'* QY Q CQT NBY#JUSBUFQ NV UT Q Q

Slide 57

Slide 57 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 .0#*-& QY Q CQT NBY#JUSBUFQ NV UT Q Q

Slide 58

Slide 58 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 .0#*-& QY Q CQT NBY#JUSBUFQ NV UT Q Q

Slide 59

Slide 59 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 .0#*-& QY Q CQT NBY#JUSBUFQ NV UT Q Q

Slide 60

Slide 60 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 .0#*-& QY Q CQT NBY#JUSBUFQ NV UT Q Q

Slide 61

Slide 61 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 .0#*-& QY Q CQT NBY#JUSBUFQ NV UT Q Q

Slide 62

Slide 62 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 .0#*-& QY Q CQT NBY#JUSBUFQ NV UT Q Q

Slide 63

Slide 63 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 .0#*-& QY Q CQT NBY#JUSBUFQ NV UT Q Q

Slide 64

Slide 64 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 .0#*-& QY Q CQT NBY#JUSBUFQ NV UT Q Q

Slide 65

Slide 65 text

"CFNB57ΞϓϦͷϏοτϨʔτ੍ޚʢ"OESPJEʣ VideoBitrateAdjuster PlayerBitrateChanger LimitedBandwidthMeter ExoPlayer "650 .0#*-& QY Q CQT NBY#JUSBUFQ NV UT Q Q

Slide 66

Slide 66 text

͢΂ͯ͸௨৴ྔΛ཈͑ΔͨΊ

Slide 67

Slide 67 text

·ͱΊ

Slide 68

Slide 68 text

·ͱΊ wϓϨΠϦετऔಘ͠ա͗໰୊ ࠷৽ͷ&YP1MBZFSʢSʣΛར༻͢Ε͹ղফͰ͖Δɻ wը໘ʹ࠷దͳϏοτϨʔτ੍ޚ ଳҬ্ݶΛઃఆ͢Δ͜ͱͰແବͳ௨৴ྔΛ཈͑Δ͜ͱ͕Ͱ͖Δɻ

Slide 69

Slide 69 text

͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ

Slide 70

Slide 70 text

8F`SFIJSJOH IUUQTBCFNBHO[SBT