Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > (HD) DVD, Blu-ray & (S)VCD > (HD) DVD & Blu-ray authoring

Reply
 
Thread Tools Search this Thread Display Modes
Old 21st June 2010, 17:50   #1  |  Link
crl2007
Registered User
 
Join Date: Nov 2007
Posts: 650
Guide to convert BD 3D to 3D Left+Right Stereoscopic and Anaglyph

This guide adresses to the new BD 3D format.

Software and codecs needed:

1. ffdshow + haali
2. MVC Decoder - free
3. eac3to - free
4. x264 - free
5. Stereoscopic Player - not free
6. Preferred Filter Tweaker for Windows 7 - it's free and straight forward
7. multiAVCHD - free
8. ArcSoft TotalMedia Theatre 3 Platinum or PowerDVD 9 - not free


Let's start. Pay attention and don't skip any steps.

STEREOSCOPIC LEFT+RIGHT CONVERSION

1. Demux the mpls with eac3to. eac3to x:\path\movie.mpls -demux. You will get all streams demuxed, but you'll need only video and audio streams (left video + right video + audio stream). You'll see (left) and (right) as part of the file name of the video streams (h264). For convenience, rename the demuxed audio (dts/ac3/lpcm) to audio.dts (or audio.ac3 or audio.lpcm) or audio_01.dts/audio_02.ac3 if you have more than one audio track.

2. Create a 3D Workspace folder and copy in there the mvc decoder, the x264 codec, the avs script included and the left + right video + audio streams.

3. Rename the video streams (left.h264, right.h264). This is needed if you don't want to edit "decoder.cfg" all the time to insert the name of the streams in there.

4. Edit the avs script and put in there the duration, in frames, of the movie. You must include the ms. You can find out the frame number from eac3to.



You can also do it manually. That's done like this:

Example: For a 00:02:27.106 movie the ecuation is 147,106*(24000/1001) and you'll have 3527 frames.

My script looks like this:

LoadPlugin("H264StereoSource.dll")
H264StereoSource("decoder.cfg",3527)

Save it.

5. Open a command prompt for x264 and use the avs to encode the right eye stream (tutorials for x264 can be found on doom9 too). When x264 reaches the end, you will get an error. This has no impact on the movie. Keep in mind that this decoder is really, really slow. On a q9550 and 4 GB RAM it didn't go higher than 3 fps.

6. Open mkvmerge and add left.h264 + audio.dts (or audio.ac3, audio.lpcm). Select the video stream and from the "Format specific option" tab and set the fps to 24000/1001 (mkvmerge will set it to 25 fps by default). Mux them together.

7. After the remux is done, remove all from mkvmerge and insert the encoded right eye stream. Set the FPS to 24000/1001 as for the left one above and hit mux.

8. Now they are ready to be played in Stereoscopic Player. Open Stereoscopic Player - File - Open Left and Right file, select the 2 streams and check "Use audio track from left file".

ANAGLYPH ONLY CONVERSION

1. Open multiAVCHD and drag and drop the movie playlist.

2. Do the following settings:



3. Press transcode, choose your settings and check "Create 3D Anaglyph".



Click "Apply".

4. You can add as many subtitle streams you want and as many audio streams you want from the "Audio" and "External Subtitles" stream.

5. Click "OK".

6. Click start and let multiAVCHD work.

Important Update: You can now select from multiavchd more 3D modes ( green/magenta, top/bottom, left/right etc ). All you have to do is to set your mode before adding a playlist. The same steps as for anaglyph are used here too.



SUBTITLE FOR STEREOSCOPIC 3D MOVIES

Software Needed:

1. 3D Subtitler

The software is pretty straightforward.

If you have something to add, please feel free.

Last edited by crl2007; 10th December 2010 at 00:02.
crl2007 is offline   Reply With Quote
Old 29th June 2010, 02:51   #2  |  Link
chocolate elvis
Registered User
 
Join Date: Jun 2010
Posts: 4
Hi,
Thanks for the post. Have trouble getting it to work though.

Do you mind expanding #5 "Open a command prompt for x264 and use the avs to encode the right eye stream (tutorials for x264 can be found on doom9 too)."

Thanks!
chocolate elvis is offline   Reply With Quote
Old 29th June 2010, 03:05   #3  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
What do you not understand about it? Looks perfectly clear to me.
Guest is offline   Reply With Quote
Old 29th June 2010, 09:58   #4  |  Link
crl2007
Registered User
 
Join Date: Nov 2007
Posts: 650
You open a command prompt and you write there: x264 --x264 parameters --output.264 *.avs

l.e. I've updated the guide with the new MVC Decoder ( now it supports 720p sources too ) and with an alternate option for stereoscopic + new modes conversion ( for people that don't know how to use x264 ).

Last edited by crl2007; 29th June 2010 at 10:14.
crl2007 is offline   Reply With Quote
Old 29th June 2010, 09:58   #5  |  Link
deank
Programmer (or just 教务长)
 
deank's Avatar
 
Join Date: Oct 2008
Location: Valencia, Spain
Posts: 4,251
Btw the latest version of the H264StereoSource.dll supports 1280x720.
__________________
multiAVCHD - donate | popBD | uncropMKV | mkv2avi | easySUP
deank is offline   Reply With Quote
Old 30th June 2010, 01:50   #6  |  Link
chocolate elvis
Registered User
 
Join Date: Jun 2010
Posts: 4
Can someone cut and paste a sample command for a moron? Can get left to decode but not right. Thanks
chocolate elvis is offline   Reply With Quote
Old 30th June 2010, 13:37   #7  |  Link
crl2007
Registered User
 
Join Date: Nov 2007
Posts: 650
I wrote in the guide that now you can achieve the same with multiavchd only. You don't need x264 if you don't know how to use it.
crl2007 is offline   Reply With Quote
Old 30th June 2010, 18:22   #8  |  Link
chocolate elvis
Registered User
 
Join Date: Jun 2010
Posts: 4
Thanks, but I'm trying to reconstruct the right eye as a mp4. So the result is a full 1920x1080 left eye, and 1920x1080 right eye, Can't seem to decode the right eye w/o errors.
chocolate elvis is offline   Reply With Quote
Old 30th June 2010, 20:37   #9  |  Link
crl2007
Registered User
 
Join Date: Nov 2007
Posts: 650
x264.exe --crf 17 --tune film -I 24 --weightp 0 --b-pyramid none --sar 1:1 --aud --rc-lookahead 6 --output right_final.264 sample.avs This is a useful commandline.
crl2007 is offline   Reply With Quote
Old 9th August 2010, 21:20   #10  |  Link
rik1138
Registered User
 
Join Date: Mar 2008
Location: LA
Posts: 620
Is the Right eye stream sort of a 'difference' stream based on the Left eye? Can the right eye MVC be re-built from the PlayList without actually re-encoding the video? (I'm gathering the x264 command above is actually re-encoding the right eye stream to create the .264 file...)

I need to take 3D video from multiple Blu-ray discs and combine it all on one disc, preferably without re-encoding any of it... I can't seem to find an easy way to pull it off.

(I'll re-encode if I have to, just trying to avoid it...)
rik1138 is offline   Reply With Quote
Old 9th August 2010, 21:44   #11  |  Link
deank
Programmer (or just 教务长)
 
deank's Avatar
 
Join Date: Oct 2008
Location: Valencia, Spain
Posts: 4,251
Alex's mod for Version JM 17.1 allows YUV decoding of right eye stream. Source files for regular H.264 decoding are available, but he didn't respond after requests to share the mod source for right eye decoding. Either way we/you need a way to recreate the 'delta' ssif files (which are same content wise) as r-eye m2ts files.

I'll try again to poke him
__________________
multiAVCHD - donate | popBD | uncropMKV | mkv2avi | easySUP
deank is offline   Reply With Quote
Old 9th August 2010, 23:21   #12  |  Link
rik1138
Registered User
 
Join Date: Mar 2008
Location: LA
Posts: 620
Are there any tools available yet that can take a couple of lt + right-dependent MVC streams and build a functioning disc (creating the ssif, etc)?

If that's not available yet, I might have to go with re-encoding anyway... The authoring software I'm using won't seem to take MVC streams ripped off of a Blu-ray disc, unless they are MVC streams it created in the first place... Not sure why.

But, if I have to, I can re-encode the two streams, it's just a matter of getting that right-eye stream as a valid AVC file by itself. I tried the .x264 method above, but it gives me an error about loading the h264StereoSource.dll and doesn't work... My first time trying it, so I'm probably doing something wrong, just haven't figured it out yet...
rik1138 is offline   Reply With Quote
Old 10th August 2010, 07:22   #13  |  Link
crl2007
Registered User
 
Join Date: Nov 2007
Posts: 650
There is no such software yet. And as far as that error, you most probably wrote the wrong path for the dll in the avs script.
crl2007 is offline   Reply With Quote
Old 10th August 2010, 08:17   #14  |  Link
rik1138
Registered User
 
Join Date: Mar 2008
Location: LA
Posts: 620
That's what I figured... I have the .dll in the same directory as the .avs script, so I just had the file name itself. I then tried using the complete path, and I still got the error... Is it just that one .dll that's needed, or should there be other files with it? (Or maybe point it to the one in the MultiAVCHD directory?) I'll play with it more tomorrow... I'm sure I've just done something wrong.
rik1138 is offline   Reply With Quote
Old 10th August 2010, 14:59   #15  |  Link
crl2007
Registered User
 
Join Date: Nov 2007
Posts: 650
It's just that dll and that cfg file.
crl2007 is offline   Reply With Quote
Old 10th August 2010, 18:54   #16  |  Link
rik1138
Registered User
 
Join Date: Mar 2008
Location: LA
Posts: 620
Not sure what I'm doing wrong here... I have these files in the directory:
H264StereoSource.cfg
H264StereoSource.dll
l.h264
r.h264
sample.avs
x264.exe

Config file:
Code:
InputFile              = "l.h264"
InputFile2             = "r.h264"
FileFormat             = 0
POCScale               = 1
# decoder control parameters
DisplayDecParams       = 1
ConcealMode            = 0
RefPOCGap              = 2
POCGap                 = 2
IntraProfileDeblocking = 1
DecFrmNum              = 0
sample.avs:
Code:
LoadPlugin("H264StereoSource.dll")
H264StereoSource("H264StereoSource.cfg",3788)
I use your x264 command line posted above exactly, and get this:
avc [error]: LoadPlugin: unable to load "H264StereoSource.dll"
(sample.avs, line 1)
x264 [error]: could not open input file 'sample.avs'

Any thoughts? Does anything look wrong? I can play the l.h264 file in Media Player just fine... But could it be related to other installed AVC codecs?
rik1138 is offline   Reply With Quote
Old 10th August 2010, 20:00   #17  |  Link
deank
Programmer (or just 教务长)
 
deank's Avatar
 
Join Date: Oct 2008
Location: Valencia, Spain
Posts: 4,251
I got the same error yesterday on my office computer (with multiAVCHD, trying to load the plugin). I believe it is compiled for certain CPU (OS?!)

Works fine on my laptop Vista 32bit Intel PC, but fails with my desktop office XP SP2 Intel PC. Both with Core2Duo CPUs.

//

Thinking about it, I'll try to install .NET on my office PC and will test again tomorrow. It may be .NET compiled (the .dll).
__________________
multiAVCHD - donate | popBD | uncropMKV | mkv2avi | easySUP

Last edited by deank; 10th August 2010 at 20:16.
deank is offline   Reply With Quote
Old 11th August 2010, 03:02   #18  |  Link
rik1138
Registered User
 
Join Date: Mar 2008
Location: LA
Posts: 620
Hmm, maybe it's a Visual C++ thing? I had to install the Microsoft Visual C++ libraries for another app (didn't have it installed apparently), and now the x264 gets further (seems to load the .dll okay, recognizes the video file, but then crashes with an exception error...). The crash could be due to the video files I'm using, I'll try it on others tomorrow...

I would have though x264 wouldn't work at all if it needed the VisC stuff, but it did seem to get further...

Vis C here:
http://www.microsoft.com/downloads/e...displayLang=en
rik1138 is offline   Reply With Quote
Old 23rd October 2010, 19:18   #19  |  Link
Limobar
aka Rabomil
 
Join Date: Sep 2005
Posts: 82
My way of creating a single file 3d encode, is the following:

1. I encode the right eye lossless (x264 -q0 -m1 -A i4x4 --no-cabac), using the MVC sample script, to create a right eye that has the same quality as the left eye.

MVC sample script:
Code:
LoadPlugin("H264StereoSource.dll")
H264StereoSource("decoder.cfg",135266)
2. After that I create a half side-by-side encode using the following Avisynth script:

Code:
VideoLeft = directshowsource("C:\x264\left.mkv", audio=false)
VideoRight = directshowsource("C:\x264\right.mkv", audio=false)
VideoStacked = StackHorizontal(VideoRight,VideoLeft)
lanczosresize(1920,1080)
ConvertToYV12(VideoStacked)
and high quality x264 settings, depending on the source.

My question is: Is it possible to leave out step one and do the final encode directly? I think it is possible, otherwise it wouldn't be possible to do step 1, but how?
Limobar is offline   Reply With Quote
Old 24th October 2010, 00:49   #20  |  Link
crl2007
Registered User
 
Join Date: Nov 2007
Posts: 650
You have to decode the MVC stream, there's no faster method yet.
crl2007 is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 16:24.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.