bittorrent - 最后一段 torrent 是否对应最后一个文件的最后一段?
问题描述
我正在尝试下载多个种子文件,我想要最后的 .mp4 文件。我不能专门针对特定文件的特定部分,但例如,如果我的 torrent 包含 3 个文件:
1.mp4 2.mp4 3.mp4
最后一段 torrent 是否与 3.mp4 文件的最后一段相同?因此,通过下载最后一段,我将下载最后一段 3.mp4 文件。有没有办法同时定位 2.mp4 和 1.mp4 的最后一段?谢谢你。
解决方案
最后一段 torrent 和 3.mp4 文件的最后一段一样吗?因此,通过下载最后一段,我将下载最后一段 3.mp4 文件。
是的
有没有办法同时定位 2.mp4 和 1.mp4 的最后一段?
是的
创建种子时,其中的所有文件都连接在一起,然后分成几块。
example:
Files |-------------------#1|----------------#2|---------------------------#3|
Pieces |--0|--1|--2|--3|--4|--5|--6|--7|--8|--9|-10|-11|-12|-13|-14|-15|-16|17|
- 除了最后一个之外,所有部分的长度都相同。
- 一个文件有一个或多个片段。
- 一块可能包含(部分来自)多个文件。
- 内部文件和片段边界对齐是非常罕见的(除非使用填充文件)。
- 多文件 torrent 中的文件几乎总是与另一个文件共享一个文件。
在 .torrent 文件的元数据中有;件大小,文件大小和文件的确切顺序。
这些文件按照它们出现在files
.torrent 文件列表中的顺序排列。
顺序由 torrent 创建者决定,我可以是任意顺序。文件大小、磁盘顺序、字母顺序、随机、创建日期、名称长度等
根据该数据,可以准确计算出特定文件结束的部分和偏移量。
推荐阅读
- c# - Xamarin.forms android Prism 手柄硬件后退按钮
- ruby-on-rails - rails, bootstrap, media-breakpoint-only
- sql - SSRS 多值参数错误
- vba - 在粘贴范围之间创建空白空间
- azure - 在 Azure 上部署 Apollo GraphQL 服务器
- c# - C#线程启动顺序不一致
- javascript - 在 Slick 滑块中添加自定义类,如数字增量
- c# - 使用 C# 将 OPENGL 6 图像 CubeMap 转换为 equirectangular
- python - logging.error 无法捕获错误日志
- verilog - 基于参数值的 Verilog 条件硬件