View Full Version : Converting DVD to PSP... a manual way?
batfastad
31st January 2007, 02:40
Hi everyone
I've owned a PSP and I've followed so many guides to converting video to be playable - some successful - but others not so.
It really shouldn't be this hard/time consuming to get this to work (if I was at Sony I'd make damn sure the PS3 had the ability to encode a DVD and copy it to the PSP via USB... but that's something completely different...:scared:)
The annoying thing is, some of the methods only work some of the time on some of my DVDs.
I've tried WinAvi PSP converter, but I've had quality issues, and audio sync problems.
I've tried DVDFab but the audio sync has been a particular problem.
I've also tried pspvideo9 but I get mainly sync problems, or it just refuses to complete or work on my input file.
Of those programs though, when I have managed to get a playable file the quality I got from pspvideo9 was great.
But I guess that's down to the way it gives users such fine adjustment of res / bitrates.
I usually rip the DVD in IFO mode with DVD decrypter, with no file splitting. If DVD Decrypter can't handle that DVD then I've used a trial version of DVDFab to rip, then joined the VOB files with the windows copy /b command into a .mpg file.
But with pspvideo9 4/5 times it doesn't convert, or the PSP can't play it, or the audio's out of sync.
Even using the same settings with different DVDs.
I was basically wondering if there was a 'best way' to go from DVD to the PSP?
One that works with all DVDs, all the time?
I'm not really that interested in converting xvid / divx to the PSP at this stage.
I'd like just to be able to rip a DVD and watch it on a plane or something!
Doing a google search brings up so many paid for tools and utilities for DVD-PSP conversion and I wondered if anyone had found one they'd recommend?
Don't really want to spend $30 to find out that it only works 2 in 5 attempts!
Or is there a completely manual way using a script I just make?
I guess that's what pspvideo9 does, but maybe if I control the whole process I'd be able to eliminate many of the times the conversion doesn't work?
Any suggestions?
Thanks
Ben
ilovejedd
31st January 2007, 15:39
Quite frankly, I wouldn't recommend any of those paid programs. The few I've tried (ImTOO and another one, forgot the name) had audio sync issues, aside from worse quality than ffmpeg. True you can try them out but it's quite possible to come across a DVD later which would have issues with the converter you bought and you'll find that you just wasted $30 on something that doesn't work as well as you've hoped.
I use a combination of DVD Decrypter, DGMPGDec, AviSynth and 3GP_Converter (http://www.nurs.or.jp/~calcium/3gpp/) (basically an ffmpeg front-end like PSPVideo9) to create videos for my PSP. All are freeware/open source and so far I haven't had any audio sync issues with DVD conversions... at least none that are noticeable for me. Oh, and for DVDs that don't work with DVD Decrypter, use RipIt4Me.
Process:
1) copy DVD to hard drive with DVD Decrypter (IFO mode, file splitting - none)
2) run decrypted VOB through DGIndex (DGMPGDec) with default settings (Honor Pulldown Flags, Correct Field Order, etc), except Audio Output Method -> Decode AC3 Track to WAV
3) AviSynth script (I named this Template.avs and put inside DGMPGDec folder for automatic script generation):
video = mpeg2source("__vid__").fielddeinterlace()
audio = wavsource("__aud__").amplify(5)
audiodub(video,audio)
4) drag and drop AviSynth script to 3GP_Converter and wait for it to finish converting
sample Transcoding.ini settings:
[Item0]
Title=AVC 368x208/512kbps AAC Stereo/128kbps
TitleE=AVC 368x208/512kbps AAC Stereo/128kbps
Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -title "<%Title%>" -timestamp "<%TimeStamp%>" -bitexact -vcodec h264 -coder 1 -vlevel 21 -bufsize 128 -g 250 -s 368x208 -r 29.97 -b 512 -passlogfile "<%OutputFile%>" -pass 1 -an -f mp4 "<%OutputFile%>.MP4""
Command1=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -title "<%Title%>" -timestamp "<%TimeStamp%>" -bitexact -vcodec h264 -coder 1 -vlevel 21 -bufsize 128 -g 250 -s 368x208 -r 29.97 -b 512 -passlogfile "<%OutputFile%>" -pass 2 -acodec aac -ac 2 -ar 48000 -ab 64 -f psp "<%OutputFile%>.MP4""
Command2=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -f image2 -ss 00:02:05 -vframes 1 -s 160x120 -an "<%OutputFile%>.THM""
Command3="rm "<%OutputFile%>-0.log""
I just keep the framerate at 29.97. Less issues (compatibility, sync, etc) that way.
batfastad
6th February 2007, 18:04
Hi ilovejedd
Many thanks for the info. Sorry for not replying sooner.
I wanted to try and stay clear of those paid-for programs.
All the ones I've tried so far have come unstuck on different DVDs.
Great suggestion for RipIt4Me... just what I was looking for!
I am just setting up the programs to give this a try... but had a couple of initial questions first.
1) The version of DGMPGDec I downloaded was this (v1.4.9 beta13)...
http://www.free-codecs.com/DGMPGDec_download.htm
Is that correct?
I also came across this and I'm not sure if it's different...
http://neuron2.net/dgmpgdec/dgmpgdec.html
2) I'm in the UK so all my DVDs are PAL Region 2.
Which is 25fps - 4fps lower than the PSP supports and NTSC.
Could this be causing my audio sync problems?
Every second my video would be running 4 frames ahead of the audio would it not?
Does this process insert extra frames to give me a 29.97 framerate?
EDIT: Though this can't be the case - I have successfully converted a couple of PAL 25fps DVDs with pspvideo9 with no probems!
3) I've been using DVDFabPro to rip DVDs that DVD Decrypter cannot handle, but unfortunately there's no option to turn off the VOB splitting.
I've been just joining them back together with the following windows cmd...
copy /b vob1.vob + vob2.vob + vob3.vob outputFile.mpg
Is that acceptable?
Or do I need to rename the outputfile to be .vob rather than .mpg?
EDIT: Also I just tried ripping a DVD with RipIt4Me and it seems to automatically rip as File mode in DVD Decrypter and not IFO - so I can't turn file splitting off.
Can I just concatenate the files with the windows command above?
I have tried with AviSynth scripts before, but got confused as to their operation. Hopefully I can crack it this time!
Thanks
Ben
ilovejedd
6th February 2007, 22:18
I suggest using the one on neuron's site. He is the developer. I'm still using v1.4.8. I haven't upgraded yet as I've never had any problems with it so far.
I think newer PSP firmware can handle 25fps so maybe you can just change that parameter. I stick to 29.97 because I work mostly with NTSC videos, although I don't think that's your problem.
batfastad
6th February 2007, 22:55
Thanks for the reply.
Yeah I'll get the one from Neuron's site.
I'm a bit stuck now though, I ripped the DVD with RipIt4Me but it did it in File mode it appears, with all streams captured, and with file splitting enabled.
With RipIt4Me how do I get it to run without splitting the files?
Can I just combine them using the windows cmd command above?
foxyshadis
6th February 2007, 23:34
You can, but do you need to? DGIndex wil automatically detect and concatenate them, as long as they're numbered properly. (ie, as on the DVD.)
ilovejedd
6th February 2007, 23:44
Yup, what he said. You'll just need to figure out which set of VOB files contain your main movie.
From the DGIndex manual:If you open more than one file, their contents will be concatenated in the order in which the files are listed in the File List dialog.
batfastad
7th February 2007, 01:51
Ah ok - doing it that way makes it easier.
So if I load up all the VOB files into that DGMPGDec thing
Then where do I click / press in DGMPGDec to start it going?
I've copied your AviSynth script...
video = mpeg2source("__vid__").fielddeinterlace()
audio = wavsource("__aud__").amplify(5)
audiodub(video,audio)
... and pasted it into a file called Template.avs in the DGMPGDec folder.
Checked the option in the Audio > Output Method menu to Decode AC3 Track To Wav
Where do I select which audio tracks I want? On this particular DVD audio track 1 is the commentary, but I don't know how to tell which one's which.
Where do I need to click in DGMPGDec to get it to start doing it's stuff?
And what do I do with the AVS script I've put in the DGMPGDec folder?
Also where does that Transcoding.ini file go?
Thanks guys
I'm being a complete moron over this, but cannot wait to get this method working.
ilovejedd
7th February 2007, 05:07
Hmm, not really sure how you can check which audio is which via DGIndex. I open my ripped DVDs using DVD Shrink to check which audio I want, and then select the appropriate track in DGIndex.
I would suggest unchecking Options >> Use Full Paths. Makes it easier to move your project around. Also, I think it uses the Template.avs automatically but just in case it doesn't, you can select it via Options >> AVS Template. After you're done with the settings, just hit F4 (shortcut to File >> Save Project) and save (in the same directory as the VOB files if Use Full Paths is disabled).
Transcoding.ini goes inside the folder where you extracted 3GP_Converter. When you run 3GP_Converter the first time and it doesn't find the settings file, a setup program will ask you which language (default is Japanese) and transcoding profile to use. There are 2 profiles included for the PSP. PSP and PSP Direct. I just use plain PSP. The only difference between the 2 is that PSP Direct renames the output files as M4V#####.MP4 for MPEG4 SP and MAQ#####.MP4 for MPEG4 AVC where ##### is a random number so you can just put it directly on your PSP. Makes for a big headache organizing batch encodes, if you ask me.
Anyhow, just use one of the included encoding profiles and edit as you see fit. There's a very good wiki for the program but it's in Japanese so it's a pain to navigate. By the way, which firmware are you using for your PSP?
batfastad
13th February 2007, 02:33
Hi ilovejedd
I have made a bit of progress.
I have let the DGIndex do it's stuff - takes about 20mins.
I unticked 'Use Full Paths' as you suggested - seems to make things lots easier with the organisation of the resulting files.
So I end up with a .d2v file, another .avs file, and a .wav file.
1) Now what do I do to process those in 3GP_Converter?
2) I assume the .amplify(5) bit in the .avs script increases the volume of the audio.
Is that correct?
Does the 5 mean by 5%?
With the few successful encodes I've done so far I've found the audio very quiet so I'd like to amplify the audio something like 50%. Is this possible?
I have the feeling I'm almost there :D
BTW: PSP Firmware is 3.10 - updated about 10 days ago.
Thanks for all your help so far!
Ben
ilovejedd
13th February 2007, 19:30
.amplify(5) is, I think, by 500%, although I'm not too sure. Maybe you can try playing around and convert a few short clips to get an idea how much the audio gain is. Personally, I find 5 is suitable enough for me. ;)
Once you have 3GP Converter open, and assuming it's been properly configured, just drag and drop the .avs file to the 3GP Converter window and that's it. Oh, just need to ask, you do have AviSynth installed on your PC, right? If not, you can download it from the software here on Doom9.
batfastad
14th February 2007, 01:10
Hi ilovejedd
Thanks for all your help so far.
Maybe I'll get this cracked soon!
I checked I had the latest AviSynth, I uninstalled the existing one and installed the latest from avisynth.org - the link to AviSynth on the Doom9 software page just gave me a 404 error.
So dragging the .avs file into 3GP converter gave me an error in the error window saying...
failed to open avs : Script error: there is no function named "mpeg2source"
After hours of digging around Google, these forums etc I added this to the top line of the .avs file...
LoadPlugin("C:\Program Files\DGMPGDec\DGDecode.dll")
Then I encountered an error that I am unable to solve...
Script error: there is no function named "fielddeinterlace"
Any suggestions on this one?
Google's not been very helpful in this case.
I was beginning to think my installation of AviSynth might be missing a bunch of plugins or something.
I have only the following 3 files in my AviSynth 2.5\plugins folder...
colors_rgb.avsi
DirectShowSource.dll
TCPDeliver.dll
Are there others I need?
The problem is I've installed and uninstalled so many video utilities and converters and encoders over the years I think everything might be a bit messed up. What's annoying is I thought AviSynth would be a stand-alone installation.
On another note - once I've got AviSynth working it seems like the most incredible utility ever! Once I know some commands in that I'll be able to do all kinds of stuff to my PSP videos.
I'm guessing I can adjust the cropping of the video to remove black lines using some careful AviSynth scripting?
EDIT: I've just removed the .FieldDeinterlace() part from the script and 3GP Converter seems to be doing something - whether the video will play on my PSP without that function is another thing.
I'm guessing it will take several hours to complete, but I'll report on what happens.
How do I tell if my video needs de-interlacing?
It's a regular PAL Region 2 copy of Layer Cake I'm trying to run at the moment.
batfastad
14th February 2007, 04:11
Well that appears to have worked!
With no sync issues, fantastic quality, about 4hrs of encoding, and coming in at only 500MB!!
Awesome :D :D
Still interested to know if there's a potential solution to that FieldDeinterlace problem above, or if I am missing a bunch of plugins for AviSynth.
One final thing... what commands are available for the Transcoding.ini file?
Thankyou so much ilovejedd for all your help on this.
It's been bugging me for ages that I can't get DVDs onto my PSP on a consistent basis, hopefully this will work ok in the future!! :D :D :D
My flight to Indianapolis in a couple of days will be a bit more interesting now! :D
Right... time to try another one!!
foxyshadis
14th February 2007, 05:36
Basically yeah, missing plugins. You can get most from warpenterprises, if you google for that, although they're not always the latest versions. If you check the avisynth usage forum, you'll find hundreds of threads on different ways you can improve the quality of your video for re-encoding.
ilovejedd
14th February 2007, 22:02
LoL, I forgot you needed decomb.dll for FieldDeinterlace(). I got it from neuron's site, iirc. That's just for deinterlacing the video since I use the same script to convert to XviD for my SAP. Since you're resizing, the lack of FieldDeinterlace() is unnoticeable. However, if you open the .avs with and without FieldDeinterlace() file in Media Player, you'll see the difference. So yeah, you can get away with not having FieldDeinterlace() in your script whether your source is PAL or NTSC.
I've got a bunch of plugins in my AviSynth plugin folder (including dgdecode.dll and decomb.dll) so they load automatically and I don't have to bother with LoadPlugin("plugin.dll").
You can use any command line program in Transcoding.ini. You can even use your own build for ffmpeg (it just won't interface as well with the status update in the 3GP Converter window). Heck, you can even do the whole x264, besweet, nero aac, mp4box (+atomchanger for PSP 2.71 & below) shebang but I find that too much of a hassle just for watching on my PSP.
Here are variables available for Transcoding.ini. They're pretty much self-explanatory
<%AppPath%> path where 3GP_Converter.exe is installed
<%InputFile%> full path of input file (includes filename)
<%InputFilePath%> path of input file (no filename)
<%InputFileBase%> base name of input file
<%InputFileExt%> extension of input file
<%OutputFile%> path of output file (includes input file base name)
<%OutputPath%> path of output file (no filename)
<%TemporaryFile%> temporary file
<%RandomNumber5%> 5 random numbers
<%Title%> same as base name of input file (?)
<%TimeStamp%> self-explanatory
Transcoding.ini setting (2-pass):
[ItemN]
Title=setting name here (default or Japanese)
TitleE=setting name here (English)
Command0=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -title "<%Title%>" -timestamp "<%TimeStamp%>" -bitexact -vcodec h264 -coder 1 -vlevel 21 -bufsize 128 -g 250 -s video resolution -r video framerate -b video bitrate -passlogfile "<%OutputFile%>" -pass 1 -an -f mp4 "<%OutputFile%>.MP4""
Command1=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -title "<%Title%>" -timestamp "<%TimeStamp%>" -bitexact -vcodec h264 -coder 1 -vlevel 21 -bufsize 128 -g 250 -s video resolution -r video framerate -b video bitrate -passlogfile "<%OutputFile%>" -pass 2 -acodec aac -ac audio channels -ar audio sample rate -ab audio bitrate -f psp "<%OutputFile%>.MP4""
Command2=""<%AppPath%>\cores\ffmpeg" -y -i "<%InputFile%>" -f image2 -ss 00:02:05 -vframes 1 -s 160x120 -an "<%OutputFile%>.THM""
Command3="rm "<%OutputFile%>-0.log""
N: item number in the drop down settings list, first item is 0, second is 1, third is 2, and so on
Since you're using the original 3.10 firmware from Sony, the following are settings which you can use
video resolution: WidthxHeight where Width x height <= 76800
common resolutions:
4:3/1.33 320x240
16:9/1.78 368x208
2.35 416x176
video framerate: self-explanatory, search this forum for PSP accepted framerates
video bitrate: in kbps, must be < 768 or = 1500
audio channels: 1 for mono, 2 for stereo
audio sample rate: must be 48000 for MPEG4 AVC
audio bitrate: bitrate per channel (weird glitch with aac)
I'm not going to expound on ffmpeg. That would be way too much info and this post is extremely lengthy as it is. Anyhow, here's a sample Transcoding.ini for your perusal.
batfastad
19th February 2007, 06:00
Hi
Thanks for all that info. This should hopefully be really useful to other people too, I never found a tutorial for this method by searching google.
I can also confirm that I've managed to convert another 2 DVDs using this method, which is just fantastic!
It just works, which is great!!! Way better than any $30 software!
Thanks so much for all this info - AviSynth might be the greatest bit of software EVER :D :D :D
ilovejedd
19th February 2007, 07:02
While I agree that AviSynth is just plain awesome, let us not forget that neuron2 deserves much praise for his work on DGMPGDec. :)
Ffmpeg, by itself, will also convert decrypted vobfiles directly to PSP format. This method is significantly faster than going through DGMPGDec, as not only are you skipping the indexing process, encoding of MPEG2 files in ffmpeg is faster than encoding of raw video (which, in essence, is the AviSynth input). So far, however, the only method which has given me 100% a/v sync is the one detailed above. Hence, whenever I'm ripping DVDs and encoding for my standalone or PSP, I always run the decrypted VOBs through DGIndex. For someone who encodes whole seasons of TV shows, I'd really rather not waste CPU cycles for something I'll be deleting later due to bad audio sync. ;)
You might also want to check the PSP and x264 thread in the MPEG-4 AVC forum. Using the method there gives you much better customization and quality control than ffmpeg does. Plus, I know neuron2 himself recommends using a separate program such as BeSweet to handle AC3 conversion. I just prefer this method since I'm still using 2.71 firmware (via DevHook) and I've never been able to get atomchanger to work. Since you're using higher firmware, you have no need for atomchanger and therefore, have one less headache to worry about. :D
batfastad
23rd February 2007, 02:03
Awesome!!
Another 3 DVDs converted and watched. This is getting good!!
One final thing - how do I convert an xvid AVI file?
My theory is that since AviSynth basically tricks 3GP_Converter into thinking it's an AVI file, I just drop the .avi onto 3GP_Converter, and it will process using those Transcode.ini settings that work with the PSP.
ilovejedd
23rd February 2007, 17:45
LoL, the particular build of ffmpeg used with 3GP_Converter has native support for the following formats:
File formats:
E 3g2 3gp2 format
E 3gp 3gp format
D 4xm 4X Technologies format
D RoQ Id RoQ format
DE ac3 raw ac3
DE alaw pcm A law format
DE amr 3gpp amr file format
DE asf asf format
E asf_stream asf format
DE au SUN AU Format
DE audio_device audio grab and output
DE avi avi format
D avs Avisynth script
E crc crc testing format
D dts raw dts
DE dv DV video format
E dvd MPEG2 PS format (DVD VOB)
D ea Electronic Arts Multimedia Format
DE ffm ffm format
D film_cpk Sega FILM/CPK format
D flic FLI/FLC animation format
DE flv flv format
DE gif GIF Animation
DE h261 raw h261
DE h263 raw h263
DE h264 raw H264 video format
D idcin Id CIN format
DE image image sequence
DE image2 image2 sequence
DE image2pipe piped image2 sequence
DE imagepipe piped image sequence
D ipmovie Interplay MVE format
E ipod iPod MP4 format
DE m4v raw MPEG4 video format
D matroska Matroska file format
DE mjpeg MJPEG video
DE mmf mmf format
E mov mov format
D mov,mp4,m4a,3gp,3g2 QuickTime/MPEG4 format
E mp2 MPEG audio layer 2
DE mp3 MPEG audio layer 3
E mp4 mp4 format
DE mpeg MPEG1 System format
E mpeg1video MPEG video
E mpeg2video MPEG2 video
DE mpegts MPEG2 transport stream format
D mpegvideo MPEG video
E mpjpeg Mime multipart JPEG format
DE mulaw pcm mu law format
D nsv NullSoft Video format
E null null video format
DE nut nut format
D ogg Ogg
E psp psp mp4 format
D psxstr Sony Playstation STR format
DE rawvideo raw video format
D redir Redirector format
DE rm rm format
E rtp RTP output format
D rtsp RTSP input format
DE s16be pcm signed 16 bit big endian format
DE s16le pcm signed 16 bit little endian format
DE s8 pcm signed 8 bit format
D sdp SDP
D shn raw shn
D sol Sierra SOL Format
E svcd MPEG2 PS format (VOB)
DE swf Flash format
DE u16be pcm unsigned 16 bit big endian format
DE u16le pcm unsigned 16 bit little endian format
DE u8 pcm unsigned 8 bit format
E vcd MPEG1 System format (VCD)
D vmd Sierra VMD format
E vob MPEG2 PS format (VOB)
DE wav wav format
D wc3movie Wing Commander III movie format
D wsaud Westwood Studios audio format
D wsvqa Westwood Studios VQA format
DE yuv4mpegpipe YUV4MPEG pipe format
In short, you can drag and drop the above files to 3GP_Converter and it will convert them. So yeah, you can drop an AVI file to 3GP_Converter and it'll transcode it to whatever format you prefer. You'll notice it's much faster, too, since there are no color space conversions, etc. For multi-audio files such as MKV and VOB, it converts the first audio stream it sees unless you specify which stream(s) to use with the -map option.
batfastad
27th February 2007, 17:08
Awesome.
Thanks for all your help!! :D
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.