You are not logged in.
lxmp - a LinuX Mod Player
A lightweight mod player for Linux based on BASS from un4seen.
AUR package thanks to chris_l.
Dependencies: gtkmm3 and libbass (from AUR).
Supported formats: XM, IT, S3M, MOD, MTM, UMX, MO3.
Info: SourceForge page
lxmc - a LinuX Mod Converter (decoder to stdout)
This project has spawned from lxmp. It is a command line mod decoder.
Aur package
Dependencies: libbass
Supported formats: XM, IT, S3M, MOD, MTM, UMX, MO3.
Output format: RIFF Wave
Usage example for converting a .mod file to a .mp3 file:
lxmc song.mod - | lame - song.mp3
Last edited by SoleSoul (2013-01-15 19:08:05)
Offline
So, it could play files like the mod files from here: http://ym-digital.i-demo.pl/music.html ?
I just discovered that site and was wondering what player could do the job.
"open source is about choice"
No.
Open source is about opening the source code complying with this conditions, period. The ability to choose among several packages is just a nice side effect.
Offline
Yes, these files are exactly what this player is for.
The largest archive of such music that I know of is The Mod Archive.
Last edited by SoleSoul (2013-01-03 16:51:04)
Offline
Ok, I compiled and it works correctly
It would be nice some features, like the ability to select the file to be played from the command line.
If I type ./lxmp a_mod_file.mod I get:
./lxmp a_mod_file.mod
Initialized bass
(lxmp:26609): GLib-GIO-CRITICAL **: This application can not open files.
I more into specifying the file from the command line than on dragging files ^_^
Actually, if the gui were optional and were possibly to have the player on command-line only (like mplayer or mpg123 does), it would be great!
The ability to dump the output in wav format to the stdout would be useful too.
Of course, you are free to ignore this requests...
Oh, another thing is a aur package! If the answer is something like "I don't know how to make aur packages", then I can do it for you.
However, IMHO, is better if upstream maintain its own package.
But, I'm happy with this player, it plays this mod files pretty good
EDIT: Ok, I created and uploaded the AUR package.
Like I said before, wanna take care of it? Just tell me and I'll abandon it
Last edited by chris_l (2013-01-03 17:26:40)
"open source is about choice"
No.
Open source is about opening the source code complying with this conditions, period. The ability to choose among several packages is just a nice side effect.
Offline
Ok, I compiled and it works correctly
Glad to hear.
About the command line, the reason for creating this application was because there are some mod players for Linux already but most of them are either command line or a plugin to another media player. What was missing is a simple GUI player. Adding an option to play a file on the command line is not hard but there are other projects which made this task their goal. I haven't tried it, but xmp looks like the right tool.
Nevertheless, if you insist I will implement it.
The ability to dump the output in wav format to the stdout would be useful too.
I think that this it possible with BASS. Can you please open a ticket with this feature request on sourceforge? (https://sourceforge.net/p/lxmp/tickets/) It would be a good opportunity for me to try the tickets system. If you don't have an account on sourceforge it is possible to login with OpenID. Anyway, do it only if it's easy.
But, I'm happy with this player, it plays this mod files pretty good
Thanks.
Ok, I created and uploaded the AUR package.
Like I said before, wanna take care of it? Just tell me and I'll abandon it
That was quick
I'm glad that you made this package because I'm not that good with packaging. I can maintain it because it only involves changing the link and the md5sum.
Last edited by SoleSoul (2013-01-03 18:26:35)
Offline
Using openid, when I click on tickets, it say something about that "it has to be a full account". So I created it, but still, I don't find a button to add a ticket.
Maybe you need to enable something?
Well, I orphaned the package, so go ahead and adopt it, before somebody takes it first!
About xmp, it does not compile (for me at least). Besides, lxmp seems to be lighter, with less dependencies, so I would prefer it. (the l from lxmp means light? )
"open source is about choice"
No.
Open source is about opening the source code complying with this conditions, period. The ability to choose among several packages is just a nice side effect.
Offline
Maybe you need to enable something?
Thanks. It's good I asked you to do it. I didn't know about the permissions of the tickets system. I think that now anyone can create a ticket. Here is a direct link to opening a ticket if you want to try again while logged in: https://sourceforge.net/p/lxmp/tickets/new/
Well, I orphaned the package, so go ahead and adopt it, before somebody takes it first!
Taken.
Besides, lxmp seems to be lighter, with less dependencies, so I would prefer it. (the l from lxmp means light?)
I try to make it as simple as possible and not add any dependencies beside Gtk and BASS. Maybe I will add an option to play a single file from the command line. If the tickets system works now, and it will be there, it won't be forgotten.
About the name, it has nothing to do with xmp. Actually, I saw its name only after releasing lxmp. lxmp stands for two things:
1. LinuX Mod Player
2. Since I am a long time user of XMPlay on Windows (a good mod player), and the lack of it for Linux was the motivation for coding lxmp, I wanted to do a tiny tribute to XMPlay by choosing an acronym that can be interpreted as "Linux XMPlay", although it is not affiliated with XMPlay by any means.
Last edited by SoleSoul (2013-01-03 22:41:42)
Offline
OK, done. I created several tickets with requests.
Feel free to accept or ignore any or all of them
"open source is about choice"
No.
Open source is about opening the source code complying with this conditions, period. The ability to choose among several packages is just a nice side effect.
Offline
Thank you
I will think them through to decide what would be the best way to implement these features and reply there if it's ok.
I'm thinking about creating a separate utility for conversions. The reason is that the conversion utility does not need gtk, and it needs another dep which is not needed by lxmp. Not sure yet, I'm still thinking about it.
Offline
Well, what I can think of 2 ways to do this:
The first way is one backend, cli-based program doing the actual mod playing and other program doing only the gui, they both comunicating behind. Starting the gui program would provide the current window lxmp provides, and the end user would not notice anything different. Those two programs by default would be compiled together, but it could be posible to compile only the backend.
The other way would be if the gui was a compile option that could be disabled, you know, with something like ./configure --disable-gtk3 or something.But, I think that this option would be harder to implement.
The first option sound more easy to implement, and is compatible with the "rule of separation" of the unix philosophy: http://www.linuxtopia.org/online_books/ … s06_3.html
What you think?
Last edited by chris_l (2013-01-05 19:27:33)
"open source is about choice"
No.
Open source is about opening the source code complying with this conditions, period. The ability to choose among several packages is just a nice side effect.
Offline
I thought about the options and requests and made a deciesion.
Since I don't want someone who wants to decode mod files to have to install Gtk, and for now I don't like the idea of dividing lxmp to two application, I created a new application for mod decoding named lxmc. I edited the OP and added a link to download it.
Can you please try it and see if that's what you meant?
Please tell me if you think anything else is needed for converting mod files.
That's all for conversion for now. Regarding a command line interface for playing, let me thing about it some more.
Offline
Ok, I install it. The problem I notice is that it plays forever! And I don't mean by using the 0 option.
If I do
lxmc wings_of_death.mod
it plays forever.
If I do
lxmc wings_of_death.mod 1
it also plays forever.
(in case you want to test with the same mod file, is here: http://modarchive.org/index.php?request … ery=106094)
EDIT: By the way, that does not occur on lxmp
Last edited by chris_l (2013-01-15 18:04:22)
"open source is about choice"
No.
Open source is about opening the source code complying with this conditions, period. The ability to choose among several packages is just a nice side effect.
Offline
That's funny. I tried converting this file to a .wav file with
lxmc wings.mod - > 1.wav
and I sopped it after 1.5GB
This file has a backward jump so it never ends. I can fix that.
Thanks for the sample, stay tuned for a fix.
Offline
It should be fixed now. Please let me know if there are any problems. Thanks
lxmc-0.3
EDIT: You can install it from AUR now.
Last edited by SoleSoul (2013-01-15 19:08:55)
Offline
A new version of lxmp.
- Added a shuffle option
- Fixed a bug
Offline
Well, I been testing it. The only problem I had was with the "ccwizard.mod" file from the website I mentioned before (the zip file is here); when that file plays, sound correctly the first time, but once it loops, it slows down and don't play all the tracks.
But, probably is a thing of the mod file and not your player.
Thank you for the lxmc player! it works great
Oh, btw, a man page would be nice. I created a base page for it: http://sprunge.us/CigP.
You can download it and view it with something like:
curl 'http://sprunge.us/CigP' |man -l -
Is quite plain, and it does not explain all things. so you will probably want to edit it.
Well, use that manpage file anyway you want.
Ok, thanks again for lxmc!
"open source is about choice"
No.
Open source is about opening the source code complying with this conditions, period. The ability to choose among several packages is just a nice side effect.
Offline
Thank you for the feedback and help.
I had no idea how to write man pages so this start is a great help.
The unexpected behavior with ccwizard.mod can be the file's fault, but it can also be the player's. I don't know the ins and outs of the formats so maybe someone with more experience could say if the player should behave differently.
It's a bit funny you call it lxmc player. I thought of it as a decoder first, and the player is a bonus. Because of that the player is so minimal. What are the features you miss the most when using lxmc? If there are any which are really important to you, you can ask them as feature requests and I may add them.
Offline
Thank you for the feedback and help.
I had no idea how to write man pages so this start is a great help.
No, actually thank YOU. Is nice giving suggestions and being heard
It's a bit funny you call it lxmc player. I thought of it as a decoder first, and the player is a bonus. Because of that the player is so minimal. What are the features you miss the most when using lxmc? If there are any which are really important to you, you can ask them as feature requests and I may add them.
Heh, again, thank you. Sure, there are lots of things I can think, like changing the help that appear when typing just lxmc to be more unix-like, or when playing a song on lxmc, displaying on stderr the info of the mod. All this would be nice but in the end, they are just nice to have extras, you already did what I think was more importan Should I create feature request for them? I would certainly wont mind having them
But if you want an idea, I been thinking... since a mod is a series of sound samples and a "pattern" of how/when they should be played, it would be nice to be able to dump the sound samples to wav files and the pattern to a text file format. Now I'm aware that would be way more hard to implement, but if then was posible to reimport that text file with the samples (and they could be altered... or completly new) to a mod file... then you would have a text-based tracker creator. That would be so cool, a tracker creator using text files on all the unix tradition!
But again, I understand is way more easy to talk about it than actually create it.
"open source is about choice"
No.
Open source is about opening the source code complying with this conditions, period. The ability to choose among several packages is just a nice side effect.
Offline