快捷链接

ffmpeg_utils

用于更改 FFmpeg 库(例如 libavformat)配置的模块。

它会影响 torchaudio.io 中的功能(并间接影响 torchaudio.load())。

clear_cuda_context_cache

torchaudio.utils.ffmpeg_utils.clear_cuda_context_cache()[源代码]

清除 CUDA 硬件加速视频解码使用的 CUDA 上下文缓存

get_audio_decoders

torchaudio.utils.ffmpeg_utils.get_audio_decoders() Dict[str, str][源代码]

获取可用的音频解码器。

返回:

从解码器短名称到长名称的映射。

返回类型:

Dict[str, str]

示例
>>> for k, v in get_audio_decoders().items():
>>>     print(f"{k}: {v}")
... a64: a64 - video for Commodore 64
... ac3: raw AC-3
... adts: ADTS AAC (Advanced Audio Coding)
... adx: CRI ADX
... aiff: Audio IFF

get_audio_encoders

torchaudio.utils.ffmpeg_utils.get_audio_encoders() Dict[str, str][源代码]

获取可用的音频编码器。

返回:

从编码器短名称到长名称的映射。

返回类型:

Dict[str, str]

示例
>>> for k, v in get_audio_encoders().items():
>>>     print(f"{k}: {v}")
... comfortnoise: RFC 3389 comfort noise generator
... s302m: SMPTE 302M
... aac: AAC (Advanced Audio Coding)
... ac3: ATSC A/52A (AC-3)
... ac3_fixed: ATSC A/52A (AC-3)
... alac: ALAC (Apple Lossless Audio Codec)

get_build_config

torchaudio.utils.ffmpeg_utils.get_build_config() str[源代码]

获取 FFmpeg 构建配置

返回:

构建配置字符串。

返回类型:

str

示例
>>> print(get_build_config())
--prefix=/Users/runner/miniforge3 --cc=arm64-apple-darwin20.0.0-clang --enable-gpl --enable-hardcoded-tables --enable-libfreetype --enable-libopenh264 --enable-neon --enable-libx264 --enable-libx265 --enable-libaom --enable-libsvtav1 --enable-libxml2 --enable-libvpx --enable-pic --enable-pthreads --enable-shared --disable-static --enable-version3 --enable-zlib --enable-libmp3lame --pkg-config=/Users/runner/miniforge3/conda-bld/ffmpeg_1646229390493/_build_env/bin/pkg-config --enable-cross-compile --arch=arm64 --target-os=darwin --cross-prefix=arm64-apple-darwin20.0.0- --host-cc=/Users/runner/miniforge3/conda-bld/ffmpeg_1646229390493/_build_env/bin/x86_64-apple-darwin13.4.0-clang  # noqa

get_demuxers

torchaudio.utils.ffmpeg_utils.get_demuxers() Dict[str, str][源代码]

获取可用的解复用器。

返回:

从解复用器(格式)短名称到长名称的映射。

返回类型:

Dict[str, str]

示例
>>> for k, v in get_demuxers().items():
>>>     print(f"{k}: {v}")
... aa: Audible AA format files
... aac: raw ADTS AAC (Advanced Audio Coding)
... aax: CRI AAX
... ac3: raw AC-3

get_input_devices

torchaudio.utils.ffmpeg_utils.get_input_devices() Dict[str, str][源代码]

获取可用的输入设备。

返回:

从设备短名称到长名称的映射。

返回类型:

Dict[str, str]

示例
>>> for k, v in get_input_devices().items():
>>>     print(f"{k}: {v}")
... avfoundation: AVFoundation input device
... lavfi: Libavfilter virtual input device

get_input_protocols

torchaudio.utils.ffmpeg_utils.get_input_protocols() List[str][源代码]

获取支持的输入协议。

返回:

支持的输入协议的名称

返回类型:

List[str]

示例
>>> print(get_input_protocols())
... ['file', 'ftp', 'hls', 'http','https', 'pipe', 'rtmp', 'tcp', 'tls', 'udp', 'unix']

get_log_level

torchaudio.utils.ffmpeg_utils.get_log_level() int[源代码]

获取 FFmpeg 的日志级别。

有关详细信息,请参阅 set_log_level()

get_muxers

torchaudio.utils.ffmpeg_utils.get_muxers() Dict[str, str][源代码]

获取可用的复用器。

返回:

从复用器(格式)短名称到长名称的映射。

返回类型:

Dict[str, str]

示例
>>> for k, v in get_muxers().items():
>>>     print(f"{k}: {v}")
... a64: a64 - video for Commodore 64
... ac3: raw AC-3
... adts: ADTS AAC (Advanced Audio Coding)
... adx: CRI ADX
... aiff: Audio IFF

get_output_devices

torchaudio.utils.ffmpeg_utils.get_output_devices() Dict[str, str][源代码]

获取可用的输出设备。

返回:

从设备短名称到长名称的映射。

返回类型:

Dict[str, str]

示例
>>> for k, v in get_output_devices().items():
>>>     print(f"{k}: {v}")
... audiotoolbox: AudioToolbox output device

get_output_protocols

torchaudio.utils.ffmpeg_utils.get_output_protocols() List[str][源代码]

获取支持的输出协议。

返回:

支持的输出协议的名称

返回类型:

list of str

示例
>>> print(get_output_protocols())
... ['file', 'ftp', 'http', 'https', 'md5', 'pipe', 'prompeg', 'rtmp', 'tee', 'tcp', 'tls', 'udp', 'unix']

get_versions

torchaudio.utils.ffmpeg_utils.get_versions() Dict[str, Tuple[int]][源代码]

获取 FFmpeg 库的版本

返回:

从库名称到版本字符串的映射,

例如:“libavutil”: (56, 22, 100)

返回类型:

dict

使用 get_versions 的教程
AudioEffector Usages

AudioEffector 用法

AudioEffector 用法
Accelerated video encoding with NVENC

使用 NVENC 加速视频编码

使用 NVENC 加速视频编码
StreamWriter Basic Usage

StreamWriter 基本用法

StreamWriter 基本用法
Accelerated video decoding with NVDEC

使用 NVDEC 加速视频解码

使用 NVDEC 加速视频解码

get_video_decoders

torchaudio.utils.ffmpeg_utils.get_video_decoders() Dict[str, str][源代码]

获取可用的视频解码器。

返回:

从解码器短名称到长名称的映射。

返回类型:

Dict[str, str]

示例
>>> for k, v in get_video_decoders().items():
>>>     print(f"{k}: {v}")
... aasc: Autodesk RLE
... aic: Apple Intermediate Codec
... alias_pix: Alias/Wavefront PIX image
... agm: Amuse Graphics Movie
... amv: AMV Video
... anm: Deluxe Paint Animation
使用 get_video_decoders 的教程
Accelerated video decoding with NVDEC

使用 NVDEC 加速视频解码

使用 NVDEC 加速视频解码

get_video_encoders

torchaudio.utils.ffmpeg_utils.get_video_encoders() Dict[str, str][源代码]

获取可用的视频编码器。

返回:

从编码器短名称到长名称的映射。

返回类型:

Dict[str, str]

示例
>>> for k, v in get_audio_encoders().items():
>>>     print(f"{k}: {v}")
... a64multi: Multicolor charset for Commodore 64
... a64multi5: Multicolor charset for Commodore 64, extended with 5th color (colram)
... alias_pix: Alias/Wavefront PIX image
... amv: AMV Video
... apng: APNG (Animated Portable Network Graphics) image
... asv1: ASUS V1
... asv2: ASUS V2
使用 get_video_encoders 的教程
Accelerated video encoding with NVENC

使用 NVENC 加速视频编码

使用 NVENC 加速视频编码

set_log_level

torchaudio.utils.ffmpeg_utils.set_log_level(level: int)[源代码]

设置 FFmpeg(libavformat 等)的日志级别

参数:

level (int) –

日志级别。数值越大,输出越详细。

以下值是常用值,对应的 ffmpeg-loglevel 选项值和描述。

  • -8 (quiet): 不打印任何输出。

  • 0 (panic): 发生非常严重的错误,程序即将崩溃。

  • 8 (fatal): 发生错误,无法恢复。例如,对于依赖标头的格式,未找到标头,或者使用了非法参数组合。

  • 16 (error): 发生错误,无法无损恢复。但是,并非所有未来的数据都会受到影响。

  • 24 (warning): 某些地方看起来不太正确。这可能会或可能不会导致问题。

  • 32 (info): 标准信息。

  • 40 (verbose): 详细信息。

  • 48 (debug): 仅对 libav* 开发者有用的信息。

  • 56 (trace): 极其详细的调试信息,对 libav* 开发有用。

使用 set_log_level 的教程
Accelerated video encoding with NVENC

使用 NVENC 加速视频编码

使用 NVENC 加速视频编码

文档

访问 PyTorch 的综合开发者文档

查看文档

教程

获取面向初学者和高级开发者的深度教程

查看教程

资源

查找开发资源并获得问题解答

查看资源