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
ATEMを活用した制作ソリューション
Search
Yusei Yamanaka
August 12, 2016
Technology
0
1.3k
ATEMを活用した制作ソリューション
Blackmagic Creators Show 特別編「ディベロッパーセミナー」
http://www.blackmagicdesign-creatorscom.jp/index.php?ka=7
Yusei Yamanaka
August 12, 2016
Tweet
Share
More Decks by Yusei Yamanaka
See All by Yusei Yamanaka
生配信管理システムのバックエンド〜AWS AppSyncで迅速に構築するGraphQLサービス〜 / Backend of live streaming management system - GraphQL service to build quickly with AWS AppSync
miyukki
0
1.2k
"新しい未来のテレビ"を目指すABEMA配信システムの再設計 / Re-architecture of ABEMA live ingest system
miyukki
0
2.4k
3周年に突入するAbemaTVの挑戦と苦悩 / The challenge and anguish of AbemaTV celebrating the third anniversary
miyukki
8
4.9k
AbemaTVのアーキテクチャの変遷 / The history of AbemaTV's architecture
miyukki
3
1.5k
機材管理ツールをFirebaseで構築しようとした話 / Building equipment management software with Firebase
miyukki
7
4.4k
AbemaTVで働くエンジニアの裏側 / The engineer working at AbemaTV
miyukki
0
860
動画配信サービスとしてこの先生きのこるには / The way to continue as a video streaming service
miyukki
8
3.9k
MPEG-DASHによるリニア型配信 / Linear broadcasting by MPEG-DASH on AbemaTV
miyukki
6
13k
1周年を迎えたAbemaTVの動画配信の裏側 / The background of video distribution in AbemaTV during one year
miyukki
15
13k
Other Decks in Technology
See All in Technology
WindowsでGenesisに挑戦した話
natsutan
0
120
水耕栽培に全部賭けろ
mutsumix
0
160
テスト設計、逆から読むとおもしろい──仕様にない“望ましさ”の逆設計
mhlyc
0
190
Software Delivery Observability CI・CD , DORA metrics も Datadog で可視化しよう / datadog-ci-cd-observability
parupappa2929
0
170
AIエージェントのオブザーバビリティについて
yunosukey
1
390
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
73
20k
Cline&CursorによるAIコーディング徹底活用―Live Vibe Coding付き
pharma_x_tech
1
280
事業と組織から目を逸らずに技術でリードする
ogugu9
19
5.4k
SwiftUIとMetalで簡単に作るレアカード風UI
stoticdev
1
100
チェックツールを導入したけど使ってもらえなかった話 #GAADjp
lycorptech_jp
PRO
1
150
"発信文化"をどうやって計測する?技術広報のKPI探索記/How do we measure communication culture?
bitkey
4
360
インフラからSREへ
mirakui
20
7.8k
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
179
53k
Building Applications with DynamoDB
mza
94
6.4k
Adopting Sorbet at Scale
ufuk
76
9.4k
Producing Creativity
orderedlist
PRO
344
40k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Fireside Chat
paigeccino
37
3.4k
Fontdeck: Realign not Redesign
paulrobertlloyd
84
5.5k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.2k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Transcript
"5&.Λ׆༻੍ͨ͠࡞ιϦϡʔγϣϯ :VTFJ:"."/"," !NJZVLLJ #MBDLNBHJD$SFBUPST4IPXಛผฤʮσΟϕϩούʔηϛφʔʯ
ࣗݾհ ීஈɺΤϯδχΞͱͯ͠ɺͱ͋ΔಈըαʔϏεͷ όοΫΤϯυΛ৮͍ͬͯ·͢ ຊͷਖ਼ମେֶੜ ຊ໊ࢁத༐ ̝̣ΈΏ͖ͬ !UPSJJNJZVLLJ #MBDLNBHJD%FTJHO͕େ͖Ͱݸਓॴ༗ͳΒෛ ͚·ͤΜʂ
*LB-PHͬͯ·͢ʂ झຯͰө૾͕͖Ͱɺऩ৴Λ͍ͬͯ·͢
ओͳॴ༗ػࡐ w #.%"5&..&1SPEVDUJPO4UVEJP, w #.%)ZQFS%FDL4UVEJP1SP w #.%)ZQFS%FDL4IVUUMF w #.%4UVEJP$BNFSB)%
w #.%%FDL-JOL)%&YUSFNF% w #.%%FDL-JOL%VP w 40/:1.8, 4ZTUFN$BNFSB w $BOPO9" ࠷ۙ4:45&.Ͱങͬͨͷ 57-PHJDͷΠϯνϚϧνϑΥʔϚοτϞχλ
ػࡐൡ ۀ༻ɾ์ૹ༻ࡱӨػࡐ͕େ͖ͳࣾձਓɺେֶӃੜɺେֶੜɺߴઐੜɺߴߍੜ͕ू ·ͬͯ݁͞Εͨஂମ ߴߍ์ૹ෦ΛҾୀͯ͠ʜػࡐ͕େ͖ͰࣗෲͰۀ༻ɾ์ૹ༻ػࡐΛͦΖ͑ͯ ͠·͏ਓͨͪͷू·Γ ϓϩ͡Ό͋Γ·ͤΜɻ
NΫϨʔϯɺελδΦΧϝϥɺγεςϜΧϝϥͳͲͲͷػࡐΛൡһ͕ॴ࣋
աڈͷΠϕϯτ࣮ ݄ +"9"ӉՊֶݚڀॴओ࠵ ӉՊֶߨԋͱөըͷձ ݄ɺ χίχίձٞ ·Δͳ͛εςʔδ ϚϧνΧϝϥऩΛߦ͍·ͨ͠ র໌ɺ৴ɺऩΛߦ͍·ͨ͠
աڈͷΠϕϯτ࣮ ݄ ήʔϜ࣮گφΠτʙਓʙ JOαϯϦΦϐϡʔϩϥϯυ ϥΠϒεΠονϯάऩߦ͍·ͨ͠ ݄ɺɺ ͦΒത40-J7& ެ։ੜ์ૹ γεςϜߏஙɺ৴ɺऩΛߦ͍·ͨ͠
"5&.ϓϩτίϧͷղੳϥΠϒϥϦͷ։ൃ
"5&. ಉػೳͷͱൺͯɺൺֱత҆ՁͳεΠονϟʔʢݸਓͰങ͑Δʂʣ &UIFSOFUܦ༝Ͱͷίϯτϩʔϧ͕Մೳ 4%,ͳͲ։ൃͷࢿྉ͕๛
"5&.ͷ੍ޚํ๏ "5&.ʹެࣜͰ4%,͕͋Δ͕ɺ%--ωΠςΟϒͷϥΠϒϥϦͱͯ͠ఏڙ͞Ε͍ͯ ΔͨΊɺΞϓϦέʔγϣϯΛ࡞Δίετ͕ߴ͍ ࣗ࡞Ͱ/PEFKTͷϥΠϒϥϦΛ੍࡞͢Δ͜ͱʹΑΓɺΞϓϦέʔγϣϯΛ࡞Δίε τΛݮ͠ɺϚϧνϓϥοτϑΥʔϜͰಈ࡞͢ΔΑ͏ʹ "5&.ͷ੍ޚ6%1ϙʔτ൪Λ༻͢ΔʢϩʔΧϧଆͷϙʔτԿͰྑ͍ʣ
ͪͳΈʹ)ZQFS%FDLͷ੍ޚ5$1Ͱ͢ʢ։ൃνʔϜʹΑΔҧ͍ʁʣ
"5&.Λ੍ޚ͢Δγʔέϯε
"5&.ϓϩτίϧͷ༷1$"5&. 0 1 2 3 0 1 2 3
4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Flags | Packet Length | Session Id | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Echo Data | NULL | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | NULL | Packet Id | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Command Length | NULL | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Command Name (ASCII) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Command Data… | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
"5&.ϓϩτίϧͷ༷1$"5&. 0 1 2 3 0 1 2 3
4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Flags | Packet Length | Session Id | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Echo Data | NULL | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | NULL | Packet Id | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Command Length | NULL | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Command Name (ASCII) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Command Data… | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ڪΒ͘ύέοτͷॱংΛอূ͢ΔͷͰɺ "5&.ʹૹΔͱ͖ʹඞཁʹͳΔ 1$ଆ͔ΒૹΔճΛΠϯΫϦϝϯτ͍ͯ͘͠ ੍ޚରͷίϚϯυ໊
"5&.ϓϩτίϧͷ༷"5&.1$ 0 1 2 3 0 1 2 3
4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Flags | Packet Length | Session Id | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ? | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ? | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Command Length | ? | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Command Name (ASCII) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Command Data… | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
"5&.ίϚϯυͷ༷ ϓϩάϥϜιʔεͷมߋ 1$"5&.$1H*$IBOHF1SPHSBN*OQVU 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Command Length - 12 bytes | NULL | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Command Name (ASCII) - CPgI | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | M/E | NULL | Source Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ "5&.1$1SH*1SPHSBN*OQVU ܗࣜ$1H*ͱಉ͡
ϓϩτίϧͷ༷ "SEVJOPϥΠϒϥϦΛެ։͍ͯ͠Δɺ4,""3)0+ εΧΠϗΠ ͕ɺ"5&.ͷύ έοτΛղੳͨ݁͠ՌΛ·ͱΊͯܝࡌ͍ͯ͠Δ IUUQTLBBSIPKDPNpMFBENJO#.%13050$0-IUNM
8JSFTIBSL-VBϓϥάΠϯ 4,""3)0+Ͱɺܝࡌ͍ͯ͠ͳ͍ίϚϯυ͋ΔͨΊʢ.FEJB1MBZFSͳͲʣࣗྗͰ ͷϓϩτίϧղੳΛิॿ͢ΔͨΊʹɺ8JSFTIBSLͷ-VBϓϥάΠϯΛ࡞Γ·ͨ͠ ཉ͍͠ਓ͕͍ͨΒެ։͠·͢ʜ
ࣗ࡞ϥΠϒϥϦͷհ "5&.Λ੍ޚ͢ΔجຊతͳϓϩτίϧΛ࣮ͨ͠ɺࣗ࡞ϥΠϒϥϦΛ(JU)VCͰެ։͠ ͍ͯ·͢ ͪͳΈʹɺ"5&.Λ੍ޚ͢ΔOQNϥΠϒϥϦͭ͋Γ·͕͢ɺͦͷதͰΑ͘ग़ དྷͯΔͱࣗෛ OPEFBQQMFTUBUFN .*5-JDFOTF
IUUQTHJUIVCDPNBQQMFTUOPEFBQQMFTUBUFN ελʔཉ͍͠Ͱ͢
ϝσΟΞ ενϧ ͷసૹʹରԠ
ςετ
"5&.ͱ੍࡞ͷ׆༻ࣄྫ
"5&..*%*ίϯτϩʔϥʔ
"5&.#SPBEDBTU1BOFMߴ͍ʂӡൖ͕େมʂ "5&..*%*ίϯτϩʔϥʔ αʔυύʔςΟͷϋʔυΣΞ͋Δ͕ʜ ҆Ձͳ.*%*ίϯτϩʔϥʔΛɺ"5&.ͷϋʔυΣΞύωϧʹͯ͠͠·͓͏ʂ
ιϑτΣΞ੍ޚͳͷͰɺϘλϯͷΞαΠϯΛࣗ༝ʹׂΓͯՄೳ "5&..*%*ίϯτϩʔϥʔ ઃఆϑΝΠϧͰϘλϯΞαΠϯΛมߋͰ͖ΔΑ͏ʹ 13( 145 $IBOOFM 'BEFS
9-3'BEFS 5#BS ϘλϯΞαΠϯߏҰྫ ར༻γʔϯ
"5&..*%*ίϯτϩʔϥʔ σϞ
"5&..*%*ίϯτϩʔϥʔ
ϚΫϩͷ࠶ੜʹରԠ
.*%*ίϯτϩʔϥʔࣗମ͕লεϖʔεͰిݯෆཁͳͨΊɺઃஔָ͕ "5&..*%*ίϯτϩʔϥʔӡ༻தͷ༷ࢠ
Α͘ɺ͜Ε͍͘ΒͰചͬͯ͘Ε·͔͢ʁͱ͍͏ݴ༿Λฉ͖·͕͢ɺ "5&..*%*ίϯτϩʔϥʔ ͪ͜Βɺ(JU)VCͰެ։͍ͯ͠·͢ʂ BUFNNJEJDPOUSPMMFS .*5-JDFOTF IUUQTHJUIVCDPNBQQMFTUBUFNNJEJDPOUSPMMFS
"5&.ϒϥβίϯτϩʔϥʔ
"5&.ϒϥβίϯτϩʔϥʔ ࣗ࡞ϥΠϒϥϦΛ༻ͯ͠ɺϒϥβ͔Β"5&.Λૢ࡞͢ΔίϯτϩʔϥʔΛ࡞͠ ·ͨ͠ 6*ͷϘλϯ෦εϥΠμʔ෦ͳͲɺը૾ΛΘͣ$44Ͱ࠶ݱ͍ͯ͠·͢
"5&.ϒϥβίϯτϩʔϥʔ։ൃதͷ༷ࢠ
ͪ͜Βɺ(JU)VCͰެ։͍ͯ͠·͢ʂ "5&.ϒϥβίϯτϩʔϥʔ MJWFDPOUSPMMFS .*5-JDFOTF IUUQTHJUIVCDPNBQQMFTUMJWFDPOUSPMMFS
"5&.λϦʔίϯόʔλʔ
(1*BOE5BMMZ*OUFSGBDFߴ͍ʂ "5&.λϦʔίϯόʔλʔ "SEVJOPΛ͔ͭͬͯɺࣗ࡞͠Α͏ʂ (1*BOE5BMMZ*OUFSGBDF ԁ ੍࡞ͨ͠"5&.λϦʔίϯόʔλʔ
4,""3)0+ͷఏڙ͍ͯ͠Δ"SEVJOP-JCSBSZGPS"5&.4XJUDIFSTΛ༻
"5&.λϦʔίϯόʔλʔ։ൃதͷ༷ࢠ 1305&$)ͷΠϯλʔΧϜγεςϜ'%4ͱ࿈ܞ༷ͨ͠ࢠ %4VC ϐϯ ͷΦʔϓϯίϨΫλग़ྗ
"5&.λϦʔίϯόʔλʔ։ൃதͷ༷ࢠ 1305&$)ͷΠϯλʔΧϜࢠػ'%"ͷλϦʔग़ྗΛେ͖͘දࣔ͢ΔλϦʔϢ χοτΛ࡞
"5&.λϦʔίϯόʔλʔ։ൃதͷ༷ࢠ 40/:ͷγεςϜΧϝϥ$$6)9$6'#ͱ࿈ܞ
"5&.λϦʔίϯόʔλʔӡ༻தͷ༷ࢠ χίχίձٞ·Δͳ͛εςʔδͰ࣮ઓೖ
"5&.λϦʔίϯόʔλʔӡ༻தͷ༷ࢠ ԋऀ͕ݟ͍͢Α͏ʹ͢Δ͜ͱͰɺΧϝϥͷઢΛ͘ΕΔΑ͏ʹ
"5&.ϫΠϠϨελϦʔ
"5&.ϫΠϠϨελϦʔ λϦʔίϯόʔλʔΑΓઌʹ։ൃͨ͠ɺΈΜͳͷεϚϗΛλϦʔʹ͢ΔγεςϜ λοϓ͢Δ͜ͱͰϓϩάϥϜ͕ΓସΘΔͷͰɺগਓͷݱʹ࠷ద
"5&.࿈ಈಈըϓϨʔϠʔ
"5&.࿈ಈಈըϓϨʔϠʔ ࣗ࡞ͷϥΠϒϥϦΛ&MFDUSPOʢ/PEFKTΛωΠςΟϒΞϓϦԽ͢ΔιϑτΣΞʣʹ ΈࠐΈɺ"5&.ͷϓϩάϥϜʹΓସΘͬͨΒಈը࠶ੜΛ͢ΔϓϨʔϠʔΛ࡞
"5&.ͱଞͷεΠονϟʔͱͷ࿈ܞ
"5&.ͱଞͷεΠονϟʔͱͷ࿈ܞ "5&.574 ೖྗ ͱ$FSFWP͞Μͷ-JWF8FEHF ೖྗ ͱ࿈ܞ͠ɺٖࣅతͳೖྗ εΠονϟʔʹݟͤΔγεςϜ
·ͱΊ
·ͱΊ "5&.Λ׆༻੍ͨ͠࡞ιϦϡʔγϣϯ #MBDLNBHJD%FTJHO"5&.4XJUDIFSTΛ͏͜ͱʹΑΓɺ&UIFSOFUܦ༝Ͱͷ͋Β ΏΔίϯτϩʔϧ͕ՄೳͱͳΓɺεΠονϟʔͱ࿈ܞ༷ͨ͠ʑͳγεςϜΛߏங͢Δ ͜ͱ͕ՄೳͱͳΔ ެࣜͷ4%,αʔυύʔςΟͷϥΠϒϥϦ͕๛ ։ൃऀΤϯδχΞ͕ू·ΔΦʔϓϯͳίϛϡχςΟ͋Δ
"5&.6TFSDPNIUUQXXXBUFNVTFSDPNGPSVN "5&.ؔ࿈ͷ։ൃʹؔ͢Δ૬ஊɺࡱӨɺऩͳͲͷ͝ґཔ͕͋Γ·ͨ͠Βɺ͓ͪ͠ ͓ͯΓ·͢
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠