
Cantata
Source (link to git-repo or to original if based on someone elses unmodified work): https://github.com/CDrummond/cantata/
Cantata is a (yet another!) client for the music player daemon (MPD). Originally started as a fork of QtMPC, the code is now *very* different. Cantata can be compiled with KDE support, or as a pure Qt4 application. The interface is very configurable - most views can be shown as either a list or tree structure.
Currently Cantata has the following views:
1. Library - Group by either Genre, Album Artist (or Artist if Album Artist not set), or Album
2. Folders - displays MPDs virtual filesystem. (This view is hidden by default)
3. Playlists - standard, dyamic, and smart
4. Internet - Radio Streams (allows saving of internet radio URLs, searching for stations via TuneIn or ShoutCast, station listings from; Digitally Imported (+Sky, JazzRadio, RockRadio), TuneIn, IceCast, ShoutCast, SomaFM, etc.) and Online services (Jamendo, Magnatune, SoundCloud, and Podcasts)
5. Devices - enables copying from/to USB-Mass-Storage (UMS) and MTP devices, and ripping AudioCDs
6. Search - search via MPD
The sidebar has a context menu, allowing you to control its style and what items are shown.
Refer to http://mpd.wikia.com/wiki/Client:Cantata, and https://raw.githubusercontent.com/CDrummond/cantata/master/README, for further information.
******************
******************
NOTE: The screenshots on this page are out of date, and only reflect the 1.x codebase
******************
******************
################################################################
################################################################
Releases may be downloaded from: https://github.com/CDrummond/cantata/releases
################################################################
################################################################
2.3.0 2 years ago
Changelog is available at https://raw.githubusercontent.com/CDrummond/cantata/master/ChangeLog
2.3.0 2 years ago
Changelog is available at https://raw.githubusercontent.com/CDrummond/cantata/master/ChangeLog
ntasos
6 years ago
Thanks again, you're doing an amazing job.
Report
CraigD
6 years ago
For future issues, please cratea bug report on Cantata's googlecode page.
Report
imruska
6 years ago
Would it be possible to show in the song information panel the information embedded in the song in the comment tag? I mean the way Cantata now handles lyrics. When lyrics tag is set, it is shown, when lyrics tag is not set, Cantata tries to get it from the Internet.
So I would like Comment from the comment tag, and when there is no comment tag, Cantata could get info from the Internet.
It may be that many people do not want Cantata to work this way, then could one at least set the priority? So I would opt for Comment (or Information or whatever) tag first, whereas others could opt for information from the Internet.
Report
CraigD
6 years ago
I could fetch song info from wikipedia, and display under the lyrics. But then things start getting messy. I need to give this more thought...
Report
imruska
6 years ago
Report
CraigD
6 years ago
The comment field, is (probably) per-track specific (at least it would be read per-track). Therefore, it belongs on the right.
Sorry, but I really dont see theft artist-column as the best place to put it. What is in the comment field that would need to be displayed in the context view?
Report
imruska
6 years ago
Cantata does not display the Comment tag anywhere.
If you'd prefer to display somewhere the Performer tag that would also be allright.
Report
CraigD
6 years ago
Report
CraigD
6 years ago
2. Cantata itself can already edit most tags (those supplied by MPD). If there was an XDG compliant way of calling (e.g.) xdg-open -edit filename.mp3 then I would do this. However, I dont feel like adding yet an other config item to pick an external tag editor. (The context-view is now read-only - even lyrics will be edited in an external editor from 1.4.0 onwards)
3. It shows information about the song. But, this probably will not work for classical music. It attempts to get info from wikipedia or last.fm
4a. Really? The text is elided - so if there is too much info the "song by artist" would still get displayed (unless there is still too little space). So, you might have "Song Name by Track Artist on The Album" which /might/ get truncated to "Song Name by Track Artist on ..." and you are complaining that its no "Song Name -Track Artist". Splitting hairs...
4b. Not sure why the partial translation - as the same piece of code is used. However, trunk has *not* been sent out to tranlsators just yet - and will not until I have decided to make no more string changes.
Report
imruska
6 years ago
1. It's great that Artist is shown when it's other than the Album Artist. But for me - using mostly Classical music - it would be better to have "Artist - Title" order.
Could this be made configurable? "Title - Artist" as default, but "Artist - Title" for those who choose this option?
2. Showing all tags is working. It could be even better if you could open the file in an external tag-editor (which you can define at Preferences), so one could even change them.
3. Information. This does not work for me. Which tag - or what kind of information - is this supposed to show?
4. What I don't like:
The title of Cantata shows too much information, Title by Artist on Album. For me "Artist - Title" would be sufficient. Moreover, Cantata translates "by" and "on" on my system language when playing mp3 files, but they remain "by" and "on" when playing Flac, or m4a (AAC) files.
Report
CraigD
6 years ago
Currenty I have added (for 1.4.0) song information to the right pane. You can toggle between showing lyrics, or information. Perhaps a 3rd 'toggle' to show tags? e.g. show either lyrics, information, or tags?
Report
imruska
6 years ago
For albums with more than one artists, Cantata offers two possibilities.
1. If "Group multiple artist albums under 'Various Artists' is checked, then each such album is put under Various Artists.
2. If "Group multiple artist albums under 'Various Artists' is unchecked, then
2a. When there is an Album Artist, the album is put under the Album Artist
2b. When there is no Album Artist, the tracks are put under the different artists.
What I would like:
3a = 2a.
3b. When there is no Album Artist, I would like to put the Album under 'Various Artists'.
Or put differently, I want possibility 1, the Album with multiple artists put under 'Various Artists' only when no Album Artist is given.
Report
CraigD
6 years ago
If you have no album-artist set for an album with multiple-artists, then I suggest you set one.
Report
imruska
6 years ago
So, since the next version will sort on the basis of Album Artist, would it be possible to show the Artist of the tracks where the album has more than one Artist? I mean the way Cantata works now for albums under Various Artists?
Or at least show the Artist of those tracks where the Artist and the Album Artist is not the same?
Report
CraigD
6 years ago
Report
imruska
6 years ago
Report
CraigD
6 years ago
Report
imruska
6 years ago
It may be that the new arrangement is better for Pop music, but for Classical music artist - title arrangement is better (when the Artist is not the performer but the composer.)
Report
arktika
6 years ago
Report
arktika
6 years ago
[[email protected] build]$ make
[ 1%] Generating moc_qxtglobalshortcut.cxx
moc: Cannot open options file specified with @
Usage: moc [options] <header-file>
-o<file> write output to file rather than stdout
-I<dir> add dir to the include path for header files
-E preprocess only; do not generate meta object code
-D<macro>[=<def>] define macro, with optional definition
-U<macro> undefine macro
-i do not generate an #include statement
-p<path> path prefix for included file
-f[<file>] force #include, optional file name
-nn do not display notes
-nw do not display warnings
@<file> read additional options from file
-v display version of moc
3rdparty/qxt/CMakeFiles/qxt.dir/build.make:56: recipe for target '3rdparty/qxt/moc_qxtglobalshortcut.cxx' failed
make[2]: *** [3rdparty/qxt/moc_qxtglobalshortcut.cxx] Error 1
CMakeFiles/Makefile2:395: recipe for target '3rdparty/qxt/CMakeFiles/qxt.dir/all' failed
make[1]: *** [3rdparty/qxt/CMakeFiles/qxt.dir/all] Error 2
Makefile:136: recipe for target 'all' failed
make: *** [all] Error 2
Report
arktika
6 years ago
[[email protected] build]$ make
[ 1%] Generating moc_qxtglobalshortcut.cxx
moc: Cannot open options file specified with @
Usage: moc [options] <header-file>
-o<file> write output to file rather than stdout
-I<dir> add dir to the include path for header files
-E preprocess only; do not generate meta object code
-D<macro>[=<def>] define macro, with optional definition
-U<macro> undefine macro
-i do not generate an #include statement
-p<path> path prefix for included file
-f[<file>] force #include, optional file name
-nn do not display notes
-nw do not display warnings
@<file> read additional options from file
-v display version of moc
3rdparty/qxt/CMakeFiles/qxt.dir/build.make:56: recipe for target '3rdparty/qxt/moc_qxtglobalshortcut.cxx' failed
make[2]: *** [3rdparty/qxt/moc_qxtglobalshortcut.cxx] Error 1
CMakeFiles/Makefile2:395: recipe for target '3rdparty/qxt/CMakeFiles/qxt.dir/all' failed
make[1]: *** [3rdparty/qxt/CMakeFiles/qxt.dir/all] Error 2
Makefile:136: recipe for target 'all' failed
make: *** [all] Error 2
Report
arktika
6 years ago
[[email protected] build]$ make
[ 1%] Generating moc_qxtglobalshortcut.cxx
moc: Cannot open options file specified with @
Usage: moc [options] <header-file>
-o<file> write output to file rather than stdout
-I<dir> add dir to the include path for header files
-E preprocess only; do not generate meta object code
-D<macro>[=<def>] define macro, with optional definition
-U<macro> undefine macro
-i do not generate an #include statement
-p<path> path prefix for included file
-f[<file>] force #include, optional file name
-nn do not display notes
-nw do not display warnings
@<file> read additional options from file
-v display version of moc
3rdparty/qxt/CMakeFiles/qxt.dir/build.make:56: recipe for target '3rdparty/qxt/moc_qxtglobalshortcut.cxx' failed
make[2]: *** [3rdparty/qxt/moc_qxtglobalshortcut.cxx] Error 1
CMakeFiles/Makefile2:395: recipe for target '3rdparty/qxt/CMakeFiles/qxt.dir/all' failed
make[1]: *** [3rdparty/qxt/CMakeFiles/qxt.dir/all] Error 2
Makefile:136: recipe for target 'all' failed
make: *** [all] Error 2
Report
julon
6 years ago
I'm using a Raspberry Pi as a music server (mpd from the Raspbian distribution), and I'd like to add your dynamic lists to the mpd server.
Can this be easily done? Or is there some kind of dreadful step such as arm6 cross-compilation involved?
Report
CraigD
6 years ago
There are some example init scripts in the dynamic/init folder of the source tarball. the main Cantata README also has a section about this - "Dynamic Helper Script - Server Mode"
When setup, you need to configure Cantata with the port number that you have configured your cantata-dynamic to use.
Report
julon
6 years ago
While I'm at it, I enjoy very much your application, but using the windows port on a touch screen is a bit cumbersome, as I can't scroll touchscreen-like with the finger in the middle of the window but instead I have to aim for the small scroll bars. The buttons (play, add, etc..) are also a bit small for fingers. Is there any plan for a more touch-friendly version?
Report