BeTon - an audio player

Since everyone is presenting and releasing their projects recently, I have decided to do the same.

BeTon - makes noise!

  • Plays music
  • Support playlists
  • Reads and writes tags, with bfs attribute synchronization (currently only one way).
  • MusicBrainz metadata query

The project is a little bit overdue. The first ideas date back to 2004–2005. Back then, I had fallen head over heels for iTunes and I wanted a similar media player for BeOS/Zeta. Since everything at that time had “Be” in its name and a audio player produces sound/tones (“Ton” in German), the name BeTon (the German word for concrete) made perfect sense to me. :slight_smile:

Since I’m not a great artist, I used the icons from zuMi for the buttons, and the app icon is currently just a placeholder. Maybe someone who is better at this than I am, will take pity on me and help me out!

The software probably still has quite a few bugs, so it’s too early for a haikuports release. Please try it out and let me know what doesn’t work or could be improved.

37 Likes

The UI is so beautiful!

This is awesome! :+1:

Maybe @zuMi can create other, better suitable icons for your app? :slightly_smiling_face:

Very cool. I always thought an iTunes-like music app was missing in Haiku.

Compiled it on my nightly VM and tested it with a few albums I copied over. So far no problems, seems to work pretty good.

It doesn’t compile on beta5, due to changes in BUrl. It really is time for beta6. The newly released apps not running on beta5 are slowly piling up. :wink:

EDIT: There’s a small error in the installation instructions for the requirements. The devel package for the musicbrainz library is called musicbrainz_devel instead of libmusicbrainz_devel. I’ve already created a PR to change it.

2 Likes

Thanks, i merged the PR.

I know, and as soon as I have more time, I will also update my ColumnView to the latest implementation, so everything should be aligned with beta6. But at first i have to fix the warnings in the 32bit build ^^

1 Like

Not sure if it’s correct, but the next managed to build this on R1B5:

diff --git a/MusicBrainzClient.cpp b/MusicBrainzClient.cpp
index bc58d80..eb87f07 100644
--- a/MusicBrainzClient.cpp
+++ b/MusicBrainzClient.cpp
@@ -467,7 +467,11 @@ int MusicBrainzClient::_FetchUrl(const BString &urlStr,
     fLastCall = system_time();
 
     BMallocIO sink;
-    BUrl url(urlStr.String(), true);
+#if B_HAIKU_VERSION <= B_HAIKU_VERSION_1_BETA_5
+    BUrl url(urlStr.String());
+#else
+    BUrl burl(url, true);
+#endif
     std::unique_ptr<BUrlRequest> req(
         BUrlProtocolRoster::MakeRequest(url, &sink));
     if (!req) {

Runs fine! Great work :sparkling_heart:

3 Likes

Thanks, Begasus, I thought there would be more differences by now. In that case, we’ll change it. That makes things easier for now.

And maybe I should lighten the search field a bit; it’s a little hard to see on pure black. I usually use the default colors and only play around with the color of the seekbar ^^".

1 Like

Yeah, before I had some music in there I switched to default colors too to have a clear view.

Some option like highlighting the current playing track would be nice? :wink:

EDIT: maybe would be nice when ready to add this to haikuports?

3 Likes

You wrote the recipe already? :rofl:

I’ve fixed the 32bit warnings, merged your PR (i had to change it a bit), changed the color of the searchbar in Darkmode and made the playing song bold. :hot_face:

No one else seems to found anything problematic, then i guess, V1.0.0 is now released.

I just made it an release on Github.

1 Like

Great! Let me check again, after your 32bit fixes I did a rebuild~~, the UI didn’t show the icons though~~?

The icons were my bad, fixed by now :slight_smile:

Doesn’t switch (display) the next song playing in the list

Maybe I should create an issue upstream for this instead of responding here?

EDIT: all good now, thanks for the fixes @Master199 !

2 Likes

The actual used cmd’s are “dot” and “doxygen”, so this maybe would be better (used in my local recipe)?

pkgman install cmd:dot cmd:doxygen

Arghh, should read closer, the ones mentioned here are to build the documentation. My bad :slight_smile:

Don’t worry, all good. For a moment I thought “WTF is he talking about” :slight_smile:
Happens to the best of us.

2 Likes

Playing music from BeTon as I type this message!! Awesome player! Well done.

2 Likes

Very nice, thanks for your work!

May I be so keen as to ask about the status of it’s audio stream support?

The question is rather vague. Do you want to stream (receive) something like Internet radio or from your local Network or do you want to stream (send) music to a device in your network, or are you talking about something like Spotify/Tidal/Qobuz.

But no matter which way around, the answer is always the same: there is currently no streaming in BeTon ^^

I really like BeTon,finally tried it out today :+1:
Everything works as expected,fast,lightweight and native.
Great to see more native apps.

2 Likes

I intentionally kept the question a bit more open. :wink: Given my background my focus would be a little bit stronger on listening to radio stations, but all of that surely is interesting and/or valid.

1 Like

Is there a haikuports recipe for this in the pipeline?

(I’m trying to limit myself to only installing from HaikuDepot on this laptop. :slight_smile:

It’s already available in HaikuDepot.
I installed it from there.