PlaySections: YouTubeからのインポートに対応

Hiroshi Kajihata
PlaySections
Published in
4 min readJun 18, 2020

PlaySections version 4.0.0で、YouTubeからビデオを直接インポートして再生できるようになりました。耳コピや楽器の演奏、ダンスの練習などが今まで以上に簡単にできるようになりました。

YouTubeアプリ、WebサイトなどからビデオのURLをコピー&ペーストしてインポートします。PlaySections内でYouTubeのWebサイトを開いてインポートする方法も検討しましたが、インポートしたいビデオはYouTubeアプリ内で既に再生しているケースがほとんどだと思うので、シンプルにURLを入力する方法をひとまず実装してみました。

カメラロール内のビデオや、ローカルファイルの再生に比べると、残念ながら一部機能に制限があります。

対応している機能:

  • 再生スピード変更(スローダウン、早聞き)
  • ループ再生(リピート再生)

未対応な機能:

  • ピッチ変更、EQ(イコライザ)、 FX(ボーカルキャンセル)
  • セクションのサムネイル 画像
  • オーディオ波形表示
  • フルスクリーン再生、左右反転表示
  • バックグラウンド再生

ビデオファイルに直接アクセスできないので、仕方がないですね。フルスクリーン再生は、既存の実装がYouTube再生の仕様と合わず、対応まで時間がかかりそうだったので、version 4.0.0では対応を見送りました。また、バックグラウンド再生はYouTubeの規約上認められていないので対応できません。

YouTubeの再生には、公式ライブラリ、youtube-ios-player-helperを利用しています。

タイトル、チャンネル名、サムネイル 画像の取得にはYouTube Data APIを使用しています。

今回、YouTubeに対応しようと思ったのは、以下のコメントを見たのがきっかけです。

以前からYouTube対応は検討していたのですが、youtube-ios-player-helperライブラリの更新が2016年から4年近く止まっていて、この先サポートされるのか不安だったので、対応せずにいました。

ところが、2020年に入ってから急にコミットされはじめ、WKWebView対応もされたことで、導入に踏み切りました。

ようやく最近CocoaPodsからもWKWebView対応バージョン(1.0)をインストールできるようになりました。

メンテが続きますように。

--

--