mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Include ffmpeg backed for Qt MultiMedia on macos and windows
Qt docs indicate this is the only actually maintained backend
This commit is contained in:
parent
dba0805df8
commit
3727bc2355
@ -272,7 +272,7 @@ class Freeze:
|
|||||||
if x in ('libunrar.dylib', 'libstemmer.0.dylib', 'libstemmer.dylib', 'libjbig.2.1.dylib') and not is_id:
|
if x in ('libunrar.dylib', 'libstemmer.0.dylib', 'libstemmer.dylib', 'libjbig.2.1.dylib') and not is_id:
|
||||||
yield x, x, is_id
|
yield x, x, is_id
|
||||||
else:
|
else:
|
||||||
for y in ('@rpath/', PREFIX + '/lib/', PREFIX + '/python/Python.framework/'):
|
for y in ('@rpath/', PREFIX + '/lib/', PREFIX + '/python/Python.framework/', PREFIX + '/ffmpeg/lib/'):
|
||||||
if x.startswith(y):
|
if x.startswith(y):
|
||||||
if y == PREFIX + '/python/Python.framework/':
|
if y == PREFIX + '/python/Python.framework/':
|
||||||
y = PREFIX + '/python/'
|
y = PREFIX + '/python/'
|
||||||
@ -322,6 +322,14 @@ class Freeze:
|
|||||||
@flush
|
@flush
|
||||||
def add_qt_frameworks(self):
|
def add_qt_frameworks(self):
|
||||||
print('\nAdding Qt Frameworks')
|
print('\nAdding Qt Frameworks')
|
||||||
|
# First add FFMPEG
|
||||||
|
for x in os.listdir(join(PREFIX, 'ffmpeg', 'lib')):
|
||||||
|
if x.endswith('.dylib') and x.count('.') == 2:
|
||||||
|
src = join(PREFIX, 'ffmpeg', 'lib', x)
|
||||||
|
shutil.copy2(src, self.frameworks_dir)
|
||||||
|
dest = join(self.frameworks_dir, os.path.basename(src))
|
||||||
|
self.set_id(dest, self.FID + '/' + os.path.basename(src))
|
||||||
|
self.fix_dependencies_in_lib(dest)
|
||||||
for f in QT_FRAMEWORKS:
|
for f in QT_FRAMEWORKS:
|
||||||
self.add_qt_framework(f)
|
self.add_qt_framework(f)
|
||||||
pdir = join(QT_PREFIX, 'plugins')
|
pdir = join(QT_PREFIX, 'plugins')
|
||||||
|
@ -506,6 +506,16 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"name": "ffmpeg",
|
||||||
|
"os": "macos,windows",
|
||||||
|
"unix": {
|
||||||
|
"filename": "ffmpeg-6.1.2.tar.xz",
|
||||||
|
"hash": "sha256:3b624649725ecdc565c903ca6643d41f33bd49239922e45c9b1442c63dca4e38",
|
||||||
|
"urls": ["https://www.ffmpeg.org/releases/{filename}"]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
{
|
{
|
||||||
"name": "qt-base",
|
"name": "qt-base",
|
||||||
"version": "6.7.2",
|
"version": "6.7.2",
|
||||||
|
@ -138,6 +138,8 @@ def freeze(env, ext_dir, incdir):
|
|||||||
os.mkdir(ossm)
|
os.mkdir(ossm)
|
||||||
for f in glob.glob(os.path.join(PREFIX, 'lib', 'ossl-modules', '*.dll')):
|
for f in glob.glob(os.path.join(PREFIX, 'lib', 'ossl-modules', '*.dll')):
|
||||||
copybin(f, ossm)
|
copybin(f, ossm)
|
||||||
|
for f in glob.glob(os.path.join(PREFIX, 'ffmpeg', 'bin', '*.dll')):
|
||||||
|
copybin(f)
|
||||||
|
|
||||||
copybin(os.path.join(env.python_base, 'python%s.dll' % env.py_ver.replace('.', '')))
|
copybin(os.path.join(env.python_base, 'python%s.dll' % env.py_ver.replace('.', '')))
|
||||||
copybin(os.path.join(env.python_base, 'python%s.dll' % env.py_ver[0]))
|
copybin(os.path.join(env.python_base, 'python%s.dll' % env.py_ver[0]))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user