Py之av:av库的简介、安装、使用方法之详细攻略

简介: Py之av:av库的简介、安装、使用方法之详细攻略

av库的简介


     PyAV是[FFmpeg][FFmpeg]库的python绑定。我们的目标是提供底层库的所有功能和控制,但是尽可能多地管理细节。

     PyAV用于通过容器、流、包、编解码器和帧直接而精确地访问您的媒体。它公开了该数据的一些转换,并帮助您从其他包(例如Numpy和Pillow)获取数据。

     这种能力确实带来了一些责任,因为与媒体打交道非常复杂,PyAV无法将其抽象出来,也无法为您做出所有最好的决定。如果ffmpeg命令在没有您向后弯腰的情况下完成了工作,那么PyAV可能是一个障碍而不是帮助。但是如果没有它就无法工作,PyAV是一个关键的工具。


GitHub:https://github.com/mikeboers/PyAV




av库的安装


T1、安装方式:安装的时候,选择以管理员身份启动cmd命令


pip install av

image.png



安装出错!


参考文章:PyAV安装注意事项

安装注意事项:PyAV提供了ffmpeg的python接口,使得python用户也可以使用ffmpeg。但是PyAV相较于其他python包安装要复杂些,因为它是以ffmpeg作为后端,所以要先安装ffmpeg。具体来说就是下载ffmpeg shared,并将其目录下的bin目录添加到环境变量。



第一步: 安装ffmpeg。下载ffmpeg shared,并将其目录下的bin目录添加到环境变量

参考文章:VideoTool之FFmpeg:FFmpeg的简介、安装、使用方法之详细攻略


第二步:安装PyAV。然后有两种方式安装PyAV:

T2、到GitHub下载PyAV源码,解压后进入其目录执行


python setup.py build --ffmpeg-dir=D:\Program Files\ffmpeg

其中D:\Program Files\ffmpeg\bin是你的ffmpeg目录,一定要对!

或者,进入setup.py代码文件内,将

FFMPEG_DIR = None

改为

FFMPEG_DIR = 'D://Program Files//ffmpeg'




av库的使用方法


1、基本用法


git clone git@github.com:mikeboers/PyAV

cd PyAV

source scripts/activate.sh

# Either install the testing dependencies:

pip install --upgrade -r tests/requirements.txt

# or have it all, including FFmpeg, built/installed for you:

./scripts/build-deps

# Build PyAV.

make




相关文章
|
编解码 自然语言处理 数据挖掘
Recognize Anything:一个强大的图像标记模型
Recognize Anything是一种新的图像标记基础模型,与传统模型不同,它不依赖于手动注释进行训练
567 2
|
存储 算法 C++
深入理解ffmpeg视频播放以及音视频同步:时间基与样本处理
深入理解ffmpeg视频播放以及音视频同步:时间基与样本处理
1570 1
pip镜像源大全及配置
在中国使用pip时,可以配置国内镜像源来提高安装速度和稳定性。以下是一些常见的国内镜像源:
22807 0
|
自然语言处理 算法 数据挖掘
自蒸馏:一种简单高效的优化方式
背景知识蒸馏(knowledge distillation)指的是将预训练好的教师模型的知识通过蒸馏的方式迁移至学生模型,一般来说,教师模型会比学生模型网络容量更大,模型结构更复杂。对于学生而言,主要增益信息来自于更强的模型产出的带有更多可信信息的soft_label。例如下右图中,两个“2”对应的hard_label都是一样的,即0-9分类中,仅“2”类别对应概率为1.0,而soft_label
自蒸馏:一种简单高效的优化方式
|
Ubuntu Linux 时序数据库
sudo apt-get update提示E: 仓库 “http://mirrors.aliyun.com/ubuntu eoan Release” 没有 Release 文件。亲试解决办法
将自己亲身解决这个办法进行分享,希望朋友们可以少走弯路。
12456 1
|
12月前
|
前端开发 API 开发者
一键抠图有多强?19Kstar 的 Rembg 开源神器,5 大实用场景颠覆想象!
Rembg是一款基于Python的开源抠图工具,利用深度学习模型(U-Net/U-2-Net)实现高质量背景移除。它支持命令行、Python API、服务端API及插件等多种形式,适用于电商商品图、社交头像优化、设计项目图像等场景。凭借高精准度、即插即用特性和全面生态,Rembg在GitHub上已获19.1K星,成为开发者社区中的热门工具。其本地部署特性确保数据隐私,适合专业与商业环境使用。项目地址:https://github.com/danielgatis/rembg。
3660 24
|
网络协议 Java Linux
PyAV学习笔记(一):PyAV简介、安装、基础操作、python获取RTSP(海康)的各种时间戳(rtp、dts、pts)
本文介绍了PyAV库,它是FFmpeg的Python绑定,提供了底层库的全部功能和控制。文章详细讲解了PyAV的安装过程,包括在Windows、Linux和ARM平台上的安装步骤,以及安装中可能遇到的错误和解决方法。此外,还解释了时间戳的概念,包括RTP、NTP、PTS和DTS,并提供了Python代码示例,展示如何获取RTSP流中的各种时间戳。最后,文章还提供了一些附录,包括Python通过NTP同步获取时间的方法和使用PyAV访问网络视频流的技巧。
4699 4
PyAV学习笔记(一):PyAV简介、安装、基础操作、python获取RTSP(海康)的各种时间戳(rtp、dts、pts)
|
12月前
|
数据采集 自动驾驶 Java
PAI-TurboX:面向自动驾驶的训练推理加速框架
PAI-TurboX 为自动驾驶场景中的复杂数据预处理、离线大规模模型训练和实时智能驾驶推理,提供了全方位的加速解决方案。PAI-Notebook Gallery 提供PAI-TurboX 一键启动的 Notebook 最佳实践