Did a little debugging under XP in Vmware. Found one bottleneck and an error. Seems that the python sendresponse http method is kind of slow under windows, so added a simple hack. Also you have to use O_BINARY ( what is this shit…) for lowlevel fileio under Windows. Was able to stream a DVD from the Vmware Windows. No Stutter, everything smooth.Hope that Windows User are happy now 😉

Binary

Made a binary release of the network enabled PMP Mod M4g3 media player. Since i don’t use Windows i can’t deliver an windows tested pmp server script.

Some Tips and Tricks:

  • Use an static ip address
  • Double check your PSP WIFI Setug
  • Choose which WIFI Setup to use and the edit con flag in pmp.ini, which is an index to your WIFI Setup, so first WIFI config implies con=0;
  • Check your remote server script with wget or curl
    http://localhost:3333/open?filename=movie.avi&flags=O_RDONLY"
  • Enable the debug flag in pmp.ini
  • Stay close to your Access Point if you Test for the first time.

Source

Binary

Added Network Support to PMP Mod so that you can use your PSP as a streaming client. Basically all lowlevel IO calls are mapped to my network enabled io functions. I use a simple python based HTTP Server as backend. This version is in ‘Proof of concept’ state, so don’t expect eye-candy or a userfriendly interface.

You have to edit net_io.h to customize the WIFI setup. The remote server is included in the tarball and runs under Unix. The major modifications to vanilla PMP Mod are that the main threads needs to run in user land, so that i can handle network io properly.Anyway i had to switch to a different Button to exit PMP Mod, ‘Home’ doesn’t seem to work from user space. Also i added code to decide on each io operation either to use the normal file functions or the http based network functions, so both file types are support by this version.
Dont’t forget to edit pmpmod.c and enter your location of pmp movies on your remote computer. You need libcurl for psp to compile, a patch can be found at forums.ps2dev.org

I get around 500Kbytes/s network throughput,so i had no problem to stream a ripped DVD via network. So if you are watching 800kbit movies, libcurl needs around 0.18 seconds to pull the data. Since IO is done in a dedicated thread this has no impact on the decode performance. Iam not an expert in this encoding stuff, but i was really impressed how good this is working,with this dumb io-call-to-http-interface.

pmp_mod

Picture 1

Source

Added support for the PMP Container format used by PMP_MOD. The perl based muxer is included in this package.

To use the PMP Container format you have to define this variables in the python script.

  • PSPPMPPATH = “/psp/video”
  • PMPMUX = “pmpmuxer.pl”

Encode video: python psp.py -m pmp -i file.mpg

Encode video and cleanup: python psp.py -m pmp -i file.mpg -c

Encode only 10 sec: python psp.py -m pmp-i file.mpg -c -d 10

Source

Made quick and dirty Python script to convert videos and pictures for the PSP. Iam using FFmpeg and Imagemagick You have to edit this variables to make the script suitable for your system.

  • PSP_MOUNT = “/mnt/psp”
  • TMPFILE = “./pspvideo”
  • FFMPEG = “/usr/bin/ffmpeg”
  • CONVERT = “/usr/bin/convert”

The script will try to mount the PSP and guesses the next free video filename, to avoid overwriting existing files. Also you can specify ‘-c’ to cleanup the PSP before copying the files.

Encode video: python psp.py -m vid -i file.mpg

Encode video and cleanup: python psp.py -m vid -i file.mpg -c

Encode only 10 sec: python psp.py -m vid -i file.mpg -c -d 10

Copy pictures to the PSP: python psp.py -m pic -i folder/

Source

Updated PSP build to reflect lastest changes of the of the Stella project. Currently the PSP build only works when not disabling the Debugger Console during compile time. So this time configure option –disable-developer will leed to a broken build, even when the debugger is not useable on the PSP. This build is done with revison 1426 of pspsdk and libsdl.

Building

To build for the PSP, make sure psp-config is in the path and run:


   ./configure --host=psp 
   make
   make psp-layout
   make psp-upload

Dependencies

Download

Source