PSPlayer 2.0 Release

Discuss the development of new homebrew software, tools and libraries.

Moderators: cheriff, TyRaNiD

Post Reply
nugi
Posts: 6
Joined: Sun Sep 11, 2005 3:31 am

PSPlayer 2.0 Release

Post by nugi »

Hello~

I'd like to notice the release of my PSPlayer 2.0 app.
You can check following URL.
It is written in Korean, but you can find a download link for a zipfile.

http://forum.ps3korea.com/t32422/

[edit] direct download link...

http://blogfile.paran.com/BLOG_861426/2 ... ayer20.zip

----- Following is included english readme in zipfile.

PSPlayer 2.0

0. Notice

As I'm not good at writing in english, I write minimum information for video player of PSPlayer. Full details are in PSPlayer.txt in korean. Translation would be appreciated.

1. PSPlayer video player.

1.1 Features

* Based on FFMPEG nearly latest source(svn rev. 14728).
* avi/mov(mp4) containers supported. No container specific limitation.
* Video codec : Mpeg4 video(xvid etc), Mpeg4/AVC(h264) supported. (HW accel only)
* Audio codec : AC3, MP3, AAC supported. (MP3/AAC are HW accelerated.)
* Subtitles are supported. (smi, etc. through mplayer subreader.c and custom rendering of subtitles.)
* Supports B-frames in H264.
* audio 8-48kHz sampling rate supported. (linear resamling to 44kHz used in PSPlayerMT)
* Real-time volume boosting(1-20x). Apart from system volume. (Can be used for Replay Gain. Of course by hand not automatically.)
* Super high quality custom YUV rendering using PSP video acclerator. Precise color conversion. Deblocking in chroma channels. (from PSPlayerMT)
* Fast avi loading by optimizing index loading.
* Max video resolution. 480x272. (PSP HW codec library does not support higher resolution. maybe)
* No restriction in framerate.
* Buffering mechanism used in PSPlayerMT. (but extreamly reduced buffer size.)
* FF/Rew supported.
* Using internal bookmark mechanism, resuming supported.
* Async reading of video files. Less memstick access.
* usbhostfs, nethostfs supported. (first should be enabled using irshell. etc.)

1.2 Video player control

←→ : FF/REW (to next keyframe)
↑↓ : FF/REW (to 30sec keyframe)
L1/R1 : FF/REW (to 5min keyframe)
△ : change zoom mode
Ⅹ : Stop playing
□ : Show player debug info
START : Pause/Play toggle
Analog Up/Down : Boost volume 1x-20x (in SW)

1.3 Additional notes on video player

* Most of software codecs are removed to reduce pbp filesize. (except AC3)
* Sometimes H264 decoder fails.
* After decoding of Mpeg4 video(xvid), H264 decoder crashes occasionally. (in sceMpeg library)
* Recommended encoding software. (regardless of codec)
- to avi files. Badak. always my favoriate. (http://www.kipple.pe.kr)
- to mp4 files. XviD4PSP 5.x. Good for mp4 files. (http://www.winnydows.com, avi not working)
- no special conversion setting is required for H264. (just select file, setup codec and convert.)
- HW xvid decoder does not support b-vop(b frame), gmc, qpel. When encoding with xvid, disable unsupported options. (With mencoder, add -xvidencopts max_bframes=0:nogmc:noqpel)
* Have an option for RGB rendering of Mpeg4 video.
* First audio track only. No multi-track audio.
* developed and tested on 3.90 M33-5(1.5 addon, fatmsmod patch) and tested on 3.71 M33-4(?, 1.5 addon) and OFW 1.5 on DAX's time machine. (not a slim psp)
* Full compatible list of container and codec combination. (tested.)
- AVI - opendivx/xvid/h264 - ac3/mp3
- MP4 - xvid/h264/opendivx(?) - mp3/aac
- any combination of video/audio codec is supported. (ex. avi h264/ac3 ok)
* avi files takes additional 10MHz CPU clock.
* ac3 is not recommended. for compatibility only. It takes additional 50MHz CPU clock.

2. PSPlayer other features

* started from simple mp3 player using libmad.
* text viewer. Up to 2M lines. Fast loading. Simple bookmark.
* mp3/aac/m4a/ogg player. with playlist support.(m3u)
* bmp/jpg/png/gif support. but primitive.
* Additional features and how to use is in PSPlayer.txt and readme.old. (but in korean, sorry)

3. Code page and font (text files and subtitles)

* PSPlayer is a totally multi-byte application.
* Can handle 2-byte characters.
* No code-page conversion.
* Included font is a rip of a korean font. (in CP949)
* Should match encoding of text files and font.
* Font converter can be released if I can find it somewhere in my harddisk.

4. Source codes and license

In each binary distribution source code will be included.

Source codes follows GNU GENERAL PUBLIC LICENSE. See license.txt in the distribution.

5. Compilation

You need to setup pspsdk and addtional libraries. See Makefile for full list of needed libraries.

I includes svn diff for ffmpeg source and configure script(ffmpegconfigure.sh). The svn diff decribes what I modified from ffmpeg source svn rev. 14728.

I hope this codes are helpful to all PSP developers. But my source code is very very dirty because it started from a simple test application. PSPlayerMT was a source code cleanup version of this but it failed and discontinued.(It was just a battery hungry ogre, I think) And most of PSPlayerMT source code is just copied to main.cpp (after 2 year of sleep in a zipfile), making it a hell to readers.

subreader.h/c : copied from mplayer source and modified slightly to compile with it.

6. Special Thanks to

- Sakya : used support.prx to do... clock adjustment, display off, get volume level. His LightMP3 motivated me to upgrade PSPlayer using HW codecs after 2+ year of sleep.
- cooleyes : prototype for MP3/AAC/Mpeg4/H264 decoding using VME. PPA source code greatly helped coding of PSPlayer(esp. video player).
- TyRaNiD : PSPLink greatly helped monitoring, debugging of PSPlayer.
- and all other PSP developers
Last edited by nugi on Wed Sep 24, 2008 1:44 am, edited 1 time in total.
PosX100
Posts: 98
Joined: Wed Aug 15, 2007 1:02 am

Post by PosX100 »

Nice work , but please upload it somewhere else...the link from the forum you posted requires registration (doh).
nugi
Posts: 6
Joined: Sun Sep 11, 2005 3:31 am

Post by nugi »

[quote="PosX100"]Nice work , but please upload it somewhere else...the link from the forum you posted requires registration (doh).[/quote]

sorry for inconvenience.

please try following link.

http://blogfile.paran.com/BLOG_861426/2 ... ayer20.zip
User avatar
dennis96411
Posts: 70
Joined: Sun Jul 06, 2008 4:59 am

Post by dennis96411 »

Holy Crap! Aren't you the guy who made PSPlayerMT? Where have you been dude? That was a awesome player! You never gave us your name.
My PSP's Firmware:
5.00 M33-6 w/ LEDA 0.2

My PSP's Motherboard:
TA-088

My PSP's Model:
PSP-2001 (Slim)
Wraggster
Posts: 121
Joined: Fri Aug 26, 2005 7:40 am
Contact:

Post by Wraggster »

thanks for a great release for the PSP Homebrew community
Webmaster of http://www.dcemu.co.uk

DCEMU The Worlds Only Homebrew & Gaming Network of Sites.
Matrixdub
Posts: 60
Joined: Fri May 13, 2005 3:47 am

Re: PSPlayer 2.0 Release

Post by Matrixdub »

nugi wrote: * Max video resolution. 480x272. (PSP HW codec library does not support higher resolution. maybe)
I'm slightly confused, weren't the UMDs 720*480 video? Surely that means it can decode higher resolution than 480*272
kralyk
Posts: 114
Joined: Sun Apr 06, 2008 8:18 pm
Location: Czech Republic, central EU

Post by kralyk »

sceVideocodec CAN (edit: well it actually can't :D =/) decode video with resolution better than 480*272

I have successfuly decoded one xvid 640*352 frame.
Cooleyes's method does not decode this frame right because cooleyes messed csc parameters a bit.

Im working on it, Ill post the source code later, stay tuned ;)
Last edited by kralyk on Thu Oct 02, 2008 4:59 am, edited 1 time in total.
...sorry for my english...
J.F.
Posts: 2906
Joined: Sun Feb 22, 2004 11:41 am

Post by J.F. »

kralyk wrote:sceVideocodec CAN decode video with resolution better than 480*272

I have successfuly decoded one xvid 640*352 frame.
Cooleyes's method does decode this frame right because cooleyes messed csc parameters a bit.

Im working on it, Ill post the source code later, stay tuned ;)
Cool! I was wondering if the codec only handle specific resolutions above 480x272 since Sony specified that only two specific resolutions above that could be used (720x480 and 352x480). It didn't make sense that the underlying codec would be hardcoded for that, though. I also seem to remember that someone stated that their video encoder turned out 60 Hz progressive videos that the PSP could play, so the idea that the limit is 30 Hz might also be false. You might try faster frame rates to see what happens.

That leads to a limitation I found in the PSP video player that wouldn't affect a homebrew player that was properly written: the VSH player won't play VFR videos (variable frame rate). I made a video that plays well at 720x480 as long as it's CFR, but making it VFR made the VSH player declare it incompatible. As far as the codec should be concerned, frames exist outside of time. It's up to the player to decide when and how to display a decoded frame. So the codec should be able to DECODE VFR streams, but then it's up to the player to play those frames properly.
kralyk
Posts: 114
Joined: Sun Apr 06, 2008 8:18 pm
Location: Czech Republic, central EU

Post by kralyk »

oh no no (wanted to edit that earlier)
see, 640*352 is not more than 480*272 (thanks cooleyes for your hint)

for resolutions different from 480*272, but not greater you need to call csc with these parameters:

Code: Select all

unsigned long RGBBuffer2 = RGBBuffer+4*(width+32)*(height/2);
sceMpegBaseCscVme(RGBBuffer, RGBBuffer2, width+32, Video_YCrCbCopy_DestBufferMP4V);

this should produce nice resulting texture...


J.F. wrote: I was wondering if the codec only handle specific resolutions above 480x272 since Sony specified that only two specific resolutions above that could be used (720x480 and 352x480). It didn't make sense that the underlying codec would be hardcoded for that, though.
this info might be true. Well, it doesnt make sense, but have sony ever made sense as to psp-related technologies?

J.F. wrote: That leads to a limitation I found in the PSP video player that wouldn't affect a homebrew player that was properly written: the VSH player won't play VFR videos (variable frame rate). I made a video that plays well at 720x480 as long as it's CFR, but making it VFR made the VSH player declare it incompatible. As far as the codec should be concerned, frames exist outside of time. It's up to the player to decide when and how to display a decoded frame. So the codec should be able to DECODE VFR streams, but then it's up to the player to play those frames properly.
I agree. I'd guess that the VSH player uses RTC for timing doesnt it? If so, it shouldnt be much of a problem... It's actually rather a matter of proper demuxing than decoding isn't it?
I think sony's approach to the player and codecs is something like "Ok, our player and codecs support our favourite format, we dont give a shit about other existing formats"

Besides xvid/avi, VFR and nonstandard resolution - these features are very often used for pirating films, which we know very well what sony guys think of... :D
...sorry for my english...
J.F.
Posts: 2906
Joined: Sun Feb 22, 2004 11:41 am

Post by J.F. »

Some people ask what good the video out is on the Slim - it's the smallest, most quiet video player out. Play a good AVC video at 720x480 at 30 Hz with surround encoded sound off the memstick to a GOOD TV out the component cable... it far exceeds DVD players. It has the same resolution as a DVD (720x480 for NTSC), but since it uses h.264 and can be 30 Hz progressive (60 Hz if one report is to be believed), the video is much better than the best DVD can produce.

Now if we could get a player that could demux VFR mkv files and use the codec to decode the video stream, it would truly be the best portable player out.
looplife
Posts: 1
Joined: Tue Oct 07, 2008 1:17 pm

Post by looplife »

nice work!!
messiasjan
Posts: 1
Joined: Sun Nov 02, 2008 12:42 am

PSPlayer's Font

Post by messiasjan »

Hi !

I need see movies with subtitles that contain
symbols like "ç", "á", "é", "í", "ó", "ú", "ã" and "õ".
How can I do this? I'm using SMI subtitles.
What else types I can use?

Congratulations for the work, Nugi.
And Thanks.
:)
ardatan
Posts: 44
Joined: Sat Jan 12, 2008 8:47 am

Post by ardatan »

Would you mind if I asked to release the source code of the previous version of PSPlayerMT...
I'm sorry for my bad English.
Shapyi
Posts: 95
Joined: Mon Apr 25, 2005 9:31 am

Post by Shapyi »

J.F. wrote:Some people ask what good the video out is on the Slim - it's the smallest, most quiet video player out. Play a good AVC video at 720x480 at 30 Hz with surround encoded sound off the memstick to a GOOD TV out the component cable... it far exceeds DVD players. It has the same resolution as a DVD (720x480 for NTSC), but since it uses h.264 and can be 30 Hz progressive (60 Hz if one report is to be believed), the video is much better than the best DVD can produce.

Now if we could get a player that could demux VFR mkv files and use the codec to decode the video stream, it would truly be the best portable player out.
What is the problem with decoding 720x480 MPEG-4 and AVC now? Sony was able to do it on UMDs and in the XMB menu. Maybe it is something simple that we are overlooking.

Accessing those resolutions using the hardware decoder would be a lot of great possibilities for a media player on PSP.
NoEffex
Posts: 106
Joined: Thu Nov 27, 2008 6:48 am

Post by NoEffex »

So, in theory, this is the psp equivalent of vlc-player, in that it can play ANYTHING(pretty much)?
Blackrider
Posts: 8
Joined: Wed Mar 29, 2006 1:22 pm

Post by Blackrider »

see, 640*352 is not more than 480*272 (thanks cooleyes for your hint)


I don't get it, what did cooleyes say to you? Why is 640*352 not more than 480x272?
tecgen
Posts: 1
Joined: Thu Dec 04, 2008 11:44 pm

Post by tecgen »

Blackrider wrote: Why is 640*352 not more than 480x272?
Since 640*352 are 225280 pixel and 480x272 are just 130560 pixel ;)
Blackrider
Posts: 8
Joined: Wed Mar 29, 2006 1:22 pm

Post by Blackrider »

tecgen wrote:
Blackrider wrote: Why is 640*352 not more than 480x272?
Since 640*352 are 225280 pixel and 480x272 are just 130560 pixel ;)
tecgen i think you must have missread my post.

If 225280 pixel > 130560 pixel then 640x352 > 480x272 , yet kralyk said;
640*352 is NOT more than 480*272 (thanks cooleyes for your hint)
(My emphasise)

That means cooleyes told kralyk that 640*352 < 480x272, wich doesn't make sense mathematicaly.
cooleyes
Posts: 123
Joined: Thu May 18, 2006 3:30 pm

Post by cooleyes »

Blackrider wrote:
tecgen wrote:
Blackrider wrote: Why is 640*352 not more than 480x272?
Since 640*352 are 225280 pixel and 480x272 are just 130560 pixel ;)
tecgen i think you must have missread my post.

If 225280 pixel > 130560 pixel then 640x352 > 480x272 , yet kralyk said;
640*352 is NOT more than 480*272 (thanks cooleyes for your hint)
(My emphasise)

That means cooleyes told kralyk that 640*352 < 480x272, wich doesn't make sense mathematicaly.
no, I just said 640*352 < 512*512
Shapyi
Posts: 95
Joined: Mon Apr 25, 2005 9:31 am

Post by Shapyi »

cooleyes wrote:
Blackrider wrote:
tecgen wrote: Since 640*352 are 225280 pixel and 480x272 are just 130560 pixel ;)
tecgen i think you must have missread my post.

If 225280 pixel > 130560 pixel then 640x352 > 480x272 , yet kralyk said;
640*352 is NOT more than 480*272 (thanks cooleyes for your hint)
(My emphasise)

That means cooleyes told kralyk that 640*352 < 480x272, wich doesn't make sense mathematicaly.
no, I just said 640*352 < 512*512
So anything bigger, say 720 x 480 would require 1024 x 512 texture? Is that the problem or is there some other limitation?
linuster
Posts: 3
Joined: Sun Jul 12, 2009 9:28 pm

Terrific work and please continue!

Post by linuster »

Finally this is the only generic video player that runs on my PSP firmware 5.03.

Thanks for the great work! It is not playing my 640x480 video from digital camera but I see _hope_.

Is it possible to do the decoding in software and scale/crop the video to the screen?

Thanks in advance!
coolkehon
Posts: 355
Joined: Mon Oct 20, 2008 5:44 am

Re: Terrific work and please continue!

Post by coolkehon »

linuster wrote:Finally this is the only generic video player that runs on my PSP firmware 5.03.

Thanks for the great work! It is not playing my 640x480 video from digital camera but I see _hope_.

Is it possible to do the decoding in software and scale/crop the video to the screen?

Thanks in advance!
wow you bumped a dead topic. Do you know i read this whole thing thought it was new then said hey this program is already out looked at the dates and figured out you had bumped it
Art
Posts: 642
Joined: Wed Nov 09, 2005 8:01 am

Post by Art »

Ya, don't hold your breath for updates.
Most programmers who were working with the PSP a year ago have moved on to another platform.
If not actually, then potentially.
Post Reply