Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SQLite Bible #1

Closed
JekRock opened this issue Feb 13, 2024 · 5 comments
Closed

SQLite Bible #1

JekRock opened this issue Feb 13, 2024 · 5 comments

Comments

@JekRock
Copy link

JekRock commented Feb 13, 2024

Nice finding about the format and the location of the Bible files!
Thank you for sharing that!

I've noticed that on MacOS ProPresenter 7 stores the Bible as an SQLite3 database. Not sure about Windows, but will be able to check that on Sunday.

I was curious if you had some findings regarding that as I was going to start researching how to add Bibles in such a format.

@martijnlentink
Copy link
Owner

Hi there,

Thank you for taking the time to reach out to me. My experience is that on OSX bibles are stored in the .rvbible zip files (as can be read in the README). It should support the USX format in any case, we also use ProPresenter 7 on OSX in our services. You could try to run the script to generate and install it.

python bible_import.py

If you have a Windows machine you could try to run the executable and copy the resulting .rvbible. -- I will release a executable for OSX as well soon.

@JekRock
Copy link
Author

JekRock commented Feb 16, 2024

That's interesting.
I've just checked the content of a .rvbible file and the Bible for my language is stored as an SQL database

@martijnlentink
Copy link
Owner

That is a good point. Yes, ProPresenter supports bibles in two formats; USX and DB3 (SQLite). The translations I worked with were actually all USX format. On Windows these can be identified by their entry in the BibleData.proPref file
InstalledBiblesNew=["6fb4fb55-78a4-43bc-ac6a-076818c7abfc|BB|BasisBijbel|1. The value after the last pipe 1 here indicates it is a USX bible, 0 would indicate a DB3 bible. For OSX it will just scan the contents of the rvbible and look for the presence of a db3 file.
The class ProPresenter.DO.Bibles.Formats.DB3Bible shows how the implementation is of processing the SQLite database. You could also have a look here where the structure of the database is shown. That repository also seem to have a process to insert new translations into that database.

But to round it up;

  • In ProPresenter bibles are stored in either USX or DB3 format. It does not matter which is used, and for any translation any format can be used
  • Windows and OSX use different methods in determining the format

That brings us back to your initial point; you want to research and find how to add bibles in such format. You are free to do so and I am curious what you would find. But in the end, since the USX method is proven and working, I doubt it would add anything to explore the SQLite route.

@JekRock
Copy link
Author

JekRock commented Mar 1, 2024

Thank you for your comments!

I've been trying to make the SQLite version work. There is a partial success. ProPresenter recognizes the Bible version, but it shows only a single book - the last one in the order they appear.
That issue doesn't seem to be related to the Bible data itself. It seems like it's something with the metadata.
When I take another Bible installed via ProPresenter and change its name in the database, I get the same effect. Still trying to figure out what causes that.
But maybe it's easier to switch to the USX format and check if it works. I tried using a DB3 version from the repository you linked, and it had the same issue on MacOS.

@martijnlentink
Copy link
Owner

Closing; SQLite is out of scope for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants