视频处理# 使用 VideoEncoder 编码视频帧 准备输入帧 创建编码器 编码到文件、字节或类文件对象 编解码器选择 像素格式 CRF(恒定码率因子) 预设 额外选项 使用 VideoDecoder 解码视频 准备工作 创建解码器 通过下标解码帧 迭代帧 获取帧的 pts 和时长 基于播放时间检索帧 使用 CUDA 和 NVDEC 的加速视频解码 何时适合使用 CUDA 解码 何时不一定需要 CUDA 解码 安装启用 CUDA 的 TorchCodec 检查 PyTorch 是否启用 CUDA 下载示例视频 使用 VideoDecoder 进行 CUDA 解码 可视化帧并与 CPU 解码结果对比 通过文件样式接口流式传输数据 预备函数:下载与简单基准 性能对比:先完整下载 vs 边下边解码 工作原理 性能:本地文件路径 vs 本地已打开文件对象 清理临时资源 精确与近似寻址模式:性能与准确性对比 准备:下载短视频并生成长视频 性能:解码器创建耗时 性能:帧解码与片段采样 准确性:元数据与帧获取 原理简述 选择建议 清理临时资源 使用自定义帧映射进行解码 使用 ffprobe 创建自定义帧映射 性能:视频解码器的创建 性能:使用自定义帧映射进行帧解码 准确性:元数据和帧检索 custom_frame_mappings 怎么帮忙? 应该用哪个模式? 并行视频解码:多进程与多线程 工具函数与数据准备 采样策略 方法一:顺序解码(基线) 方法二:FFmpeg 线程并行 方法三:多进程并行 方法四:多线程并行 结果校验 清理临时文件 如何采样视频片段 准备:下载视频与绘图工具 创建解码器 采样基础:随机索引采样 FrameBatch 字段说明 片段索引与筛选 索引型与时间型采样器 进阶参数:采样范围 进阶参数:policy