Hi all,
I'm considering a major patch to IDJC, related to the database library used.
I'm not happy with the current tool, Ampache. It can be annoying to install, and requires a web server. And file permissions can be a pain.
So I've started looking for a new solution, and I think I've found it.
Quod Libet (https://quodlibet.readthedocs.org/en/latest/) is a tagging tool and media player. It currently supports the creation of a library, but oddly they chose using a pickle file as the database. I'm working on an enhancement that would create a real database. And, I've decided to go away from MySQL as the database backend, and use a NoSQL database (specifically MongoDB) NoSQL fits in well with the Quod Libet design.
As for IDJC, I propose to just add another database choice, along with Prokyon3 and Ampache. (I will work on that patch, once I finalize my database design.) A big advantage to doing it this way is that the database is being designed ground up with IDJC, and my long promised request site in mind.
For the curious, you can see the test version of my newly designed request site at http://bmillham.millham.info It's still being worked on, but already uses MongoDB as the backend.
Let me know what you think
Brian
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I've started work on modifying Quod Libet, and have decided against it as a library tool. It started that it looked like it would be easy to modify it, but as I dug deeper into the code, they made some very odd decisions that make it almost impossible to change it to use a real database.
So where I think I am now, is I will create a stand-alone tool that will create a library. But, what I hope with my new idea is that I already have a plug-in system for IDJC working here. It needs a little more work, and if I can get sfairchild to accept it into the main code, then maybe the stand-alone tool that I'm going to create could be redone as as IDJC plugin. Thinking about it, I think it would be nice to have IDJC be able to maintain it's own database, instead of realing on other tools.
Thoughs about that???
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I use mainly FLAC files, plus some OGG and MP3. For historical reasons and some tools in the processing chain, MP3 are currently required to be tagged ID3v2.3.0 solely. Eventually, I'll be migrating to ID3v2.4 because of UTF8 support.
* metamp3 being used in spite of being a Windows program since mp3gain has lots of flaws. I need a tool to write correct ID3v2.3 Replay Gain tags without modifying any audio data.
** Eventually I will use bs1770gain for all FLAC, OGG and MP3, whenever Peter Belkner supports ID3v2.3 and FLAC/OGG since I believe that the EBU/ITU method of loudness calculation and correction is the way to go.
Last edit: Moonbase 2015-02-23
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi all,
I'm considering a major patch to IDJC, related to the database library used.
I'm not happy with the current tool, Ampache. It can be annoying to install, and requires a web server. And file permissions can be a pain.
So I've started looking for a new solution, and I think I've found it.
Quod Libet (https://quodlibet.readthedocs.org/en/latest/) is a tagging tool and media player. It currently supports the creation of a library, but oddly they chose using a pickle file as the database. I'm working on an enhancement that would create a real database. And, I've decided to go away from MySQL as the database backend, and use a NoSQL database (specifically MongoDB) NoSQL fits in well with the Quod Libet design.
As for IDJC, I propose to just add another database choice, along with Prokyon3 and Ampache. (I will work on that patch, once I finalize my database design.) A big advantage to doing it this way is that the database is being designed ground up with IDJC, and my long promised request site in mind.
For the curious, you can see the test version of my newly designed request site at http://bmillham.millham.info It's still being worked on, but already uses MongoDB as the backend.
Let me know what you think
Brian
Hello,
Its a good Idea to use another Datebase.
I use 3 tagging Tools, Ki3, Easytag and Puddletag. "And file permissions can be a pain in Ampache" thats right.
Greats
I've started work on modifying Quod Libet, and have decided against it as a library tool. It started that it looked like it would be easy to modify it, but as I dug deeper into the code, they made some very odd decisions that make it almost impossible to change it to use a real database.
So where I think I am now, is I will create a stand-alone tool that will create a library. But, what I hope with my new idea is that I already have a plug-in system for IDJC working here. It needs a little more work, and if I can get sfairchild to accept it into the main code, then maybe the stand-alone tool that I'm going to create could be redone as as IDJC plugin. Thinking about it, I think it would be nice to have IDJC be able to maintain it's own database, instead of realing on other tools.
Thoughs about that???
Hi Brian,
As the Quod Libet tagging library, mutagen, is already a dependency of
IDJC, you might be better off starting from there:
https://bitbucket.org/lazka/mutagen
SQLite maybe?
http://zetcode.com/db/sqlitepythontutorial/
Cheers!
Daniel
I think its ok, good idea
I use mainly FLAC files, plus some OGG and MP3. For historical reasons and some tools in the processing chain, MP3 are currently required to be tagged ID3v2.3.0 solely. Eventually, I'll be migrating to ID3v2.4 because of UTF8 support.
Tagging tools I use:
Loudness tagging:
* metamp3 being used in spite of being a Windows program since mp3gain has lots of flaws. I need a tool to write correct ID3v2.3 Replay Gain tags without modifying any audio data.
** Eventually I will use bs1770gain for all FLAC, OGG and MP3, whenever Peter Belkner supports ID3v2.3 and FLAC/OGG since I believe that the EBU/ITU method of loudness calculation and correction is the way to go.
Last edit: Moonbase 2015-02-23