FF7 PSX videos

  • Thread starter Thread starter Hellbringer616
  • Start date Start date
Status
Not open for further replies.
emulators upscale? I never really noticed. I just rip the original file off my PSX disc and got the above result (ripped in lossless of course. 800mb of video. 11 files :P )
 
There are several things to consider with the conversion of PSX movies.

1) PSX video converter
The PlayStation could run in two graphics modes: 24-bit or 15-bit. Most games (including FF7) used 15-bit. So all the movies are displayed with that lesser color depth. Additionally, the PlayStation (and all emulators) use very fast video decoding methods that sacrifice quality for speed. Using any of the direct converters out there will definitely produce better results than capturing the video in play.

The PlayStation movie data is stored on the disc in a (slightly unique) YUV format. jPSXdec is the only converter that takes advantage of this and performs the least amount of operations on the data by outputting YUV directly (all other converters add the additional operation of converting to rgb). Ultimately we need the data in a YUV colorspace anyway. YUV may also let other video processors perform magical mathematical operations on it in ways that can't be done on just rgb. (I just need to figure out why the colors are coming out differently ;)

2) framerate
Due to limitations of the video formats on PlayStation discs, frame rates often fluxuate slightly during play. This fluctuation didn't exist in the original movies rendered by Square. So which is more accurate: the movies Square made, or the movies you actually watch when playing the game?

For FF7 specifically, I'm pretty sure all the movies originally had a half-NTSC rate of 15000/1001. However only the videos with sound were played back (approximately) at that rate (and probably only because the audio would get out of sync otherwise). Videos without sound were played back at exactly 15 fps.

Note that an upcoming option in jPSXdec will let you output exactly how it is rendered on the PlayStation (or at least my best guess ;).

3) how the audio & video sync
Also due to the PlayStation limitations, audio and video may not have synced up exactly how the original master did. I'm curious now how the PC FF7 videos sync the audio and video. That might give some insight as to how we might want them to sync as well.

4) scaling algorithm
Not very familiar with these technologies, but it sounds like NNEDI2 may be the way to go. I also wonder if there are any other filters worth running the videos through (an example of what filters can do to improve quality).

5) final format
h.264 is pretty much the best quality codec available these days (just ask google to compare xvid and h.264).

6) how to encode
I'm not familiar with any other free h.264 encoders other than ffmpeg. Even the SUPER converter is actually using ffmpeg under the hood (it just provides a pretty interface). The hard part is experimenting with various qscales and/or bitrates to determine the best quality:size ratio.
 
h.264 isn't supported by Aali's driver i believe.. (sadly :( )
As for you image. i can do that. But i'm trying to make it look less like crap at super high resolutions. (which if we remake a lot of the backgrounds will make my life A LOT easier) But thanks for the info. maybe i'll get off my lazy butt and get to work XD
 
emulators upscale? I never really noticed. I just rip the original file off my PSX disc and got the above result (ripped in lossless of course. 800mb of video. 11 files :P )
Out of curiosity, do the lossless videos work in ff7?
 
no idea. you'd have to ask ali that one. but I was using losses until I finished residing/filtering them then I was playing to switch to a high quality code
 
well h264 lossless doesnt work but there are other codecs that are lossless that do work (but to be honest most of them give a huge output file for very small video like for example when i used a PNG lossless video codec i ended up with a 2GB opening) like SNOW or WMV lossless and hell of alot of uncompressed lossless codecs (just google them if your interested in those).
I also tried using a emulator for the videos before but it was hell of alot more work to try and capture them then it was to just rip them from the PSX CD's since you dont just capture them you have to have the extact right amount of frames and even if you use a frame limiter in the emulator the length of the video still seems very slightly different which then means you have to either miss frames out or add some to get the desired amount. And then there was like you said the problem of the characters being on screen while videos are playing. But this method i supose could be usefull for the sound since the PSX videos have some sound but not music (this is shown in the opening since the train still makes noise but no opening music),
When i did the opening with siefer we just remuxed music into the video's so we could use 48hz music from various websites.
 
PS1 videos are at different framerates. The video data is encoded into the files on the PS1 disk. The key part that many miss is that the PS1 video files cannot be read directly using windows from the original CD. You have to extract the original data from the ISO image. After that you have to parse the video/audio data. The video data is actually designed on 2K sector sizes but the audio data uses 2304 sector sizes. They used the CDI standard (Mode 2) for the interleaving of the data basically. You can split the data streams if you know that much.

What to do with the video streams would be the next 'issue'. As essentially you need to decode the video (which has a specific matrix to transform the motion JPEG DCT data) and then the audio is ADPCM (standard PS1 stereo fortunately). Once you have 'real' raw data. THEN You can do something with it.

I suggest looking around for AVI synth filters (if you can find then) and use AVI synth instead of those clunky GUI based tools.  AVI synth allows you to do some extremely complex filtering without fiddling with YAGI (Yet Another GUI Interface).  However AVI synth is not easy stuff, then again redoing the entire video sequence is not something you can do easily either.

Now if you wanted to go insane you could use the video information as key data points and reproduce the base data used to generate the original video. Even more complex and difficult work. SOME of the video's have mixed in character animation, that can give information on surface locations etc, as the characters are moving on a 3d surface.  In any case no matter what you do to render new video won't be an easy task.

If you have blender skills you could look at blender as your CGI tool for redone video I suppose.

Cyb
 
as team avalanche slowly starts on remaking the prerendered backgrounds, once we have enough we'll probably be rerendering certain cutscenes, but in the meantime, it'd b fun to figure this all out.
 
as team avalanche slowly starts on remaking the prerendered backgrounds, once we have enough we'll probably be rerendering certain cutscenes, but in the meantime, it'd b fun to figure this all out.
I wonder which is more daunting of a task... remaking the prerendered backrounds, or remastering every FMV, frame-by-frame...?
according to my calculations, there's a total of 47,040 frames. Of course, doing it frame-by-frame would be a *really* inefficient way of doing it...

At any rate, I'm looking forward to progress on this!  ;)
 
If the FMV's have characters in them then finding the location of things is easier (as they have a sort of walk mesh)

The background images ALL have walk meshes, I suggest working from that perspective. It is entirely feasible to create 3d content that is rendered to the FF7 data format for backgrounds for each scene. It might be slow and complex but you can then make the output content on any scale. I use POV for a lot of stuff like that. I gave up using Open GL because I would get caught up in the OpenGL idiosyncrasis instead of working on creating the 3d data sets to be viewed. The later is what I wanted to do not learn open GL. However OpenGL turned out to be too much fun (go figure). Erstwhile reality is I just need to extract data to mesh data for POV. 

Back to the Avalanche project, good fortune.

Redoing the movies is possible, if you have the background scene for the first background in the game done in 3d then you have a good portion of the opening movie done.
Things you would need to make are the Shinra building (needed for a bunch of backgrounds) the reactors (you need those for a few of your backgrounds anyhow). Bascially as you make data sets and styles they can be reused in animated parts just as easily. Hand drawn although potentially easier is not scalable like 3d data.

if you aren't sure what I'm talking about try povray.org. Lots of good stuff you can do with it.

Cyb
 
H264 now supported on 0.7.4,
0.7.4 has broken movies but H264 video are supported.
So i tried the movie plugin from 0.7.4 on 0.7.3 and it gives H264 video support on 0.7.3.
so anyone who wants to use h264 video just install 0.7.3 then download 0.7.4 and extract just the
/plugins/movies/ffmpeg_movies.fgp
and overwrite the old one from 0.7.3 and your done.
 
as team avalanche slowly starts on remaking the prerendered backgrounds, once we have enough we'll probably be rerendering certain cutscenes, but in the meantime, it'd b fun to figure this all out.
I wonder which is more daunting of a task... remaking the prerendered backrounds, or remastering every FMV, frame-by-frame...?
according to my calculations, there's a total of 47,040 frames. Of course, doing it frame-by-frame would be a *really* inefficient way of doing it...

At any rate, I'm looking forward to progress on this!  ;)
Well, as we're progressing, its turning out to not be /that/ hard to make backgrounds, though it is time consuming. After the scene i'm working on now, i'm going to work on the bombing mission segment, which as Cyberman said, comprises a great deal of the opening cinematic. That coupled with shinra hq, and we'll have most of the resources we need to render the first few cinematics. as to camera angles... once you have the keyframes down there isnt much else to do. insert particle effects and lighting! :P
 
Im about to rip my PSX videos using PSXMC.  Then throw them into Sony Vegas and see what the best quality I can get with a 3x higher res is.   Hopefully the new movie plugin supports h.264 AAC as an mp4.

960x720 sounds good right?

I might check out AVIsynth if I cant get anything good going
 
Output at whatever 3 times the resolution is. i think 1280 x 876 or something like that is the "native" at 3 or 4 times
 
I was sort of hoping for a general consensus on the resolution.  3x is 960x720  4x is 1280x960.


4x then?  It makes no difference to me, my computer is fairly high end.
 
i dunno what average is, I play at 1440x1080 (5x) so the closer to that the better haha, i think 3x is average, or 4x
 
obsesbear i have tried a mp4 created with meGUI and it had a few audio problems but the video was fine but that was only with that program so please let me know how it goes with "Sony Vegas".

well the native PSX video resolution is 320x224 so
1x320x224
2x640x448
3x960x672
4x1280x896
5x1600x1120
 
obsesbear i have tried a mp4 created with meGUI and it had a few audio problems but the video was fine but that was only with that program so please let me know how it goes with "Sony Vegas".

well the native PSX video resolution is 320x224 so
1x320x224
2x640x448
3x960x672
4x1280x896
5x1600x1120
Oh yeah, I keep forgetting it's 224 and not 240.

If it doesn't work I can always convert the mp4 over to avi in SUPER... right?  That should work.  Ill post back results.  Still ripping all the videos right now
 
yes i already tried that with super and it does work. Just stream copy video and audio into AVI, and if you still have problems just stream video and reencode audio into AAC main (for some reason AAC LC gave me problems but then again this could be a unique problem to me)
 
yes i already tried that with super and it does work. Just stream copy video and audio into AVI, and if you still have problems just stream video and reencode audio into AAC main (for some reason AAC LC gave me problems but then again this could be a unique problem to me)
Saw your post in Custom Driver... why don't you ask seifer to come back over here.  I mean, if he's already doing this... I see no need to waste my time on it.  If memory serves me correctly, he was quite the perfectionist and will have all of these done in no time.
 
Status
Not open for further replies.
Back
Top