视频文件格式简析

图片转视频
import os
import cv2
import glob

dir_path = ‘crowd’

def img2video(img_dir,save_name):
fps = 20
fourcc = cv2.VideoWriter_fourcc(‘XVID’) # 视频格式
video_writer = cv2.VideoWriter(save_name, fourcc, fps, (1920, 1080))
imgs = glob.glob(os.path.join(img_dir,’
.jpg’))
# print('imgs = ',imgs)

for name in imgs:
    # img_name = os.path.join(img_dir,name)
    # print('img_name=',name)
    frame = cv2.imread(name)
    frame = cv2.resize(frame, (1920, 1080)) #细节需要注意
    # print('frame = ',frame)
    video_writer.write(frame)

# release memory
video_writer.release()

img2video(dir_path,‘crowd.mp4’)
视频文件格式,即视频文件的后缀,如mp4,avi等等,主要为帮助系统的程序知道应该使用何种程序打开该文件;这就是说如果你把一个视频格式的文件后缀从avi改成mp4,并不意味该文件就变成了mp4格式。
视频封装格式则是一种视频封装容器。什么意思呢?在视频文件中同时含有视频部分、音频部分等等;那么视频封装容器则一种可以把多种视频数据放在一起的一个大盒子。这个盒子就是我们常说的视频格式,例如AVI(后缀.avi)格式、MPEG(后缀.mpg .mpeg .mpe .dat .vob .asf .3gp .mp4)格式、REAL Video(后缀.rmvb)格式、Flash Video(后缀.flv)格式等等。
那么视频编码器又是什么呢?视频编码器是指能够对数字视频进行压缩存储和解压缩的程序或设备。目前场景的编码器有H.26X系列(目前最流行的是H.264和H.265)和MPEG系列(目前最流行的是MPEG-4第十部分,即H.264)。上文代码中提到的XVID(旧称为DIVX)是一个开放源代码的MPEG-4视频编解码器.

经过上述介绍想必你已经对视频有了一个基本的了解和认识,那么接下来我就说出上述程序失败的原因:
系统中不存在对应的编码器!
解决方案

后来发现很简单,严格按照Opencv官方的编译指南,把所有的依赖库都安装上,而且安装一个解码器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值