Description:

Yarock is Qt4/Qt5 Modern Music Player designed to provide an easy and pretty music
collection browser based on cover art.

Yarock is written in C++ using Qt and Phonon multimedia framework, only for
linux platform.

Feel free to download, test it and tell me what you think about it.

Features include:
* Music collection database (SQLite 3)
* Browse your local music collection based on cover art
* Easy search and filter music collection
* Manage favorites item (album, artist)
* Play music directly from collection or playqueue
* Simple Playqueue
* Smart playlist generator
* Support mp3,Ogg Vorbis,flac music files (depending on phonon backend)
* Support load/save playlist file (m3u, pls, xspf)
* Play radio stream (tunin, radionomy, dirble, ...)
* Mp3Gain tag support for volume normalization
* Cover art download
* Last Fm scrobbler
* Command line interface, Mpris interface
* Clean and simple user interface
* No GNOME or KDE dependancies

Dependancies:
* qt4 (or qt5)
* qjson-devel (if qt4)
* taglib
* htmlcxx
* phonon [vlc, libmpv]

Build from Source:
$ mkdir build && cd build
$ cmake ..
$ make
$ make install (as root)

* build with alternate audio backend
$ cmake .. -DENABLE_VLC=ON -DENABLE_MPV=ON -DENABLE_PHONON=OFF


Bug report:
I try my best to answer and solve problems. Feel free to post bugs or wishes to https://bugs.launchpad.net/yarock
Last changelog:

1.1.6 release changlog 10 months ago

New : Add Opus audio file support [#1539942]
New : Enable maximum volume level to 150 % (VLC/MPV engine)
New : Add drag and drop from playqueue to playlist to add tracks to playlist
New : Add option to enable/disable shorcuts [#1543410]
BugFix : Fix closing app with active systray icon [#1627840]
BugFix : Allow media keys working when current song info panel is displayed [#1624532]
BugFix : Fix wrong player stop notification [#1539912]
BugFix : Translations fix

3

5 years ago

Where is translation service? Create please on https://launchpad.net/yarock or transifex please!

Report

3

5 years ago

https://translations.launchpad.net/yarock

Report

SebAmar

5 years ago

Hi,
Yes you're right, it will be usefull. However, I have to change part of code because translation system into launchpad is .po file and Yarock translation use .ts/.qm file.

So i will try to change it to support launchpad translation service.
Regards

Report

3

5 years ago

May be transifex.net? he support .TS files ;)

Report

prizident

5 years ago

pretty nice player, but some bugs present:
- Doesn't support "various artists"
- Multiple collections is a nice feature, but it's not obvious how to use it.
- Some tracks cannot be played, for unknown reason ( apparently cannot treat ! sign correctly in filenames)
Though I will keep an eye on yarock

Report

SebAmar

5 years ago

Hi,
thanks for comment.
1) "various artists" is supported (but it's a simple way. There are two tags in files
- "artist" which can be the real artist
- "artist of album" which shall be "various artist"
It's not perfect but i want to keep its simple ;)

2) multiple collections (still buggy and maybe hard to use). You have to define many collections. Then you can switch collection throught the main menu.

3) For the track that cannot be played. It's hard to solve.
- check file is reachable (mounting device)
- check encoding of pathname

Can you send me the log (output if you start yarack from console) when this problem occurs.

Thanks. Will try to do my best.

Regards,
Sebastien

Report

anaximandar

5 years ago

Brand new rpm's for Mandriva 2011.0:

http://files.myopera.com/Anaximandar/Mandriva_2011_0/yarock-0.0.52-1-mdva2011.0.i586.rpm

Report

anaximandar

5 years ago

http://files.myopera.com/Anaximandar/Mandriva_2011_0/yarock-0.0.54-1-mdva2011.0.i586.rpm

Report

extremist

5 years ago

First I can't express how happy I am to find out about your app, all this time I have used lots of players in hopes to find the user interface yours have, my gratitude to you.

To the business, I think you should reorder the tab-order in "Change Album Info"-widget. It should be, IMHO:

1- Album Name
2- Artist Name
3- Year
4- OK
5- Cancel

And it would be perfect, if you could add an option to hide the status bar. As a netbook user, that option to save space would make more than happy.

Report

SebAmar

5 years ago

Hi,ok it will be included for the next release. Thanks for yours comment. Regards.

Report

Myoh

5 years ago

Getting better and better, but there are some features missing in my opinion.

First would be support for Replaygain. I tag all my music with replaygain tags to ensure consistent volume over all tracks, Amarok for example supports this nicely. I'm not sure how they implement it, but I found a link which might be of help.

http://developer.qt.nokia.com/forums/viewthread/7481


Secondly, support for media keys. I tried to map shortcuts to the media keys (with a modifier key [meta], this shouldn't be required for media keys), but they don't seem to work.


A third one would be commandline parameters like Amarok does, to stop, play pause, etc. (amarok --pause, amarok --stop, etc.). I use the IconTasks plasma widget, which supports Unity jumplists, and supporting parameters would be perfect to give a better integration. (But this would require only one instance of YaRock can be running at a time, it's possible to open more than 1 currently)

Anyway, looking forward to next releases

Report

SebAmar

5 years ago

Hi,

thanks for comments. I will try to bug fix the media keys bindings.

For command line, maybe it's not so hard to do. I will take a look to how Amarok does.

Thanks for information for Replaygain. Maybe it's a more complex feature to do....so wait and see :)

ciao
Seb

Report

Myoh

5 years ago

Thanks for considering my input. I've discovered a small UI bug. When playing a track, the elapsed time and remaining time are not correct.
Elapsed time seems to based of a constant number, at the start of a track, it displays 21:57. The remaining time doesn't update while playing, and seems to be completely random.

I added a screen-shot to illustrate what I mean.
The song is at about 1/5 of playing time, but with a length of about 4 mins, it should inticate about 0:45. The other time indication doesn't update at all and changes every time, even when the same song is selected.

http://ubuntuone.com/05HMyJLC7dOnpYs8GLz8sP

Sorry if I'm being picky, I really like YaRock and I just want to help making it as best as possible. I can't code well enough to help out source-wise, so this is all I can do for now. (Really need to get started learning QT...)

Report

SebAmar

5 years ago

Hi,

you're not picky, your feedback is very usefull to make it better. So thanks again. Can you send me by mail your music file you're playing so I can see the bug of the time tracking. However, the time at the right shoulb be the total time of the track and not the remaining time (maybe we could have an option to change that). Only the first value should be updated to the elapsed time.

I also have been working on command line, it's ok. But i have to work on mpris interface because if you want remote control with plasma widget (icon task) it's a mpris interface.

have a good day, regards.




Report

Myoh

5 years ago

Hey there

It happens with any file actually, not just a specific song. At first I though it might be cause of the file format (all my music is in .ogg, with a few exceptions) so I tried an mp3 file, with the same result. It happens with any song.

Which brought me to another issue ( sorry xD ). YaRock doesn't seem to add .m4a files to it's database. There are some music files I got from a friend which were ripped with iTunes. When I check the console output for errors when force rebuilding the collection I notice these errors

TagLib: MPEG::Header::parse() -- Invalid sample rate.
TagLib: MPEG::Properties::read() -- Page headers were invalid.

I see these among the other scan results (- DataBaseBuilder -> insert track : "/path/to/song") so I guess they're errors from the .m4a files. When dragging one of these files into the playlist, I get

PlaylistPopulator --> unsupported media ! "/path/to/file.m4a"

I use the GStreamer Phonon backend. Tried Xine and VLC aswell, but it didn't help.


By the way, I'd like to help translate YaRock into Dutch (since it's my native language). How should I do this? I found some language files in the source, but how should I prepare a Dutch file?

Report

chrisSC

6 years ago

Hi!, great job with the music player, ;)
I have already installed the 0.51 versión but album view doesn't show anything, here's the log:

== main == locale : "es"
--- PLaylistView creation
---- HistoModel --> creation
- DatabaseManager name "collection"
- DatabaseManager sourcePathList ("/home/../Música")
- DatabaseManager autorebuild true
- DatabaseManager checkcover true
---- CollectionScene::updateAlbumViewParam isAlbumGridView= true
---- CollectionScene -> PopulateScene ----
---- StreamModel --> creation
---- IceCastManager --> creation
---- ShoutCastManager --> creation
--- ScrobblerManager :creation
Mainwindow -> init collection database
Mainwindow -> init collection database _dbManager->DB_NAME "collection"
PlaylistPopulator readPlaylistFile local "/home/../.config/YaRock/last.xspf"
Mainwindow -> init collection database _dbManager->DB_FILE() "/home/chris/.config/YaRock/2037de437c80264ccbce8a8b61d0bf9f593d2322.db"
---- MEDIA::readPlaylistFile "/home/chris/.config/YaRock/last.xspf"
---- readXspfPlaylist -> Find the Track location
"../../Música/Alan Parsons Project/The Alan Parsons Project - Can't Take It With You.mp3"
---- readXspfPlaylist -> Relative path : make it absolute

---- readXspfPlaylist -> list.append(mi) 0x7fe0a401e050
MainWindow --> rebuildDatabase DB = "collection"
---- GraphicViewWidget::switchView ---- _viewMode = 6
---- CollectionScene -> PopulateScene ----
QInotifyFileSystemWatcherEngine::addPaths: inotify_add_watch failed: No existe el fichero o el directorio
QFileSystemWatcher: failed to add paths: /home/chris/.config/ibus/bus
---- InfoDownloader::ultimateLyricsParsed Provider Name = "lyrics.wikia.com"
---- InfoDownloader::ultimateLyricsParsed Provider Name = "lyricstime.com"
---- InfoDownloader::ultimateLyricsParsed Provider Name = "lyricsreg.com"
---- InfoDownloader::ultimateLyricsParsed Provider Name = "lyricsmania.com"
---- InfoDownloader::ultimateLyricsParsed Provider Name = "metrolyrics.com"
---- InfoDownloader::ultimateLyricsParsed Provider Name = "azlyrics.com"
---- InfoDownloader::ultimateLyricsParsed Provider Name = "songlyrics.com"
---- InfoDownloader::ultimateLyricsParsed Provider Name = "elyrics.net"
---- InfoDownloader::ultimateLyricsParsed Provider Name = "lyricsdownload.com"
---- InfoDownloader::ultimateLyricsParsed Provider Name = "lyrics.com"
---- InfoDownloader::ultimateLyricsParsed Provider Name = "lyricsbay.com"
---- InfoDownloader::ultimateLyricsParsed Provider Name = "directlyrics.com"
---- InfoDownloader::ultimateLyricsParsed Provider Name = "loudson.gs"
---- InfoDownloader::ultimateLyricsParsed Provider Name = "teksty.org"
---- InfoDownloader::ultimateLyricsParsed Provider Name = "tekstowo.pl (Polish translations)"
---- InfoDownloader::ultimateLyricsParsed Provider Name = "vagalume.uol.com.br"
---- InfoDownloader::ultimateLyricsParsed Provider Name = "vagalume.uol.com.br (Portuguese translations)"
---- GraphicViewWidget::switchView ---- _viewMode = 6
---- CollectionScene -> PopulateScene ----
- DataBaseBuilder -> starting Database update
---- GraphicViewWidget::switchView ---- _viewMode = 6
---- CollectionScene -> PopulateScene ----
--- CollectionPopulator--> Starting model population
--- PlsFilePopulator --> Starting model population
--- PlsFilePopulator --> End model population
---- GraphicViewWidget::switchView ---- _viewMode = 6
---- CollectionScene -> PopulateScene ----
--- CollectionPopulator -->Ending model population:
---- GraphicViewWidget::switchView ---- _viewMode = 6
---- CollectionScene -> PopulateScene ----
-- CentralWidget -> updateMenu
---- GraphicViewWidget::switchView ---- _viewMode = 6
---- CollectionScene -> PopulateScene ----
-- CentralWidget -> updateMenu
---- GraphicViewWidget::switchView ---- _viewMode = 5
---- CollectionScene -> PopulateScene ----
-- CentralWidget -> updateMenu
---- GraphicViewWidget::switchView ---- _viewMode = 4
---- CollectionScene -> PopulateScene ----

Report

chrisSC

6 years ago

Sorry, i forgot to mention:

Music files are mounted on home directory on a ext4 partition
Distro: Kubuntu 11.04
KDE SC 4.7

Greetz

Report

anaximandar

6 years ago

The new Mandriva .rpm package can be downloaded from here:

http://files.myopera.com/Anaximandar/Mandriva_2010_1/yarock-0.0.49-1mdv2010.2.i586.rpm

Report

anaximandar

6 years ago

brand-new package for Mandriva Linux 2010.2

http://files.myopera.com/Anaximandar/Mandriva_2010_1/yarock-0.0.51-1mdva2010.2.i586.rpm

Report

anaximandar

6 years ago

Okay here's the link for openSuSE 11.4

http://files.myopera.com/Anaximandar/openSuSE/yarock-0.0.51-1.i586.rpm

Note:
for codecs use the packman repository instead of openSUSE

Report

kpeggs

6 years ago

HI I love this app and your use of qt.
I hate to hit you with another error but the app has recently started to give me an Internal data flow error. I am on Arch linux. Any help would be appreciated. I would love to go back to using this as my default music player. Thanks

Report

SebAmar

6 years ago

Hi,

I will help you as best I can but I need more information to help you.

1) What do you mean by "give me an Internal data flow error". Is it a crash ? or only you can play but yarock doesn't crash ?

2) For crash, you can explain what your are doing before crash

3) For playing problem with no crash, check that the disk/partition where is located music collection is mounted. You can test another backend too (vlc, mplayer, gstreamer...)

4) In all cases, launch Yarock in a console and send me by mail the log you can see.

Thanks for reporting, I will try to reproduce this bug and fix it for the next release.

Regards,



Report

kpeggs

6 years ago

It's not a crash. When I run it through the console it writes [main window:internal data flow error] in the console window when I try to play a song. I'm pretty sure it has something to do with gstreamer. VLC and mplayer work fine. I'll send you the console output.

Report

SebAmar

6 years ago

Yes i think you're right. In addition to Gstreamer phono backend you should check/install GStreamer plug-in packages. It's sound like a Gstreamer Codec error.

Report

kpeggs

6 years ago

O.k. I didn't have gstreamer plugins good. It now works again. Thanks for your help. Great program. I'm enjoying it very much

Report

1.1.6 release changlog 10 months ago

New : Add Opus audio file support [#1539942]
New : Enable maximum volume level to 150 % (VLC/MPV engine)
New : Add drag and drop from playqueue to playlist to add tracks to playlist
New : Add option to enable/disable shorcuts [#1543410]
BugFix : Fix closing app with active systray icon [#1627840]
BugFix : Allow media keys working when current song info panel is displayed [#1624532]
BugFix : Fix wrong player stop notification [#1539912]
BugFix : Translations fix

1.1.5 release changelog 6 years ago


- New : Default audio engine is VLC (phonon/MPV still available)
- New : Default Qt library is Qt5 (Qt4 still available)
- New : new advanced now playing widget
- New : new favorites web radio management
- New : new redesign webradio view layout
- Change : many GUI changes and improvments
- Option to reach collections from the left side pane [#1489281]
- BugFix : missing icons and wrong context menu under gnome desktop
- BugFix : fix album cover during complete database reconstruction [#1493948]
- BugFix : segfaults on Fedora 23 when rating a track [#1529087]
- BugFix : fix closing equalizer windows [#1492119]
- BugFix : fix crash at startup when first playing track [#1527876]
- BugFix : fix minor seek slider popup display issue
- BugFix : fix global shortcut management with Qt5
- BugFix : building issue [#1491736]
- BugFix : building support taglib-1.10 (and newer) [#1522829]
- BugFix : building support LIB_SUFFIX [#1522832]

product-maker Psifidotos Oct 22 2016

product-maker alicilin Oct 11 2016

product-maker gfdsa3 Jan 31 2016

product-maker poiluzt Jan 31 2016

product-maker qtnerd Jan 24 2016

product-maker rewqtz Jan 23 2016

product-maker dubious Oct 27 2015

product-maker HATRED Sep 28 2015

product-maker nicola012127 Aug 15 2015

product-maker nicola012126 Aug 15 2015

product-maker nicola012125 Aug 15 2015

product-maker nicola012122 Aug 15 2015

product-maker dfghjk Apr 17 2015

product-maker yxcvbnm Apr 16 2015

product-maker poiuztrew Apr 13 2015

product-maker fracaburda Apr 10 2015

product-maker yaqwsx Apr 08 2015

product-maker ujnhz Apr 08 2015

product-maker mnbvc Apr 08 2015

product-maker bascha Apr 08 2015

product-maker xfcegure Apr 07 2015

product-maker nicola01123 Mar 30 2015

product-maker arktika Nov 23 2014

product-maker narya Oct 27 2014

product-maker plcl Sep 07 2014

product-maker ZaWertun Apr 15 2014

product-maker tobaj Apr 12 2014

product-maker janet Mar 20 2014

product-maker droper04124 Jan 14 2014

product-maker e1nste1n Nov 09 2013

product-maker hello98 Nov 05 2013

product-maker mea5 Nov 05 2013

product-maker VilleVallo Oct 28 2013

product-maker lieter Oct 28 2013

product-maker mannfree Oct 28 2013

product-maker qwertzui Oct 28 2013

product-maker freelancer96 Oct 28 2013

product-maker popcon Oct 25 2013

product-maker frodoom Oct 25 2013

product-maker nobrain Oct 25 2013

product-maker dergnome Oct 25 2013

product-maker Mira Oct 24 2013

product-maker q12we3 Oct 23 2013

product-maker thwald Oct 23 2013

product-maker sixsixfive Oct 21 2013

product-maker Eldarion Apr 20 2013

product-maker brdn25 Apr 14 2013

product-maker RAIDENSUB Mar 12 2013

product-maker entw Feb 09 2013

product-maker dmnmsc Nov 26 2012

product-maker reiniger Nov 24 2012

product-maker reves121 Nov 22 2012

product-maker andreaskai May 19 2012

product-maker fri Mar 25 2012

product-maker nick86i Mar 07 2012

product-maker anespor Jan 04 2012

product-maker ArchieDA Jan 02 2012

product-maker 3 Jan 02 2012

product-maker alexandre Nov 05 2011

product-maker melomaniac Nov 01 2011

product-maker chrisSC Aug 13 2011

product-maker pejakm Jun 17 2011

product-maker paran0idx Jun 03 2011

product-maker hotice May 03 2011

product-maker Andron Apr 30 2011

product-maker alltiptop Apr 30 2011

product-maker kalac Dec 24 2010

product-maker Kosava Nov 16 2010

product-maker TheRob Nov 14 2010

product-maker KDesk Nov 04 2010

product-maker WillS Nov 04 2010

product-maker jetpack Oct 10 2010

product-maker marciopanto Oct 09 2010

product-maker srog Sep 22 2010

product-maker 6 12

File (click to download) Version Description Filetype Packagetype License Downloads Date Filesize OCS-Install DL
Details
version
1.1.6
updated Oct 01 2016
added Aug 27 2010
downloads today
0
page views today 13