Upgrade to Pro — share decks privately, control downloads, hide ads and more …

YouTubeへのライブ配信機能をリリースするまで

yurihondo
September 14, 2023

 YouTubeへのライブ配信機能をリリースするまで

昨今、様々なプラットフォームに向けてライブ配信を行う機能が様々なモバイルアプリからの提供され万人がそれを利用しています。
このセッションではYouTubeを対象にAndroidアプリからのライブ配信を実現しリリースするまでの方法をお話させて頂きます。

具体的には、
・YouTube Data APIを利用したYouTubeへのライブ配信機能の実装方法
・YouTubeへのライブ配信機能を実際にリリースなどするにあたって必要となるGoogleの審査などについての対応方法
など2023年の現時点でAndroidアプリでライブ配信機能を実現するにあたって対応が必要な情報・フローをまるっと全てお話させていただきます。

キーワード
- YouTube Data API
- Google OAuth2.0
- RTMP(s)
- Multi channel
- Google Verification

yurihondo

September 14, 2023
Tweet

More Decks by yurihondo

Other Decks in Technology

Transcript

  1. 1. YouTube Streaming APIを使って配信機能を実 現する 2. APIを使うためにGoogle OAuth2.0を利用する 3. こ

    機能をプロダクション環境で利用するにあ たって Google 審査を受ける必要がある TL;DR
  2. Agenda 0. Roadmap for release 1. Prepare to use YouTube

    API 2. Realize streaming feature 3. Pass Google verification
  3. Google Auth Server Create live with Token & Send streaming

    data Hello, World! ②APIを使ってライブ配信を実現 Roadmap for release
  4. Roadmap for release 1 2 3 Prepare to use YouTube

    API Realize streaming feature Pass Google Verification
  5. - YouTube Data API - YouTube Streaming API - IFrame

    Player API - YouTube Analytics API - YouTube Reporting API YouTube APIs > https://developers.google.com/youtube
  6. - YouTube Data API - YouTube Streaming API - IFrame

    Player API - YouTube Analytics API - YouTube Reporting API YouTube APIs > https://developers.google.com/youtube/v3 メインとなるAPI、 コンテンツ 検索など YouTube 基本的な機能をほぼ全部を提供
  7. - YouTube Data API - YouTube Streaming API - IFrame

    Player API - YouTube Analytics API - YouTube Reporting API YouTube APIs > https://developers.google.com/youtube/v3/live/getting-started YouTubeライブ配信に関わる機能 提供 内部的にData APIを利用 今回利用するAPI
  8. - YouTube Data API - YouTube Streaming API - IFrame

    Player API - YouTube Analytics API - YouTube Reporting API YouTube APIs > https://developers.google.com/youtube 埋め込み YouTubeプレイヤーを提供
  9. - YouTube Data API - YouTube Streaming API - IFrame

    Player API - YouTube Analytics API - YouTube Reporting API YouTube APIs > https://developers.google.com/youtube/reporting チャンネルなど 分析関連 API (使ったこと ない)
  10. - YouTube Data API - YouTube Streaming API - IFrame

    Player API - YouTube Analytics API - YouTube Reporting API YouTube APIs > https://developers.google.com/youtube GCP上で有効化すると 利用できるようになる
  11. - YouTube Data API - YouTube Streaming API - IFrame

    Player API - YouTube Analytics API - YouTube Reporting API YouTube APIs > https://developers.google.com/youtube 無料で利用可能
  12. - YouTube Data API - YouTube Streaming API - IFrame

    Player API - YouTube Analytics API - YouTube Reporting API YouTube APIs > https://developers.google.com/youtube ただし😲
  13. - YouTube Data API - YouTube Streaming API - IFrame

    Player API - YouTube Analytics API - YouTube Reporting API YouTube APIs > https://developers.google.com/youtube/v3/determine_quota_cost API 呼び出しごとにQuotaを消費する
  14. Quota > https://developers.google.com/youtube/v3/getting-started#calculating-quota-usage method action quota list Retrieves (GET) a

    list of zero or more resources. 1 insert Creates (POST) a new resource. 50 update Modifies (PUT) an existing resource to reflect data in your request. 50 delete Removes (DELETE) a specific resource. 50 基本 、読み取り系 1、書き込み系 50。イレギュラーで、 searchリソース list 100、videoリソース insert 1600などな ど Resource +
  15. 1. Setup GCP GCP上でYouTube APIを利用可 能にする 2. Get Token AppでOAuthを行い、APIを利用

    するため Tokenを取得/保存 1 Prepare to use YouTube API Roadmap
  16. 1. Setup GCP GCP上でYouTube APIを利用可 能にする 2. Get Token AppでOAuthを行い、APIを利用

    するため Tokenを取得/保存 1 Prepare to use YouTube API Roadmap
  17. 1. Setup GCP GCP上でYouTube APIを利用可 能にする 2. Get Token AppでOAuthを行い、APIを利用

    するため Tokenを取得/保存 1 Prepare to use YouTube API Roadmap
  18. Reasons for adopting AppAuth 1. ブラウザベース 認証フローを提供している 2. Google以外 認証が増えた場合なども

    柔軟に対応可能 3. Google Play開発者サービスに依存しない ブラウザ(Custom Tabs)で OAuthフローを提供する で、 セキュリティ面やユーザー体験 面で良い TIPS
  19. Google Auth Server Get Access Token Repository Activity Encrypted DataStore

    AppAuth Pass Auth Code Save encrypted Auth Code App
  20. Google Auth Server Get Access Token Repository Activity Encrypted DataStore

    AppAuth Exchange code Token App Save encrypted Token
  21. Google Auth Server Get Access Token Repository Activity Encrypted DataStore

    AppAuth Exchange code Token App Save encrypted Token
  22. 2 Realize streaming feature 1. Create Live YouTube Live Streaming

    APIを使っ て、Live streamを作成 2. Stream using RTMPS 配信データをRTMPSで送信し、 ライブ配信機能を実現 Roadmap
  23. 2 Realize streaming feature 1. Create Live YouTube Live Streaming

    APIを使っ て、Live streamを作成 2. Stream using RTMPS 配信データをRTMPSで送信し、 ライブ配信機能を実現 Roadmap
  24. 2 Realize streaming feature 1. Create Live YouTube Live Streaming

    APIを使っ て、Live streamを作成 2. Stream using RTMPS 配信データをRTMPSで送信し、 ライブ配信機能を実現 Roadmap
  25. 3 Pass Google Verification • Google Verification Google OAuth2.0を利用した Token

    取得を一般公開する アプリでも使えるように、 Googleが定める審査に合格す る Roadmap
  26. Google Verification • Google API serviceが定めるユーザーデータ ポリシーに準 拠するように必要に応じてアプリ データ 扱いを修正

    • プライバシーポリシーへ リンク ホームページと同じドメインに 配置いること • ホームページ トップにプライバシーポリシーへ リンクがあるこ と > https://developers.google.com/terms/api-services-user-data-policy
  27. • YouTubeへ ライブ配信機能 実装自体 そ 仕様を 知っていれ そこまで複雑で ありません、ぜひ参考にし てください

    • Google Verification とても時間がかかる でリリースタ イミングなど ...かなりバッファをみた方が良い • 話せなかったことが多い でまた別 機会で続きを... Conclusion