You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Kaggle中使用torchvision的VideoReader读取视频时遇属性错误

解决torchvision VideoReader的AttributeError: 'AudioCodecContext' has no attribute 'average_rate'问题

问题分析

你在Kaggle笔记本中使用torchvision.io.VideoReader读取视频时触发的错误,核心原因有两个:

  1. 库冲突:同时安装了av和pyav(二者是同一个库的新旧PyPI包名),导致版本冲突引发API异常。
  2. 版本不兼容:torchvision 0.18.0与av 12.x版本存在API不匹配,av 12.x移除了AudioCodecContext.average_rate属性,但torchvision的代码仍在调用该属性。

解决方案

1. 彻底清理并重新安装兼容的库组合

首先卸载所有冲突或不兼容的库,再安装经过验证的兼容版本:

!pip uninstall -y av pyav torch torchvision torchaudio
!pip install torch==2.3.0 torchvision==0.18.0 torchaudio==2.3.0 av==11.0.0

2. 规避音频流相关错误(可选)

如果视频文件的音频流存在异常,即使安装了兼容版本,读取元数据时仍可能触发错误,可通过以下方式规避:

import torch
import torchvision
import os

video_path = os.path.join(VIDEOS, '001', '001_segment_1.mp4')

# 仅加载视频流,跳过音频流处理
video = torchvision.io.VideoReader(video_path, stream_type='video')

# 提取元数据时过滤音频相关内容
metadata = video.get_metadata()
video_only_metadata = {key: val for key, val in metadata.items() if key != 'audio'}
print(video_only_metadata)

内容的提问来源于stack exchange,提问作者Felipe Marra

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 15:29:54