Re: Added support for Visualizations using VSXu
On 12.09.2013 19:14, Dinesh wrote: Hey Konrad, We have merged the Amarok Fixes branch into VSXu master. And the patch for the problem with the FindVSXu.cmake is in VSXu master now. (It was a broken libvsxu.pc file). As for the blank visualizer applet, I still cannot reproduce the problem on my machine. But I have pushed one more change to the vsxu branch of my amarok clone. Could you try that out? Its a tiny fix, but it got the plugin working for someone else: git://anongit.kde.org/clones/amarok/dineshm/amarok-vsxu.git This is the commit: commit d8fe2a363562f91fe89964847e0cc15cf9dc19e4 VSXuRenderer: Calling glViewport() for every frame Hey, Sorry about the delay, I'm really busy right now. First thing I want to note is that without changing the FindVSXu.cmake I still get following output while running CMake: -- checking for module 'libvsxu' -- package 'libvsxu' not found -- VSXU_ENGINE_LIBRARY: /home/konrad/kde/lib/libvsxu_engine.so -- VSXU_ENGINE_GRAPHICS_LIBRARY: /home/konrad/kde/lib/libvsxu_engine_graphics.so -- VSXU_ENGINE_AUDIOVISUAL_LIBRARY: /home/konrad/kde/lib/libvsxu_engine_audiovisual.so -- VSXU_INCLUDE_DIRS: VSXU_INCLUDE_DIRS-NOTFOUND ...where VSXu is installed under /home/konrad/kde prefix, and the same prefix is set for the Amarok build (and which is registered with KDE and all the right places). The VSXu installed is build from amarok-fixes branch. I'm not using pkg-config output and relying on other given hints - which should be good enough. I had to make following change FindVSXu.cmake to make it work: find_path (VSXU_INCLUDE_DIRS NAMES -vsxu_platform.h +vsx_platform.h PATHS ${VSXU_INCLUDE_DIRS} -${INCLUDE_INSTALL_DIR} +${INCLUDE_INSTALL_DIR}/vsxu ${KDE4_INCLUDE_DIR} ) Moreover, the vsx_* headers (and Amarok's visualizer, e.g. in VSXuRenderer.cpp) assume that all of VSXu include directories are directly in the include path. include/vsxu/engine_audiovisual/vsx_engine.h includes vsx_string.h, which is placed under include/vsxu/engine/ . I'm really confused as to how should I install the library to make it simply work, so I again just copied all files from include/vsxu/*/ to include/vsxu/ . Unfortunately, after it built, I still get a black rectangle while a song is playing. The Amarok logo is displayed when playback is stopped. Konrad ___ Amarok-devel mailing list Amarok-devel@kde.org https://mail.kde.org/mailman/listinfo/amarok-devel
Re: Added support for Visualizations using VSXu
On 15.09.2013 14:15, Konrad Zemek wrote: On 12.09.2013 19:14, Dinesh wrote: Hey Konrad, We have merged the Amarok Fixes branch into VSXu master. And the patch for the problem with the FindVSXu.cmake is in VSXu master now. (It was a broken libvsxu.pc file). As for the blank visualizer applet, I still cannot reproduce the problem on my machine. But I have pushed one more change to the vsxu branch of my amarok clone. Could you try that out? Its a tiny fix, but it got the plugin working for someone else: git://anongit.kde.org/clones/amarok/dineshm/amarok-vsxu.git This is the commit: commit d8fe2a363562f91fe89964847e0cc15cf9dc19e4 VSXuRenderer: Calling glViewport() for every frame Hey, Sorry about the delay, I'm really busy right now. First thing I want to note is that without changing the FindVSXu.cmake I still get following output while running CMake: -- checking for module 'libvsxu' -- package 'libvsxu' not found -- VSXU_ENGINE_LIBRARY: /home/konrad/kde/lib/libvsxu_engine.so -- VSXU_ENGINE_GRAPHICS_LIBRARY: /home/konrad/kde/lib/libvsxu_engine_graphics.so -- VSXU_ENGINE_AUDIOVISUAL_LIBRARY: /home/konrad/kde/lib/libvsxu_engine_audiovisual.so -- VSXU_INCLUDE_DIRS: VSXU_INCLUDE_DIRS-NOTFOUND ...where VSXu is installed under /home/konrad/kde prefix, and the same prefix is set for the Amarok build (and which is registered with KDE and all the right places). The VSXu installed is build from amarok-fixes branch. I'm not using pkg-config output and relying on other given hints - which should be good enough. I had to make following change FindVSXu.cmake to make it work: find_path (VSXU_INCLUDE_DIRS NAMES -vsxu_platform.h +vsx_platform.h PATHS ${VSXU_INCLUDE_DIRS} -${INCLUDE_INSTALL_DIR} +${INCLUDE_INSTALL_DIR}/vsxu ${KDE4_INCLUDE_DIR} ) Moreover, the vsx_* headers (and Amarok's visualizer, e.g. in VSXuRenderer.cpp) assume that all of VSXu include directories are directly in the include path. include/vsxu/engine_audiovisual/vsx_engine.h includes vsx_string.h, which is placed under include/vsxu/engine/ . I'm really confused as to how should I install the library to make it simply work, so I again just copied all files from include/vsxu/*/ to include/vsxu/ . Unfortunately, after it built, I still get a black rectangle while a song is playing. The Amarok logo is displayed when playback is stopped. Konrad RE: assuming that all of the header directories are directly in the include path: pkg-config indeed outputs all of them. The FindVSXu.cmake definitely needs to be tweaked. Konrad ___ Amarok-devel mailing list Amarok-devel@kde.org https://mail.kde.org/mailman/listinfo/amarok-devel
Implementing CUE sheet support in Amarok
Hi, After spending a lot of time staring at the code, I would like to propose the following changes to implement CUE sheet support in Amarok. Most of the necessary CUE decoding and track splitting functions are already available in CueFileSupport.h . It's got functions to scan for and validate CUE sheets too. I'd like to use these functions in the collectionscanner, scan for .cue files once the XML is read. To be even more precise, just before/after the CollectionScanner::Track for each track is created. So each child track would be treated as a separate track right from the beginning. I was thinking of having a few additional data members in CollectionScanner::Track and Meta::SqlTrack to represent child tracks and to store their start times and end times. This would then be stored in the database. To do that, I'd like to do that by adding a few columns to the track or the urls table such as, a child or not boolean, start time and end time. Abhinandan ___ Amarok-devel mailing list Amarok-devel@kde.org https://mail.kde.org/mailman/listinfo/amarok-devel
Re: Implementing CUE sheet support in Amarok
On 15. 9. 2013 Abhinandan Ramprasath wrote: Hi, After spending a lot of time staring at the code, I would like to propose the following changes to implement CUE sheet support in Amarok. Most of the necessary CUE decoding and track splitting functions are already available in CueFileSupport.h . It's got functions to scan for and validate CUE sheets too. I'd like to use these functions in the collectionscanner, scan for .cue files once the XML is read. To be even more precise, just before/after the CollectionScanner::Track for each track is created. So each child track would be treated as a separate track right from the beginning. I was thinking of having a few additional data members in CollectionScanner::Track and Meta::SqlTrack to represent child tracks and to store their start times and end times. Yeah, that makes sense. This would then be stored in the database. To do that, I'd like to do that by adding a few columns to the track or the urls table such as, a child or not boolean, start time and end time. Yep, this is the natural approach, however, this might lead to some problems. There are assumptions all over that (deviceid, rpath) in the urls table is unique for all urls. This wouldn't hold anymore. One possibility would be to change the assumption everywhere (tricky, perhaps doable). Second to somehow mix the start/end times into the rpath (is there a character not allowed in UNIX file paths?) and carefully treat places that use it. Third to recreate the child tracks late - after picking them up from the database (extremely tricky IMO). Another open questions: what should happen when you try to copy/move one child track out of Local Collection? What would happen if you edit the metadata? (I guess the change to title would go to the cuesheet, everything else to the underlying file). Matěj ___ Amarok-devel mailing list Amarok-devel@kde.org https://mail.kde.org/mailman/listinfo/amarok-devel