有没有办法将图像/视频文件拆分成零件并压缩某些零件?

时间:2015-08-12 19:38:47

标签: compression image-compression

我正在开发一个应用程序,我们正在上传一个小文件以找出用户连接,并根据我们正在压缩视频/图像文件,以便他们快速上传。有没有办法上传部分视频或图像文件,并压缩文件的其他部分而不是文件的第一部分?

3 个答案:

答案 0 :(得分:1)

在没有更多上下文信息的情况下回答您的问题有点困难,但让我试试。

您可以使用任何允许质量可扩展性和嵌入式码流的压缩算法,而不是在检查用户连接后进行压缩。例如,使用JPEG2000,您可以定义多个质量层,每个质量层可以由目标比特率定义。然后,您的应用可以发送第一层来估算链接速度,然后发送尽可能多的图层。用户稍后可以根据需要上载缺失的图层。 Kakadu是JPEG2000的一个实现,它允许你这样做,虽然它可能需要一些时间来找出正确的调用。 根据您的特定问题,您可能还需要查看JPEG2000的JPIP协议以进行交互式传输。

除JPEG2000外,您可能需要查看h264(SVC)和HEVC(SHVC)视频编码器的可扩展扩展。

最后,如果您不介意需要一些时间和带宽,您可以发送任何数据来探测速度,然后按照您喜欢的方式压缩图像(:

答案 1 :(得分:0)

比特率(直接转换为文件大小)是一个非常灵活的参数,可以在压缩视频时使用。

通过灵活,我的意思是这可以在压缩视频时连续或随时改变,这意味着视频的不同部分可以被压缩以需要更高或更低的带宽 - 这也会对质量产生相应的影响。视频。

因此,无论您目前使用什么工具压缩视频,请浏览它提供的比特率设置选项,并根据您的可用带宽尝试使用它。希望这可以帮助。

答案 2 :(得分:0)

您可以将原始视频帧划分为块,例如每块2秒。每次只编码一个具有封闭GOP压缩的块。您可以单独上传这些比特流文件。这就是Youtube或Netflix处理视频流的方式。