视频播放太快

来源:9-10 实战从视频设备上采集数据2

heaven强

2020-12-27

  1. 我设备采集支持的帧率如下
    [0]: ‘YUYV’ (YUYV 4:2:2)
    Size: Discrete 640x480
    Interval: Discrete 0.033s (30.000 fps)
    Interval: Discrete 0.067s (15.000 fps)
    Interval: Discrete 0.100s (10.000 fps)
    Interval: Discrete 0.200s (5.000 fps)

我代码之中设置的参数如下
nRet = av_dict_set(&lpOptions,“video_size”, “640x480”, 0);
nRet = av_dict_set(&lpOptions,“framerate”, “30”, 0); //无论怎么改都不行

采集到之后播放ffplay -s 640x480 -pix_fmt yuyv422 video3.yuv 速度太快,

写回答

4回答

李超

2021-01-21

把帧率设置为5帧试试

0
0

At小明同学

2021-01-21

可能的原因是采集到的帧率低于设定的帧率,真实存储的帧率要已实现存储的为准。可以通过打印的方式统计一秒钟可以存储多少帧,摄像头每秒可以出30帧数据,但是只保存了20帧,正常情况我们会把摄像头的数据扔到一个队列中,不会把读数据和写数据放在同一个线程中的! 看看线程中有没有啥耗时操作

0
0

李超

2021-01-05

把ffplay 的播放帧率设置为15帧试试

0
3
At小明同学
回复
heaven强
可能的原因是采集到的帧率低于设定的帧率,真实存储的帧率要已实现存储的为准。可以通过打印的方式统计一秒钟可以存储多少帧,摄像头每秒可以出30帧数据,但是只保存了20帧,正常情况我们会把摄像头的数据扔到一个队列中,不会把读数据和写数据放在同一个线程中的! 看看线程中有没有啥耗时操作
2021-01-21
共3条回复

heaven强

提问者

2021-01-05

使用的播放命令

ffplay -s 640x480 -pix_fmt yuyv422 -framerate 30 video_test.yuv

以下是录制时候的信息

[video4linux2,v4l2 @ 0x7f6d34000cc0] fd:19 capabilities:84a00001
[video4linux2,v4l2 @ 0x7f6d34000cc0] Current input_channel: 0, input_name: Camera 1, input_std: 0
[video4linux2,v4l2 @ 0x7f6d34000cc0] The V4L2 driver changed the pixel format from 0x32315559 to 0x56595559
[video4linux2,v4l2 @ 0x7f6d34000cc0] Trying to set codec:rawvideo pix_fmt:yuv420p
[video4linux2,v4l2 @ 0x7f6d34000cc0] The V4L2 driver changed the pixel format from 0x32315559 to 0x56595559
[video4linux2,v4l2 @ 0x7f6d34000cc0] Trying to set codec:rawvideo pix_fmt:yuv420p
[video4linux2,v4l2 @ 0x7f6d34000cc0] The V4L2 driver changed the pixel format from 0x32315659 to 0x56595559
[video4linux2,v4l2 @ 0x7f6d34000cc0] Trying to set codec:rawvideo pix_fmt:yuv422p
[video4linux2,v4l2 @ 0x7f6d34000cc0] The V4L2 driver changed the pixel format from 0x50323234 to 0x56595559
[video4linux2,v4l2 @ 0x7f6d34000cc0] Trying to set codec:rawvideo pix_fmt:yuyv422
[video4linux2,v4l2 @ 0x7f6d34000cc0] Setting time per frame to 1/30


0
0

音视频小白系统入门课 音视频基础+ffmpeg原理

掌握音视频采集、编解码、RTMP传输协议等核心基础

2214 学习 · 758 问题

查看课程