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
アバターライブ配信アプリ「トピア」の開発の話アバターライブ配信アプリ「トピア」の開発の話
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Moomo
August 24, 2019
Programming
740
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
アバターライブ配信アプリ「トピア」の開発の話アバターライブ配信アプリ「トピア」の開発の話
トピアのアバター・配信・視聴・開発の苦労話など幅広い内容が含まれています
Moomo
August 24, 2019
Other Decks in Programming
See All in Programming
並列実装の現場、2ヶ月間実務でAIを使い倒したAIもPCも私も限界が近い
ming_ayami
0
120
依存関係から依存物へ―Dependencyという言葉の歴史をひも解く
j_lee
0
110
AIで効率化できた業務・日常
ochtum
0
120
dRuby over BLE
makicamel
2
330
TAKTでAI駆動開発の品質を設計する
j5ik2o
6
1.2k
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
1.9k
Agentic UI
manfredsteyer
PRO
0
130
JavaDoc 再入門
nagise
0
320
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
530
技術記事、AIに書かせるか、自分で書くか? 〜それでも私が自分の手で書く理由〜 / #QiitaConference
jnchito
2
1.3k
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
390
脅威をエンジニアリングの糧にして――現場編 / Turning Threats into Engineering Fuel — Field Edition
nrslib
0
270
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1370
210k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
22k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
390
The World Runs on Bad Software
bkeepers
PRO
72
12k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.9k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
390
Become a Pro
speakerdeck
PRO
31
6k
How to make the Groovebox
asonas
2
2.2k
Writing Fast Ruby
sferik
630
63k
Transcript
ΞόλʔϥΠϒ৴ΞϓϦ ʮτϐΞʯͷ։ൃͷ גࣜձࣾ6/#&3&"-ΤϯδχΞ ߴऔହ༸
ࣗݾհ ɾϝΨϕϯνϟʔͱݺΕΔձࣾͰιʔγϟϧήʔϜͷ։ൃʹैࣄ ɾϑϦʔϥϯεͰΦϯϥΠϯ6OJUZߨࢣ ΧδϡΞϧήʔϜͷडୗ։ൃ ɾʹ6/#&3&"-ʹδϣΠϯ ɾτϐΞͷΫϥΠΞϯταΠυͷ։ൃΛ୲ɹˡ/PX $PNQBOZגࣜձࣾ6/#&3&"- 1PTJUJPOऔకɾΤϯδχΞ /BNFߴऔହ༸ʢ͔ͨͱΓ͢ͻΖʣ ɾ౦ژήʔϜγϣʔͰ73ήʔϜʮΞʔςΟϑΝΠτʯΛग़ల
ձࣾհ ɾि̏ʢ݄ɾਫɾۚʣۈɺि̎ϦϞʔτϫʔΫ ɾͪΖΜ ɾٸͳϙϯϙϯϖΠϯʢෲ௧ʣ ɾՆόςർ࿑ ɾؾ͕Βͳ͍ ͳͲཧ༝ͰͷϦϞʔτϫʔΫҠߦʹॊೈʹରԠʂ ۈܗଶ ΦϑΟε ɾכொӺెา̑ͷ'VUVSF5FDI)VC
ਓһ ɾΤϯδχΞ໊̏ɺاը໊ɼσβΠϯ໊̏
ΞϓϦ ɾΞόλʔϥΠϒ৴ʮτϐΞʯΛ։ൃɾӡӦதʂ ɾڈ݄̍̌ʹϦϦʔεʂ ɾଟ࠼ͳΞόλʔϝΠΩϯάػೳɾΧϥΦέ දɾϞʔγϣϯΤϞʔτΛ༻͍ͨ৴ػೳ
։ൃද ։ൃ։࢝ڈͷ݄̍ʢΤϯδχΞ໊̍ʣ ॳڈͷ݄̔ͷϦϦʔεΛࢦ͍͕ͯͨ͠։ൃ͕ΕΔ ڈͷ݄̍̌ϦϦʔε ΞόλʔΛ༻͍ͨϥΠϒ৴ܕͷίϛϡχςΟΞϓϦΛࢦ͍ͯ͠ ͕ͨࠓʹೖͬͯ̍ରଟͷ͛મܕϥΠϒ৴ΞϓϦʹϐϘοτ ݄̐ʹ՝ۚɾΪϑτػೳΛ࣮ ݄̓ʹΞόλʔͷେ෯ΫΦϦςΟΞοϓɾΧϥΦέػೳͷࡌ ݄̔ʹେ෯ͳύϑΥʔϚϯεվળ
ຊͷΞδΣϯμ Ξόλʔ ணͤସ͑ ΧϥʔόϦΤʔγϣϯ දτϥοΩϯά ϦοϓγϯΫɾͷಈ͖
৴ɾࢹௌ νϟοτɾΪϑτͷಉظ දɾମಈ͖ͷಉظ ։ൃͷۤ࿑͠ ࠓޙͷల
Ξόλʔ
Ξόλʔணͤସ͑ τϐΞ༷ʑͳணͤସ͑Λߦ͏ࣄ͕Ͱ͖Δ ݱࡏ̍̌Օॴͷணͤସ͕͑Մೳ τοϓε ϘτϜε ܕʢલɾޙΖʣ එໟ ඓ ޱ ۺ
ۺԼ ϔουΞΫηαϦʢΧνϡʔγϟʣ ϑΣΠεΞΫηαϦ
Ξόλʔணͤସ͑ Ξόλʔͷணͤସ͑ͷ։ൃΛߦͬͨܦݧ͕ͳ͔ͬͨ Ͳ͏ͬͨΒ࣮Ͱ͖Δ͔ ։ൃॳʜ ͱΓ͋͑ͣԿߟ͑ͣʹணͤସ͑ͷ෦ҐͷΦϒδΣΫτΛࠩ͠ସ͑ͯΈΔʜ ݁Ռɺ͜ͷํ๏Ͱ͏·͘ߦ͔ͣɾɾɾ
Ξόλʔணͤସ͑ %ΞόλʔϞσϧͷओͳߏཁૉ Ϙʔϯ ϙϦΰϯ ςΫενϟ
Ξόλʔணͤସ͑ Ϙʔϯͷಈ͖ϙϦΰϯʹӨڹΛ༩͑Δ ணͤସ͑ରͷ̏%ϞσϧͷϙϦΰϯʹରͯ͠ϘʔϯͷࢀরεΫϦϓτͰઃఆ
ΞόλʔΧϥʔόϦΤʔγϣϯ τϐΞͷΞόλʔΞΠςϜͷΧϥʔόϦΤʔγϣϯͷಛ ΞΠςϜ̍ʹ͖ͭ࠷େ̏Օॴ·Ͱ৭มߋՄೳ άϥσʔγϣϯදݱՄೳ
ΞόλʔΧϥʔόϦΤʔγϣϯ Ͳ͏͍ͬͯΔ͔ɾɾɾ ςΫενϟ 3(#ϚεΫςΫενϟ ̎ຕͷςΫενϟΛ༻ҙ
ΞόλʔΧϥʔόϦΤʔγϣϯ ςΫενϟͱ3(#ϚεΫςΫενϟ ΛॏͶΔͱʜ ৭มߋ͍ͨ͠෦Λ3(#ͷࡾ৭ͰృΓͭͿ͢ γΣʔμʔଆͰ3(#ςΫενϟΛݩʹ৭มߋ ෦ҐΛఆ Χϥʔ̍
Χϥʔ̎ ੨Χϥʔ̏
ΞόλʔΧϥʔόϦΤʔγϣϯ άϥσʔγϣϯ͕͍ͭͨ3(#ϚεΫςΫενϟΛ༻ҙ͢Δͱɾɾɾ
ΞόλʔදτϥοΩϯά τϥοΩϯάө෦Ґ إͷ֯ ޱ එໟ
ΞόλʔදτϥοΩϯά إͷಛݕग़6-4'BDF5SBDLFSΛ༻
ΞόλʔදτϥοΩϯά ͷ෦ҐΛݕग़Մೳ
ΞόλʔදτϥοΩϯά ݕग़ͨ͠ಛΛղੳ إͷ֯4%,ଆ͔ΒऔಘՄೳ ޱඑໟಛͷڑΛଌΔ ڑσʔλͷՃॲཧ εϜʔδϯά εϨογϣϧυ
ϊΠζআڈ إͷճసิਖ਼
ΞόλʔදτϥοΩϯά ಛͷөɾௐ༻ΤσΟλΛ6OJUZͷ&EJUPS֦ுػೳͰ࡞
ΞόλʔϦοϓγϯΫɾͷಈ͖ <Ϣʔβʔ͔Βͷใࠂ>͕͙͘͢ͳΔɻΞϓϦ͕ॏ͍ɻ ˠϑϩϯτΧϝϥΛৗ࣌ىಈͤͯ͞إೝ͍ࣝͤͯ͞Δͷ͕ॏͦ͏ ˠϑΣΠετϥοΩϯάΛΘͣʹΞόλʔͷදΛදݱ͢Δํ๏Λࡧ͢Δ
ΞόλʔϦοϓγϯΫ ·ͣ৭ʑͱࢼ͢ - OVRLipsync : Oculus͕։ൃͨ͠ϦοϓγϯΫΞηοτɺԻݕग़ Λߦͬͯࢦఆͨ͠BlendShapeʹͷөΛߦͬͯ͘ΕΔ༏Εͨػೳ Λ࣋ͭ →ػೳతʹ༏Ε͍͕ͯͨAndroid͔͠ରԠ͓ͯ͠ΒͣɺԆཱ͕ͬ ͨͷͰϦΞϧλΠϜͳϦοϓγϯΫʹ͔ͣ…
ΞόλʔϦοϓγϯΫ - Salsa LipSync : UnityͷΞηοτετΞ͔ΒߪೖՄೳͰධՁׂͱ ྑ͍ɻϚΠΫ͔ΒरͬͨԻྔͷڧऑͰޱͷ։ด߹͍ΛௐͰ͖ Δɻ →ԻͷมԽʢ͍͋͏͓͑ʣΛݕग़ͯ͘͠Εͳ͍ͷͰɺৗʹޱ͕։
͖ͬͺͳ͠ʹͳΔɻOVRLipSync΄ͲͰͳ͍͕Ԇ͕ൃੜ͢Δɻ
ΞόλʔϦοϓγϯΫ ํͳ͍ͷͰࣗ࡞͢Δ - ԻྔԻ৴༻ͷSDKΛ௨ͯ͠ωΠςΟϒଆ͔Βऔಘ - Իղੳ·ͰͰ͖ͳ͔ͬͨͷͰɺԻྔܗΛղੳ͠ɺԻͷ۟ ΕΛఆ͢Δ - Իྔͷޯ͕ҰఆҎ্ͩͱޱΛด͍ͯ͡Δͱఆ
- ҰఆԻྔҎԼޱͷಈ͖ʹө͠ͳ͍
Ξόλʔͷಈ͖ -Χϝϥઢ -ॠ͖ʢύνʣΛࣗಈతʹߦ͏ -ϥϯμϜͰ̎ճ࿈ଓॠ͖ -ඍࡉ؟ٿӡಈ - ΑΓੜ͖͍ͯΔײΛදݱ͢Δ
৴ɾࢹௌ
৴ɾࢹௌ Իͷ৴ɾࢹௌ෦ͷΠϯϑϥBHPSBJPͷαʔϏεΛར༻ 6OJUZ༻ͷ4%,ఏڙ͞Ε͓ͯΓɺؾܰʹө૾ɾԻ৴Λ։ൃͰ͖Δ༏Εͷ
Ξόλʔͷಉظ ௨ৗͷϥΠϒ৴ΞϓϦө૾ετϦʔϛϯάํࣜͰ৴ߦ͍ͬͯΔͷͰࢹௌ ऀଆͷ௨৴ڥ͕ѱ͍ͱը࣭͕མͪͯ͠·͏ τϐΞͰΞόλʔࢹௌऀɾ৴ऀͦΕͧΕੜͨ͠ͷʹإͷಛσʔ λΛಉظ͍ͯ͠ΔͰ௨৴ڥ͕ѱͯ͘ը࣭͕མͪͳ͍ ৴ऀଆ ࢹௌऀଆ
νϟοτɾΪϑτͷಉظ νϟοτɾΪϑτͷಉظ'JSFCBTFͷ3FBMUJNF%#Λར༻ 6OJUZ༻ͷ4%,͕༻ҙ͞Ε͓ͯΓɺԆͰ͓खܰʹ νϟοτͷσʔλΛಉظͰ͖Δ
։ൃͷۤ࿑͠
ΞϓϦͷ࣭վળ ϦϦʔεॳෆ۩߹͕େྔʹൃੜ ΞϓϦͷΫϥογϡͷසൃ ৴͕ಥવऴྃ͢Δ ࢹௌϦετ͕৴͕දࣔ͞Εͳ͍ ΞϓϦ͕ॏ͗ͯ͢·ͱʹ༡ͳ͍ ͳͲͳͲʜ ݪҼ༷ʑ ϦϦʔεεέδϡʔϧͷΕ
͋ΓݱͷযΓ͕։ൃ࣭ͷ Լʹʜ ࣮ྃˠ֬ೝϑϩʔ͕ͬ ͍ͯͳ͔ͬͨ όάϨϙʔτͷӡ༻͕Ͱ͖ͯ ͍ͳ͔ͬͨ
ΞϓϦͷ࣭վળ #VHTOBHΛಋೖ͠ൃੜසͷߴ͍όάͷൃݟ ͲͷϢʔβʔͰى͖ͨόά͔ όάͷൃੜ݅ Ϋϥογϡͷ༗ແ όάൃੜ࣌ͷελοΫτϨʔε ΤϯδχΞ͕࣮ͨ͠ͷνέοτ୯ҐͰඞͣνΣοΫϑϩʔΛ௨ͯ֬͠ೝͯ͠Β ͏Α͏ϧʔϧԽ ༷ܾΊ ࣮
֬ೝ ϦϦʔε
ΞϓϦͷ࣭վળ ͔֬ͳվળޮՌʜJ04ͷඇΫϥογϡ͕ˋۙ͘·Ͱ౸ୡ
ΞϓϦͷ࣭վળ ύϑΥʔϚϯεվળ $16ෛՙओʹ6OJUZͷ1SPpMFSͰ֬ೝ͢Δ
ࠓޙͷల
ࠓޙͷల Ξόλʔͷදݱͷ෯Λߋʹ৳͍͖ͯ͠·͢ʂ 6*ͷϞοαϦײΛղফ͠ɺΑΓշదʹ͑ΔΞϓϦΛࢦ͠·͢ʂ ΧϥΦέػೳΛॆ࣮͍ͤͯ͘͞༧ఆʂ ҰॹʹτϐΞΛΓ্͛ͯ։ൃ͢ΔؒΛઈࢍืूதͰ͢ʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ ྑ͖6OJUZ-JGFΛ