获取视频元数据()v4.0.6
🌐 getVideoMetadata()v4.0.6
已弃用。 更好的解决方案:使用 Mediabunny 获取元数据
仅适用于 Node.js 和 Bun。
在 Node.js 中获取视频文件的元数据。对于在服务器上计算元数据很有用。
🌐 Gets metadata about a video file in Node.js. Useful for calculating metadata on a server.
示例
🌐 Example
import {getVideoMetadata , VideoMetadata } from '@remotion/renderer';
const videoMetadata : VideoMetadata = await getVideoMetadata ('/Users/john/Documents/bunny.mp4');
const {width , height , fps , durationInSeconds , codec , supportsSeeking , colorSpace , audioCodec , audioFileExtension , pixelFormat } = videoMetadata ;传递一个绝对路径给 getVideoMetadata()。不支持 URL。
参数
🌐 Arguments
videoSource
string
本地视频文件路径。
🌐 A local video file path.
options?
logLevel?
One of trace, verbose, info, warn, error.Determines how much info is being logged to the console.
Default
info.
binariesDirectory?v4.0.120
The directory where the platform-specific binaries and libraries that Remotion needs are located. Those include an ffmpeg and ffprobe binary, a Rust binary for various tasks, and various shared libraries. If the value is set to null, which is the default, then the path of a platform-specific package located at node_modules/@remotion/compositor-* is selected.This option is useful in environments where Remotion is not officially supported to run like bundled serverless functions or Electron.
返回值
🌐 Return Value
返回值是一个具有以下属性的对象:
🌐 The return value is an object with the following properties:
fps
number
视频的每秒帧数(帧率)
🌐 The amount of frames per seconds the video has (framerate)
width
number
视频的宽度(像素)。
🌐 The width of the video in px.
height
number
视频的高度(像素)。
🌐 The height of the video in px.
durationInSeconds
number
视频的时长(秒)。
🌐 The time length of the video in seconds.
codecv4.0.8
string
如果 Remotion 不正式支持该编解码器,则为 'h264' | 'h265' | 'vp8' | 'vp9' | 'av1' | 'prores' 或 'unknown' 之一。
🌐 One of 'h264' | 'h265' | 'vp8' | 'vp9' | 'av1' | 'prores' or 'unknown' if the codec is not officially supported by Remotion.
supportsSeekingv4.0.8
boolean
预测视频在浏览器中是否可以被跳转。算法如下:
🌐 A prediction whether the video will be seekable in the browser. The algorithm is:
- 如果编解码器是
unknown,那么视频不可寻址(false)。 - 如果视频少于5秒,则可以进行寻址(
true)。 - 如果编解码器不是
h264,那么它是可寻址的 (true)。 - 编解码器现在是
h264。如果它支持 Faststart(moov原子在mdat原子前面),那么它是可寻址的(true) - 否则,它不可寻址(
false)。
如果视频不可搜索,你可能会遇到“不可搜索的媒体” 错误。 这意味着如果嵌入在 <Html5Video> 标签中,视频可能无法呈现;如果嵌入在 <OffthreadVideo> 标签中,视频加载可能会很慢。
🌐 If a video is not seekable, you might run into the "Non-seekable media" error.
This means that the video might fail to render if embedded in a <Html5Video> tag and be slow if embedded in a <OffthreadVideo> tag.
你可以考虑使用 FFmpeg 重新编码视频以使其可搜索。
🌐 You may consider re-encoding the video using FFmpeg to make it seekable.
colorSpacev4.0.28
rgb、bt601、bt709、bt2020-ncl、bt2020-cl、fcc、bt470bg、smpte170m、smpte240m、ycgco、smpte2085、chroma-derived-ncl、chroma-derived-cl、ictcp 或 unknown 中的一个。
🌐 One of rgb, bt601, bt709, bt2020-ncl, bt2020-cl, fcc, bt470bg, smpte170m, smpte240m, ycgco, smpte2085, chroma-derived-ncl, chroma-derived-cl, ictcp or unknown.
audioCodecv4.0.49
如果视频没有音频轨道,它是 null。
如果音频编解码器对 Remotion 来说未知,它是 "unknown"。
🌐 If the video has no audio track, it is null.
If the audio codec is unknown to Remotion, it is "unknown".
否则,它是 "opus" | "aac" | "mp3" | "pcm-f16le" | "pcm-f24le" | "pcm-f32be" | "pcm-s16be" | "pcm-s16le" | "pcm-f32le" | "pcm-s32be" | "pcm-s32le" | "pcm-s64be" | "pcm-s64le" | "pcm-u16be" | "pcm-u16le" | "pcm-u24be" | "pcm-u24le" | "pcm-u32be" | "pcm-u32le" | "pcm-u8" | "pcm-f64be" | "pcm-s24be" | "pcm-s24le" | "pcm-s8" | "pcm-s16be-planar" | "pcm-s8-planar" | "pcm-s24le-planar" | "pcm-s32le-planar" | "unknown" 之一
🌐 Otherwise, it is one of "opus" | "aac" | "mp3" | "pcm-f16le" | "pcm-f24le" | "pcm-f32be" | "pcm-s16be" | "pcm-s16le" | "pcm-f32le" | "pcm-s32be" | "pcm-s32le" | "pcm-s64be" | "pcm-s64le" | "pcm-u16be" | "pcm-u16le" | "pcm-u24be" | "pcm-u24le" | "pcm-u32be" | "pcm-u32le" | "pcm-u8" | "pcm-f64be" | "pcm-s24be" | "pcm-s24le" | "pcm-s8" | "pcm-s16be-planar" | "pcm-s8-planar" | "pcm-s24le-planar" | "pcm-s32le-planar" | "unknown"
audioFileExtensionv4.0.49
如果视频没有音轨或在 Remotion 中未知,它是 null。否则,它就是音频编解码器的相应文件扩展名,例如 "mp3"。. 不包含在内。
🌐 If the video has no audio track or is unknown to Remotion, it is null. Otherwise it is the appropriate file extension for the audio codec, e.g. "mp3". The . is not included.
pixelFormatv4.0.78
yuv420p、yuyv422、rgb24、bgr24、yuv422p、yuv444p、yuv410p、yuv411p、yuvj420p、yuvj422p、yuvj444p、argb、rgba、abgr、bgra、yuv440p、yuvj440p、yuva420p、yuv420p16le、yuv420p16be、yuv422p16le、yuv422p16be、yuv444p16le、yuv444p16be、yuv420p9be、yuv420p9le、yuv420p10be、yuv420p10le、yuv422p10be、yuv422p10le、yuv444p9be、yuv444p9le、yuv444p10be、yuv444p10le、yuv422p9be、yuv422p9le、yuva420p9be、yuva420p9le、yuva422p9be、yuva422p9le、yuva444p9be、yuva444p9le、yuva420p10be、yuva420p10le、yuva422p10be、yuva422p10le、yuva444p10be、yuva444p10le、yuva420p16be、yuva420p16le、yuva422p16be、yuva422p16le、yuva444p16be、yuva444p16le、yuva444p、yuva422p、yuv420p12be、yuv420p12le、yuv420p14be、yuv420p14le、yuv422p12be、yuv422p12le、yuv422p14be、yuv422p14le、yuv444p12be、yuv444p12le、yuv444p14be、yuv444p14le、yuvj411p、yuv440p10le、yuv440p10be、yuv440p12le、yuv440p12be、yuv420p9、yuv422p9、yuv444p9、yuv420p10、yuv422p10、yuv440p10、yuv444p10、yuv420p12、yuv422p12、yuv440p12、yuv444p12、yuv420p14、yuv422p14、yuv444p14、yuv420p16、yuv422p16、yuv444p16、yuva420p9、yuva422p9、yuva444p9、yuva420p10、yuva422p10、yuva444p10、yuva420p16、yuva422p16、yuva444p16、yuva422p12be、yuva422p12le、yuva444p12be、yuva444p12le、unknown之一。
🌐 One of yuv420p, yuyv422, rgb24, bgr24, yuv422p, yuv444p, yuv410p, yuv411p, yuvj420p, yuvj422p, yuvj444p, argb, rgba, abgr, bgra, yuv440p, yuvj440p, yuva420p, yuv420p16le, yuv420p16be, yuv422p16le, yuv422p16be, yuv444p16le, yuv444p16be, yuv420p9be, yuv420p9le, yuv420p10be, yuv420p10le, yuv422p10be, yuv422p10le, yuv444p9be, yuv444p9le, yuv444p10be, yuv444p10le, yuv422p9be, yuv422p9le, yuva420p9be, yuva420p9le, yuva422p9be, yuva422p9le, yuva444p9be, yuva444p9le, yuva420p10be, yuva420p10le, yuva422p10be, yuva422p10le, yuva444p10be, yuva444p10le, yuva420p16be, yuva420p16le, yuva422p16be, yuva422p16le, yuva444p16be, yuva444p16le, yuva444p, yuva422p, yuv420p12be, yuv420p12le, yuv420p14be, yuv420p14le, yuv422p12be, yuv422p12le, yuv422p14be, yuv422p14le, yuv444p12be, yuv444p12le, yuv444p14be, yuv444p14le, yuvj411p, yuv440p10le, yuv440p10be, yuv440p12le, yuv440p12be, yuv420p9, yuv422p9, yuv444p9, yuv420p10, yuv422p10, yuv440p10, yuv444p10, yuv420p12, yuv422p12, yuv440p12, yuv444p12, yuv420p14, yuv422p14, yuv444p14, yuv420p16, yuv422p16, yuv444p16, yuva420p9, yuva422p9, yuva444p9, yuva420p10, yuva422p10, yuva444p10, yuva420p16, yuva422p16, yuva444p16, yuva422p12be, yuva422p12le, yuva444p12be, yuva444p12le, unknown.
兼容性
🌐 Compatibility
| Browsers | Servers | Environments | |||||||
|---|---|---|---|---|---|---|---|---|---|
Chrome | Firefox | Safari | Node.js | Bun | Serverless Functions | ||||
另请参阅
🌐 See also