NVIDIA 推出了适用于 Python 的开源视频处理框架
NVIDIA 推出了适用于 Python 的开源视频处理框架“ VideoProcessingFramework”(VPF)。据悉,VPF 是一组开源的 C ++ 库和Python绑定,可与其封闭源代码 Codec SDK 进行交互。该框架的功能是简化从 Python 开发 GPU 加速视频编码/解码的过程。
VPF 利用 NVIDIA Video Codec SDK 来提高灵活性和性能,并为开发人员提供 Python 固有的易用性。
实际上,尽管 Python 不是性能最高的语言,但它却是一种易于使用的语言。并且在 NVIDIA 决定发布此视频处理框架之后,相当于在现有 Video Codec SDK C ++ 堆栈周围的 Python wrapper,都将用于在 Kepler 及更高版本上基于 GPU 的视频编码/解码。
因此,在利用基于 GPU 的高性能视频加速的同时,用户最终获得了易于阅读/编写的代码。
该代码在 GitHub 上可作为 NVIDIA 的 VideoProcessingFramework 获得。
此外,在介绍 VPF 的博客内容中,开发人员还提供了一个简短的 Python 代码示例,该示例使用 PyNvCodec 模块显示 Python 中的视频转码。
import PyNvCodec as nvc gpuID = 0 encFile = "big_buck_bunny_1080p_h264.mov" xcodeFile = open("big_buck_bunny_1080p.h264", "wb") nvDec = nvc.PyNvDecoder(encFile, gpuID) nvEnc = nvc.PyNvEncoder({'preset': 'hq', 'codec': 'h264', 's': '1920x1080'}, gpuID) while True: rawSurface = nvDec.DecodeSingleSurface() # Decoder will return zero surface if input file is over; if not (rawSurface.GetCudaDevicePtr()): break encFrame = nvEnc.EncodeSingleSurface(rawSurface) if(encFrame.size): frameByteArray = bytearray(encFrame) xcodeFile.write(frameByteArray) # Encoder is asynchronous, so we need to flush it encFrames = nvEnc.Flush() for encFrame in encFrames: encByteArray = bytearray(encFrame) xcodeFile.write(encByteArray)
参考消息:
https://devblogs.nvidia.com/vpf-hardware-accelerated-video-processing-framework-in-python/
https://www.phoronix.com/scan.php?page=news_item&px=NVIDIA-Video-Process-Framework
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
每日一博 | 产品经理如何驱动产品安全建设
一、序言 本文从产品经理的角度出发,对产品经理的安全职责、产品驱动安全的内涵、工作内容、工作方法、所需安全资源、以及产品经理的安全工作量进行了分析。希望所有产品经理在没有心理负担的情况下,有目标、有方法、有资源推进产品安全建设。 二、背景 安全是软件产品天然属性的一部分,“无安全不金融”,对于金融软件产品而言,安全尤为重要,因为客户总是能够从各种安全漏洞联想到他的金融资产安全和个人信息安全。以前偶尔会在一些安全沙龙或峰会听见同行吐槽,“信息安全说起来重要、做起来次要、忙起来不要”。吐槽背后的原因很复杂,其中很重要的一点是跟产品经理安全意识淡薄、不清楚如何推进产品安全建设有关,比如不重视产品安全属性、产品安全需求不明确、产品安全资源不充分、产品安全建设无从下手等。本文主要站在产品经理的角度,从产品经理能力维度出发,探讨产品经理如何推动产品的安全性建设。 众所周知,安全性作为软件产品的天然属性,从产品定义与规划角度来看,产品经理对产品安全负有不可推卸的责任,但产品经理如何履行自己的安全职责,业界还没有给出一个清晰可行的行动方案。 目前,软件产品安全需求通常是基于开发人员和安全人员的职业常识...
- 下一篇
Ubuntu 想在 Windows 的 WSL 中做到领先
Canonical 正在将更多资源投入 Linux 桌面,其中包括在Windows 上更好地体验 Ubuntu。 这需要通过 WSL(Windows Subsystem for Linux)来实现,此前 Canonical 已经发布了Ubuntu-WSL,它提供了更好的 Ubuntu 集成,并且它也是 Windows 10 上 WSL 第一个支持的 Linux 发行版。在 Ubuntu 之后,包括 Debian、Fedora、Kali 与 openSUSE 等发行版陆续上架 WSL,现在 Ubuntu 想在这一领域做到领先地位。 近期 Canonical CEO兼创始人 Mark Shuttleworth 表示当前对 Ubuntu Linux 桌面的需求比以往任何时候都多,他说:“我们从未将台式机带入消费者领域,我们仍然很乐意为开发人员和系统管理员提供一个平台。” 在Ubuntu 桌面软件工程师的招聘公告中,Canonical 表示其正在寻找可以将 Ubuntu 领导到WSL 领先地位的人,“我们认为 WSL 是 Windows 用户在台式机上体验 Ubuntu,简化其开发流程并允许在...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8编译安装MySQL8.0.19
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果