3

aws に s3 バケットがあり、その中にビデオがあります。AWS iOS SDK を使用してこれらの動画をストリーミングする必要があります。

これまでのところ、私が見つけた唯一のオプションは、URL を使用したスト​​リーミングでした (公開ビデオの場合)。

しかし、s3 getOBject リクエストについてはどうですか - ビデオをダウンロードして表示することはできますが、チャンクでダウンロードして表示する方法はありますか?

4

3 に答える 3

7

それを行う方法が見つかりました。アクセスするための安全な URL を生成します

S3GetPreSignedURLRequest * request = [[S3GetPreSignedURLRequest alloc] init];
request.key = fileName;
request.bucket = self.bucket;
[request setExpires:[NSDate dateWithTimeIntervalSinceNow:3600]];

これは 2 ではなく AWSIOSSDK 1+ でのみ機能します

于 2012-10-24T13:45:27.277 に答える
3

AWS SDKforiOSのメンテナンスを支援します。

SDKはgetリクエストの範囲をサポートしているため、個別の操作でデータのチャンクをダウンロードできます。

S3GetObjectRequest *getObjectRequest = [[S3GetObjectRequest alloc] initWithKey:FILE withBucket:BUCKET];
[getObjectRequest setRangeStart:START rangeEnd:END];
[s3 getObject:getObjectRequest];

SDKには、ストリーミング方式でダウンロードされるデータの処理に使用できるデリゲートプロトコルも含まれています。

AmazonRequestDelegateプロトコル

于 2012-10-24T21:12:57.150 に答える
0

getObject は、デフォルトではノンブロッキング ダウンロード コールです。したがって、基本的に、フレームワークは、ダウンロードが完了したらコールバックを処理して、出力ストリームにデータを提供し、それをクライアント ストリームにフィードして表示するように設計されています。

SDK はノンブロッキング ダウンロードをサポートしているため、クライアント側でもチャンクでダウンロードするのが理想的です。

于 2012-10-23T23:16:40.373 に答える