IPB

Welcome Guest ( Log In | Register )

> foobar2000 General Forum Rules

This is NOT a tech support forum.
Tech support questions go to foobar2000 Tech Support forum instead.

See also: Hydrogenaudio Terms of Service.

2 Pages V   1 2 >  
Reply to this topicStart new topic
Linux Foobar200 Clone?, Linux could do with one.
MuMart
post Apr 18 2004, 20:13
Post #1





Group: Banned
Posts: 52
Joined: 16-September 02
Member No.: 3376



I've recently moved to linux and have been thinking about having a FB2K like audio app for that platform. Here's what I've been considering:

I first thought of adding a few Foobar features to an existing player like RhythmBox, but I don't think that's a good idea. Rhythmbox wants to be a simple iTunes type app without too much extensability.

Another possibility would be to port Foobar. Definitely possible, but there are a lot of problems with that approach. A lot of interesting foobar plugins are windows only, and keeping the ports in sync would be a nightmare, especially since the GUI would have to be rewritten. Another very minor point is the license, which might not be acceptable to all linux distributions (eg debian)

Yet another possibility would be to work on WINE until Foobar works flawlessly in it. It "kind of" works already. The problem is - if we keep foobar windows-native only windows developers can write plugins.

My current thinking is to do a foobar-like app from scratch in an interpreted language (probably Python), using gstreamer, XMMS and LADSPA plugins to do the hard DSP work. Using python's integrated scripting it could do some pretty advanced playlist management/status displays etc. There should be both Gnome and KDE guis available to prevent flamewars(!)

Anyway, these are just my thoughts so far. It would definitely be nice to have an audio-power-user app for linux that integrates as many linux audio technologies as possible (ALSA, LADSPA, gstreamer, ARTS, BruteFIR, LAME, CDParanioa ...)

Perhaps this is being done already. Any thoughts?

EDIT: Oops - that should be 2000 !

This post has been edited by MuMart: Apr 18 2004, 20:15
Go to the top of the page
+Quote Post
askoff
post Apr 18 2004, 22:03
Post #2





Group: Members
Posts: 445
Joined: 23-December 02
Member No.: 4214



I've been thinking exactly the same things that you are. I just finished my Gentoo installations and I'm looking also good media players for it. One way could be that foobar2000 should be optimize litle bit more for Wine, which is not the best solution over all, but usable.
Go to the top of the page
+Quote Post
ak
post Apr 18 2004, 22:32
Post #3


Musepack Developer


Group: Members
Posts: 359
Joined: 17-October 01
Member No.: 309



Well, maybe mpd would be worth considering. No idea though how much it allows to implement in client yet.
It could be nice for casual listnening/organizing, especially when they'll add rg, musepack support etc, as they plan.
Go to the top of the page
+Quote Post
MuMart
post Apr 18 2004, 23:31
Post #4





Group: Banned
Posts: 52
Joined: 16-September 02
Member No.: 3376



QUOTE
Well, maybe mpd would be worth considering. No idea though how much it allows to implement in client yet.
It could be nice for casual listnening/organizing, especially when they'll add rg, musepack support etc, as they plan.


Looks good. Not sure about support for DSP plugins though. I'll have to look into the way LADSPA plugins are implemented. If they have their own GUIs it's probably not suitable.
Go to the top of the page
+Quote Post
Agent86
post Apr 19 2004, 00:41
Post #5





Group: Members
Posts: 55
Joined: 2-October 01
Member No.: 162



Another user here started the LAMIP project to try to do a Foobar on Linux sort of thing.

Does anyone know what is going on with XMMS2?

- Agent 86
Go to the top of the page
+Quote Post
MuMart
post Apr 19 2004, 00:51
Post #6





Group: Banned
Posts: 52
Joined: 16-September 02
Member No.: 3376



I've been looking into gstreamer and LADSPA and by-crikey this stuff is amazing! What a framework! And it's got python bindings. Looks very promising. All the Foobar dsps are already implemented as LADSPA plugins.

Had a quick look at LAMIP. Seems to be coming along but there's a lot of re-inventing the wheel, and it has it's own plugin architecture.

I think writing a python playlist front-end to gstreamer integrating all current foobar features is the way to go right now.
Go to the top of the page
+Quote Post
kode54
post Apr 19 2004, 01:01
Post #7





Group: Admin
Posts: 4613
Joined: 15-December 02
Member No.: 4082



Not to mention that you'll be taking the UI and stripping away some of the best parts. You'll just have another Winamp2 clone with a FB2k UI, which will suck.

In my opinion, managed and/or interpreted languages suck for serious applications. If it doesn't compile to stand-alone machine code, it will be slower. I don't care if it is easier for you to program, or easier for others to learn and develop for.

Of course, that's just my opinion. Feel free to carry out your plans.
Go to the top of the page
+Quote Post
Sandman2012
post Apr 19 2004, 01:08
Post #8





Group: Members
Posts: 295
Joined: 27-March 04
Member No.: 13034



There was a similar app for Linux called Musik. I can't get their site to load now. I don't get a 404 or anything, just nothing. Somebody linked the site to me once last year and I haven't checked up on it since so I don't know if the project's been scrapped or what. Here's the link I have in case it comes back up: http://musik.berlios.de/
Go to the top of the page
+Quote Post
MuMart
post Apr 19 2004, 01:39
Post #9





Group: Banned
Posts: 52
Joined: 16-September 02
Member No.: 3376



QUOTE
Not to mention that you'll be taking the UI and stripping away some of the best parts. You'll just have another Winamp2 clone with a FB2k UI, which will suck.


Not true. I don't want to write another winamp clone. I want a foobar clone. I think this approach could produce that. Python would be providing the scripting support and playlist logic. The decoding and DSP would be done in 100% machine code through gstreamer. The plan is that all foobar2000 features will be present, and more.

QUOTE
In my opinion, managed and/or interpreted languages suck for serious applications. If it doesn't compile to stand-alone machine code, it will be slower. I don't care if it is easier for you to program, or easier for others to learn and develop for.

Of course, that's just my opinion. Feel free to carry out your plans.


You're entitled to your opinion, which is clearly wrong wink.gif
Go to the top of the page
+Quote Post
askoff
post Apr 19 2004, 14:32
Post #10





Group: Members
Posts: 445
Joined: 23-December 02
Member No.: 4214



MuMart: Do you think that all good features can be implemented like dithering and replaygain? What about foobar2000 licence? Does it allow borrowing/copying some algorithms?
Go to the top of the page
+Quote Post
Latexxx
post Apr 19 2004, 16:39
Post #11


A/V Moderator


Group: Members
Posts: 858
Joined: 12-May 03
From: Finland
Member No.: 6557



QUOTE (Sandman2012 @ Apr 19 2004, 02:08 AM)
There was a similar app for Linux called Musik. I can't get their site to load now. I don't get a 404 or anything, just nothing. Somebody linked the site to me once last year and I haven't checked up on it since so I don't know if the project's been scrapped or what. Here's the link I have in case it comes back up:  http://musik.berlios.de/

It doesn't seem to be dead. At least they did a release at 14th March nad the link works at least for me. Try this: http://developer.berlios.de/projects/musik/
Go to the top of the page
+Quote Post
kode54
post Apr 19 2004, 18:01
Post #12





Group: Admin
Posts: 4613
Joined: 15-December 02
Member No.: 4082



QUOTE (MuMart @ Apr 18 2004, 04:39 PM)
You're entitled to your opinion, which is clearly wrong wink.gif

Opinions are never wrong. wink.gif

Foobar2000 isn't just about the user interface. It's also about the underlying architecture.

The players you wish to borrow components from basically duplicate the style of Winamp2. Inputs do their own file reading, create their own decoding threads, and open the output themselves, and they can only decode one file at a time. I'm not sure about all of those players, but the XMMS components are probably coded to use GTK for their dialogs as well.

It can't really be called a Foobar2000 clone if you don't duplicate the core service system outlined by the SDK. With some work, you can duplicate the core, or even go so far as to wrap all of the platform-specific functionality that most components will need, so they won't too many source changes to be recompiled for either platform.

If you really knew anything about the underlying design, you'd know why it's so easy to wrap many of the Winamp2 clones' components into each other player, and why it's such a pain to wrap them into Foobar2000 itself.

Why yes, the Winamp2 input wrapper is quite buggy. What a surprise, the AMIP wrapper and Winamp2 general component combo is not without its share of annoying bugs.
Go to the top of the page
+Quote Post
MuMart
post Apr 19 2004, 18:42
Post #13





Group: Banned
Posts: 52
Joined: 16-September 02
Member No.: 3376



QUOTE
The players you wish to borrow components from basically duplicate the style of Winamp2. Inputs do their own file reading, create their own decoding threads, and open the output themselves, and they can only decode one file at a time. I'm not sure about all of those players, but the XMMS components are probably coded to use GTK for their dialogs as well.


That's actually not true. Gstreamer is not an application, more of an architecture for processing 32 bit audio data in realtime. There's also a plugin system called LADSPA that is similar to DirectX that gstreamer can use. These systems are intended to be professional quality. A great deal of DSP algorithms are already available, and adding new ones would not be difficult.

QUOTE
It can't really be called a Foobar2000 clone if you don't duplicate the core service system outlined by the SDK. With some work, you can duplicate the core, or even go so far as to wrap all of the platform-specific functionality that most components will need, so they won't too many source changes to be recompiled for either platform.


Well, my idea is not to produce a port anymore, more of an application "in the spirit of Foobar2000". Which probably means I shouldn't be discussing it in this thread anymore smile.gif

QUOTE
If you really knew anything about the underlying design, you'd know why it's so easy to wrap many of the Winamp2 clones' components into each other player, and why it's such a pain to wrap them into Foobar2000 itself.


I admit I know nothing of foobar internals, although audio plugin architectures are all alike at a fundamental level. I know foobar requires things such as sample-accurate seeking from it's input plugins which would cause problems integrating simple architectures.

I need to give it more research, but I think gstreamer will provide all the necessary components to provide a very powerful audio management app in linux. As an added bonus all extensions to gstreamer are available for other apps to use.

QUOTE
Why yes, the Winamp2 input wrapper is quite buggy. What a surprise, the AMIP wrapper and Winamp2 general component combo is not without its share of annoying bugs.


Running winamp plugins on linux is a non-starter. Also integrating XMMS plugins is probably not such a good idea also. It would probably be better to adapt them into the gstreamer arch instead.

Anyway, the success of foobar2000 is not about the software architecture, it's the fact that it does what lots of people want in one place.

A project like what I am considering would be a success only if it provides the features people want out of a player. I don't think it has to be a straight-copy of foobar as long as it has all the necessary features.
Go to the top of the page
+Quote Post
MuMart
post Apr 19 2004, 18:47
Post #14





Group: Banned
Posts: 52
Joined: 16-September 02
Member No.: 3376



QUOTE
MuMart: Do you think that all good features can be implemented like dithering and replaygain? What about foobar2000 licence? Does it allow borrowing/copying some algorithms?


Replaygain is not a problem at all. The dithering algorithms may need to be written/adapted into (hopefilly) ladspa plugins. If the foobar license forbids adapting their algorithms they would have to be sourced from somewhere else. There are lots of dithering algorithm sources on the web.

Somebody may already have written them. There are lots and lots of LADSPA plugins on the web.
Go to the top of the page
+Quote Post
Thikasabrik
post Apr 19 2004, 18:59
Post #15





Group: Members
Posts: 73
Joined: 21-January 03
Member No.: 4664



It would be great to see this project happen! Linux already has iTunes-alike music players (rhythmbox), but it just doesn't have the swiss army knife that is foobar. Btw, muine (http://muine.gooeylinux.org/) is an interesting player, although it is programmed in C# and requires mono, in that it uses GStreamer and supports replaygain. Unfortunately, it's simple interface and lack of options mean it is taking a completely different path to foobar. But, that said, a GStreamer musepack plugin would bring it a lot closer... Anyway, good luck MuMart, I hope you succeed. I'll be happy to test this player, as I'm sure many others will.
Go to the top of the page
+Quote Post
landor
post Apr 19 2004, 20:47
Post #16





Group: Members
Posts: 1
Joined: 19-April 04
Member No.: 13599



QUOTE (MuMart @ Apr 18 2004, 11:13 AM)
I've recently moved to linux and have been thinking about having a FB2K like audio app for that platform.

I've been looking around and am unable to find a player/plugin for linux that enables reading audio files out of zip/rar/etc like Foobar's archive-reader.
Any suggestions?
Go to the top of the page
+Quote Post
foosion
post Apr 19 2004, 22:52
Post #17





Group: FB2K Moderator (Donating)
Posts: 4427
Joined: 24-February 03
Member No.: 5153



QUOTE (MuMart @ Apr 19 2004, 06:42 PM)
Anyway, the success of foobar2000 is not about the software architecture, it's the fact that it does what lots of people want in one place.

How do think it can do so many useful things, if not because of its software architecture (which does not only cover input/DSP/output)?


--------------------
http://foosion.foobar2000.org/ - my components for foobar2000
Go to the top of the page
+Quote Post
MuMart
post Apr 20 2004, 00:20
Post #18





Group: Banned
Posts: 52
Joined: 16-September 02
Member No.: 3376



QUOTE
How do think it can do so many useful things, if not because of its software architecture (which does not only cover input/DSP/output)?


The foobar architecture is indeed very flexible and successful. The point I was making is that it is not necessary to keep the *exact* foobar2000 architecture and port it over to make a software with the same functionality. The important thing is for the app to have all the features the users demand. None of the current linux players currently have the features of foobar - and I hope to start a project to create one.
Go to the top of the page
+Quote Post
teetee
post Apr 20 2004, 10:51
Post #19





Group: Members
Posts: 289
Joined: 16-February 03
Member No.: 5034



QUOTE (MuMart @ Apr 20 2004, 12:20 AM)
None of the current linux players currently have the features of foobar - and I hope to start a project to create one.

Having looked at wxMusik (http://developer.berlios.de/projects/musik/ , http://musik.berlios.de/) as suggested earlier in this thread, I would suggest you look at joining that group and adding the functionality you feel is missing from that. It is open source AND cross-platform using a free C++ cross-platform library (wxWidgets) for display.

wxMusik is obviously missing plenty of features I (and many others would like) but it has a good basis (SQLite backed database so simple and complex queries possible for creating playlists) and being properly cross-platform means that it should appeal strongly to people (like me) who need to use both Windows and Unix/Linux at various times and who would like a consistent, powerful music player like fb2k on both platforms..

It is at least worth checking out wxMusik to see if you could join the developers and add those features rather than starting completely from scratch..

This post has been edited by teetee: Apr 20 2004, 10:53


--------------------
Check out the foobar2000 Wiki: http://doc.hydrogenaudio.org/wikis/foobar2000/FrontPage
If you can help write it, please sign up and start writing!
Go to the top of the page
+Quote Post
teetee
post Apr 20 2004, 11:02
Post #20





Group: Members
Posts: 289
Joined: 16-February 03
Member No.: 5034



QUOTE (MuMart @ Apr 20 2004, 12:20 AM)
The foobar architecture is indeed very flexible and successful. The point I was making is that it is not necessary to keep the *exact* foobar2000 architecture and port it over to make a software with the same functionality. The important thing is for the app to have all the features the users demand.

I think that you will find that it is equally important (if not more important) for the app to have all the features that plugin developers might "demand". IMHO fb2k is successful for two (main) reasons:
1. The core player has more features, implemented better than any other windows player (replaygain, dsp chain, format support, masstagger, multiple playlist etc.)
2. The architecture has allowed the API to be so strong that a large number of individuals have created powerful plugins to extend fb2k even further (more file formats, on screen display, extended search and playlists, lyrics, ipod, etc.)

So.. it is clear that to make a player desirable, you need to make it possible to offload as much of the functionality development to plugin developers as you can. This allows you to concentrate on core features. You would do well to use a similar architecture to foobar2000.

Of course ideally Peter would allow someone to port all the non-cross-platform stuff in the core into wxWindows.. lalala.gif

This post has been edited by teetee: Apr 20 2004, 11:03


--------------------
Check out the foobar2000 Wiki: http://doc.hydrogenaudio.org/wikis/foobar2000/FrontPage
If you can help write it, please sign up and start writing!
Go to the top of the page
+Quote Post
askoff
post Apr 20 2004, 15:13
Post #21





Group: Members
Posts: 445
Joined: 23-December 02
Member No.: 4214



I think that wxMusic misses so many features, that perhaps it's better to look that LADCA project. At least I didn't saw free playlist custoize, other than MP3 an ogg supprot, APEv2 tags, replaygain, dithering, gapless MP3 playback support and so on. Or the features documentation is not well done.
Go to the top of the page
+Quote Post
Agent86
post Apr 21 2004, 08:33
Post #22





Group: Members
Posts: 55
Joined: 2-October 01
Member No.: 162



If you're looking for an existing "architecture" to tap into, GStreamer is probably the way to go. Their ongoing integration with Gnome will open the app up to a lot more users as well as draw attention from Gnome developers.

- Agent 86
Go to the top of the page
+Quote Post
Giakaama
post Apr 25 2004, 02:05
Post #23





Group: Members
Posts: 2
Joined: 25-April 04
Member No.: 13693



Well ... Hi ...
I'm using foobar2000 since the beginning biggrin.gif and when i switched to linux i really really wanted a foobar2000 port , all the linux players don't do all the stuff that foobar2000 does ... but porting foobar2000 from windows to linux is not easy so when i read about a foobar2000 clone for linux i thought that ... "well i think is time for us linux-guys to be happy"

So ... if you could do this foobar2000 clone ... like foobar2000 smile.gif then i'll wait for the release ...

Currently i use foobar2000+foo_ui_columns.dll+wine in linux ... it works pretty good but is not ... native ... smile.gif ...
Go to the top of the page
+Quote Post
filon
post Apr 25 2004, 08:43
Post #24





Group: Members
Posts: 222
Joined: 10-February 04
From: Warsaw
Member No.: 11932



Foobar2000 can be made as native Linux application by compiling with winelib. This would need adapting code to make it Wine compatibile, but probably shouldn't be much of work.
Go to the top of the page
+Quote Post
Giakaama
post Apr 27 2004, 19:51
Post #25





Group: Members
Posts: 2
Joined: 25-April 04
Member No.: 13693



Hi guys !!!

Well ... MuMart ... did you start developing the player ??? we all wait to test it !!! biggrin.gif Hope you start working on it soon !!!

Linux users NEED a good music player biggrin.gif !!! And a foobar2000 clone will be the best !!! biggrin.gif
Go to the top of the page
+Quote Post

2 Pages V   1 2 >
Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 3rd September 2014 - 02:20