Android RTSP 播放拉流怎么取到持续的每帧图像进行分析

317 天前
 snowflake007
有没有成熟的库可以使用,Android 平台 RTSP 播放拉流怎么取到持续的每帧图像进行分析。

大概使用是接入摄像头的 RTSP 流数据到一个 Android 设备终端后进行人脸识别搜索 监测

Google Media3 ?VLC ?
6910 次点击
所在节点    Android
10 条回复
badguyatu
317 天前
java 调用 c++解码视频流,Java 可以得到这一帧的 bitmap,就可以分析处理了
mightybruce
317 天前
java 用 opencv 的 bindings 就行, 其他的处理都比较麻烦,rtsp 流协议 存的也不是每帧图像全部像素,涉及到很多视频处理。
luoway
317 天前
参考#2 ,视频传输会优化传输数据量。建议从截图方向考虑实现业务逻辑
giao123
317 天前
FFMPEG ,但是安卓版本的已经不再更新了,旧版搞起来很麻烦
zsxzy
317 天前
rtsp 的开源 player 不少. .拿到数据后使用 mediacodec 解码, 在回调函数能拿到每帧的 yuv 数据..
snowflake007
307 天前
@mightybruce 谢谢大佬;确实对 RTSP 的协议不太熟悉
snowflake007
307 天前
@luoway 谢谢大佬。截图性能消耗过大
snowflake007
307 天前
@zsxzy 大佬,那个轻量点?主要是对 RTSP 协议和视频编解码不太熟悉
mightybruce
307 天前
opencv 的 videocapture 已经对各种流协议以及摄像头做了高级封装, 直接在 videocapture 中写 rtsp url 地址就可以读出完整的图像,其他方式我尝试过的有 live555, 它是 c++ 专门处理 rtsp 的库需要你对视频处理有一定理解, ffmpeg 一些直接方式不推荐。
rtsp 包含 RTSP 控制指令以及 RTP 数据,协议不是直接编解码能解决的
视频编解码像摄像头很多用了 h265 来保证高压缩率。
yuv 是色彩空间,图像的格式,我们通常说的色彩空间还有 RGB, BGR, YCbCr 这些。
snowflake007
304 天前
@mightybruce 谢谢大佬,很详细

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

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

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

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

© 2021 V2EX