hearthsim / python-fsb5 Goto Github PK
View Code? Open in Web Editor NEWLibrary and tool to extract audio from FSB5 (FMOD Sample Bank) files
Home Page: https://hearthsim.info
License: MIT License
Library and tool to extract audio from FSB5 (FMOD Sample Bank) files
Home Page: https://hearthsim.info
License: MIT License
python extract.py -o a 8013_1.fsb
Traceback (most recent call last):
File "extract.py", line 131, in
main()
File "extract.py", line 127, in main
exit(app.run(sys.argv[1:]))
File "extract.py", line 121, in run
self.handle_file(f)
File "extract.py", line 110, in handle_file
for sample_fakepath, sample_name, sample_data in self.read_samples(fakepath_prefix, fsb, ext):
File "extract.py", line 86, in read_samples
yield sample_fakepath, sample.name, fsb.rebuild_sample(sample)
File "C:\1\fsb5jb\fsb5_init_.py", line 211, in rebuild_sample
from . import vorbis
File "C:\1\fsb5jb\fsb5\vorbis.py", line 12, in
vorbis = load_lib('vorbis')
File "C:\1\fsb5jb\fsb5\utils.py", line 76, in load_lib
raise LibraryNotFoundException("Could not load the library %r" % (names[0]))
fsb5.utils.LibraryNotFoundException: Could not load the library 'vorbis'
https://svn.xiph.org/trunk/vorbis-python/
Maybe this could fix #4 too...
Hello,
I'm trying to retrieve .ogg's from .fsb files extracted from Deus Ex: Mankind Divided, using your program (64-bit version). While most of them process correctly, some of files produce illegible noise. Here's an example of such a file. Would you know what could be wrong with it and how can it be fixed?
Thanks.
I am unable to convert FSB version 5 files.
Command:
python3 extract.py file.fsb
Error Message:
Traceback (most recent call last):
File "C:\python-fsb5_win64\extract.py", line 131, in <module>
main()
File "C:\python-fsb5_win64\extract.py", line 127, in main
exit(app.run(sys.argv[1:]))
File "C:\python-fsb5_win64\extract.py", line 121, in run
self.handle_file(f)
File "C:\python-fsb5_win64\extract.py", line 99, in handle_file
fsb, ext = self.load_fsb(data)
File "C:\python-fsb5_win64\extract.py", line 55, in load_fsb
fsb = fsb5.load(data)
File "C:\python-fsb5_win64\fsb5\__init__.py", line 230, in load
return FSB5(data)
File "C:\python-fsb5_win64\fsb5\__init__.py", line 124, in __init__
self.header = self.header._replace(mode=SoundFormat(self.header.mode), size=buf.tell())
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.3568.0_x64__qbz5n2kfra8p0\lib\enum.py", line 384, in __call__
return cls.__new__(cls, value)
File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.3568.0_x64__qbz5n2kfra8p0\lib\enum.py", line 702, in __new__
raise ve_exc
ValueError: 16 is not a valid SoundFormat
Under Windows 10 x64 system?
The readme says
libogg and libvorbis are required to decode ogg samples
What do you mean with "decode"? It sounds like decompressing to PCM format. But probably means reading some format header attributes or verify the file format?
Then it says
If ogg files are not required to be decoded then the libraries are not required.
There is no option to skip "decoding" when using "extract.py". But it seems if the input file contains Ogg Vorbis, then it automatically tries to load the shared libraries and aborts if library loading fails.
Can you add a simple "raw" option without the need for extra libraries to "extract.py"?
Note for Windows:
Working DLL files are available here: http://www.rarewares.org/ogg-libraries.php
When using "extract.py" you may copy the libs into the same directory.
Make sure the name is (rename if needed):
"libvorbis.dll" (just "vorbis.dll" fails)
"libogg.dll"
I've tested on a Unity3D ".resource" file containing hundreds of FSB5 files under Windows and it worked great.
I've noticed vorbis samples with 3+ channels just come out as a garbled mono mess.
Is there any way to fix this?
I don't know how github releases are usually supposed to work, but I noticed that in here, the "fsb5" folder between the source code release (python-fsb5-b7bf605.zip
) and the standalone program releases (both Win32 and Win64) contain different versions of some files. (In the standalone program, vorbis_headers.py
is 2.2MB rather than 5KB and covers some lookup cases that the latter definitely misses.)
I don't know if this is the source of the problem, but I also noticed that trying to install python-fsb5 as a module (via pip
- I think? It was a while back...) installs the source code version of the relevant files. It was a bit of a drag for me to figure out what was the problem, and probably will be a drag for others too. How can we fix this?
Is OGG supported or not?
win 7 64
python27
There is a mistake
cmd
python extract.py
File "extract.py",line 29
def print <self,*args>:
SyntaxError: invalid syntax
How to deal with it???
I'm trying to extract an FSB wich contain some duplicated name...
So if i have 5 time DUPLICA1.OGG i got only 1 file and not 5 with a number ex:
DUPLICA1.WAV
DUPLICA1-2.WAV
DUPLICA1-3.WAV
DUPLICA1-4.WAV
DUPLICA1-5.WAV
How i can extract all the 1275 files and not the half 700 because of that conflict?
Thank
Some vorbis samples fail to decode as the crc32 is not known, so the encoding options cannot be derived.
This seems to have something to do with specifying quality when creating samples with Unity3D's fsbtool.
i wanna parse information in fev file, any suggestions?
thanks in advance
Extract using Android I found this error when extract fsb.
"/data/data/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.9/1ib-dynload/_ctypes.cpython-39.so" is not accessible for the namespace "(default)"
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.