2017-02-25 7 views
1

アップロードされた10MBごとにイベントが発生することがわかりましたが、進捗状況をより頻繁に取得したいと考えています。動画をアップロードするときに、イベントをProgressChangedよりも頻繁に発生させるようにYouTube APIを設定するにはどうすればよいですか?

たとえば、ファイルのサイズが10MBよりも小さいと仮定すると、開始点と終了点の間に進捗情報はありません。

私はInsertMediaUpload.GetProgress()を試しましたが、現在の値ではなく、ProgressChangedのアップロードされた値のみを返します。

答えて

0

これは、InsertMediaUploadリクエストのChunkSizeプロパティを変更することで実現できます。 Google API .NET Guideから

デフォルトのチャンクサイズは10MBですが、あなたは256キロバイトの任意の複数の要求に応じてチャンク・サイズプロパティを設定してそれを変更することができます。

利用可能なサンプルを使用してこれをテストしました。here

videosInsertRequest.ChunkSize = 262144; 

または

videosInsertRequest.ChunkSize = ResumableUpload.MinimumChunkSize; 

Run()ChunkSizeを設定した後、私はvideosInsertRequest_ProgressChangedハンドラは、より頻繁に呼び出されることがわかります。

私はビデオがアップロードされている間にGetProgress().BytesSentをチェックして進捗報告を増やすことは可能かもしれないと思っていましたが、これはまたすべてのチャンクの後でのみ更新されます(したがって最も多くの報告はChunkSizeによって設定され、 ProgressChangedハンドラ)。

関連する問題