1

我正在开发一个应用程序,它将通过种子流传输多媒体文件。

后端需要在新部件到达时将它们提供给前端。

我需要一种机制来在新作品到达并经过验证时得到通知。据我所知,我可以使用block_finished_alerts. 我会跟踪给定片段的哪些块已经到达,并在所有块都到达时读取该片段。

这个解决方案似乎有点迂回,我想知道是否有更好的方法。

4

1 回答 1

2

你所要求的被称为piece_finished_alert. 每次新作品完成下载并通过哈希检查时都会发布。要从磁盘读取一块,您可以使用torrent_handle::read_piece()(并在 中获取结果read_piece_alert)。

然而,如果你想流媒体,你可能想要使用torrent_handle::set_piece_deadline()并设置标志以read_piece_alerts在片段进入时发送。这将调用 libtorrent 的内置流功能。

于 2014-06-30T20:29:39.600 回答