PMP(PSP Media Player)

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

Moderators: cheriff, TyRaNiD

Post Reply
User avatar
ChaosKnight
Posts: 142
Joined: Thu Apr 14, 2005 2:08 am
Location: Florida, USA

Post by ChaosKnight »

Psychocrackpot wrote:Cool, that works, now i just need:

ljpeg;
lfreetype;
lz; <-- What are these
lm; <-- What are these


Thanks much appreciated, hope you will enjoy the updates i do
lm is the math library, it's already in your distribution. The rest can be checked out from the subversion repository and built. http://svn.pspdev.org/
Just do:
svn co svn://svn.pspdev.org/psp/trunk/jpeg
svn co svn://svn.pspdev.org/psp/trunk/zlib
svn co svn://svn.pspdev.org/psp/trunk/freetype
and build each one.
w00t
pspvideo9
Posts: 19
Joined: Tue Mar 15, 2005 12:32 pm

Post by pspvideo9 »

Hi jockyw2001,
We're curious, do you think the PSP has the CPU power to downscale something like 720x480 to 480x272 and play it back with full frame rate even with optimizations?

Are going to use the VFPU for IDCT and YUV2RGB once that functionality comes available in the SDK? Are you planning on off loading the audio decoding to the ME?
jockyw2001
Posts: 339
Joined: Thu Sep 29, 2005 4:19 pm

Post by jockyw2001 »

pspvideo9 wrote:Hi jockyw2001,
We're curious, do you think the PSP has the CPU power to downscale something like 720x480 to 480x272 and play it back with full frame rate even with optimizations?
After optimizations I think yes. So far my tests with pal resolution mpeg2 .ts files point in that direction.
Are going to use the VFPU for IDCT and YUV2RGB once that functionality comes available in the SDK?
A list of targets for optimization can be found in the ffmpeg doc file optimization.txt. Of course IDCT is one of the main targets. And yes, it looks to me VFPU is suitable.
Are you planning on off loading the audio decoding to the ME?
Not for now. But it would be a lot of fun reversing the ME. Hitmen should first add a debugger to PSPInside ;)

/JockyW
holger
Posts: 204
Joined: Thu Aug 18, 2005 10:57 am

Post by holger »

jockyw2001 wrote:
pspvideo9 wrote:Hi jockyw2001,
We're curious, do you think the PSP has the CPU power to downscale something like 720x480 to 480x272 and play it back with full frame rate even with optimizations?
After optimizations I think yes. So far my tests with pal resolution mpeg2 .ts files point in that direction.
You can perform interpolating scaling on the GE's texture units using libgu or pspgl -- the latter approach would also simplify testing on the desktop and transition to other platforms...

Are going to use the VFPU for IDCT and YUV2RGB once that functionality comes available in the SDK?
A list of targets for optimization can be found in the ffmpeg doc file optimization.txt. Of course IDCT is one of the main targets. And yes, it looks to me VFPU is suitable.
YUV<->RGB conversion could get implemented as single VFPU matrix-vector multiplication or even using a modulate/signed-add multipass algorithm on the texture units of the GE. Deinterlacing could get done using twice the temporal at half spatial resolution (the vertical PSP resolution is roughly the non-interlaced PAL resolution). The texture coordinates would need to get offset'd by a half line for odd frames to avoid flickering.
digihoe
Posts: 108
Joined: Sat May 14, 2005 7:40 pm

Post by digihoe »

jockyw2001 wrote:
pspvideo9 wrote:Hi jockyw2001,
We're curious, do you think the PSP has the CPU power to downscale something like 720x480 to 480x272 and play it back with full frame rate even with optimizations?
After optimizations I think yes. So far my tests with pal resolution mpeg2 .ts files point in that direction.
Would this mean a that maybe some sort of DVB streaming could be possible in future? Or even when some controll over USB, then maybe a DVB-T feature could be added too... Just me dreaming...

Best regards and keep up the great work!
ZMaster
Posts: 29
Joined: Fri Sep 02, 2005 10:14 pm

Post by ZMaster »

digihoe wrote: Would this mean a that maybe some sort of DVB streaming could be possible in future? Or even when some controll over USB, then maybe a DVB-T feature could be added too...
I think the WiFi connection features not enough bandwidth for DVB streaming. When I connect my laptop computer over 802.11b to my wlan and try to grab a MPEG2 stream from my server, which has a DVB-S downlink, the video stucks and jumps like mad. I think you would need to reduce the video bitrate in realtime on your streaming server before you distribute the MPEG2 over the wireless net.
garvani
Posts: 1
Joined: Mon Oct 10, 2005 3:13 pm

Post by garvani »

Hi

Im quite interested in your little project here, unfourtently i have no coding expereince, im interested in it from a user perspective. How complete is the divx, xvid coding? Sorry for any ignorance, ive gone through your post's but cant make heads or tails of it. Cant wait to see a finished implementation!! Good luck!

Jason
Arwin
Posts: 426
Joined: Tue Jul 12, 2005 7:00 pm

Post by Arwin »

ZMaster wrote:
digihoe wrote: Would this mean a that maybe some sort of DVB streaming could be possible in future? Or even when some controll over USB, then maybe a DVB-T feature could be added too...
I think the WiFi connection features not enough bandwidth for DVB streaming. When I connect my laptop computer over 802.11b to my wlan and try to grab a MPEG2 stream from my server, which has a DVB-S downlink, the video stucks and jumps like mad. I think you would need to reduce the video bitrate in realtime on your streaming server before you distribute the MPEG2 over the wireless net.
I assume you do have WiFi powersaving turned off? Leaving this on has a dramatic impact on the performance. I feel the speed should be fast enough - I downloaded one of those Wipeout packs with it and that went quite fast.
ZMaster
Posts: 29
Joined: Fri Sep 02, 2005 10:14 pm

Post by ZMaster »

Arwin wrote: I assume you do have WiFi powersaving turned off? Leaving this on has a dramatic impact on the performance. I feel the speed should be fast enough - I downloaded one of those Wipeout packs with it and that went quite fast.
No, I was not talking about the PSP WiFi connection, but the one in my laptop computer. The PSP does not yet, have streaming capabilities. But since the PSP's WiFi is powered by a 802.11b (11MBit) connection I think I can compare it to my laptops 802.11b.
What I'm saying is, that the 802.11b is too slow, to enjoy DVB-S streaming with full bitrate and resolution just as it comes down from the satellite.
You would need to reencode the stream on the server, on-the-fly, which is perfectly ok, since the PSP screen has a lower resolution than a native DVB-S MPEG2 video. This would just need some decent CPU power on the streaming server and a software tool that does the reencoding.

Uhmm... and I have a question concerning the PMP software. I like it! But: I tried a Xvid 512kbps 480x272@25fps, MP3 96kbps VBR video and there was no chance to view that in realtime. It played like on 15-18fps...
Does the PMP play videos in realtime if they are encoded with different settings? Has anyone tried?
Matrixdub
Posts: 60
Joined: Fri May 13, 2005 3:47 am

Post by Matrixdub »

I tried DivX 384kbps 480x272@25fps, MP3 192kbps CBR and that was jumpy too.
holger
Posts: 204
Joined: Thu Aug 18, 2005 10:57 am

Post by holger »

ZMaster wrote: What I'm saying is, that the 802.11b is too slow, to enjoy DVB-S streaming with full bitrate and resolution just as it comes down from the satellite.
it is not. DVB-S and DVB-T SDTV transmissions are usually encoded at bitrates of 3-6MBit, and have been successfully streamed over non-100MBit ethernet (e.g. on the dbox2), USB1.1 (e.g. the Technotrend USB-DVB receivers and the like) and 802.11b in pasttime projects. For some transponders bursty streams are an issue, but buffering helps, latencies can get kept in acceptable ranges. See the linux-dvb and the dbox2 project for references.
Psychocrackpot
Posts: 6
Joined: Thu Sep 22, 2005 8:46 pm

Post by Psychocrackpot »

Hey, what's the best codec / bitrate that the media player currently handles? I am getting very scratchy sound in my movies. I tried quicktime / xvid / divx. Mpeg2 plays only the audio stream
ZMaster
Posts: 29
Joined: Fri Sep 02, 2005 10:14 pm

Post by ZMaster »

holger wrote: it is not. DVB-S and DVB-T SDTV transmissions are usually encoded at bitrates of 3-6MBit, and have been successfully streamed over non-100MBit ethernet (e.g. on the dbox2), USB1.1 (e.g. the Technotrend USB-DVB receivers and the like) and 802.11b in pasttime projects. For some transponders bursty streams are an issues, buffering helps, latencies can get kept in acceptable ranges. See the linux-dvb and the dbox2 projects for references.
I agree with you in concern of the buffering. It is primary not the bandwidth that is the limiting factor here, but the problem that a WiFi connection is not stable enough (Though the limited bandwidth is not an advantage at all).

I don't want to start a war about this, you know :-) I'm just telling about my personal experiences.
Holger, you're German too, aren't you? Check out this website http://www.vdrportal.de. It's the #1 German user discussion board about everything related to the Linux Video Disk Recorder project. People are reporting similiar experiences with 802.11b connections and the linux-dvb driver there.

Another point is that the connection may be better on different hardware. I was using a cheap wifi card when I experimented with this. The Intel hardware I'm using now seems to be better, but still not perfect.

Maybe we should nevertheless try this on the PSP. If it doesn't work we could still reencode. Maybe the PSP does have enough horsepower to pre-buffer the fairly high amount of MPEG data. Maybe the WiFi hardware isn't really that bad as I'm expecting it to be.

I'll take a look into the code as soon as I can find some time...

EDIT: Here's a thread concerning the topic in particular http://www.vdrportal.de/board/thread.ph ... ht=802+11b
Might be interesting for us! They're discussing how to get a live-stream running on a 802.11b powered PowerPC/Palm handheld!
zacay
Posts: 10
Joined: Sun Jul 17, 2005 11:16 pm

Post by zacay »

I can help with creating graphics for menus and etc. Tell me what you need and I can surely help out here..
Would be nice to have something similar too "windows media player - when movies played in full screen mode" when moving the analog stick, top and bottom menu comes up, and optional playlist on the side /semi transparent/

Here is an example, (not finished, just a draft)
Image

The buttons on the left side is has the layout of the d-pad.
The analog stick could be used for moving around the playlist.
L & R = previous and next
The right side buttons could be used as

Triangle = Menu for choosing between (Show playlist/equalizer/settings)

Playlist: the contents of a chosen directory (recursive) all supported formats
Equalizer: show a popup or different screen to adjust the equalizer
Settings: could be other various settings (display mode/choose different directory/ etc etc)

X or Circle = Confirm choice
X or Circle = ???
Square = Back button ?


What do you think?
lopoz
Posts: 8
Joined: Mon Aug 15, 2005 11:24 pm

Post by lopoz »

That design looks awesome :)
Psychocrackpot
Posts: 6
Joined: Thu Sep 22, 2005 8:46 pm

Post by Psychocrackpot »

Gents, come on help me out...

I've tried mp4 playback, beautiful picture quality, full speed... no audio

Does this not have support for aac?
Magus
Posts: 12
Joined: Thu Oct 06, 2005 11:10 pm
Contact:

Post by Magus »

that does look very nice.
DigitalFoundry
Posts: 47
Joined: Thu Jan 20, 2005 4:35 am

Post by DigitalFoundry »

Psychocrackpot wrote:Gents, come on help me out...

I've tried mp4 playback, beautiful picture quality, full speed... no audio

Does this not have support for aac?
It doesn't look like it. I'm a bit confused that MP4 is that much quicker than AVI encoded in an MPEG4 profile - eg, XviD, DivX. I mean, all the freeware MP4 encoders are based on FFMPEG producing a basic XviD stream.

Could it be that by not decoding the audio, the PSP has enough system resources to display a full speed video stream?
User avatar
sherpya
Posts: 61
Joined: Mon Oct 03, 2005 5:49 pm

Post by sherpya »

the PSP has enough system resources to display a full speed video stream?
Definitively yes, most movies playable directly by psp and I think also umd movies are coded using h264 for video (mpeg4 avc) that is almost "heavy" to decode, and audio using aac.
DigitalFoundry
Posts: 47
Joined: Thu Jan 20, 2005 4:35 am

Post by DigitalFoundry »

The PSP has hardware AVC decoding - I'm not sure that the CPU is powerful enough to do it via software.
jonny
Posts: 351
Joined: Thu Sep 22, 2005 5:46 pm
Contact:

Post by jonny »

It doesn't look like it. I'm a bit confused that MP4 is that much quicker than AVI encoded in an MPEG4 profile - eg, XviD, DivX. I mean, all the freeware MP4 encoders are based on FFMPEG producing a basic XviD stream.

Could it be that by not decoding the audio, the PSP has enough system resources to display a full speed video stream?
pmp still doesn't have the speed to decode, at full speed, 25 fps 480x272 mpeg4 sp stream (even without audio)
it's the first test i've done (tested only in avi container ... but i doubt changing the container make such a big difference)
User avatar
sherpya
Posts: 61
Joined: Mon Oct 03, 2005 5:49 pm

Post by sherpya »

DigitalFoundry wrote:The PSP has hardware AVC decoding - I'm not sure that the CPU is powerful enough to do it via software.
most likely but I mean using also hw, there should be a way to use it
ZMaster
Posts: 29
Joined: Fri Sep 02, 2005 10:14 pm

Post by ZMaster »

I managed to compile the source package with network functionality enabled (using libpspnet). It connects to my network and after some modifications doesn't complain about any missing references.
However, I could not yet play a stream over the network. It says that the file can not be played, when I set the url of the stream as FileName.
Anyway, I read in the ffmpeg documentation that it doesn't support HTTP streams, because HTTP is just implemented as a communication protocol between ffserver and ffmpeg. So I still need to try this with ffserver as the streaming server over RTSP to give any more feedback...
Nevertheless, your suggestions are very welcome.
andresilich
Posts: 13
Joined: Tue Aug 09, 2005 1:43 am
Location: massachusetts

Post by andresilich »

You guys are working on new features when the app is not yet usable to it's full extent? shouldn't it be the whole way around?


i'm sorry for the stupid question, i just needed to ask.
digihoe
Posts: 108
Joined: Sat May 14, 2005 7:40 pm

Post by digihoe »

There are some RTSP source in the VLC code, as long as this is open source it should be ok to borow some code...

Best regards!
User avatar
sherpya
Posts: 61
Joined: Mon Oct 03, 2005 5:49 pm

Post by sherpya »

http://www.live.com/liveMedia/public/
is yet used by many applications, and it's portable, btw the sdk has yet libpspnet?
Psychocrackpot
Posts: 6
Joined: Thu Sep 22, 2005 8:46 pm

Post by Psychocrackpot »

What resolution / codec / settings will give me FULL SPEED playback? Quality / File Size / Resolution is not that important right now.
User avatar
Itaintrite
Posts: 54
Joined: Fri Jul 15, 2005 12:32 pm

Post by Itaintrite »

Psychocrackpot wrote:What resolution / codec / settings will give me FULL SPEED playback? Quality / File Size / Resolution is not that important right now.
If quality/filesize/res don't matter, might as well convert to mp4 and play from the video vshell.
Ranwanui
Posts: 7
Joined: Sat Oct 15, 2005 10:33 pm

Post by Ranwanui »

I compiled the ffplay_resample , it tall me that "jpeglib.h not found";
then, I add "usr/include" into Makefile (libjpeg-6b-26,jpeglib.h in this dir) ;

so , it can find jpeglib.h;

But it tall me that "syntax error before ..." , the error in "psputils.h".

Why couldn't I complete this operation??

The version of libjpeg is too old??

or I would recompile libjpeg with PSP tools??

HELP ME !!
Ranwanui
Posts: 7
Joined: Sat Oct 15, 2005 10:33 pm

Post by Ranwanui »

Ranwanui wrote:I compiled the ffplay_resample , it tall me that "jpeglib.h not found";
then, I add "usr/include" into Makefile (libjpeg-6b-26,jpeglib.h in this dir) ;

so , it can find jpeglib.h;

But it tall me that "syntax error before ..." , the error in "psputils.h".

Why couldn't I complete this operation??

The version of libjpeg is too old??

or I would recompile libjpeg with PSP tools??

HELP ME !!

I down jpeg from svn ,
then it works.

Thanks for ChaosKnight.
Post Reply