【问题标题】:Dynamic way to add length to an html5 video为 html5 视频添加长度的动态方法
【发布时间】:2013-09-06 16:21:12
【问题描述】:

我正在寻找一种在客户端使用 Javascript 更新 HTML5 视频的视频长度的方法。

示例:我在页面上加载了一个 30 秒长的视频剪辑,我想将其即时更新为 45 秒长。

我查看了 HTMLMediaElement 的持续时间属性,但很快发现该属性是只读的(来源:https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement)。我还偶然发现了this blog post,但我理想的解决方案是拥有一个连续剪辑。我可以使用 FFMPEG 之类的工具在服务器端完成此操作,但我不想为我们的用户增加加载时间。

有什么建议吗?

【问题讨论】:

    标签: javascript html video ffmpeg html5-video


    【解决方案1】:

    你这是什么意思?

    歌曲长度保存在该歌曲或该媒体文件的元数据中。当您将歌曲下载到该页面时,它的数据也会被下载。其中包含歌曲名称,是的!长度也一样。

    要改变这一点,您需要更改整个媒体或自己编写歌曲长度。这是元数据更改的链接:http://savonet.sourceforge.net/doc-svn/metadata.html。但这会在上传或保存歌曲时更改歌曲的元数据。它不会即时改变它(如你所愿)。 再次: 使用Ajax 即时使用此代码,只需将转换代码放在一个页面中,并通过ajax 访问该页面并将其写入页面。请看以下内容:

    一种方法是使用 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()on the fly 只有一个 ajax 选项。 Ajax 将与服务器通信,加载新文件,并更新当前文件!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-04-05
      • 1970-01-01
      • 1970-01-01
      • 2012-05-12
      • 1970-01-01
      • 2012-03-21
      • 1970-01-01
      相关资源
      最近更新 更多