私が言いたいことを正確に説明している Discord ビデオがあります。 https://cdn.discordapp.com/attachments/288528119525146635/634072701585195038/you.webm 基本的に、ビデオは最初は 0:02 秒しか続きませんが、再生されるにつれて終了時間が 1:03 か何かまで増加します。どうやってこれをやっているのかわかりません。
答え1
webm ファイルの場合、期間はファイルに含まれるデータの一部です。これを変更するには、webm ビデオを 16 進エディターで開き (私は notepad++ の 16 進編集プラグインを使用します)、アドレスまでスクロールダウンします00000140
。その行には期間データが含まれています。具体的には、アドレス00000141
は です0000014b
。100
44 89 88 40 be 1b 00 00 00 00 00
% 確信はありませんが、44 89
これは期間要素として識別する要素 ID であることはほぼ確実です。次に、88
これはコンテンツのサイズであることはほぼ確実です。最後に、実際のコンテンツがあります。これは、ビデオの長さと進行状況バーを変更するために変更する必要があるものです。これは符号付き 64 ビットの Double で、使用できます。バイナリ変換10 進数の時間 (ミリ秒単位) を必要な 16 進数値に変換します。
まだ混乱しているなら、flytechのこのビデオをご覧ください
答え2
ビデオは長さをまったく示しません (つまり、長さ 0)。このため、さまざまなプレーヤーによって表示される長さは、ゼロ、バッファリングされた量、または再生された負の長さ (トーテム) のいずれかになります。