Läuft die Voice Acoustic VA-Remotecontrol (AllDSP AllControl) nativ unter Linux auf echtem wxGTK 3.0 — ohne Wine und ohne dekompilierten App-Code. Ausgeführt wird das unveränderte Python-2.7-Bytecode aus dem macOS-.app; C-Extensions (wxGTK/numpy/ scipy/PortAudio) kommen nativ aus Debian stretch. Enthält: va/ (Original-.pyc + pure-Python-Libs + Assets + launch.py mit den drei Linux-Fixes), Dockerfile/run.sh/entrypoint.sh, reference/ (dekompilierter Quellcode zum Debuggen) und README/STATUS. img.cache (378 MB, regenerierbar) ist per .gitignore ausgeschlossen. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
43 lines
896 B
Python
Executable File
43 lines
896 B
Python
Executable File
#!/usr/bin/env python
|
|
|
|
#makeCache: alle png inpakken in img.cache.
|
|
|
|
import sys
|
|
import os
|
|
import cPickle
|
|
import marshal
|
|
import wx
|
|
import array
|
|
|
|
app = wx.App()
|
|
|
|
modified_bitmap_buffer_cache = {}
|
|
|
|
files = os.listdir("cache")
|
|
for f in files:
|
|
basename = f #os.path.split(f)[1]
|
|
print "doing", basename
|
|
img = wx.Image("cache/" + f, wx.BITMAP_TYPE_ANY)
|
|
print "doing 2", basename
|
|
bmp = wx.BitmapFromImage(img)
|
|
w, h = bmp.GetSize()
|
|
w = max(w, 1)
|
|
h = max(h, 1)
|
|
buf = array.array('B', [0] * (w * h * 4))
|
|
bmp.CopyToBuffer(buf,wx.BitmapBufferFormat_ARGB32)
|
|
for i in range (0,w*h):
|
|
offset=i*4
|
|
b=buf[offset]
|
|
g=buf[offset+1]
|
|
r=buf[offset+2]
|
|
a=buf[offset+3]
|
|
buf[offset]=r
|
|
buf[offset+1]=g
|
|
buf[offset+2]=b
|
|
buf[offset+3]=a
|
|
modified_bitmap_buffer_cache[basename] = (buf,w,h)
|
|
print "did", basename
|
|
|
|
f = open("img.cache", "wb")
|
|
marshal.dump(modified_bitmap_buffer_cache,f,2)
|
|
f.close() |