usb_camera传输视频流编码的问题记录!

前言:

大家好,今天给大家分享的内容是,一个vip课程付费的朋友,在学习过程中遇到了一个usb采集的视频数据流,经过ffmpeg编码,出现了问题:

d46dd17471233feadaf15aa18369ff29.png

问题分析:

其实这个问题不难,关键是要找到是什么原因导致编码压缩后的裸流h264视频解码出现问题。其中这里说的解码会变快,对于视频来说,一般是帧率不对:

89af2e69a2080dc1daae44ec4f990a97.png aa04d3658d2bd62f1f005612820d4bf7.png

从这个描述来看,很明显是数据源的问题,但是呢,这位朋友由于usb_camera驱动不是他搞得,因为底层驱动写死的fps是30帧,所以不太相信是源的问题;但是这里也不太可能是ffmpeg的x264编码器问题,所以呢,我就给这位朋友,分享了一个对比的方法去debug:

0744bcb18ebf44387c7269bd48805f3e.png f4bb85774e41607dd2d890d1098d2ed2.png

我让他去电脑ubuntu上,搞一个编码的demo,先确保自己的编码代码没有问题,后面去测试,果然是源的问题!

这里也总结一下,有时候,遇到问题,要大胆怀疑源的问题,因为有些做camera底层驱动的朋友,他不懂上层的音视频技术,所以可能导致发送给上层的数据流出现问题,有可能写完驱动,没有去测试数据流的正确性,而且上层的业务需求也是多样性的!当然,也折射出,做上层的音视频开发,对底层驱动,比如camera驱动框架不了解,也是很吃亏的!

同时这里也总结一下,在平时或者工作当中,遇到音视频的问题,一定要有解决思路和debug问题的方法,如果你没有方法去定位到问题的具体点,那基本很难解决这个问题,更别说是给出解决问题的方案了!

以上就是今天的内容分享,希望对大家有用!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/521486.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

漂亮国的无人餐厅的机器人骚操作

导语 大家好,我是智能仓储物流技术研习社的社长,你的老朋友,老K。行业群 新书《智能物流系统构成与技术实践》 知名企业 读者福利: 👉抄底-仓储机器人-即买即用-免调试 智能制造-话题精读 1、西门子、ABB、汇川&#x…

Linux--03---虚拟机网络配置、拍摄快照和克隆

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1.虚拟机网络配置1.虚拟机的联网模式模式1 仅主机模式特点模式2 桥接模式特点模式3 NAT模式特点关于模式的选择 2. 修改网络配置信息3.修改虚拟机ens33网卡的网络配…

【CNN】ConvMixer探究ViT的Patch Embedding: Patches Are All You Need?

Patches Are All You Need? 探究Patch Embedding在ViT上的作用,CNN是否可用该操作提升性能? 论文链接:https://openreview.net/pdf?idTVHS5Y4dNvM 代码链接:https://github.com/tmp-iclr/convmixer 1、摘要 ViT的性能是由于T…

【二分查找】Leetcode 在排序数组中查找元素的第一个和最后一个位置

题目解析 34. 在排序数组中查找元素的第一个和最后一个位置 我们使用暴力方法进行算法演化,寻找一个数字的区间,我们可以顺序查找,记录最终结果 首先数组是有序的,所以使用二分法很好上手,但是我们就仅仅使用上一道题…

2. Django配置信息

第2章 Django配置信息 Django的配置文件settings.py用于配置整个网站的环境和功能, 核心配置必须有项目路径, 密钥配置, 域名访问权限, App列表, 中间件, 资源文件, 模板配置, 数据库的连接方式.* 项目运行时, 如果修改代码, 项目会自动检测发现改动后会重新运行, 除非报错否…

xss.pwnfunction-Jefff

在eval中可以直接执行命令所以直接把"直接闭合在结尾再加上一个"因为后面的"没闭和会报错 ?jeffa";alert(1);" 或 ?jeffa"-alert(1)-" -是分隔符

根据状态转移表实现时序电路

描述 某同步时序电路转换表如下,请使用D触发器和必要的逻辑门实现此同步时序电路,用Verilog语言描述。 电路的接口如下图所示。 输入描述 input A ,input clk ,input rst_n 输出描述 output …

Windows11下Docker使用记录(二)

Docker使用记录(二) 1. 常用指令2. Dockerfile示例3. 构建docker image Docker中container,image,dockerfile 以及docker hub的关系如图所示,详细可见上一篇帖子。 本文主要记录Dockerfile相关。 1. 常用指令 常用指令…

matlab:五点中心差分求解Navier边界的Biharmonic方程(具有纳维尔边界的双调和方程)

我们考虑如下形式的双调和方程的数值解 其中,Ω是欧氏空间中的多边形或多面体域,在其中,d为维度,具有分段利普希茨边界,满足内部锥条件,f(x) ∈ L2(Ω)是给定的函数,∆是标准的拉普拉斯算子。算…

Open3D (C++) 从.txt文件中读取数据到矩阵

目录 一、算法概述二、代码实现三、结果展示四、测试数据本文由CSDN点云侠原创,原文链接。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的爬虫与GPT。 一、算法概述 在进行实验的时候有时需要借助不同的工具来实现一些比较复杂的操作,比如使用matlab中自带的拉…

竞赛 交通目标检测-行人车辆检测流量计数 - 竞赛

文章目录 0 前言1\. 目标检测概况1.1 什么是目标检测?1.2 发展阶段 2\. 行人检测2.1 行人检测简介2.2 行人检测技术难点2.3 行人检测实现效果2.4 关键代码-训练过程 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 毕业设计…

AI大语言模型GPT —— R 生态环境领域数据统计分析

自2022年GPT(Generative Pre-trained Transformer)大语言模型的发布以来,它以其卓越的自然语言处理能力和广泛的应用潜力,在学术界和工业界掀起了一场革命。在短短一年多的时间里,GPT已经在多个领域展现出其独特的价值…

卫星遥感影像如何选择合适的分辨率

​ 卫星遥感影像的分辨率是影响其应用效果的关键因素之一。分辨率越高,所获取的图像细节越丰富,能够更准确地反映地物的特征和变化。因此,在选择卫星遥感影像时,需要根据实际需求和数据可获取性来选择合适的分辨率。 一、分辨…

好看流光风格个人主页HTML源码

这是一款好看流光风格个人主页HTML源码,感觉挺喜欢的,需要的自行下载! 源码下载 好看流光风格个人主页源码

90天玩转Python-02-基础知识篇:初识Python与PyCharm

90天玩转Python系列文章目录 90天玩转Python—01—基础知识篇:C站最全Python标准库总结 90天玩转Python--02--基础知识篇:初识Python与PyCharm 90天玩转Python—03—基础知识篇:Python和PyCharm(语言特点、学习方法、工具安装) 90天玩转Python—04—基础知识篇:Pytho…

2-3多交换机静态流表控制原理与实现

实现目标环境下的静态流表设置: 1 单个ovs上实现多个主机hosts之间的通信 2多ovs上多主机之间的通信 1 单个ovs上实现多个主机hosts之间的通信 使用函数定义的方式创建一个如下的拓扑,并使用静态流表 from mininet.net import Mininet from mininet.n…

智过网:非安全专业能否报考注安?哪些专业可以报考?

近年来,随着社会对安全生产管理的日益重视,注册安全工程师(简称注安)这一职业逐渐受到广大从业人员的青睐。然而,对于许多非安全专业的朋友来说,他们可能会困惑:非安全专业是否可以报考注安&…

【51单片机入门记录】RTC(实时时钟)-DS1302概述

目录 一、基于三线通信的RTC-DS1302 (1)简介 (2)特性 (3)引脚介绍 (4)控制字的格式 (5.0)日历时钟寄存器介绍 (5.1)日历时钟寄存…

配置vscode链接linux

1.安装 remote SSH 2.按F1 ssh ljh服务器公网ip 3. 选择保存远端host到本地 某位置 等待片刻后 4. 切换到远程资源管理器中 应该可以看到一台电脑,右键在当前窗口链接,输入你的服务器用户密码后电脑变绿说明远程连接成功 5.一定要登陆上云服务器后再…

“进击的巨人”:服务器硬件基础知识解析

引言: 服务器是网络环境中负责处理数据、运行应用程序和服务多用户的高性能计算机系统。了解服务器的硬件构成有助于更好地管理和优化IT资源。 服务器和普通PC的差异: 服务器具有比个人电脑更高的处理能力、稳定性和可靠性,它们通常运行在没…