Python 可以通过网络读取mp4的特定部分吗?

Python 可以通过网络读取mp4的特定部分吗?,python,html,video,Python,Html,Video,现代MP4播放器可以让你跳到视频中的任何位置,而无需下载整个视频 以下是一个示例视频: 在下载视频之前,您可以跟踪到任何位置。我想知道是否有一个python库可以从流中的某个位置读取视频,而不必下载整个视频。这将取决于视频流的特定格式,特别是所使用的流格式,但通常是可能的 例如,Netflix等视频客户端中的书签通常就是这样工作的 新兴的流媒体行业标准MPEG DASH使用索引文件或清单,其中包含构成视频的各个流的链接,即视频流、音频、字幕等 流被分割成相等的时间长度段,例如10秒的块,并且播

现代MP4播放器可以让你跳到视频中的任何位置,而无需下载整个视频

以下是一个示例视频:


在下载视频之前,您可以跟踪到任何位置。我想知道是否有一个python库可以从流中的某个位置读取视频,而不必下载整个视频。

这将取决于视频流的特定格式,特别是所使用的流格式,但通常是可能的

例如,Netflix等视频客户端中的书签通常就是这样工作的

新兴的流媒体行业标准MPEG DASH使用索引文件或清单,其中包含构成视频的各个流的链接,即视频流、音频、字幕等

流被分割成相等的时间长度段,例如10秒的块,并且播放器在正常播放期间按顺序下载它们。这允许客户端向上或向下切换到视频的不同比特率版本,以匹配当前的网络条件

如果流支持它,它还允许客户端在特定的时间偏移请求一个段-这并不总是受支持的,因为您不能为实时事件请求未来的段,并且一些流还可能根据内容所有者的意愿限制过去段的可用性

其他流格式、HLS、平滑流等也有类似的机制

如果您的mp4只是一个托管在服务器上的静态文件,并且没有使用任何自适应流协议,那么只要您的服务器和客户端支持字节范围请求,您仍然可以请求文件的特定块。现在大多数服务器和客户端都支持此功能,尽管您可能需要显式配置服务器以启用此功能。请参阅: