PS3 H.264 Conversion Guide

Original Page URL: http://www.digital-digest.com/articles/PS3_H.264_Conversion_Guide_page1.html
Author/Publisher:
Date Added: Nov 27, 2007
Date Updated: Jan 9, 2010


The PlayStation 3, while struggling slightly in the gaming department, is an excellent media player. It supports various video and audio formats, as well as having a built in Blu-ray player. It also supports H.264 playback. H.264 is a very advanced video codec used in Blu-ray/HD DVD, and offers better quality and smaller file sizes than DivX/XviD, at the cost of slightly more processing power (and a lot more encoding time). Processing power becomes less of an issue with the powerful PS3, and with H.264, you can encode your own very high quality HD videos. The Xbox 360 also supports H.264 (you can read the Xbox 360 version of this guide here), but the PS3 has one advantage so far and that's support for 5.1 channel AAC sound tracks (the 360 is limited to 2 channel AAC).

Important: There are actually three methods to get H.264 playback going on the PS3. One is to use MP4, but this means its limited to AAC audio and that unless you have an AAC decoding receiver, you will not get 5.1 audio. The second method first makes a MKV (instead of MP4) file with AC3 (instead of AAC) 5.1 audio, and then using the mkv2vob utility to convert that to a VOB/MPG file. This strange VOB/MPG file (normally they have MPEG-2 video, not H.264 video) will actually play on the PS3, and the advantage is that it can have AC3 or even DTS 5.1 audio and so you get to enjoy 5.1 audio easily. Unfortunately, this type of video file will not allowing seeking. The third method uses newly available tools to create a M2TS transport stream, which will allow AC3 5.1 audio and seeking (but only forward seeking, apparently). The instructions are common for all 3 methods until a certain point the guide (which will contain more information on the 3 methods), where you will then have to choose one of the methods.

Special thanks goes to "Breakthrough" for the M2TS method that he kindly posted on the official PS3 board.

Note that the file produced will have a file size limit of 4 GB if using MP4, so be wary of this limit and split your files accordingly.

Make sure you are able to playback H.264 clips on your computer first. Consult our H.264 Playback Guide if you are unsure.

This guide uses MeGUI to provide the H.264 conversion from a DVD source or from other file formats (AVI/DivX/XviD/MOV/HDMOV - many other formats, such as MPG, are also supported). MeGUI is one of the newer tools that's been designed with H.264 encoding in mind. This guide is very similar to the MeGUI H.264 Conversion Guide, except it simplifies a few things and the H.264/MP4 file produced has PS3 compatibility in mind, and with additional AC3 instructions. It also covers how to stream playback the MP4/VOB/MPG file from your computer to your PS3 (the MP4/VOB/MPG file sits on your computer, and when the PS3 is connected to the same network, it will be able to share and play the files located on your computer) using the TVersity software.

This guide is aimed at intermediate users that already have some knowledge in regards to video conversion. As such, basic knowledge of things such as framerate and resolution is recommended (and since you are here to experiment with H.264, this assumption is not all that unrealistic). You will also need to know some network basics for PS3 to TVersity connection, such as knowing what your network IP address is, configuring your firewall or port forwarding if your computer is not on the same LAN as your PS3.

Software you'll need (all freeware):

Hardware you'll need:

  • PS3 (with firmware 2.01 or above)

Step 1: Installation

If you're using Windows XP, the first thing you need to do before you can even install MeGUI is to download and install Microsoft's .NET Framework version 2.0. It's a fairly large file and installation could take more than half an hour. If you're already using Windows Vista or 7, then the .NET Framework 2.0 is already installed.

The next thing you need to download and install is AviSynth.

If you're using Windows 7, because Microsoft now includes their own codecs pre-installed with the OS, this interferes with the way MeGUI works and you'll need to install compatible codecs (for example, ffdshow) and use the Preferred Filter Tweaker for Windows 7 to change the settings so that the Microsoft codecs won't be used within MeGUI. You can download and install ffdshow (remember to choose the 64-bit version if you're using 64-bit Windows), and then you can download and run the Preferred Filter Tweaker for Windows 7 tool individually, but if you're starting with a brand new Windows 7 system, you might want to install the K-Lite Codec Pack, which works well with MeGUI (I recommend the Full version of the codec pack). If you're using 64-bit Windows (Vista or 7), then you should also download and install the K-Lite 64-bit add-on pack after you install one of the K-Lite packs (Full or Mega). The advantage of using the K-Lite pack is that it installs both ffdshow and the Preferred Filter Tweaker for Windows 7 tool, and in a configuration that is tested to work well.

In any case, once Preferred Filter Tweaker for Windows 7 has been installed, start the tool and in the section where you configure the preferred DirectShow decoding filters for Windows 7, you need to make sure at least the "H.264" option is set so that ffdshow is used, instead of the Microsoft codecs (for those experimenting with VC-1, you need to set its settings to ffdshow as well). If you're trying to load or encode any video format in which MeGUI appears to hang, or give you an error in relation to AviSynth, then you can come back to this tool and ensure the video format is using the ffdshow codec, and not the Microsoft one. Press "Apply" to apply the changes and then exit the application.

Preferred Filter Tweaker for Windows 7


You can now go on and download MeGUI.

Install MeGUI. Start it up and most likely, it will prompt you to update the software used by MeGUI - click "Yes" to launch the update Manager.

MeGUI: Update Prompt


MeGUI: Updater


Press the "Update" button to start the update process - MeGUI will automatically download and launch the install for the required software. Note that when MeGUI asks you to import H.264/XviD/Audio/... profiles, right click and select "Select All" to import all of them (overwrite existing ones if asked). You will most likely get a "1 file had problems" error, this is because the "neroaacenc" software cannot be downloaded automatically from MeGUI due to copyright reasons (it is freeware, but you need to go through Nero's software agreement first before you can download it). You will need to download NeroAACEnc if you want to encode to AAC audio, so if you are looking for AC3 audio, you can skip the following.

To download NeroAACEnc, go to this page and download the ZIP archive. There are several files in the ZIP archive, but the files we need are NeroAacEnc.exe. Extract the .exe files to your "megui\tools\neroaacenc" folder (eg. "c:\program files\megui\tools\neroaacenc\win32\neroaacenc.exe"), creating one if it does not exist.

When all the updates are completed, you can now close the MeGUI updater.

If you've extracted neroaacenc, you might need to access the "Settings" option from the "Options" menu, and go to the "External Program Paths" section. For "NeroAacEnc", use the browse button to locate where you extracted the neroaacenc executable file (eg. "c:\program files\megui\tools\neroaacenc\win32\neroaacenc.exe"). Press "Save" to close the settings window.

Also, MeGUI often doesn't update to the latest x264 version, so you will have to do this manually. First, from within MeGUI, go to the "Tools" menu and select "Settings". Go to the "Program Paths" section and see where MeGUI accesses the x264.exe file.

Then go to our x264 software page and check the latest version - if it is newer than the version listed in MeGUI, download and save the x264.exe to where MeGUI accesses the x264.exe file to replace the old file (usually c:\program files\megui\tools\x264\x264.exe - you might want to keep a backup copy of the old version of x264, just in case the new version isn't compatible with MeGUI). Note that a 64-bit version of x264.exe is also available to download here.



Step 2: DVD/MPEG-2 Conversion

The instructions in this step are for conversion from a MPEG-2 source (eg. DVD, SVCD). If the file you want to convert to H.264 is not a DVD or MPEG-2 source (eg. AVI/DivX/XviD/MOV), you can skip to "Step 3" right now.

If you are using a commercial DVD, you will need to rip the DVD to your hard-drive. Because ripping a commercial DVD may be illegal in your country, we won't cover these steps here.

For more information on all the settings of MeGUI, please refer to the MeWiki website.

The next thing we need to do is to use MeGUI's D2V creation tool to create a D2V file needed for MeGUI/AviSynth to handle MPEG-2 files. This step is required only for MPEG-2 files - all other types of inputs do not require a D2V file and can be loaded straight into AviSynth and as mentioned before, you can skip this step and go to the next page/step (Step 3: AviSynth Script Creator).

Start MeGUI. I like to first clear the job queues of previously finished jobs. This is optional, but it might help to make things clearer. To do this, click on the "Queue" tab and then click on the "Clear" button.

From the "Tools" menu, select "File Indexer". In the "Input File" section, load the first VOB file of the movie titleset (the rest of the files in the set will be loaded automatically - if not). You will get an error message about not being able to find DVD Decrypter generated info files, this is fine (as we did not use DVD Decrypter's IFO mode) and press "OK" to skip this error.

MeGUI: D2V Creator


Select which audio track(s) to demux - you can select more than one track if you want the encoded file to have multiple audio tracks. Alternatively, you can just select the demux all the tracks and then choose the correct audio track(s) later on.

The default save directory is the same directory as your loaded DVD VOB files - change this if you want to. Select both the "On completion load files", "and close" checkboxes and press the "Queue" button. You are now returned to MeGUI - click on the "Queue" tab and press the "Start" button to start the D2V creation. When processing has finished, the status of the queued job will read "Done" and the created D2V file will be loaded into the AviSynth Script Creator ready for the next step. This can take a while, so please be patient - the status window's progress bar may not move, but don't worry, DGIndex is working.

Please note that if for some reason MeGUI refuses to process the VOB series (only processes the first file in the series), then you may have to use DGIndex manually to create the D2V file. This guide can help you do so, and DGIndex is already included as part of MeGUI under the "Tools" folder (for example: C:\Program Files\MeGUI\Tools\DGIndex\).



Step 3: MeGUI: AviSynth Script Creator

For more information on all the settings of MeGUI, ple2ase refer to the MeWiki website.

This step will use MeGUI's AviSynth Script Creator tool (Tools -> AVS Script Creator) to create an AviSynth script. If you followed Step 2, the AviSynth Script Creator tool should already be started with the D2V file created loaded. Otherwise, you'll need to load the media file you want to convert into the "Video Input" section (see hint below about opening files whose formats AviSynth does not natively support, including MOV files).

AviSynth is able to open almost any video file that you are able to play with a Directshow based multimedia player, such as Media Player Classic or Windows Media Player. You may need to select the "All Files" option when opening the file to be able to see it (eg. FLV files). In most cases, you'll need to install a video codec, an audio codec and a splitter filter for the format you wish to convert.

For example, if you want to convert FLV files using MeGUI, you will first need to make sure you have the required video, audio and splitter filters to make FLV files playable in Windows Media Player. A good way to ensure you have all the right codecs and filters installed is to use the K-Lite Mega Codecs Pack. Download the package, and it will ask you to uninstall any existing filters which might interfere, and then install a set that is very compatible with tools like MeGUI. You can find instruction on how to install the K-Lite Mega Codecs Pack here.

The "Input DAR" is the aspect ratio of the input video. In most circumstances, it should be automatically set for you. Anamorphic DVDs will be set to "ITU 16:9", for example.

For DVD sources, press the "Auto Crop" button to remove the black bars from the input video if it has any (most widescreen DVDs will, but most other files won't).

Next, you have to decide whether you need to reduce the resolution of the output video as compared to the input. In most cases, especially converting from DivX/XviD, you do not need to resize it, so uncheck the "Resize" option. For DVD sources, you might need to reduce the resolution, but only if you have file size requirements (eg. to fit a certain amount of video onto 1 CD). For DVD conversion onto a single CD (700 MB) using H.264, you can get away with using the maximum resolution (720x***) - so uncheck "Resize" in this case too.

If you do decide to decrease the resolution, check the "Resize" option and then check the "Suggested Resolution" checkbox too and change the resolution to one that you require. Recommended resolutions for the PS3 include 640x***, 720x***, 1280x*** (720p) and 1920x**** (1080p). In general, you need to ensure the height is a factor of 16 (mod-16) - any height number that is divisible by 16 should be fine, and the resolutions offered by "Suggested Resolution" will ensure this.

MeGUI: AviSynth Script Creator


Click on the "Filters" tab. For films on DVDs, you usually do not need to run a deinterlacing analysis. If the content you have is TV based, then you might need to click on the "Analysis" button to see if the video requires de-interlacing. Select "Source is Anime" if that's what you have.

MeGUI: AviSynth Script Creator


Again, if you followed my advice for keeping the resolution for DVD sources, then you don't need either the resize of the noise filters. Otherwise, if you chose to reduce the resolution, then you can choose how the resize will look like ("Bicubic (Neutral)" is recommended as a middle of the road choice). If the source has lots of noise, you can choose to enable the noise filter and choose how much noise is present in your source (usually not necessary, unless the original source is VHS or something). The other options can be left alone ("Colour Correction" is automatically checked for D2V input sources).

If your source is not DVD, then you can click on the "Edit" tab and edit the AviSynth script manually to enable audio (you don't need to do this with DVD sources if you have followed this guide, since we have already demuxed the audio using D2V Creator). Simply change the "audio=false" entry to "audio=true".

MeGUI: AviSynth Script Creator


Make sure the "On save close and load to be encoded" option and press the "Save" button to save the AviSynth script (by default, in the same directory as the D2V file, the filename is not important). Don't worry too much about the AviSynth Script Creator tool's preview window - it can be a little buggy where cropping and resizing and concerned. After saving, the AviSynth file should be loaded automatically into MeGUI - MeGUI's preview window does work fine and please make sure the video looks alright, especially for DVD sources with cropping/resize.



Step 4: MeGUI: Video Encoding Options

We'll now set up the H.264 encoding options in the x264 encoder. This step has the most options to configure, and this is where PS3 compatibility is determined. This guide won't go into detail about all the options, just the ones you need to ensure PS3 compatibility - and if you need further explanation of the options, refer to our x264 Options Explained article.

In the MeGUI "Input" section, select one of the "x264" profiles for the "Encoder setting" option. We do not need to set a container as we will do that later using the "AutoEncode" function.

MeGUI: Video


The PS3's H.264 video support is limited to the following (you don't need to understand what it all means):

  • AVC Profile: Baseline, Main or High Profiles
  • Maximum bitrate: None specified (although testing shows stuttering occuring above 20 Mbps)
  • AVC Level: 4.2 (although 4.1 or below is recommended)
  • No B-Pyramid and P4x4 support

The "x264: PlayStation 3" profiles are the one that we need and using this one will ensure compatibility with the PS3. If you want to be able to set the output file size, you need to select the "2-pass" profile - all the other profiles will have unpredictable output file sizes as they're either based on encoding speed or output quality. For example, "Balanced" will give you a good balance between encoding speed and quality, but you can choose something like "High Quality" for that extra bit of quality, or "Insane" if you don't mind spending hours to encode just a few minutes of video.



Step 5: MeGUI: Audio Encoding Options

Now it's time to set up the audio encoding options. If you've followed this guide for DVD conversion, then the demuxed audio track we selected in the D2V Creator should already be loaded in (if not, load in the .ac3 file that was created). If you are not converting from a DVD source, then you can either load in a separate audio file or if you edited the AviSynth script (set "audio=true"), then load in the AVS file into the "Audio Input" section (meaning both video and audio inputs are the same AVS file). If you want more than one audio track, right click on this audio aread and select "New Track". If you changed your mind about including an audio track, click on the "X" button to remove the audio from being included.

MeGUI: Audio


Now we select an audio codec to use. The PS3 supports AAC LC (low complexity), up to 5.1 channels. To be able to enjoy 5.1 channel audio, you will need need a sound system that is able to either decode AAC through optical or HDMI input, or if you don't have a decoder for AAC, one that accepts PCM 5.1 through HDMI. If you do not meet these requirements, the audio output will only be stereo. Further instructions will be provided later on in regards to setting up the PS3 to output 5.1 AAC if you do indeed have the equipment to be able to decode AAC or play PCM 5.1. As mentioned previously, there are two alternate methods for making a H.264/AC3 file and if you are following this alternative method, skip to the "Alternative AC3 Method" section below.

Another requirement for 5.1 audio is pretty obvious - your input must be 5.1, otherwise, there's no point in having a 5.1 track. Through AviSynth, MeGUI will be able to detect your audio to be 5.1, but only if your DirecShow based decoders can detect the 5.1 audio. For example, with QuickTime HD inputs I found that I needed to install the QuickTime Alternative software before 5.1 audio gets recognised within MeGUI. With DVD/AC3 inputs, 5.1 tracks will automatically be detected without having to install any other piece of software.

So should you choose to include a 5.1 channel AAC soundtrack even if you do not have the equipment to decode it? Well, I think it's probably worth the trouble since it beats having to re-encode all your video files when you get the equipment to do so in the future. The downside is that the file size will be a bit bigger, but it won't be by much.

Select one of the "Nero AAC" profiles, such as "NDAAC-LC-MultiChannel-192Kbps" as the "Audio profile". Just like the video profiles, you can click on "Config" to edit the profile or create your own - as long as you ensure the "AAC-Profile" is set to "AAC-LC", and "Output Channels" is set to "Keep Original Channels", it should all work with the PS3 and ensure 5.1 output. The only setting you might want to change is the bitrate (192 Kbps should be enough for most encodings, you might want to increase it to 256 to give it an extra high quality).

MeGUI: ND AAC Config


For more information on AAC audio options, please refer to this MeWiki page or this Wikipedia entry.

Alternative AC3 method:

Follow these steps only if you plan to use AC3 audio in your file. Select "FFMPEG AC-3" for "Codec" and press the "Config" button. The codec configuration window should show up.

MeGUI: FFMPEG AC-3 Config


Ensure "Output Channels" is set to use "Keep Original Channels". You can adjust the bitrate to use - 384 kbps is the minimum used by commercial DVD AC3 5.1 tracks, while many use 448 kbps for extra quality. You can press the "New" button and save the current profile (eg. name it "AC3 5.1, 384 kbps") for future use if you wish. Press "OK" to close the codec configuration window.

MeGUI: FFMPEG AC-3 Config - Save Profile


Now proceed to the next step/page.



Step 6: MeGUI: Cutting, Bitrate Calculator and AutoEncode

If you wish to cut your input so that you don't encode the entire video, it is possible to do this using MeGUI's AVS Cutter tool. To launch it, go to the "Tools" drop down menu and select "AVS Cutter". You will be asked to load in your AVS file (the one generated in Step 3) - do it.

MeGUI: AVS Cutter


MeGUI: Preview Cut Position


What's going to happen here is that a list of "zones" need to be added. Each zone has a start frame and an end frame, and all frames in between will be kept (and all frames outside of the zones will be cut). You can either manually enter the desired frame number into the "Start Frame" and "End Frame" input box of the AVS Cutter tool and then press "Add" to add the zone, or use the video preview to skip to the appropriate sections and press the "Zone Start" and "Zone End" buttons to set a start/end frame, and then the "Set" button to add the zone to the list. If you specified multiple zones, you can also specify a transition between the zones (fade is the default setting). Once you are all done, press the "Add cuts to script" button and the cuts will be added to your AVS script. Press "Close" to close the "AVS Cutter" tool.

And now we get to the part of the guide where you have to make a decision (although most likely, you've already made it). As mentioned in the introduction of this guide, there are three methods of producing a H.264 file for the PS3, and two of these methods allow for AC3 5.1 audio (but only one of these two methods allow for video seeking, at least forward seeking). Here are the methods available:

  1. MP4 container with AAC audio - need AAC decoding receiver to get 5.1 audio
  2. VOB/MPG container with AC3/DTS audio - supports AC3/DTS audio for simple 5.1 audio support on the PS3, but does not support file seeking
  3. M2TS (M2T) container with AC3 audio - supprots AC3 5.1 audio, slightly trickier method, but allows (forward) seeking

Choose one of these methods and then the next 3 pages/sections will contain instructions for each of these methods. You only need to follow one of the methods in the next 3 pages. Do not follow more than one method. At the end of each method/page/section, skip straight to Step 8.



Step 7.1: MP4 container with AAC audio

As mentioned previously, this method allows you to use a MP4 container to hold your H.264 file, and allows for AAC 5.1 audio only (no AC3 or DTS support). If you chose one of the other methods, you don't need to look at this section/page.

Press the "AutoEncode" button or from the "Tools" drop down menu, select "AutoEncode" to launch the Automatic Encoder setup windows.

MeGUI: Automatic Encoder


This is pretty straight forward - just specify the output size of your video file either as a file size, or as an average bitrate. Note that certain profiles, which are based on quantizer selections, do not let you set an output file size (for the Xbox 360 or PS3 profiles, only the "2-pass" profile allows you to set the file size). Then, make sure the Container is set correctly, to "MP4". For AVI/DivX/XviD conversion, you can get the same quality video at roughly 80% of the original AVI/DivX/XviD file's filesize. For 720p/1080p QuickTime HD (MOV) files, these are already using H.264 so you should try and match the file size whenever possible (again, make sure the "Average Bitrate" is under control). For maximum compatibility with the PS3, the bitrate peaks should not exceed 15 Mbps (15,000 kbit/s, although I've observed brief peaks of more than 25 Mbps that seems to not cause problems, and that the Xbox 360 handled peaks better than the PS3), otherwise you could see skipped playback. There is currently no way to control the bitrate peaks for the encoded file, and so as a general rule, try to keep the average bitrate of the video under 9000 kbit/s. The output location can be changed as well - this file will be the final output file that you want, so make sure you remember where you put it and don't accidentally delete it when cleaning up (I like to put this file in a different folder to all the other files, just in case).

When you're ready, press the "Queue" button and all the necessary jobs will be added to the encoding queue.

Click on the "Queue" tab and all the jobs should be listed there. Below is an example job queue where I have two video clips "tdk" and "seu" to be encoded, an explanation of the queued jobs shown in the screenshot below:

  • job1: Encoding audio track for clip "tdk"
  • job2: Encoding video, 1st pass for clip "tdk"
  • job3: Encoding video, 2nd pass for clip "tdk"
  • job4: Muxing audio and video to MP4 for clip "tdk"
  • job5: Encoding audio track for clip "seu"
  • job6: Encoding video, 1st pass for clip "seu"
  • job7: Encoding video, 2nd pass for clip "seu"
  • job8: Muxing audio and video to MP4 for clip "seu"

MeGUI: Queue


New in MeGUI 0.2.6 or above is the idea of "workers". This has been introduced to take advantage of multi-core processors, allowing parallel job execution (processing more than one job at a time). Of course, certain jobs are dependent on another previous job being completed before it can begin (for example, job2-4 above requires job2-3 to be finished, and job2-5 requires all previous jobs to be finished), and so parallel execution is not always possible. But if you are encoding multiple video clips at the same time, then parallel execution allows each core of your CPU to be fully utilized at all times, allowing up to 4 video encodings at the same time on a quad core processor, for example. In essense, each "worker" represents a CPU thread that can be run on an individual core - so if you have a dual core processor, then you might want to create two workers, quad-core => 4 workers, etc. Even if you have only a single core CPU, you will still need to create at least one worker before MeGUI can start encoding video. To create a worker, from the "Worker" menu, select the "Create New Worker" option and then enter a name for this new worker.

MeGUI: Create New Worker


Create as many workers as you need (again, 2 for dual-core, 4 for quad-core ...). You can right click on each job to specify which worker it will use, or you can leave it unset and MeGUI will automatically assign workers (recommended). You only need to do this the first time you use MeGUI, as worker settings are remembered.

MeGUI: Send to Worker


When you are ready to start encoding, press the "Start" to start the encoding. For the above job queue example where I had two video clips "tdk" and "seu", when I press the "Start" button, both encodings will start with different workers, thus allowing me to encode two video clips at the same time (which would only be of benefit if you have multi-core or multi-CPU setups, of course). You can view the status of your workers by selecting the "Workers Summary" option from the "Workers" menu.

MeGUI: Worker Summary


When it's all finished (and this one could take a while, an hour or more for even a short clip, depending on your CPU), your MP4 file should be ready. You can delete all the other files, unless you plan on making more encodings from them. Skip the next step/page and go onto "Step 8: TVersity: Playing the H.264 file on your PS3".

I have made a test clip from the instructions in this guide, that you can download. Download the I Am Legend 1080p AAC 5.1 MP4 Trailer.



Step 7.2: VOB/MPG container with AC3/DTS audio

As mentioned previously, this method allows you to use a VOB/MPG container to hold your H.264 file, and allows for AC3 or DTS 5.1 audio. If you chose one of the other methods, you don't need to look at this section/page.

Press the "AutoEncode" button or from the "Tools" drop down menu, select "AutoEncode" to launch the Automatic Encoder setup windows.

MeGUI: Automatic Encoder


This is pretty straight forward - just specify the output size of your video file either as a file size, or as an average bitrate. Note that certain profiles, which are based on quantizer selections, do not let you set an output file size (for the Xbox 360 or PS3 profiles, only the "2-pass" profile allows you to set the file size). Then, make sure the Container is set correctly, to "MKV". For AVI/DivX/XviD conversion, you can get the same quality video at roughly 80% of the original AVI/DivX/XviD file's filesize. For 720p/1080p QuickTime HD (MOV) files, these are already using H.264 so you should try and match the file size whenever possible (again, make sure the "Average Bitrate" is under control). For maximum compatibility with the PS3, the bitrate peaks should not exceed 15 Mbps (15,000 kbit/s, although I've observed brief peaks of more than 25 Mbps that seems to not cause problems, and that the Xbox 360 handled peaks better than the PS3), otherwise you could see skipped playback. There is currently no way to control the bitrate peaks for the encoded file, and so as a general rule, try to keep the average bitrate of the video under 9000 kbit/s. The output location can be changed as well - this file will be the final output file that you want, so make sure you remember where you put it and don't accidentally delete it when cleaning up (I like to put this file in a different folder to all the other files, just in case).

When you're ready, press the "Queue" button and all the necessary jobs will be added to the encoding queue.

Click on the "Queue" tab and all the jobs should be listed there. Below is an example job queue where a trailer is being encoded, an explanation of the queued jobs shown in the screenshot below:

  • job4: Encoding audio track for clip
  • job5: Encoding video, 1st pass for clip
  • job6: Encoding video, 2nd pass for clip
  • job7: Muxing audio and video to MKV for clip

MeGUI: Queue


New in MeGUI 0.2.6 or above is the idea of "workers". This has been introduced to take advantage of multi-core processors, allowing parallel job execution (processing more than one job at a time). Of course, certain jobs are dependent on another previous job being completed before it can begin (for example, job2-4 above requires job2-3 to be finished, and job2-5 requires all previous jobs to be finished), and so parallel execution is not always possible. But if you are encoding multiple video clips at the same time, then parallel execution allows each core of your CPU to be fully utilized at all times, allowing up to 4 video encodings at the same time on a quad core processor, for example. In essense, each "worker" represents a CPU thread that can be run on an individual core - so if you have a dual core processor, then you might want to create two workers, quad-core => 4 workers, etc. Even if you have only a single core CPU, you will still need to create at least one worker before MeGUI can start encoding video. To create a worker, from the "Worker" menu, select the "Create New Worker" option and then enter a name for this new worker.

MeGUI: Create New Worker


Create as many workers as you need (again, 2 for dual-core, 4 for quad-core ...). You can right click on each job to specify which worker it will use, or you can leave it unset and MeGUI will automatically assign workers (recommended). You only need to do this the first time you use MeGUI, as worker settings are remembered.

MeGUI: Send to Worker


When you are ready to start encoding, press the "Start" to start the encoding. You can view the status of your workers by selecting the "Workers Summary" option from the "Workers" menu.

MeGUI: Worker Summary


When it's all finished (and this one could take a while, an hour or more for even a short clip, depending on your CPU), your MKV file should be ready. You can delete all the other files, unless you plan on making more encodings from them. We will now use a trick to convert the MKV file to a VOB/MPG file.

Even though technically the VOB/MPG file requires MPEG-2 video, the way the PS3 software works, a VOB/MPG file with H.264 video and AC3/DTS 5.1 audio will work just fine, and provide you with 5.1 channel audio without the need for an AAC decoder or HDMI PCM 5.1 output. In this step, we will use the mkv2vob package to convert the MKV file to a VOB file (no re-encoding is needed, so the process should only takes a matter of minutes, not hours).

Now that you have the MKV file, we'll use mkv2vob to get it to a format that's compatible with the PS3, without re-encoding. I have written a full mkv2vob guide here, or you can just follow my shortened instructions below.

download mkv2vob and follow the installer. Run the mkv2vob executable Click on the "Add File" tab and use the "Browse" button to load in your "Source File". You should also specify an output location. The "Delete source file after conversion" will remove the source MKV file after conversion, but this is not recommended.

mkv2vob: Add File


When the entire process is finished, the following prompt will show and your VOB/MPG file is ready to use.

You can now proceed to Step 8, which is to get the PS3 to see your VOB/MPG file through TVersity.

I have made a test clip from the instructions in this guide, that you can download. Download the I Am Legend 1080p AC3 5.1 VOB Trailer.



Step 7.3: M2TS (M2T) container with AC3 audio

As mentioned previously, this method allows you to use a M2TS container to hold your H.264 file, and allows for AC3 5.1 audio (no DTS support). If you chose one of the other methods, you don't need to look at this section/page.

In the "Video Encoding" section of MeGUI, change the File Format to "RAWAVC". This will allow us to create a .264 video stream.

MeGUI: RAWAVC Video Output


We will now use MeGUI's build in bitrate calculator to calculate the average bitrate of our encoding, to ensure it's not too high for the PS3. From the "Tools" menu, select "Bitrate Calculator".

MeGUI: Bitrate Calculator


Under the "File size" section, use the drop down selector to select a pre-defined size or enter your own (this is the size that includes both the video and audio, so the total file size). This will change the "Average Bitrate" display shown just below. Alternatively, you can choose to change the average (video) bitrate, and then the resultant file size will be shown for the bitrate (again, including the audio file size). Note that certain profiles, which are based on quantizer selections, do not let you set an output file size (for the Xbox 360 or PS3 profiles, only the "2-pass" profile allows you to set the file size). For AVI/DivX/XviD conversion, you can get the same quality video at roughly 80% of the original AVI/DivX/XviD file's filesize. For 720p/1080p QuickTime HD (MOV) files, these are already using H.264 so you should try and match the file size whenever possible (again, make sure the "Average Bitrate" is under control). For maximum compatibility with the PS3, the bitrate peaks should not exceed 15 Mbps (15,000 kbit/s, although I've observed brief peaks of more than 25 Mbps that seems to not cause problems, and that the Xbox 360 handled peaks better than the PS3), otherwise you could see skipped playback. There is currently no way to control the bitrate peaks for the encoded file, and so as a general rule, try to keep the average bitrate of the video under 9000 kbit/s. When you're finished selecting a bitrate/file size, click on the "Apply" button to apply the bitrate setting to the video encoding profile.

Back to the main MeGUI section, press the "Enqueue" button under the "Video Encoding" section. This will add a video encoding job to the job queue (actually two jobs, one for each encoding pass). Do the same for the "Audio" (ie. press the "Enqueue" button as well) to add an audio encoding job to the queue.

MeGUI: Job Queue


New in MeGUI 0.2.6 or above is the idea of "workers". This has been introduced to take advantage of multi-core processors, allowing parallel job execution (processing more than one job at a time). Of course, certain jobs are dependent on another previous job being completed before it can begin (for example, job2-4 above requires job2-3 to be finished, and job2-5 requires all previous jobs to be finished), and so parallel execution is not always possible. But if you are encoding multiple video clips at the same time, then parallel execution allows each core of your CPU to be fully utilized at all times, allowing up to 4 video encodings at the same time on a quad core processor, for example. In essense, each "worker" represents a CPU thread that can be run on an individual core - so if you have a dual core processor, then you might want to create two workers, quad-core => 4 workers, etc. Even if you have only a single core CPU, you will still need to create at least one worker before MeGUI can start encoding video. To create a worker, from the "Worker" menu, select the "Create New Worker" option and then enter a name for this new worker.

MeGUI: Create New Worker


Create as many workers as you need (again, 2 for dual-core, 4 for quad-core ...). You can right click on each job to specify which worker it will use, or you can leave it unset and MeGUI will automatically assign workers (recommended). You only need to do this the first time you use MeGUI, as worker settings are remembered.

MeGUI: Send to Worker


When you are ready to start encoding, press the "Start" to start the encoding. You can view the status of your workers by selecting the "Workers Summary" option from the "Workers" menu.

MeGUI: Worker Summary


When it's all finished, you should have a .264 video stream file and an .ac3 audio stream file.

We will now use tsMuxeR to mux our .264 and .ac3 files into a M2TS stream. Download and extract the tsMuxeR ZIP file to a folder on your hard-drive, and run the "tsMuxerGUI" executable file to start tsMuxeR. In the "Input files" section, first use the "add" button to load in your .264 file, and then to load in the .ac3 file (in this order). In the "Output" section below, select "M2TS muxing" and use the "Browse" button to select an output filename/location. Press the "Start muxing" button at the bottom to beging the muxing process.

tsMuxeR


After tsMuxeR finishes process (it should say "Done!" in the text log area), we should now have a .m2ts file. You can delete all the other files, other than this .m2ts file. The next step will show you how to use TVersity to stream this .m2ts file to your PS3. For playback from a USB/CD/DVD, the renaming is not necessary.



Step 8: TVersity: Playing the H.264 file on your PS3

There are two main methods to getting the MP4/VOB/MPG/M2TS to play on your PS3. The first is to use a USB drive/CD/DVD and play it from these media on your PS3 - this is the easiest way to set up, since you all need to do is to copy the MP4/VOB/MPG file to the USB/CD/DVD, and then insert it into your PS3. When using the USB method, make sure you put the video file in a folder named "VIDEO", otherwise you will have to select the USB drive, open up the options using the triangle button, and then select "Display All".

The other way is a bit harder to set up initially, but it will make it easier in the future to play your MP4/VOB/MPG/M2TS files, since you can play them directly from your computer. Basically it involves setting up a UPnP server on your computer and then telling the PS3 to connect to the media server - the PS3 will then be able to read all the media files on your computer and play them back by streaming it across the network.

We will be using TVersity as our media server, mainly because it includes built-in support for the PS3 and supports H.264 MP4/VOB/MPG/M2TS files quite well. I'm using the latest Release Candidate (not final release) version of TVersity due to it being able to support the latest PS3 firmware updates.

At this point, I shall refer you to our TVersity Setup Guide, which features instructions on how to install and configure TVersity. When you have finished following the TVersity tutorial, come back and continue on with the instructions below.

PS3 Setup

We must first set up the PS3 so that it accepts the media server connection. Go to the Settings -> Network Settings -> and make sure the "Media Server Connection" option is set to "Enabled".

PS3: Settings -> Network Settings


As mentioned before in the MeGUI audio encoding section of this guide, if you have equipment to either decode AAC audio or to accept a PCM 5.1 audio through HDMI, then you can enjoy 5.1 channel audio from your H.264 MP4 file, but you will need to configure the PS3 to output the required audio. If you followed the guide with the alternative VOB/MPG/M2TS file technique, then you don't need to select AAC or PCM 5.1 from the steps below, you only need to ensure AC3 is selected.

If you have an AAC/AC3 compatible decoder/receiver, go to the Settings -> Sound Settings -> Audio Output Settings -> select the type of audio output you are using (HDMI or Optical) and then proceed until you get to the screen that ask you which audio formats your TV/decoder can accept - make sure AAC and/or AC3 are selected.

PS3: Settings -> Sound Settings -> AAC/AC3 decoding


If you don't have an AAC compatible decoder/receiver, but you do have one that supports PCM 5.1 through HDMI, then go to the Settings -> Sound Settings -> Audio Output Settings -> HDMI -> proceed until you get to the screen that ask you which audio formats your TV/decoder can accept - make sure one of the PCM 5.1 options are selected (depending on which is supported by your decoder).

PS3: Settings -> Sound Settings -> PCM 5.1 output


Connecting to TVersity from the PS3

We finally move on to playing our MP4/VOB/MPG/M2TS file on the PS3. This tutorial assumes you've already setup the PS3 for network and Internet connections. Start TVersity and make sure sharing is enabled.

Now on the PS3, go to the "Video" section. The TVersity icon should show up as one of the video options, with the name of your computer and the words "TVersity Media Server" next to it. If you do not see this, use the "Search for Media Servers" option to get the PS3 to find your computer that is running TVersity.

PS3: Video -> Search for Media Servers


PS3: Video -> TVersity Media Server


Select the TVersity server you want to connect to (you can have multiple TVersity servers running, one per computer) and then browse the folders until you get to your sharing folder (eg. Video -> My Video -> Folders -> ...). Your H.264 files should show up and you can simply select them and they should play. You can bring up the "Display" option during playback (using the "Display" button on the Blu-ray remote control, or using the controller to bring up the options select screen and select the "Display" option there) to display information about the current file - the screenshow below shows an AVC (H.264) file playback with the current bitrate at 20.8 Mbps and with AAC 5.1 48 kHz audio.

PS3: Video Playback


TVersity also shared pictures and audio files, and you can browse for those as well if you added them into the TVersity sharing section. Audio and image playback should be much more compatible than video playback, so you shouldn't run into any problems there.

We're done :)

Got more questions? Post them in our H.264 Conversion/Encoding or PS3 forum and get them answered by other expert users.

If things didn't go well, then try these troubleshooting tips:

  • If you are unable to connect to the computer running TVersity, double check your firewall settings again. Also make sure the TVersity media sharing is actually enabled on the computer.

  • Make sure that the PS3 is not already connected to another media server or media center. Use the "Search for Media Servers" function to re-scan for new servers..

  • If all else fails, then you might want to post your problem in the official TVersity support forum - remember that TVersity is still in beta, so problems are bound to be present (it's also free).



About Digital Digest | Help | Privacy | Submissions | Sitemap

© Copyright 1999-2011 Digital Digest. Duplication of links or content is strictly prohibited.