为什么主流品牌的高清摄像头没有输出 H.264 编码的?一般都是 mjpeg

2023-10-14 21:02:48 +08:00
 ksc010
1334 次点击
所在节点    问与答
13 条回复
binsys
2023-10-14 21:04:14 +08:00
举例一下
binsys
2023-10-14 21:08:34 +08:00
一般 USB UVC 摄像头支持的格式就那么几种。
YUV 的变种 YUY2 ,MJPG ,RGB 。
但高清头当分辨率过大时,指定 FPS 下产生的 RGB 和 YUV 这种非压缩格式在 USB2.0 下传输带宽不足( Linux URB 等)。
所以为了在限定带宽下以高速 FPS 传输大分辨率视频帧,就得压缩,比如 MJPEG ,我还对接过直接输出 H.264 的 USB 2.0 UVC 摄像头,分辨率 1920*1080 ,20 几个 FPS 。
ysc3839
2023-10-14 23:10:33 +08:00
因为 H.264 编码芯片贵,还要交授权费。相比之下换个支持 USB3.0 的芯片,直接传输未压缩的 YUV 数据更便宜,更没必要用更贵的压缩格式。
F798
2023-10-15 00:30:01 +08:00
海康全都是 h256 ,反而没见过 mjpeg 的
ksc010
2023-10-15 00:30:45 +08:00
@binsys 罗技的 我就没找到 H.264 编码输出的
一般就是 未压缩编码 yuv 等
压缩编码就是 mjpeg
ksc010
2023-10-15 00:31:49 +08:00
@F798 啊 海康 usb 摄像头吗?
我今天找 2 个 DS-U68 、E14a 都是 mjpeg
ysc3839
2023-10-15 01:29:48 +08:00
@F798 楼主大概说的是 USB 摄像头,不是走网络传输的那种。
datocp
2023-10-15 06:22:07 +08:00
海康的行车记录仪 d6 也是,研究了一下,原来客户端也是支持快速转换,ffmpeg 视频能快速转换,声音搞不定。做素材的话声音也没用。
binsys
2023-10-15 09:21:22 +08:00
说的应该是 USB UVC 的。
当年对接的是 sonix 家的芯片的 USB2.0 UVC H.264 IC 。

为什么不用 USB3 呢,因为当年做的是 ADAS 方案,别人家都是 CVBS 接多路。老板可能有点想法,但板子 SOC 不支持 USB3,且线的长度满足不了 USB3 的信号完整性需求,受限于 USB2.0 。
ksc010
2023-10-15 10:32:30 +08:00
@datocp 我是在树莓派上 用 ffmpeg 录制 罗技摄像头的 mjpeg+音频
然后 录制 1 分钟后一定概率出现掉帧,音频卡顿情况;
但是只录制视频流就正常
tywtyw2002
2023-10-15 14:45:56 +08:00
啥叫主流??

不知道你说的 PC 摄像头还是监控摄像头。

监控摄像头,主流专业级别的不支持 H264/H265 ?那 NVR 录像什么啊

PC USB 摄像头,主播用的高清,基本都支持 H264 输出啊? 罗技 C920 老款(据说新款不支持 H264 了),C930 都支持啊
ksc010
2023-10-15 15:50:48 +08:00
@tywtyw2002
罗技的 C930 linux 不支持
win 下据说支持,不过我记得 我用 ffmpeg 没读取到;
kkocdko
2023-10-15 22:07:45 +08:00
2 楼总结得很好了。可能还是成本原因吧。也有碰到过 H264 的 USB“智能”摄像头,用的全志的方案。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/982011

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX