分割アップロード仕様案
#16344
Replies: 4 comments 2 replies
-
|
HLSアップロードだけ先に実装してもいいのかもしれない |
Beta Was this translation helpful? Give feedback.
1 reply
This comment has been hidden.
This comment has been hidden.
-
クロスオリジンだから普通にダメじゃない?? |
Beta Was this translation helpful? Give feedback.
0 replies
-
|
HLS分割ではなくfMP4で保存してもよさそう、というかPOST回数が減るのでfMP4の方が良さそう |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Misskeyの分割アップロード仕様案
※HLS分割は概要欄のテキストから消していないけどfMP4で保持するほうが良さげなのでなしで See #16344 (comment)
アップロード
進行状況はRedisで管理?
b. バイナリの場合: サーバーはアップロードされたチャンクをそれぞれObjectStorageに格納していき、URLをRedisの進行状況データに追記する
(共通): 専用のカラム(
chunks)にアップロードされたチャンクURLの配列を保存するa. 動画の場合: サーバーはm3u8ファイルを生成し、ObjectStorageに格納し、これをwebpublicとして設定する。
ドライブファイルの形式の判別
application/vnd.apple.mpegurlである → HLS動画 (chunksがnullの場合はエラーを吐くべき)application/vnd.apple.mpegurlではなくchunksがある → 分割されたファイル取得・ダウンロード
動画の場合
適切な実装にwebpublicのm3u8を指定すればブラウザ上で再生できるはず
(Safari以外はhls.jsやvideo.jsを使う必要がある)
バイナリの場合
Webクライアントでは、/sw/files/:idなどにアクセスするとServiceWorkerで結合できるように
Optional?: サーバーサイドでの結合
/filesなどで結合してダウンロードする機能を用意する?
リモートへの共有で必要かも?
削除
ファイル削除ではchunksの全てのファイルを削除するようにする
設ける制約
チャンクサイズは、最初と最後のチャンク以外は最低サイズを設定する。
PUTの回数でも課金されるオブジェクトストレージサービスがあり、負担を軽減するため。
Beta Was this translation helpful? Give feedback.
All reactions