2017-04-17 13 views
2

m3u8ストリームプレイリストをv1cと同様の完全なビデオファイルとしてディスクにビデオとして保存しようとしています。私はAVAssetを作成し、それをAVPlayerで再生することはできますが、私が試みたm3u8リンクは、AVAssetExportSessionを使用しても動作しないので、asset.isExportableからfalseを返すようにしました。私はリンクをInputStreamとして開いて、それをOutputStreamに書き込む可能性があると思っていましたが、これを行う方法は分かりませんでした。これは実行可能なオプションですか、または.tsビデオリンクの代わりに実際のm3u8ファイルのみを返しますか?適切な方向へのガイダンスは高く評価されます。私は別のクラスを使う方法についての研究をしていますが、ここからどこに行くのかちょっと分かりません。m3u8ビデオを迅速なココアでディスクに保存する

はM3U8プレイリスト内のすべてのストリームから単一のビデオは、実際にM3U8ファイルに依存し、何をしたいあなたを与えるかもしれないの構築、 フィル

答えて

1

、ありがとうございました。

これは、m3u8のプレイリストには1つのビデオに複数のビットレートバージョンが含まれている可能性があるため、それらをすべて追加すると、異なる品質レベル(ビットレート)で同じビデオが次々と得られます。

また、一部のビデオストリームは暗号化されることに注意する価値があります。Netflixなどの最も価値の高いストリームは実際には暗号化されますので、ダウンロードすると、プロバイダー自身の一員として再生しない限り再生できません'ダウンロードして行く'サービス。

最後に、一部のサービスでは、ビデオストリームURLと並行して何らかの認証を要求することによって、ストリームにアクセスすることが難しくなる場合があります。

上記の内容がすべて問題ない場合、または該当しない場合は、HTTPダウンロード機能を使用してビデオファイルをファイルとしてダウンロードできます。これらの例としては、次のようなものがあります。https://stackoverflow.com/a/35510812/334402

+0

応答に感謝します。 m3u8ファイルでhttpdownloading関数を使用すると、保存したい.tsビデオファイルが返されるとは思いません。私はそれがm3u8ファイルだけを返すと思います。私はm3u8ファイルを解析して、実際のリンクのIMを探していますが、ビデオがavassetとして正常に再生されているので、必要以上の作業があるようです。さらに研究を重ねた後、私はAVAssetResourceLoaderを使ってAVAssetに入ってくるデータを扱うことができると思うので、これがうまくいくと思っています。このオプションが有効な場合、投稿を更新します。 – Phil

+0

はい - m3u8ファイルではなく、URL上でダウンロード機能をビデオストリーム自体に使用することを意味します。 – Mick

関連する問題