Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Fragmented MP4のおはなし
Search
Shumpei Urabe
April 25, 2018
Technology
8
7.2k
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
AIを活用した放送技術スタートアップの制作現場改革について
yaminoma
0
15k
動画配信技術について
yaminoma
2
1.6k
Multimedia Security Topics
yaminoma
0
2.4k
コロナ禍でのライブストリーミングの変化とテレビ放送の規格について
yaminoma
0
1.1k
今日から分かる Android Audioの全て
yaminoma
0
460
Apple Low-Latency HLSを使った 超低遅延配信について
yaminoma
4
5k
今日から分かる AVAudioEngineの全て
yaminoma
4
6.2k
Cross Platform Video Player
yaminoma
0
500
PHPとRustを組み合わせて音声ファイルをエンコードする話
yaminoma
0
3.6k
Other Decks in Technology
See All in Technology
Building AI Applications with Java, LLMs, and Spring AI
thomasvitale
1
230
ECS組み込みのBlue/Greenデプロイを動かしてELB側の動きを観察してみる
yuki_ink
3
390
マルチドライブアーキテクチャ: 複数の駆動力でプロダクトを前進させる
knih
0
7.7k
ステートレスなLLMでステートフルなAI agentを作る - YAPC::Fukuoka 2025
gfx
8
1.4k
Javaコミュニティの歩き方 ~参加から貢献まで、すべて教えます~
tabatad
0
140
Error.prototype.stack の今と未来
progfay
1
200
LINEヤフー バックエンド組織・体制の紹介
lycorptech_jp
PRO
0
840
TypeScript 6.0で非推奨化されるオプションたち
uhyo
13
4.1k
Service Monitoring Platformについて
lycorptech_jp
PRO
0
330
【M3】攻めのセキュリティの実践!プロアクティブなセキュリティ対策の実践事例
axelmizu
0
180
自然言語でAPI作業を片付ける!「Postman Agent Mode」
nagix
0
120
AI エージェントを評価するための温故知新と Spec Driven Evaluation
icoxfog417
PRO
2
620
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Leading Effective Engineering Teams in the AI Era
addyosmani
8
1.1k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
RailsConf 2023
tenderlove
30
1.3k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3k
Optimizing for Happiness
mojombo
379
70k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
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ΑΓ
͓͠·͍