write_video¶
- torchvision.io.write_video(filename: str, video_array: Tensor, fps: float, video_codec: str = 'libx264', options: Optional[dict[str, Any]] = None, audio_array: Optional[Tensor] = None, audio_fps: Optional[float] = None, audio_codec: Optional[str] = None, audio_options: Optional[dict[str, Any]] = None) None [源代码]¶
[已弃用] 将 [T, H, W, C] 格式的 4D 张量写入视频文件。
警告
已弃用:torchvision 的所有视频解码和编码功能自 0.22 版本起已被弃用,并将于 0.24 版本中移除。我们建议您迁移到 TorchCodec,我们将在其中整合 PyTorch 今后的解码/编码功能。
此函数依赖于 PyAV(因此最终依赖于 FFmpeg)来编码视频,您可以参考 FFMpeg wiki 中可用的其他选项来获得更精细的控制。
- 参数:
filename (str) – 要保存视频的路径
video_array (Tensor[T, H, W, C]) – 包含单个帧的张量,格式为 [T, H, W, C] 的 uint8 张量
fps (Number) – 每秒帧数
video_codec (str) – 视频编解码器的名称,例如“libx264”、“h264”等。
options (Dict) –
包含要传递给 PyAV 视频流的选项的字典。选项列表取决于编解码器,所有选项都可以在 FFMpeg wiki 中找到。
audio_array (Tensor[C, N]) – 包含音频的张量,其中 C 是通道数,N 是样本数
audio_fps (Number) – 音频采样率,通常为 44100 或 48000
audio_codec (str) – 音频编解码器的名称,例如“mp3”、“aac”等。
audio_options (Dict) –
包含要传递给 PyAV 音频流的选项的字典。选项列表取决于编解码器,所有选项都可以在 FFMpeg wiki 中找到。
- 示例:
>>> # Creating libx264 video with CRF 17, for visually lossless footage: >>> >>> from torchvision.io import write_video >>> # 1000 frames of 100x100, 3-channel image. >>> vid = torch.randn(1000, 100, 100, 3, dtype = torch.uint8) >>> write_video("video.mp4", options = {"crf": "17"})