getVideoMetadata()v4.0.6
此函数仅适用于 Node.js 应用程序。对于浏览器,请改用 @remotion/media-utils
中的 getVideoMetadata()
。
获取有关 Node.js 中视频文件的元数据。用于在服务器上计算元数据。
示例
ts
import {getVideoMetadata ,VideoMetadata } from "@remotion/renderer";constvideoMetadata :VideoMetadata = awaitgetVideoMetadata ("/Users/john/Documents/bunny.mp4",);const {width ,height ,fps ,durationInSeconds ,codec ,supportsSeeking ,colorSpace ,audioCodec ,audioFileExtension ,pixelFormat ,} =videoMetadata ;
ts
import {getVideoMetadata ,VideoMetadata } from "@remotion/renderer";constvideoMetadata :VideoMetadata = awaitgetVideoMetadata ("/Users/john/Documents/bunny.mp4",);const {width ,height ,fps ,durationInSeconds ,codec ,supportsSeeking ,colorSpace ,audioCodec ,audioFileExtension ,pixelFormat ,} =videoMetadata ;
将绝对路径传递给 getVideoMetadata()
。不支持 URL。
参数
videoSource
string
本地视频文件路径。
options?
logLevel?
One of verbose
, info
, warn
, error
.Determines how much is being logged to the console.
verbose
will also log console.log
's from the browser.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.
返回值
返回值是一个具有以下属性的对象:
fps
number
视频的每秒帧数(帧速率)
width
number
视频的宽度(以像素为单位)。
height
number
视频的高度(以像素为单位)。
durationInSeconds
number
视频的时长(以秒为单位)。
codec
v4.0.8
string
其中之一 'h264' | 'h265' | 'vp8' | 'vp9' | 'av1' | 'prores'
或如果编解码器未得到 Remotion 官方支持,则为 'unknown'
。
supportsSeeking
v4.0.8
boolean
预测视频在浏览器中是否可寻址。算法如下:
- 如果编解码器为
unknown
,则视频不可寻址(false
)。 - 如果视频长度小于 5 秒,则可寻址(
true
)。 - 如果编解码器不是
h264
,则可寻址(true
)。 - 现在编解码器为
h264
。如果支持 Faststart(moov
原子位于mdat
原子之前),则可寻址(true
)。 - 否则,不可寻址(
false
)。
如果视频不可寻址,可能会遇到 "Non-seekable media" 错误。
这意味着如果嵌入到 <Video>
标签中,则视频可能无法渲染,并且如果嵌入到 <OffthreadVideo>
标签中,则可能会变慢。
你可以考虑使用FFmpeg重新编码视频,使其可搜索。
colorSpace
v4.0.28
其中之一为rgb
、bt601
、bt709
、bt2020-ncl
、bt2020-cl
、fcc
、bt470bg
、smpte170m
、smpte240m
、ycgco
、smpte2085
、chroma-derived-ncl
、chroma-derived-cl
、ictcp
或unknown
。
audioCodec
v4.0.49
如果视频没有音轨,则为null
。
如果音频编解码器对Remotion来说是未知的,则为"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"
之一。
audioFileExtension
v4.0.49
如果视频没有音轨或对Remotion来说是未知的,则为null
。否则,它是音频编解码器的适当文件扩展名,例如"mp3"
。不包括.
。
pixelFormat
v4.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
。