Supercomputer and encryption and compression @ rate of 96%
km
km at mrna.tn.nic.in
Mon May 2 13:41:54 EDT 2005
Hi all,
This was posted long ago.
I tried to compress a mp3 file but i couldnt get the keycode+".out" file which is of size 1 bit. instead it is printed to STDOUT. i am usng python 2.4 . i understand that the keycode is embedded in the filename itself. Is it a problem with python not able to create a file with such a big filename ?
any workarounds ?
regards,
KM
----------------------------------------------------------------------------
On Thu, Apr 14, 2005 at 01:49:22PM +0200, Fredrik Lundh wrote:
> Will McGugan wrote:
>
> > Please implement this as a Python module. I would like to compress my mp3 collection to single
> > bits.
>
> here's the magic algorithm (somewhat simplified):
>
> def algorithm(data):
> m = 102021 # magic constant
> d = [int(c) for c in str(1*2*3*4*5*m+5+4+2+1)]
> x = [ord(c) for c in hex(1+2+4+5+m*5*4*3*2*1)]
> x[d[0]*d[1]*d[2]] = x[d[-1]] + sum(d) - d[d[-d[-1]-1]] + d[0]
> x = __import__("".join(chr(c) for c in x[d[0]*d[1]:])).encodestring
> return "".join(x(data).split("\n")).rstrip("="), sum(d)-sum(reversed(d))
>
> and here's a driver for your MP3 collection:
>
> import glob
>
> def compress(filename):
> data = open(filename, "rb").read()
> keycode, bit = algorithm(data)
> file = open(keycode + ".out", "wb")
> file.write(chr(bit))
> file.close()
> print "compressed", filename,
> print len(data), "=>", 1, round(100.0/len(data), 3), "%"
>
> for file in glob.glob("*.mp3"):
> compress(file)
>
> </F>
>
>
>
> --
> http://mail.python.org/mailman/listinfo/python-list
>
More information about the Python-list
mailing list