Hi Max, First off, I should explain the logic behind working on Pictureflow first before merging it.
The idea was to approach the most complicated part slowly. It will require some modifications to pictureflow for it to properly read from ID3/Flac tags, and for it to be able to search any directory structure used to store artwork. I was under the impression that it would be simpler to get pictureflow loading images correctly if it was still a standalone application, and once that was complete I could merge it and just change where it searches for images. I now see that, in fact, it would be easier to get it merged first and then work out the details of loading images. I really didn’t anticipate redoing a lot of work, however I hadn’t taken into account the complexity of the code I would be merging. The task of merging it will be very complex as well and the complexity will increase as I add functionality to pictureflow. On the balance of RAM vs. loading: Pictureflow creates a QStringList containing the locations of all the images it will use. By default, it loads all the images it will be using into RAM to maximize it’s performance. However, it already contains functionality to only load a set number of images into it’s cache. for example, when Mixxx is first opened it will only load the first 40 pieces of album artwork. As the user scrolls it will keep a buffer of 40 images before and after the current image. I have seen this functionality in the source but I still have to find the details ie. where to set the cache size. Data structures: I plan on determining the locations of the images files from their tags within the Mixxx database. If I can store the locations within the existing QStringList in pictureflow it should function normally. Each image is given an index within pictureflow so I will just have to associate that index with an album in Mixxx. In terms of user-defined art for Wavs or fetched art, I will either have to a) update the correct tags then re-read the data into pictureflow or b) create a new data structure for these images (in the case of wavs.) I would ideally be able to integrate this in with Mixxx’s existing database or construct my own. Minimal UI: By this I just meant getting the pictureflow UI functioning within Mixxx without worrying too much about positioning, size etc. From here I can narrow in on the exact design. I would still like to do this but now it will happen sooner. Merging: The main points that I could merge at would be 1. Pictureflow integrated with the UI but not functioning on the back end 2. Pictureflow fully functioning but independent of the library 3. Pictureflow fully integrated but without drag and drop 4. With drag and Drop 5. Fetching from services 6. Fully completed. I could merge at any number of these points, point 3 would probably be the best if I’m just going to merge once midway through the summer. Would you guys prefer if I merge more or less? Once again, thank you so much for your feedback. These are issues that I haven’t encountered before so it’s great that you’re showing me things that I can’t see for myself. This has already been a great learning experience. I will update my proposal tomorrow Corey ------------------------------------------------------------------------------ Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/13534_NeoTech _______________________________________________ Get Mixxx, the #1 Free MP3 DJ Mixing software Today http://mixxx.org Mixxx-devel mailing list Mixxx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mixxx-devel