0

Javascript を使用して、クライアント側で HTML5 ビデオのビデオの長さを更新する方法を探しています。

例: 30 秒の長さのビデオ クリップがページにロードされており、45 秒の長さにその場で更新したいと考えています。

HTMLMediaElement の duration プロパティを調べたところ、すぐにプロパティが読み取り専用であることがわかりました (ソース: https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement )。私もこのブログ投稿に出くわしましたが、私の理想的な解決策は、1 つの連続したクリップを持つことです。FFMPEG などのツールを使用してサーバー側でこれを実現することもできますが、ユーザーの読み込み時間を増加させたくありません。

助言がありますか?

4

1 に答える 1

0

それはどういう意味ですか?

曲の長さは、その曲またはそのメディア ファイルのメタ データに保存されます。そのページに曲をダウンロードすると、そのデータもダウンロードされます。これには曲のタイトル名が含まれています。長さも。

それを変更するには、メディア全体を変更するか、曲の長さを自分で書く必要があります。これは、メタデータの変更に関するリンクです: http://savonet.sourceforge.net/doc-svn/metadata.html。ただし、これにより、アップロード中または保存中に曲のメタデータが変更されます。その場で変更することはありません(必要に応じて)。繰り返しますが、Ajaxを使用してこのコードをオンザフライで使用し、変換コードをページに配置し、ajax経由でページにアクセスしてページに書き込みます。以下をご覧ください。

これに対する 1 つのアプローチは、jQuery ajax を使用するようなものです。最初に任意のコードまたは言語を使用してメディアのメタデータを更新してから、メディアをページに送り返します。

$.ajax({
url: "page_where_media_will_be_loaded",
data: "load_song_id=1234",
  success: function (result) {
    // write the song in some div as $("#idname").html(result);
  }
})

そして、それをページに書き込みます。を使用して.html()オンザフライのものには、ajaxのみのオプションがあります。Ajax はサーバーと通信し、新しいファイルをロードし、現在のファイルを更新します!

于 2013-09-06T17:16:26.183 に答える