快捷键

ffmpeg_utils

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

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

clear_cuda_context_cache

torchaudio.utils.ffmpeg_utils.clear_cuda_context_cache()[source]

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

get_audio_decoders

torchaudio.utils.ffmpeg_utils.get_audio_decoders() Dict[str, str][source]

获取可用的音频解码器。

返回值:

解码器简短名称到完整名称的映射。

返回类型:

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][source]

获取可用的音频编码器。

返回值:

编码器简短名称到完整名称的映射。

返回类型:

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[source]

获取 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][source]

获取可用的 demuxers。

返回值:

demuxer(格式)简短名称到完整名称的映射。

返回类型:

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][source]

获取可用的输入设备。

返回值:

设备简短名称到完整名称的映射。

返回类型:

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][source]

获取支持的输入协议。

返回值:

支持的输入协议的名称

返回类型:

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[source]

获取 FFmpeg 的日志级别。

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

get_muxers

torchaudio.utils.ffmpeg_utils.get_muxers() Dict[str, str][source]

获取可用的复用器。

返回值:

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

返回类型:

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][source]

获取可用的输出设备。

返回值:

设备简短名称到完整名称的映射。

返回类型:

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][source]

获取支持的输出协议。

返回值:

支持的输出协议的名称

返回类型:

字符串列表

示例
>>> 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]][source]

获取 FFmpeg 库的版本。

返回值:

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

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

返回类型:

字典

使用 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][source]

获取可用的视频解码器。

返回值:

解码器简短名称到完整名称的映射。

返回类型:

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][source]

获取可用的视频编码器。

返回值:

编码器简短名称到完整名称的映射。

返回类型:

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)[source]

设置 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 的综合开发人员文档

查看文档

教程

获取针对初学者和高级开发人员的深入教程

查看教程

资源

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

查看资源