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