【发布时间】:2021-02-02 17:01:37
【问题描述】:
我需要分段处理大型音频文件。我不想下载完整文件并提取时间范围,而是只下载所需的片段(例如 25 到 35 秒)。
由于 API 不支持开箱即用,仅下载音频文件片段的最佳方式是什么?
【问题讨论】:
标签: node.js google-cloud-storage
我需要分段处理大型音频文件。我不想下载完整文件并提取时间范围,而是只下载所需的片段(例如 25 到 35 秒)。
由于 API 不支持开箱即用,仅下载音频文件片段的最佳方式是什么?
【问题讨论】:
标签: node.js google-cloud-storage
不支持从秒读取,因为 Google 存储不会读取文件并对其进行解释。
你可以做字节段。这称为字节的读取范围,在 Cloud Storage 中支持。
您必须按照文档 [1] 添加标题 Range: bytes=20-2000。
在 nodejs 中你会做这样的事情 [2]
const logFile = myBucket.file('access_log');
logFile.createReadStream({
start: 20,
end: 2000
})
[1]https://cloud.google.com/storage/docs/xml-api/reference-headers#range
【讨论】: