U++ framework
Do not panic. Ask here before giving up.

Home » Extra libraries, Code snippets, applications etc. » Applications created with U++ » Ultimate Player
Ultimate Player [message #527] Sat, 07 January 2006 15:10 Go to next message
unodgs is currently offline  unodgs
Messages: 1367
Registered: November 2005
Location: Poland
Ultimate Contributor

At http://dgs.pac.pl there is a side effect of my grid control developement - ultimate player - app for playing mp3.

It uses my grid control, which allows you to move columns, drag rows and select many blocks (ctrl + mouse move).
I used sqlite to store the playlists. I chose fmod (www.fmod.org) as a mp3 playing engine. (I had problems (creshes) with bass library).

Of course this player can't be replacement for advanced winamp (and others players) users, but as I said it was written only to test my grid comonent (but I feel I will develop it more Smile.

I put the sources in the near future as soon as my grid is finished.

Anyway have a look at it please, report any bug and enjoy Smile

BTW: Mirek could you check now if there is still high cpu usage?
Re: Ultimate Player [message #530 is a reply to message #527] Sat, 07 January 2006 23:04 Go to previous messageGo to next message
gprentice is currently offline  gprentice
Messages: 260
Registered: November 2005
Location: New Zealand
Experienced Member


Looks nice Daniel! (all except for the scrollbars Smile )
Sounds good too.

Only 2 minor issues - track title is truncated to 30 characters in a couple of places and To-tray didn't work.


Graeme

Re: Ultimate Player [message #531 is a reply to message #530] Sat, 07 January 2006 23:45 Go to previous messageGo to next message
unodgs is currently offline  unodgs
Messages: 1367
Registered: November 2005
Location: Poland
Ultimate Contributor

Thanks!
Could you be more specific about those scrollbars?

>track title is truncated to 30 characters in a couple of places

hmm, maybe fmod have problems with proper tags extracting.
Could you send me the file which title is truncated (at unodgs@tlen.pl, email size is limited to 10MB..). Thanks in advance.

>and To-tray didn't work.

good Smile there is no callback under the 'To tray' Wink I will implement this later.
Re: Ultimate Player [message #533 is a reply to message #531] Sun, 08 January 2006 00:55 Go to previous messageGo to next message
gprentice is currently offline  gprentice
Messages: 260
Registered: November 2005
Location: New Zealand
Experienced Member
Quote:

Could you be more specific about those scrollbars?



We had this discussion before Smile - it's just the U++ style that TheIDE and all U++ apps have - the navy/ dark blue look as opposed to the lightish blue of standard Windows scrollbars. I tried creating my own scrollbar colour scheme and came to the conclusion that the standard Windows scheme at least has minimal interference with the main look of an application, it's neither nice nor ugly. When I added enough items to the ultimate player to get scrollbars, it immediately struck me once again that I prefer the Windows default benign look. The best colour scheme I could come up with of my own was light purple outline, white-ish interior and black arrows and handles.

Trying to use this http://www.nutrocker.co.uk/scrollbarcolor.html
to create nice scrollbar colour scheme is mission impossible for me.


Regarding 30 characters - the track title was
"SCHUBERT:Fantasie for Violin and Piano in C-, Op.post.159, D.934" from here
http://www.classicalarchives.com/schubert.html

but it's 22 MB even when 7 Zipped (almost same as non-zipped size) and I can't really send it anyway coz it's not free - but there are some free downloads on that site that probably have long titles e.g. search for "free" here
http://www.classicalarchives.com/brahms.html

You have to log in to get them.

Actually I may have just found a slight bug in your player. I played a ".mid" file - I had to type in *.mid in the filename section to see it. After I played it, the Ultimate player wouldn't play anything else!! - clicking stop and selecting another track and it always tried to play the mid file.
Now I go and add another (mp3) file to the playlist and it's stuck on that file ... Smile

Graeme
Re: Ultimate Player [message #536 is a reply to message #533] Sun, 08 January 2006 11:43 Go to previous messageGo to next message
unodgs is currently offline  unodgs
Messages: 1367
Registered: November 2005
Location: Poland
Ultimate Contributor

>We had this discussion before..
Ok, I wasn't sure if you were talking about grid scrollbars or volume and position indicator which can be treat as some kind of scrollbars. Anyway, try to paint the image with scrollbars you would like to have. Maybe then it would be easier to Mirek modify (if u++ comminity accept new look) the scrollbar paint routine.


> I played a ".mid" file

Thanks for info. Frankly I have only played the mp3 streams... My player is definitely unfinished, but I wanted to encourage the others to public their work here.
Anyway, expect new version soon Smile

Re: Ultimate Player [message #555 is a reply to message #536] Mon, 09 January 2006 09:42 Go to previous messageGo to next message
gprentice is currently offline  gprentice
Messages: 260
Registered: November 2005
Location: New Zealand
Experienced Member
Quote:

Anyway, try to paint the image with scrollbars you would like to have. Maybe then it would be easier to Mirek modify (if u++ comminity accept new look) the scrollbar paint routine.



Well the only possibility I can see is just the default light blue WinXP colours. I mentioned to Mirek a while ago I might play with the code to try to get the original look back but for now it's a low priority so I'm probably going to wait for skinning or chameleon or whatever it is to see if that solves it. I know plenty of Windows users set their own non-default colour schemes - like purple and yellow ... but I don't know what happens to scrollbars when you do that.

Quote:

Thanks for info. Frankly I have only played the mp3 streams... My player is definitely unfinished, but I wanted to encourage the others to public their work here.
Anyway, expect new version soon


No rush - it works as it is. I've hardly even learnt to use any U++ widgets yet coz I've been too busy writing boring help files Smile

Graeme
Re: Ultimate Player [message #686 is a reply to message #527] Wed, 25 January 2006 16:38 Go to previous messageGo to next message
hojtsy is currently offline  hojtsy
Messages: 241
Registered: January 2006
Location: Budapest, Hungary
Experienced Member
The grid control you describe seems very useful. Any chance to put it into u++ library? Please. Very Happy
Re: Ultimate Player [message #691 is a reply to message #686] Wed, 25 January 2006 19:33 Go to previous messageGo to next message
unodgs is currently offline  unodgs
Messages: 1367
Registered: November 2005
Location: Poland
Ultimate Contributor

>The grid control you describe seems very useful. Any chance to put it into u++ library? Please.

Yes, that was my plan Smile When I finish ultimate player 1.02 I will public the sources of grid control and UP (as a example how to use it).
I need to make some fixes to the interface of gridctrl, clean up the code, prepare docs, etc.. (I will try to do this ASAP)
Re: Ultimate Player [message #703 is a reply to message #691] Wed, 25 January 2006 22:48 Go to previous messageGo to next message
hojtsy is currently offline  hojtsy
Messages: 241
Registered: January 2006
Location: Budapest, Hungary
Experienced Member
I have a few questions about your GridControl: Is it derived from ArrayCtrl? That would be good, because it would provide all the fancy features of that one. Is the GridControl strongly coupled with sqlite? That would not be that good, because the column & row dragging features might be needed in several places where SQL is not.
Re: Ultimate Player [message #705 is a reply to message #703] Wed, 25 January 2006 23:27 Go to previous messageGo to next message
unodgs is currently offline  unodgs
Messages: 1367
Registered: November 2005
Location: Poland
Ultimate Contributor

>Is it derived from ArrayCtrl?
No

>That would be good, because it would provide all the fancy features of that one.

That's why I coudn't derive my grid from array ctrl.. That would require too many internal changes. Besides when I was starting to create my grid I didn't know too well the array ctrl (lack of docs, large piece of code to analyse). I think my grid is very easy to use. Of course there are many differences to array ctrl but I don't think it is a big problem because they are new features specific.
Anyway I am widely open to any suggestions if you or somebody else don't like/would like to change sth.

>Is the GridControl strongly coupled with sqlite? That would not
>be that good, because the column & row dragging features might
>be needed in several places where SQL is not.

No it isn't at all. It's completely idependent just like array ctrl. To add data from database you just follow the classical way:

while(sql.Fetch())
{
grid.Add(sql);
}

while(sql.Fetch())
{
grid.Add();
grid.Set("col1", sql[0])
grid.Set(1, sql[1])
}
Re: Ultimate Player [message #714 is a reply to message #703] Thu, 26 January 2006 20:42 Go to previous messageGo to next message
mirek is currently offline  mirek
Messages: 14290
Registered: November 2005
Ultimate Member
hojtsy wrote on Wed, 25 January 2006 16:48

Is the GridControl strongly coupled with sqlite? That would not be that good, because the column & row dragging features might be needed in several places where SQL is not.


Actually, I do not believe coupling any widget with concrete db engine (apart from specific Login dialogs etc maybe) makes sense. U++ has pretty refined DB interface that works with MySql, Sqlite, Oracle and OLE/DB, so any reasonable code should rather interface with this.

BTW, there is a ArrayCtrl derived SqlArray widget that is capable of querying/inserting/updating/deleting SQL and even managing master-detail relations.
Re: Ultimate Player [message #2530 is a reply to message #691] Sun, 16 April 2006 23:18 Go to previous messageGo to next message
aroman is currently offline  aroman
Messages: 18
Registered: November 2005
Promising Member
Hey unodgs,

How's 1.02 coming along? I wonder if you'd be willing to release the source soon? I am interested in modifying it to change how playlists work.

- Augusto
Re: Ultimate Player [message #2531 is a reply to message #2530] Mon, 17 April 2006 00:14 Go to previous messageGo to next message
unodgs is currently offline  unodgs
Messages: 1367
Registered: November 2005
Location: Poland
Ultimate Contributor

aroman wrote on Sun, 16 April 2006 17:18

Hey unodgs,

How's 1.02 coming along? I wonder if you'd be willing to release the source soon? I am interested in modifying it to change how playlists work.

- Augusto


I had to spend a lot of time with my another project, but since 3 days I'm intensively working on next version of UP Smile (to releax Smile) I'm not sure about releasing the sources because gridctrl is not finished the way I wish it to be.. All in all I'm thinking about creating public uvs repository before releasing official version..
Re: Ultimate Player [message #4362 is a reply to message #527] Thu, 03 August 2006 11:24 Go to previous messageGo to next message
h3l1 is currently offline  h3l1
Messages: 28
Registered: August 2006
Location: Innsbruck, Austria
Promising Member
Hi,

really cool application Cool . Is there also the possibility to get a version for linux (64-bit)?

Bye
Heli
Re: Ultimate Player [message #4416 is a reply to message #4362] Sat, 05 August 2006 18:02 Go to previous messageGo to next message
unodgs is currently offline  unodgs
Messages: 1367
Registered: November 2005
Location: Poland
Ultimate Contributor

h3l1 wrote on Thu, 03 August 2006 05:24

Hi,

really cool application Cool . Is there also the possibility to get a version for linux (64-bit)?

Bye
Heli

Thanks! There will be version for linux! My frined told me that he won't test it until linux version comes up Wink. I'm not sure about 64bit version - I don't use such a version of my linux. But I plan to release sources so probably there won't be any problem to compile it on dedicated platform oneself.
Re: Ultimate Player [message #21216 is a reply to message #4416] Sun, 10 May 2009 07:09 Go to previous messageGo to next message
tojocky is currently offline  tojocky
Messages: 607
Registered: April 2008
Location: UK
Contributor

Hello Daniel,

Is published source code of Ultimate Player? I'm interesting how it is realized!

Interesting player!
Re: Ultimate Player [message #21261 is a reply to message #21216] Mon, 11 May 2009 08:20 Go to previous messageGo to next message
unodgs is currently offline  unodgs
Messages: 1367
Registered: November 2005
Location: Poland
Ultimate Contributor

tojocky wrote on Sun, 10 May 2009 01:09

Hello Daniel,
Is published source code of Ultimate Player? I'm interesting how it is realized!
Interesting player!

I will copy it from my private svn to bazzar tomorrow (I have to check if it still compiles). I had a big plans for it - I even started adding video playing using ffmpeg. But as usual no time to finish it.
Re: Ultimate Player [message #21288 is a reply to message #21261] Mon, 11 May 2009 22:24 Go to previous messageGo to next message
koldo is currently offline  koldo
Messages: 3458
Registered: August 2008
Senior Veteran
Hello unodgs

Ultimate player with video would be excelent.

If there is something I can do for to help please tell me.

Best regards
Koldo


Best regards
Iñaki
Re: Ultimate Player [message #21317 is a reply to message #21288] Tue, 12 May 2009 22:22 Go to previous messageGo to next message
unodgs is currently offline  unodgs
Messages: 1367
Registered: November 2005
Location: Poland
Ultimate Contributor

Ok. I put ultimate player sources in bazzar. To compile it please download FMod and update your builder paths. After first run of UP please close it and run it again otherwise you'll get a crash when adding music. I was trying to find out why it happens but for now I don't know. It seems to be creating sqlite schema related. I'll try to provide a fix for this ASAP.

As for video. Feel free to do whatever you want Smile The first nice step would be having ffmpeg as a plugin for Upp. Then probably adding video would be much easier and we could remove FMod (although I found it a very good lib).

UP can be run on win32 only right now, but it seems to be not a huge problem to make it work on linux.

If you'd have any problems just write.
Re: Ultimate Player [message #21322 is a reply to message #21317] Wed, 13 May 2009 09:36 Go to previous messageGo to next message
tojocky is currently offline  tojocky
Messages: 607
Registered: April 2008
Location: UK
Contributor

unodgs wrote on Tue, 12 May 2009 23:22

Ok. I put ultimate player sources in bazzar. To compile it please download FMod and update your builder paths. After first run of UP please close it and run it again otherwise you'll get a crash when adding music. I was trying to find out why it happens but for now I don't know. It seems to be creating sqlite schema related. I'll try to provide a fix for this ASAP.

As for video. Feel free to do whatever you want Smile The first nice step would be having ffmpeg as a plugin for Upp. Then probably adding video would be much easier and we could remove FMod (although I found it a very good lib).

UP can be run on win32 only right now, but it seems to be not a huge problem to make it work on linux.

If you'd have any problems just write.


Thank you Daniel!

I will test it!
Re: Ultimate Player [message #21354 is a reply to message #21317] Thu, 14 May 2009 16:33 Go to previous messageGo to next message
koldo is currently offline  koldo
Messages: 3458
Registered: August 2008
Senior Veteran
Hello unodgs

Oh no!. I thought that perhaps the video player status was more advanced than in http://www.ultimatepp.org/forum/index.php?t=tree&th=2566 &#page_top.

In that post you indicated a problem with ffmpeg and Visual C++.

Would you agree if in the Visual C++ version it would exist a ffmpeg.dll file?
It would be the same solution U++ uses for SDL.

If this is ok we could do the same done in SDL to comply with LGPL license: including the source in a plugin folder (less than 3Mb .zip) and give instructions to compile the .dll.

Best regards
Koldo



Best regards
Iñaki
Re: Ultimate Player [message #21357 is a reply to message #21354] Fri, 15 May 2009 08:16 Go to previous messageGo to next message
unodgs is currently offline  unodgs
Messages: 1367
Registered: November 2005
Location: Poland
Ultimate Contributor

Yes, dll is the only option. Sources takes too many space. In current UP there is now video support at all. Sorry for misunderstanding Smile All work on video is a separate project right now. I had a working ffplay as a upp project and I was trying to use directx for video output. Of course sdl would be more suitable here if we want to have portable player.
Re: Ultimate Player [message #21358 is a reply to message #21357] Fri, 15 May 2009 08:30 Go to previous messageGo to next message
koldo is currently offline  koldo
Messages: 3458
Registered: August 2008
Senior Veteran
Hello unodgs

Quote:

Yes, dll is the only option. Sources takes too many space. In current UP there is now video support at all. Sorry for misunderstanding Smile All work on video is a separate project right now. I had a working ffplay as a upp project and I was trying to use directx for video output. Of course sdl would be more suitable here if we want to have portable player.


I have understood that you are doing a U++ video player for windows using directX. Am I right?.

Best regards
Koldo


Best regards
Iñaki
Re: Ultimate Player [message #21359 is a reply to message #21358] Fri, 15 May 2009 09:03 Go to previous messageGo to next message
unodgs is currently offline  unodgs
Messages: 1367
Registered: November 2005
Location: Poland
Ultimate Contributor

Well I was doing and it was long time ago (none of existing player satisfied me) Smile. Unfortuantely I don't have time to continue the work. It would be great if someone prepare a simple player as an example for upp or modified my UP.
Re: Ultimate Player [message #21380 is a reply to message #527] Sat, 16 May 2009 17:19 Go to previous messageGo to next message
koldo is currently offline  koldo
Messages: 3458
Registered: August 2008
Senior Veteran
Hello unodgs

I have compiled UltimatePlayer and it works well.

Best regards
Koldo


Best regards
Iñaki
Re: Ultimate Player [message #21389 is a reply to message #527] Sun, 17 May 2009 21:41 Go to previous messageGo to next message
koldo is currently offline  koldo
Messages: 3458
Registered: August 2008
Senior Veteran
Hello

This weekend I have compiled ffmpeg and ffplay. ffplay is the ffmpeg video player and uses sdl. The documentation to do it is excelent so I have done it without problems.

The next step to do is the video player into an U++ program. The best documentation I have found is in http://www.dranger.com/ffmpeg/ titled "An ffmpeg and SDL Tutorial or How to Write a Video Player in Less Than 1000 Lines". The documentation seems very good but it will require more time to implement it.

I have also tried to insert a mplayer movie in a program window. Very easy to do it using the "mplayer -wid HWND" option, where HWND is the window handle where you want the video put by mplayer.

Unfortunately mplayer license is GPL2. ffmpeg main license is LGPL2.

Best regards
Koldo


Best regards
Iñaki
Re: Ultimate Player [message #21397 is a reply to message #21389] Mon, 18 May 2009 08:52 Go to previous messageGo to next message
unodgs is currently offline  unodgs
Messages: 1367
Registered: November 2005
Location: Poland
Ultimate Contributor

Excellent! Now we need some kind of wrapper like Video with Play, Stop, Load and similar methods. It would be great if different output types would be possible (OpenGL, DX, SDL) with ability to render on top of them (to support subtitles for example).

Although it's easy to embed mplayer in the upp window I would use ffmpeg directly. It's just faster.
Re: Ultimate Player [message #21398 is a reply to message #21397] Mon, 18 May 2009 10:21 Go to previous message
koldo is currently offline  koldo
Messages: 3458
Registered: August 2008
Senior Veteran
Yes, and the ffmpeg license is much closer to the U++ BSD license so it is more natural to link our programs with it.

Best regards
Iñaki
Previous Topic: StudyZone
Next Topic: Tracer
Goto Forum:
  


Current Time: Sun Apr 26 19:13:46 GMT+2 2026

Total time taken to generate the page: 0.01098 seconds