Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
Fragmented MP4のおはなし
Shumpei Urabe
April 25, 2018
Technology
5
4.1k
Fragmented MP4のおはなし
Streaming Conference #2で発表したスライドです。
https://streaming-lab.connpass.com/event/79586/
Shumpei Urabe
April 25, 2018
Tweet
Share
More Decks by Shumpei Urabe
See All by Shumpei Urabe
yaminoma
0
42
yaminoma
3
530
yaminoma
3
1.6k
yaminoma
0
70
yaminoma
0
820
yaminoma
0
48
yaminoma
4
810
yaminoma
4
1.7k
yaminoma
7
3.9k
Other Decks in Technology
See All in Technology
sadayoshitada0919
1
630
ytaka23
5
1.8k
youri
0
110
iwask
1
260
clustervr
0
110
miura55
0
120
takaking22
2
540
hirosys
0
150
ymas0315
0
180
nwiizo
1
390
asamihirai
0
180
yuyamada
9
1.1k
Featured
See All Featured
qrush
285
18k
malarkey
119
16k
chrislema
231
16k
aarron
257
36k
eitanlees
111
9.9k
moore
125
21k
paulrobertlloyd
71
3.6k
sferik
610
54k
malarkey
393
60k
tmm1
61
8.5k
reverentgeek
27
1.9k
jlugia
216
16k
Transcript
'SBHNFOUFE.1ͷ͓ͳ͠ 4USFBNJOH$POGFSFODF 1SFTFOUFECZ!NFUFPS@TBBO
ࣗݾհ w ϝςΦ !NFUFPS@TBBO w ԬʹॅΜͰ͍Δେֶੜ w ઐࣗવݴޠॲཧ w
࠷ۙͷझຯ6%1ͷύέοτଛࣦ࣌ͷϦΧόʔʹؔ͢Δݚڀ w ࣾͰϥΠϒ৴ج൫ͷߏஙʹؔΘ͍ͬͯͨ
-JWF4USFBNJOH'PSNBU
-JWF4USFBNJOH'PSNBU w 35.1 w 435 w )551-JWF4USFBNJOH w .1&(%"4) w
8FC35$
-JWF4USFBNJOH'PSNBU w 35.1 w 435 w )551-JWF4USFBNJOH w .1&(%"4) w
8FC35$
)551-JWF4USFBNJOH w "QQMF͕։ൃɻ w 3'$ͱͯ͠ඪ४Խɻ w NVϓϨΠϦετΛͬͯ৴ɻ w .1&(54'SBHNFOUFE.1 .BTUFS1MBZMJTU
.FEJB1MBZMJTU 4FHNFOU 4FHNFOU .FEJB1MBZMJTU 4FHNFOU 4FHNFOU .FEJB1MBZMJTU MJTUNV QNV UT UT QNV UT UT QNV
w .1&(-"͕։ൃɻ w *40*&$ͱͯ͠ඪ४Խɻ w 9.-Ͱॻ͔Εͨ.1%ϑΝΠϧΛ͏ɻ w 'SBHNFOUFE.1 .1&(54 .1&(%"4)
%ZOBNJD"EBQUJWF4USFBNJOHPWFS)551 .BOJGFTU *OJUJBM4FHNFOU 4FHNFOU 4FHNFOU .BOJGFTU 4FHNFOU 4FHNFOU .BOJGFTU MJTUNQE JOJUNT NT NT MJTUNQE NT NT MJTUNQE
IMTKT͕ͻͨ͢Βॏ͍
IMTKT w )-4جຊతʹ4BGBSJͳͲɺݶΒΕͨϒϥβͰ͔͠࠶ੜग़དྷͳ͍ɻ w ͦͷͨΊɺඇରԠϒϥβΛαϙʔτ͢ΔͨΊʹIMTKTͱݺΕΔ +BWB4DSJQUͷϥΠϒϥϦΛ͏ඞཁ͕͋Δɻ w ΄͔ʹWJEFPKTDPOUSJCIMTͳͲ͋Δ͕ɺݱࡏओྲྀͳͷIMTKTɻ
UTEFNVYFSKT w NVΛऔಘ w 54ϑΝΠϧΛऔಘ w 54ϑΝΠϧ͔Βө૾ͱԻΛऔΓग़͢ w औΓग़ͨ͠σʔλΛ*40#.''ʹม͢Δ w
.FEJB4PVSDF&YUFOTJPOΛͬͯ࠶ੜ͢Δ
UTEFNVYFSKT w NVΛऔಘ w 54ϑΝΠϧΛऔಘ w 54ϑΝΠϧ͔Βө૾ͱԻΛऔΓग़͢ w औΓग़ͨ͠σʔλΛ*40#.''ʹม͢Δ w
.FEJB4PVSDF&YUFOTJPOΛͬͯ࠶ੜ͢Δ
UTEFNVYFSKT .1&(54 1"5 1.5 7JEFP%BUB "VEJP%BUB 7JEFP%BUB "VEJP%BUB ŋŋŋ
UTEFNVYFSKT .1&(54 1"5 1.5 7JEFP%BUB "VEJP%BUB 7JEFP%BUB "VEJP%BUB ŋŋŋ ϓϩάϥϜΛऔಘ
UTEFNVYFSKT .1&(54 1"5 1.5 7JEFP%BUB "VEJP%BUB 7JEFP%BUB "VEJP%BUB ŋŋŋ ө૾Իͷ1*%Λऔಘ
UTEFNVYFSKT .1&(54 1"5 1.5 7JEFP%BUB "VEJP%BUB 7JEFP%BUB "VEJP%BUB ŋŋŋ ө૾Λநग़
UTEFNVYFSKT .1&(54 1"5 1.5 7JEFP%BUB "VEJP%BUB 7JEFP%BUB "VEJP%BUB ŋŋŋ /"-ϢχοτͷใΛऔಘ
UTEFNVYFSKT .1&(54 1"5 1.5 7JEFP%BUB "VEJP%BUB 7JEFP%BUB "VEJP%BUB ŋŋŋ ԻΛநग़
UTEFNVYFSKT .1&(54 1"5 1.5 7JEFP%BUB "VEJP%BUB 7JEFP%BUB "VEJP%BUB ŋŋŋ ϔομʔใΛऔಘ
UTEFNVYFSKT .1 *40#.'' 7JEFP%BUB "VEJP%BUB GUZQ NPPW NWIE USBL NEBU
7JEFP%BUB 3FNVYJOH NQSFNVYFSKT
UTEFNVYFSKT
'SBHNFOUFE.1
'SBHNFOUFE.1 w *40ʹنఆ w #PYͱ͍͏୯ҐͰ֤छͷใ͕͔Εͯ֨ೲ͞Ε͍ͯΔ w ݱࡏ)-4ͱ.1&(%"4)ͷ྆ํͰαϙʔτ͞Ε͍ͯΔ
'SBHNFOUFE.1 w GUZQGJMFUZQF w NPPWIFBEFSEBUB w NEBUBVEJPWJEFPEBUB GUZQ NPPW NWIE
USBL NEBU 7JEFP%BUB ௨ৗͷ.1 ϑΝΠϧ IPHFNQ
'SBHNFOUFE.1 w GUZQGJMFUZQF w TJEYJOEFYPGNPPG NEBU w NPPGIFBEFSEBUB w NEBUBVEJPWJEFPEBUB
GUZQ NPPW NWIE USBL NEBU NPPG NGIE USBG 7JEFP%BUB 'SBHNFOUFE.1 ॳظԽηάϝϯτ JOJUNT ηάϝϯτϑΝΠϧ NT
'SBHNFOUFE.1 w )-4ͷ߹ɺ&9597&34*0/͔ Βαϙʔτ͞Ε͍ͯΔ J04Ҏ্ w &959."1ͰॳظԽηάϝϯτΛ ࢦఆ͢Δ͚ͩ w
.1&(54ͷͱ͖ͱϑΥʔϚοτ ͋·ΓมΘΒͳ͍ #EXTM3U #EXT-X-VERSION:4 #EXT-X-TARGETDURATION:10 #EXT-X-MEDIA-SEQUENCE:0 #EXT-X-MAP:URI=“init.mp4" #EXTINF 10.001 segment1.mp4 #EXTINF 10.001 segment2.mp4
'SBHNFOUFE.1 w .1&(%"4)ͷ߹ݩʑαϙʔτ ͞Ε͍ͯΔ w *OJUJBMJ[BUJPO4PVSDF63-ʹॳظԽη άϝϯτΛࢦఆ͠ɺ4FHNFOU63-ʹ அยϑΝΠϧΛࢦఆ͢Δ͚ͩ <?xml version="1.0"?>
<MPD xmlns="urn:mpeg:dash:schema:mpd:2011" minBufferTime="PT1.500S" type="static" mediaPresentationDuration="PT0H9M56.466S" maxSegmentDuration="PT0H0M4.000S" profiles="urn:mpeg:dash:profile:full:2011"> <ProgramInformation moreInformationURL="http:// gpac.sourceforge.net"> <Title>./output.mpd</Title> </ProgramInformation> <Period duration="PT0H9M56.466S"> <AdaptationSet segmentAlignment="true" maxWidth="320" maxHeight="180" maxFrameRate="30" par="16:9" lang="und"> <ContentComponent id="1" contentType="video" /> <ContentComponent id="2" contentType="audio" /> <Representation id="1" mimeType="video/mp4" codecs="avc3.640014,mp4a.40.2" width="320" height="180" frameRate="30" sar="1:1" audioSamplingRate="48000" startWithSAP="1" bandwidth="631708"> <AudioChannelConfiguration schemeIdUri="urn:mpeg:dash: 23003:3:audio_channel_configuration:2011" value="2"/> <SegmentList timescale="1000" duration="4000"> <Initialization sourceURL=“init.mp4”/> <SegmentURL media=“segment1.m4s”/> <SegmentURL media=“segment2.m4s”/> </SegmentList> </Representation> </AdaptationSet> </Period> </MPD>
'SBHNFOUFE.1 )-4ͱ.1&(%"4)ͷڞ௨Խ IUUQTCMPHTBLBNBJDPNKQDNBGDNBGMPXMBMBUFODZMJWFIUNMΑΓ
.FEJB4PVSDF&YUFOTJPOT w )551μϯϩʔυΛར༻ͯ͠ετϦʔϛϯά࠶ੜΛߦ͏ͨΊʹ8$ʹΑͬ ͯඪ४Խ͞Ε͍ͯΔ+BWB4DSJQUͷ"1* w ॳظԽʹඞཁͳϔομใؚ͕·Ε͍ͯΔॳظԽηάϝϯτͱ͍࣌ؒͰ ۠ΒΕͨϝσΟΞσʔλຊମؚ͕·ΕΔϝσΟΞηάϝϯτ͕ඞཁ w ͭ·Γɺ'SBHNFOUFE.1શͯຬ͍ͨͯ͠ΔͨΊɺͦͷ··࠶ੜ͢Δ ͜ͱ͕ग़དྷΔ
.FEJB4PVSDF&YUFOTJPOT w +BWB4DSJQUͷϥΠϒϥϦEBTIKTIMTKTΛ͏͜ͱʹΑΓɺࣗલͰ࣮ͤ ͣʹͦͷ··࠶ੜ͢Δ͜ͱ͕ग़དྷΔɻ 'SBHNFOUFE.1 GUZQ NPPW NWIE USBL NEBU
NPPG NGIE USBG 7JEFP%BUB .FEJB4PVSDF&YUFOTJPOͰ࠶ੜ EBTIKTIMTKT
$."'
$PNNPO.FEJB"QQMJDBUJPO'PSNBU w *40*&$ w ϚχϑΣετϑΝΠϧࢦఆ͞Ε͍ͯͳ͍ͨΊɺطଘͷNV )-4 .1% %"4) ͕ͦͷ··͏͜ͱ͕ग़དྷΔ
w ϝσΟΞϑΥʔϚοτʹ*40#.'' 'SBHNFOUFE.1 Λ͏͜ͱ͕ఆٛ ͞Ε͍ͯΔ
$PNNPO.FEJB"QQMJDBUJPO'PSNBU w $."'Ͱ)551ͷ$IVOLFE5SBOTGFS&ODPEJOHΛ͏ w ηάϝϯτϑΝΠϧ͕Τϯίʔμ͔Βશͯૹ৴͞ΕΔલʹɺνϟϯΫΛΫ ϥΠΞϯτଆͰ࠶ੜ͢Δ
$PNNPO.FEJB"QQMJDBUJPO'PSNBU w $."'Ͱ)551ͷ$IVOLFE5SBOTGFS &ODPEJOHΛ͏ w ηάϝϯτϑΝΠϧΛߋʹׂͨ͠ͷΛνϟ ϯΫͱݺͿ w ηάϝϯτϑΝΠϧ͕Τϯίʔμ͔Βશͯૹ ৴͞ΕΔલʹɺνϟϯΫΛΫϥΠΞϯτଆͰ
࠶ੜ͢Δ NEBU NPPG NGIE USBG 7JEFP%BUB 'SBHNFOUFE.1 ηάϝϯτϑΝΠϧ NT νϟϯΫ NTͷҰ෦ NEBU NPPG NGIE USBG 7JEFP NEBU NPPG NGIE USBG 7JEFP NEBU NPPG NGIE USBG 7JEFP
$PNNPO.FEJB"QQMJDBUJPO'PSNBU w νϟϯΫͷେ͖ࣗ͞༝ͳͷͰɺΑΓԆΛ࣮ ݱ͍ͨ͠ͳΒখ͍͞αΠζͰ۠Δ͜ͱՄೳ w νϟϯΫΛ࠶ੜ͢Δʹɺηάϝϯτͷμϯϩʔ υ͕ྃ͢Δલʹ$IVOLFE5SBOTGFSͰड͚औͬ ͨσʔλΛ࠶ੜόοϑΝʹඇಉظͰՃ͢Δඞཁ ͕͋Δ w
ͦͷͨΊɺ࣮ࡍʹ࠶ੜग़དྷΔϓϨΠϠʔ͕গͳ͍ NEBU NPPG NGIE USBG 7JEFP%BUB 'SBHNFOUFE.1 ηάϝϯτϑΝΠϧ NT νϟϯΫ NTͷҰ෦ NEBU NPPG NGIE USBG 7JEFP NEBU NPPG NGIE USBG 7JEFP NEBU NPPG NGIE USBG 7JEFP
͓·͚ IUUQTHJUIVCDPN%BTI*OEVTUSZ'PSVNEBTIKTQVMMΑΓ
͓͠·͍