问题描述
我已经在这工作了好几个小时了,是时候寻求一点帮助了.
I've been at this for hours, it's time to ask for a little help.
我需要知道在 JavaScript/HTML 中加载视频的帧速率,并且我试图避免使用 VLC 插件或 ffmpeg.
I need to know the frame rate of a video on load in JavaScript/HTML and I'm trying to avoid VLC plug-in or ffmpeg.
浏览器读取视频元数据以检查预期的帧速率,那么我该怎么做呢?我在网上看了很多东西,没有发现任何有用的东西,但我不敢相信这是不可行的.
The browser reads the video metadata to check the intended frame rate, so how can I do this as well? I read a lot of online things and didn't find anything useful but I can't believe that this is unfeasible.
我正在寻找 这个 但对于视频.应该很简单吧?
I'm looking for this but for videos. Should be simple, right?
注意:我正在使用 Electron 构建桌面应用程序,因此文件访问不是问题.
Note: I'm building a desktop app with Electron so file access isn't a problem.
推荐答案
您可以创建一个视频元素,其 src 属性指向链接或本地文件/blob
You can create a video element with src attribute pointing to a link or local file/blob
let video = document.createElement('video')
video.setAttribute('src', window.URL.createObjectURL(file))
为元素添加 onloadeddata 事件监听器,在回调中您将可以访问视频元数据.
Add onloadeddata event listener to the element and in the callback you'll have access to the video metadata.
video.onloadeddata = function(event) {
const {
videoHeight,
videoWidth,
duration
} = event.srcElement
console.log(videoHeight)
})
这篇关于JavaScript - 读取视频文件的元数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!