IMP - Irrlicht Media Player ••• [UPDATED] •••

Announce new projects or updates of Irrlicht Engine related tools, games, and applications.
Also check the Wiki

IMP - Irrlicht Media Player ••• [UPDATED] •••

Postby jorgerosa » Wed Aug 25, 2010 12:14 am

Image

★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆

DOWLOAD: http://sourceforge.net/projects/irrlichtmp

★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆

ABOUT:
Ok, here we go, how about develop an Media Player (Like Winamp, MusicMatch Jukebox, QCD, Foobar2000, Aimp, Xmms, etc, etc) but that consumes lots of CPU resources? And this project could be indeed the world´s media player that consumes more resources... :roll: Sounds bad, right?... Not really, its the way that we can impress our friends... and, most important, its all for our own fun !!! :D
TARGET:
• Lets try to keep this platform independent (Windows, GNU/Linux (Ubuntu), Mac)
• Everything (code) should be clean, simple and well commented as possible (So any user could use this project for his own study, including newbies... Like me!)
FEATURES:
(Some features are already done) Loads and play audio files ("wav", "aiff", "ogg", "flac", "mp3", "mod", "s3m", "it", "xm"). Will also have a jukebox mode, when it starts to play... then in the stage a character(s) (singer, singers, dancing girls, etc, etc) will dance, jump, play musical instrument(s), whatever, with lots of blinking lights and flash lights, etc... (kind of retro disco ambiance) also with random nice audience events (eg: flash lights cameras, audience clapping (when a music reaches the end), etc, etc, etc...). All these events will be random or read from an custom saved external XML file.
ONLY LATER... And maybe(!?)... we could add an online mode, so a new user may join (a characther will be added in the seats, with his nickname over it) and listen our playing music (stream), and be able to chat (comment), etc... I think this isn´t been done yet in any other media player...

HELP: I need help to port this project to MAC OSX and for GNU/LINUX, I also loved to have a .deb file to easily install on UBUNTU.
It´s all set (mostly), the project already uses GCC Compiler, 2 platform independent libraries (irrlicht + Audiere), uses only OpenGL video driver (not MS DirectX), and the project file opens with Code::Blocks (not MS Visual Basic C++). So... Anyone to help me on this? I have no time and not the right equipment to do this all, and test it, by myself. Help would be nice for future versions too. (You can just post here a downloadable link, with the compiled project and source or contact me, any option would be great).

STATUS: Its only in a sort of a test phase, to see how stuff works (But I think its in the right way)
REQUIREMENTS: OpenGL installed (Update your Video Card Drivers)
RESOURCES: All current scene (stage) static objects are in ".OBJ" format. For animation (animated meshes), I´m using ".X" format (exported from 3D Studio Max with "panda" plugin) and ".MD3" format (exported from 3D Studio Max with "MD3 Exporter" plugin). So, you can edit objects using any 3D Modeler that imports/exports that file formats. (eg. Blender).
LICENCE: Use it as you want to, as Irrlicht.

TODO, Next Priority Steps:
1) [Home] Drink a beer...
2) [Irrlicht] Add disco mirror balls (Lots of small spot lights with rotation effect in all scene, maybe a ".PNG" image(?)...). Partial done...
3) [Irrlicht] Browse for system directories (browse for music files).
4) [Audiere] Audio spectrum analyser, needed to synchronize visual effects with music beats, etc...
(Most of the code for all the above features is already started or done, still any kind of help is VERY welcome!)


USED TOOLS:
• A big hammer (platform independent) :twisted:
• IRRLICHT (V.1.8.1) --> http://irrlicht.sourceforge.net (platform independent)
• AUDIERE (V.1.9.4) --> http://audiere.sourceforge.net (platform independent)
• Code::Blocks (V.13.12) --> http://www.codeblocks.org (platform independent)

(Please post/send your comments, code, ideas, screenshots, etc.)
Last edited by jorgerosa on Sun Dec 20, 2015 9:30 pm, edited 495 times in total.
User avatar
jorgerosa
Competition winner
 
Posts: 104
Joined: Wed Jun 30, 2010 8:44 am
Location: Portugal

Postby kazymjir » Wed Aug 25, 2010 1:19 am

Looks interesting!
I am very interesting in this project, also I can help develop in free time :)
User avatar
kazymjir
 
Posts: 725
Joined: Sat Feb 20, 2010 4:05 pm
Location: Munich

Just updated and uploaded it again, with new visual features

Postby jorgerosa » Wed Mar 09, 2011 7:28 pm

[EDIT] ALL URLS UPDATED IN THE ABOVE MAIN POST
Last edited by jorgerosa on Tue Mar 22, 2011 9:13 pm, edited 3 times in total.
User avatar
jorgerosa
Competition winner
 
Posts: 104
Joined: Wed Jun 30, 2010 8:44 am
Location: Portugal

Postby greenya » Wed Mar 09, 2011 10:59 pm

Look nice!
This would be a great screensaver (running fullscreen with camera following some random paths) :roll:
greenya
 
Posts: 1007
Joined: Sun Jan 21, 2007 1:46 pm
Location: Ukraine

Postby REDDemon » Thu Mar 10, 2011 7:15 am

lol amazing. it remembers me the first duke nukem 3D in the first level of the city there was a stage of the disco.
Junior Irrlicht Developer.
Real value in social networks is not about "increasing" number of followers, but about getting in touch with Amazing people.
- by Me
User avatar
REDDemon
Developer
 
Posts: 1044
Joined: Tue Aug 31, 2010 8:06 pm
Location: Genova (Italy)

Postby jorgerosa » Fri Mar 18, 2011 11:03 pm

Thankyou all. Glad that you like :) Now, you can add your own music in the "music" folder. A clickable GUI button will be generated for each found music. And has a lot new features too. And please note that i still need help, to improve this. Have fun, hope that you like.
Last edited by jorgerosa on Tue Mar 22, 2011 9:14 pm, edited 2 times in total.
User avatar
jorgerosa
Competition winner
 
Posts: 104
Joined: Wed Jun 30, 2010 8:44 am
Location: Portugal

Postby serengeor » Sat Mar 19, 2011 6:57 am

4) [Audiere] Get audio file length in HH:MM:SS format.

what format do you get it in right now?
Working on game: Marrbles (Currently stopped).
User avatar
serengeor
 
Posts: 1712
Joined: Tue Jan 13, 2009 7:34 pm
Location: Lithuania

Postby jorgerosa » Sat Mar 19, 2011 7:55 pm

Please note that, I´m using AUDIERE -> http://audiere.sourceforge.net/
After seaching a lot, seems the way to get real time length (milliseconds), should be something like:
cpp Code: Select all
audiere::SampleSource * blah = OpenSampleSource("myMusic.mp3");
 
// Calculate length in seconds here ....
int milliseconds = ??????;
 
// The code (formulas) that I´ll use for a HH:MM:SS time format:
int hours = milliseconds/(1000*60*60);
int minutes = (milliseconds%(1000*60*60))/(1000*60);
int seconds = ((milliseconds%(1000*60*60))%(1000*60))/1000;
 
sound = OpenSound(audiereDevice, blah);
sound->play();
 

1) I have all that i need. Only need to get time in milliseconds from an "mp3" file. (Using: sound->getLength(); Only retrieves frames count).
[EDIT] 2) Lyrics added: Will display, if available. They are in the "music" folder. Code is not fully done yet, but will give you the main idea...
[EDIT] Forget this post: The correct solution for these issues, working with AUDIERE library, are in my next post.
Last edited by jorgerosa on Thu Jan 16, 2014 4:55 pm, edited 7 times in total.
User avatar
jorgerosa
Competition winner
 
Posts: 104
Joined: Wed Jun 30, 2010 8:44 am
Location: Portugal

Lyrics are now 100% working [RESOLVED]

Postby jorgerosa » Sun Mar 27, 2011 5:47 am

[RESOLVED] Lyrics are now synchronized! Ok, since i had no help for this, i´ve been digging around on this issue, for the last few days, to get lyrics done. Even in the AUDIERE forums lots of people is asking how to get music length (track duration) converted from frames to seconds or milliseconds, needed to develop a decent music player, but with no valid answers :( So, if you will work with AUDIERE forget my above post code (i´ll keep it there as the wrong way to do this, still it works with many other audio libraries). Here goes the "how-to" to everyone that might have the same problem, and is looking for a solution too:

Using AUDIERE - First you will need this, after the music is loaded:
cpp Code: Select all
/// Frame rate, ex: 44100
sound->getFormat(channels, rate, format);

Using AUDIERE - Then, add these formulas:
cpp Code: Select all
/// Converting from frames, to seconds:
int factor1 = sound->getLength()/rate;    // Retrieves number in seconds, ex: 175678555
int factor2 = sound->getPosition()/rate;  // Retrieves number in seconds, ex: 13428
int mil1 = factor1-(factor1-factor2);     // Current music position
int mil2 = factor1;                       // Total music length
 
int seconds1 = mil1 %60;
int minutes1 = mil1 /60;
int hours1   = mil1 /(60*60);
int days1    = mil1 /(60*60*24);
 
int seconds2 = mil2 %60;
int minutes2 = mil2 /60;
int hours2   = mil2 /(60*60);
int days2    = mil2 /(60*60*24);
 

Thats all! For the complete info (the complete formulas set), download and unzip the project, and look for them in the "main.cpp" file code.
The rate var is the main key (one of) to get all the lengths into seconds.
--> Now you will be able to display in your IRRLICHT app, the music position and length in HH:MM:SS format! :D
--> Now you can create your own lyrics, they will be synchronized correctly with the music. :D
(Now, its time to improve the graphics and other stuff... Time to mooooooooooooove forward....)
EDIT: UPDATED! A new version is now available! (All this related stuff was updated in the first post, too!)
Last edited by jorgerosa on Thu Jan 16, 2014 5:02 pm, edited 6 times in total.
User avatar
jorgerosa
Competition winner
 
Posts: 104
Joined: Wed Jun 30, 2010 8:44 am
Location: Portugal

Re: IMP - Irrlicht Media Player ••• [UPDATE: 04 APRIL 2011]

Postby mongoose7 » Wed Jul 27, 2011 2:01 pm

I like your player. :D

The zip file contains some source, so I thought I would try to compile it. But it won't compile for various reasons. (Arrays declared with a dimension of zero or a dimension which is a local variable, compiler refusing to accept constructors because the types don't match, 'include <dirent.h>' in a Windows build, etc.)

So, I guess the included source is not the source used to build the executable. Is this correct?
mongoose7
 
Posts: 1227
Joined: Wed Apr 06, 2011 12:13 pm

Re: IMP - Irrlicht Media Player • [UPDATE: 04 APRIL 2011] •

Postby jorgerosa » Wed Jul 27, 2011 2:58 pm

Hi mongoose7, thanks! :)
EDIT: UPDATED! A new version is now available! (All this related stuff was updated in the first post, too!)
Last edited by jorgerosa on Thu Jan 16, 2014 4:51 pm, edited 7 times in total.
User avatar
jorgerosa
Competition winner
 
Posts: 104
Joined: Wed Jun 30, 2010 8:44 am
Location: Portugal

Re: IMP - Irrlicht Media Player ••• [UPDATE: 28 JULY 2011]•

Postby mongoose7 » Thu Jul 28, 2011 12:19 pm

OK, thanks. I think the only change was to add a couple of headers.

I don't know if you are interested, but, Line 74,
cpp Code: Select all
bool my_filter(char c){ return c==' '; c==';'; c=='-'; c=='\n'; }

should be
cpp Code: Select all
bool my_filter(char c){ return c==' ' || c==';' || c=='-' || c=='\n'; }

(I guess). Also, Line 1092, VC++ doesn't like
cpp Code: Select all
ppEffectName[0]={"Monitor"};

preferring
cpp Code: Select all
ppEffectName[0]="Monitor";


Also, I don't know how you get away with using 'opendir()' in Windows, but I guess you have your ways.
mongoose7
 
Posts: 1227
Joined: Wed Apr 06, 2011 12:13 pm

Re: IMP - Irrlicht Media Player • [UPDATE: 28 JULY 2011] •

Postby jorgerosa » Thu Jul 28, 2011 5:24 pm

mongoose7 wrote:I don't know if you are interested, but...

Sure I am interested! The main ideia is to improve this project, still I don´t have all the needed time, to do it all, by myself. Thankyou mongoose7, for the tips! :D
EDIT: UPDATED! A new version is now available! (All this related stuff was updated in the first post, too!)
Last edited by jorgerosa on Thu Jan 16, 2014 4:51 pm, edited 3 times in total.
User avatar
jorgerosa
Competition winner
 
Posts: 104
Joined: Wed Jun 30, 2010 8:44 am
Location: Portugal

Re: IMP - Irrlicht Media Player • [UPDATED: 28 AUG 2011] •

Postby jorgerosa » Sun Aug 28, 2011 4:00 am

A new IMP version is done (has many improvements), and........
A BIG THANKYOU TO ANDARILHOS TO GIVE US 3 COMMERCIAL TRACKS FROM THEIR NEW MUSIC ALBUM,
EXCLUSIVELY FOR THIS IRRLICHT PROJECT !!! THEY ARE INCLUDED IN THE DOWNLOAD FILE !!!
EDIT: UPDATED! A new version is now available! (All this related stuff was updated in the first post, too!)
Last edited by jorgerosa on Thu Jan 16, 2014 4:55 pm, edited 2 times in total.
User avatar
jorgerosa
Competition winner
 
Posts: 104
Joined: Wed Jun 30, 2010 8:44 am
Location: Portugal

Re: IMP - Irrlicht Media Player •• [UPDATED: 11 SEPT 2011]

Postby jorgerosa » Tue Dec 27, 2011 10:08 am

WALLPAPER DOWNLOAD: http://img716.imageshack.us/img716/740/ ... rlicht.jpg
MERRY XMAS and HAPPY NEW YEAR !
Last edited by jorgerosa on Thu Nov 13, 2014 9:23 am, edited 7 times in total.
User avatar
jorgerosa
Competition winner
 
Posts: 104
Joined: Wed Jun 30, 2010 8:44 am
Location: Portugal

Next

Return to Project Announcements

Who is online

Users browsing this forum: Exabot [Bot] and 1 guest

cron