Encoding PSP movies with Wine.

Joshua Walker halkun2002 at yahoo.com
Mon Mar 28 00:20:54 CST 2005


Encoding PSP movies with wine.

Well, the Sony Playstation Portable (PSP) is out in
the U.S, and one of the cool things you can do with it
is encode movies for playback on the system. Sony
hasn't released their encoder yet, but you can use a
program called ffmpeg to convert videos to the quirky
PSP Mpeg4 format...

...kinda

The Linux version of ffmpeg can encode PSP movies,
however the id tag is hardcoded, and you don't get any
data about the Name of the movie or it's length or
anything. (It's just called "-" in the browser.

You have to pull from the cvs version, the homepage is
here...
http://ffmpeg.sourceforge.net/index.php

There is a Japanese fork of ffmpeg for win32. As it's
GPLed software, the source was released. This includes
all kinds of cool hacks for better streaming and also
support for the ID tag for the PSP. Sadly, the id tags
require Unicode, (As it's a Japanese machine) ,  and
the hack involves a call to MultiByteToWideChar() to
convert the title to something the PSP can display.
Last night I tried to backport the hack to the Linux
version using mbtowc() and failed horribly. My code-fu
is much too weak.

The Japanese fork is here
http://www.nurs.or.jp/~calcium/3gpp/sources/ffmpeg-050310-0.30.tar.gz


and a patch to update it to .31 
http://www.nurs.or.jp/~calcium/3gpp/sources/ffmpeg_patched_diff_031.tar.gz


You can also grab a compiled win32 version here.
http://www.nurs.or.jp/~calcium/3gpp/3GP_Converter031.zip

The program is located in the /cores dir.

So, I as I couldn't "fix" the Linux version, I gave
wine a spin and came up dead in the water. I'm afraid
I don't have the debug version of wine installed, but
here's what I can give you as output

halkun at dokkun:~/temp/3GP_Converter031/cores> wine
./ffmpeg.exe
fixme:ver:VERSION_GetLinkedDllVersion Unknown EXE OS
version 4.0, please report !!
err:comm:GetCommState tcgetattr or ioctl error
'Invalid argument'
fixme:ntdll:NtQueryObject Unsupported information
class 1
fixme:ntdll:NtQueryObject Unsupported information
class 1
fixme:ntdll:NtQueryObject Unsupported information
class 1
Segmentation fault
halkun at dokkun:~/temp/3GP_Converter031/cores>

Well, ending on a segfault is pretty much writes that
program off the list. I'm also noticing it's calling
an undocumented function in ntdll. Anyone want to take
a go at this to see what's happening?

It would be nice to get PSP encoding to work right
under Linux.

Oh, my version of wine is 20050310.

-Halkun




More information about the wine-devel mailing list