【发布时间】:2013-06-02 18:26:30
【问题描述】:
好的,所以我正在尝试压缩一个图像文件尽可能多地进行存储(注意,在能够查看该文件之前,我会un -compress 它,压缩文件不需要可用,它只需要能够解压缩)我想在 python 中执行此操作,并且我有代码如下:
import bz2
from shutil import copyfileobj
x = 0
while True:
while x == 0:
with open("START.JPG", 'rb') as input:
with bz2.BZ2File("END.JPG", 'wb', compresslevel=9) as output:
copyfileobj(input, output)
print ("STAGE ONE COMPLETE")
x = 1
while x == 1:
with open("END.JPG", 'rb') as input:
with bz2.BZ2File("FINAL.JPG", 'wb', compresslevel=9) as output1:
copyfileobj(input, output1)
print ("STAGE TWO COMPLETE")
x = 2
到目前为止,它确实将图像压缩了大约 1/3 MB,我认为通过压缩压缩文件我可以将其压缩得更远,但是当我这样做时 FINAL.JPG 文件比我的第一个压缩文件大。所以我的问题是:压缩文件的最佳方法是什么(我知道不同的文件类型需要稍微不同的压缩,我的最终目标是压缩 MP3 音频文件),为什么当我压缩文件时我的压缩文件变大了?再次压缩它?,在这些文件之一无法解压缩之前,我还能制作多小?
提前感谢您提供的所有帮助,我相信我会得到!
【问题讨论】:
-
只是我阅读压缩的一个想法,使用内存分块不是最有效的吗?我从未使用过它,但我猜这是我应该熟悉的东西。
标签: python image audio python-2.7 compression