通过 HTTP 提供 MJPEG 服务时,如何选择 multipart/x-mixed-replace 的边界?

问题描述 投票:0回答:1

通过 HTTP 发送 M-JPEG 时,首先发送带有

Content-Type: multipart/x-mixed-replace;boundary=<your boundary>
的标头,然后每次出现
\r\n--<your boundary>\r\n
序列时,浏览器将其视为一个部分的结束和下一部分的开始。

问题是 JPEG 可以包含该序列,无论是在注释中还是仅仅因为该字节序列恰好出现在有效负载中。

我知道,如果您在发送初始 HTTP 响应标头时知道所有 jpeg 图像,则可以构造一个不会出现在任何 jpeg 中的边界。但大多数时候,当您使用 M-JPEG 时,jpeg 是动态生成的。如何选择保证不会出现在 jpeg 中的边界?是否存在从未出现在有效 jpeg 中的字节序列?或者最好的策略只是选择一个足够长的随机边界,碰撞的概率很小并希望得到最好的结果..?

http jpeg mjpeg
1个回答
0
投票

与任何常见边界标记发生碰撞的可能性非常小。只需使用您正在阅读的教程中的任何边界标记即可继续。

© www.soinside.com 2019 - 2024. All rights reserved.