【问题标题】:What protocol/standard to use for streaming images from embedded devices用于从嵌入式设备流式传输图像的协议/标准
【发布时间】:2017-01-28 02:10:15
【问题描述】:

我正在寻找可以在处理能力和内存有限的嵌入式设备上使用的流媒体库/协议。在我的搜索中很快遇到了 rtsp 标准,特别是我遇到了这个看起来很有希望的https://github.com/ykst/librtsp。还有其他可以推荐的库吗?

一般来说,我有位图图像(bayer 或 rgb)。我想把这个提要变成可以用标准媒体播放器观看的流式广播。假设我想定位 VLC 媒体播放器。虽然符合(无损)压缩方案会很好,但我不希望在图像转换(Bayer-> YUV)上花费任何处理。

考虑到这一点,我正在阅读有关 h.264/x264 的更多信息,特别是关于 NAL 单元 (http://yumichan.net/video-processing/video-compression/introduction-to-h264-nal-unit/),如果这是可以通过该标准实现的。但我对解释信息的材料不够熟悉。到目前为止,从我一直在阅读的内容来看,我最简单的可能是对类似于关键帧的 IDR 图片帧系列进行编码。但我怀疑即使是 IDR 图片帧也是在块中创建的,并且不只是引用整个位图(就像未压缩的 avi 一样)。

一般来说:

关于我的用例,我可以/应该研究哪些库?除了 rtsp 之外还有更好的协议可以更好/更简单地开始使用吗?我在正确的轨道上使用 h.264 编码吗?如果我是,有人可以给我一个小轮廓,说明我基本上应该做什么来将我的图像转换为相应的 NAL 单元?

【问题讨论】:

    标签: video embedded streaming h.264 rtsp


    【解决方案1】:

    作为一般规则,当涉及到视频时,最好在服务器端做任何繁重的工作。

    假设您希望多个客户端能够连接到流,一个典型的架构是:

    嵌入式设备 ---> RTSP 流 ---> Streaming Sever ---> HTTP/DASH 等流 ---> 客户端设备

    这种方法可以让嵌入式设备上的处理尽可能简单,还可以将流式传输的复杂性转移到应变服务器。根据您拥有的客户端数量以及您想要的用户体验,流式传输视频可能非常复杂,因此使用专用流式传输服务器通常是最简单的方法。

    它还允许您在服务器端进行任何您可能想做的转换。

    对您的端到端服务的快速评论 - 如果图像之间的时间相对较长,那么实际上可能更容易将谨慎的图像发送到服务器,然后让服务器将它们构建成视频流 -再次,驱动程序将最大限度地减少嵌入式设备必须做的工作。

    【讨论】:

    • 不幸的是,我不是在讨论流式传输“到”嵌入式设备,而是“从”流式传输。在最终情况下,我正在讨论基于 ip 的摄像头的流式提要。
    猜你喜欢
    • 2023-03-11
    • 1970-01-01
    • 2010-10-05
    • 1970-01-01
    • 2012-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多