Log in

View Full Version : Guide to convert BD 3D to 3D Left+Right Stereoscopic and Anaglyph


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 [16] 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46

Nico8583
27th October 2012, 17:10
The Intel Media SDK 2012 R3 MVC Encoder should be configurable to output the MVC stream in that special blu ray format.
Thanks, but how can I use that ?

MaistroX
27th October 2012, 19:56
Hi!

Just tryed to get ONLY sound and subtitles of Avatar 3D, but it just stopped, check here -> http://www.mediafire.com/file/hvvvu1s9f9cyz8i/Avatar_3D_Subs_00854_mpls.rar

Neisklar
27th October 2012, 20:03
Thanks, but how can I use that ?

Why not just download it and have a look? ;-)

There is, beside the source, a prebuild encode sample with corresponding doc, which can do an mvc encode (from yuv files) as single file and as 2 files like needed for blu ray. Then you just need the created h.264 bitstream files to be muxed in m2ts files.
Please don't ask me how to do the ssif interleaing of those two files. Thats done at file system level

Neisklar
27th October 2012, 20:07
Hi!

Just tryed to get ONLY sound and subtitles of Avatar 3D, but it just stopped, check here -> http://www.mediafire.com/file/hvvvu1s9f9cyz8i/Avatar_3D_Subs_00854_mpls.rar

There are errors demuxing the first (english) subtitle stream, eac3to even states that the file maybe even damaged. i think tsMuxer can also demux, so have a try with that.

r0lZ
27th October 2012, 20:44
Hi!

Just tryed to get ONLY sound and subtitles of Avatar 3D, but it just stopped, check here -> http://www.mediafire.com/file/hvvvu1s9f9cyz8i/Avatar_3D_Subs_00854_mpls.rar
I see in the log, several lines with:
The source file seems to be damaged (discontinuity).
That error happens often with subtitle streams when the MPLS file is demuxed. It's why BD3D2MK3D demuxes the corresponding M2TS file when it's possible.
Unfortunately, if you can't demux the M2TS too, that means that your source is severely damaged. I'm affraid there is no solution with BD3D2MK3D. However, try to demux the subtitle stream with tsmuxer, as suggested by Neisklar, and use BD3D2MK3D to encode the video only. Mux manually with MkvMerge GUI. That may work, or not!

r0lZ
27th October 2012, 20:49
I just in selected, in the box were I have *.MPLS and Time of movie, the *.MPLS and it started the encode right away, but got that fault messege if I had Time selected.
I've just understood your message. The duration of the movie in the drop box is of course abnormal. It is probably there because eac3to has not printed the information about thr MPLS in its standard format, and that means that your BD is strange.

Can you post a screenshot of the first tab when the BD has just been loaded, and the content of the console log?

Nico8583
27th October 2012, 22:10
Why not just download it and have a look? ;-)

There is, beside the source, a prebuild encode sample with corresponding doc, which can do an mvc encode (from yuv files) as single file and as 2 files like needed for blu ray. Then you just need the created h.264 bitstream files to be muxed in m2ts files.
Please don't ask me how to do the ssif interleaing of those two files. Thats done at file system level
Thanks for these informations but I don't understand how work the SDK Intel, how do I need to use it, program it etc... And I can't spend much time at now... :scared:
I'll see that later :)

MaistroX
27th October 2012, 22:12
Had a bad backup! ;/

I've just understood your message. The duration of the movie in the drop box is of course abnormal. It is probably there because eac3to has not printed the information about thr MPLS in its standard format, and that means that your BD is strange.

Can you post a screenshot of the first tab when the BD has just been loaded, and the content of the console log?

MaistroX
27th October 2012, 22:26
@ r0lZ!

Another thing...
When I use the Convert subtitles to 3D, I choose one and convert, let say->
"7 Subtitle (PGS), English_exp.idx" and it gets saved as "7 Subtitle (PGS), English_exp 3D" after successful covertion.
I go on to choose the next to convert:
Say for ex: "13 Subtitle (PGS), Swedish_exp" but I have to go manually and rename "7 Subtitle (PGS), English_exp 3D" to what I now are converting.... "13 Subtitle (PGS), Swedish_exp 3D".
Can u make it suggest allways the same path and only add the "3D" as in the first choice allso on the second one and third ans so on!? :)

Allos, noticed that the subtitles coverted are ALOT downsized and one can see that it´s not as good as a "real" 3D-subtitle, can that be changed? Maby have an option for a better quality in 3D outcome subtitle!? :)

Regards MaistroX

24673583
28th October 2012, 08:20
I have tried, and I can't reproduce that problem.

The latest versions of BDSup2Sub++ has a --load-settings command line argument, and when it is not provided, your previous settings are ignored. With older versions, it is possible that the conversion to 25fps is activated in the INI file, and used during the conversion. Also, there was a known bug with automatic conversion to 25fps when the command line was used. Thet bug has been fixed too. So, v1.0.0 should work without problem. (It's the version that is included with BD3D2MK3D.)

If you can reproduce the bug with v1.0.0, please let us know, and post the original subtitle stream somewhere.

I'm sure BDSup2Sub++ is v1.0.0, Suppe3D is v0.3
when a use batch commandline "Suppe3D.exe -sbs -d 15 -if eng.sup -of eng_3d.sup"
then frame rate 23.976 to 25. The latter part of timeline change to start from 12 hour.

r0lZ
28th October 2012, 08:44
Had a bad backup! ;/
That's not surprising. ;)
However, I still would like to see the screenshot (it it's still possible). I want to make sure the bug doesn't happen again, even with a bad backup.

r0lZ
28th October 2012, 08:55
@ r0lZ!

Another thing...
When I use the Convert subtitles to 3D, I choose one and convert, let say->
"7 Subtitle (PGS), English_exp.idx" and it gets saved as "7 Subtitle (PGS), English_exp 3D" after successful covertion.
I go on to choose the next to convert:
Say for ex: "13 Subtitle (PGS), Swedish_exp" but I have to go manually and rename "7 Subtitle (PGS), English_exp 3D" to what I now are converting.... "13 Subtitle (PGS), Swedish_exp 3D".
Can u make it suggest allways the same path and only add the "3D" as in the first choice allso on the second one and third ans so on!? :)
That's because the output file field is automatically filled with the fefault file name only when it is empty. I will try to improve that...
Allos, noticed that the subtitles coverted are ALOT downsized and one can see that it´s not as good as a "real" 3D-subtitle, can that be changed? Maby have an option for a better quality in 3D outcome subtitle!? :)

Regards MaistroX
The width of the subtitle must be divided by 2 in half side by side, and the height in half top/bottom. You can change the resize filter and try a better (and slower) one if you wish, like "lanczos3". There is no other way to improve the resize.

Remember that the filter defined in the Settings menu is used anyway during the conversion of the movie to 3D, and is used as the default in the dialog of the "Convert Subtitle to 3D" tool. I suggest to use the tool to try the different resize methods, and when you have found the best one, change it in the Settings menu.

r0lZ
28th October 2012, 08:56
I'm sure BDSup2Sub++ is v1.0.0, Suppe3D is v0.3
when a use batch commandline "Suppe3D.exe -sbs -d 15 -if eng.sup -of eng_3d.sup"
then frame rate 23.976 to 25. The latter part of timeline change to start from 12 hour.
Can you upload the subtitle stream somewhere for us to test it?

[EDIT] Sorry, but again, I can't reproduce the problem. I did a test with a SUP file @23.976 fps containing 1180 subtitles. I've converted it to SUP with exactly the same options than in your example (-sbs -d 15).
The start time of subtitle 1 in the original file is 00:00:09.635, and it is 00:00:09.640 in the output file. The start time of the last subtitle are, respectively, 02:00:52.912 and 02:00:52.920. So, with the exception of the fractional part (probably rounded up to the nearest frame), the time codes are correct.
Perhaps there is something bad in your original SUP file, but without it, I can't check it.

r0lZ
28th October 2012, 12:54
I've fixed some bugs, improved some things and updated the HTML documentation.

Most of the problems reported above should not happen any more.

# v0.6 (October 28, 2012)
# - Bug: eac3to errors are now trapped during the check of the m2ts file before the demux process.
# - Bug: Subtitle resize filter was not saved when it is changed in the Settings menu.
# - Better handling of malformed eac3to output when the M2TS files are extracted from the MPLS line.
# - Improved the automatic selection of the output stream in the "Convert Subtitle to 3D" tool.
# - Added a basic check in _ENCODE.cmd to ensure that the BD disc is loaded.
# - Added possibility to click on an empty space in tab 2 to scroll with the mouse wheel.
# - The documentation has been adapted to the current version of BD3D2MK3D.

Download it at the usual place (http://download.videohelp.com/r0lZ/BD3D2AVS/BD3D2MK3D.7z).

slavanap
28th October 2012, 18:08
Here is second version of ssifSource.
I quite late, but it still might be useful.
http://rghost.net/41215765
Stuff about magic directory is also required.

Wolfy59
28th October 2012, 18:37
Here is second version of ssifSource.
I quite late, but it still might be useful.
http://rghost.net/41215765
Magic directory is also required.

Hi i have a question how can i use ssifsource2 to have to uncompressed h264 streams to use in cinévision
May i have an avs exemple to do that

Thanks for the answers

slavanap
29th October 2012, 14:35
Hi i have a question how can i use ssifsource2 to have to uncompressed h264 streams to use in cinévision
May i have an avs exemple to do that

Thanks for the answers
No. You can not do this with ssifSource2 plugin. Use ssifSource instead.

Eseninzhiv
29th October 2012, 15:35
slavanap
VirtualDub no open avs

for the right eye
LoadPlugin("ssifSource2.dll")
ssifSource2("3D.ssif", 6100, left_view = false, right_view = true)

are located in the same directory
CoreAVCDecoder.dll
MPEGSplitter.dll
ssifSource2.dll

I do something wrong?

Neisklar
29th October 2012, 15:36
The thing I´m trying to explain is found in BDSup2Sub, and is found under Edit/Move All Cations and in "Move outside bounds".
As I have to do today, I have to manually (and it takes forever with ALOT of subs) go throu each and every one to get them all as "Offset Y:" 6! :(



I agree that sometimes, it can be useful to move them a bit. But currently, it's not possible. My GUI uses Suppe3D.exe to convert the subtitles to 3D. Suppe3D uses BDSup2Sub++ to convert the SUP to PNG/XML format, then compose the PNG images in 3D, and uses again BDSup2Sub++ to convert them to SUB/IDX format. Unfortunately, I don't have the control on that process (except the 3D mode and depth, the resize method and the "only forced" options). It would be nice to add the possibility to specify custom options in Suppe3D, that it should pass unchanged to BDSup2Sub++ during the first pass. With that possibility, it would be possible to do whatever BDSup2Sub++ can do with the command line (including the "Move outside bounds" trick).


I have uploaded Version 0.4 if Suppe3D.exe http://www.share-online.biz/download.php?id=Z2WXRNCM4L which has besides better return codes on error, an (untested) options to pass throgh options to the underlying bdsup2sub++.exe at the imagextraction process. This could be used to do that "move all down 9 px" thing. Just be sure to do proper escaping

---

Later i will do a bigger post about 3D blu ray structure and an idea to a new open decoder plugin without the need of directshow and the corecodec

Wolfy59
29th October 2012, 20:18
No. You can not do this with ssifSource2 plugin. Use ssifSource instead.

thanks slavanap :-)

slavanap
30th October 2012, 07:57
slavanap
VirtualDub no open avs

for the right eye


are located in the same directory
CoreAVCDecoder.dll
MPEGSplitter.dll
ssifSource2.dll

I do something wrong?
May be this path does not contain 'Magic' substring?
Moreover, the path of exe-file you use, should contain magic substring. In your case, I recommend to move Virtual Dub to the same path as a plugin, and try it again.

r0lZ
30th October 2012, 09:45
I have uploaded Version 0.4 if Suppe3D.exe http://www.share-online.biz/download.php?id=Z2WXRNCM4L which has besides better return codes on error, an (untested) options to pass throgh options to the underlying bdsup2sub++.exe at the imagextraction process. This could be used to do that "move all down 9 px" thing. Just be sure to do proper escaping
It seems that it doesn't pass the pass-through options to BDSup2Sub++, as you can see:

C:\Users\rol\Desktop\test_subs>Suppe3D.exe -pt "--move-out-ratio 10" -if test.sup -of test_out.sub
creating temp dir: C:\Users\rol\Desktop\test_subs\.suppe3d\
###########################
Extracting subtitles to PNG
###########################
calling: "C:\Users\rol\Desktop\test_subs\bdsup2sub++.exe" -o "C:\Users\rol\Desktop\test_subs\.suppe3d\temp.xml" "test.sup"
BDSup2Sub++ 1.0.0

Converting XML/PNG

QFileInfo::absolutePath: Constructed with empty filename

Conversion of 1 file(s) finished

done ("C:\Users\rol\Desktop\test_subs\bdsup2sub++.exe" -o "C:\Users\rol\Desktop\test_subs\.suppe3d\temp.xml" "test.sup" )
Done extracting subs as PNG


##########################################
Starting creating Stereo images full sized
##########################################
Converted: temp_0001.png
Converted: temp_0002.png
Converted: temp_0003.png
Converted: temp_0004.png
Converted: temp_0005.png
Converted: temp_0006.png
Converted: temp_0007.png
Converted: temp_0008.png
Converted: temp_0009.png
Converted: temp_0010.png
Converted: temp_0011.png
Converted: temp_0012.png
Converted: temp_0013.png
Converted: temp_0014.png
Converted: temp_0015.png
Converted: temp_0016.png
Converted: temp_0017.png


#################################################################
Scaling PNG Files with filter: bilinear
NOTE: This may take a while, and you won't get progress feedback
#################################################################
calling: "C:\Users\rol\Desktop\test_subs\bdsup2sub++.exe" --filter bilinear --scale-y 0.5 -o "C:\Users\rol\Desktop\test_subs\.suppe3d\temp.xml" "C:\Users\rol\Desktop\test_subs\.suppe3d\temp.xml"
BDSup2Sub++ 1.0.0
OPTION: Set scaling filter to: Bilinear
OPTION: Set free scaling factors to 1, 0.5

Converting XML/PNG


Conversion of 1 file(s) finished

done ("C:\Users\rol\Desktop\test_subs\bdsup2sub++.exe" --filter bilinear --scale-y 0.5 -o "C:\Users\rol\Desktop\test_subs\.suppe3d\temp.xml" "C:\Users\rol\Desktop\test_subs\.suppe3d\temp.xml")
Done scaling PNG Subtitles


#################################################################
Producing final subtitle: test_out.sub
NOTE: This may take a while, and you won't get progress feedback
#################################################################
calling: "C:\Users\rol\Desktop\test_subs\bdsup2sub++.exe" -o "test_out.sub" "C:\Users\rol\Desktop\test_subs\.suppe3d\temp.xml"
BDSup2Sub++ 1.0.0

Converting SUB/IDX


Conversion of 1 file(s) finished

done ("C:\Users\rol\Desktop\test_subs\bdsup2sub++.exe" -o "test_out.sub" "C:\Users\rol\Desktop\test_subs\.suppe3d\temp.xml")
Done creating final subtitles


###########
Cleaning up
###########
ALL DONE

Neisklar
30th October 2012, 12:55
It seems that it doesn't pass the pass-through options to BDSup2Sub++, as you can see:

Yeah, problem is, it passes through, but that stupid comandline parser recognizes that "--xyz"-stuff as another switch and not as an paramater for that -pt switch.

You need to trick it:

Suppe3D.exe -pt " --move-out-ratio 10" -if test.sup -of test_out.sub

So inserting an space before but inside the " will help. I need to figure out how to workaround that limitation

Edit: another options is to do a -pt"--move-out-ratio 10" thing, so append the param for the switch directly without any space, or append with an colon: -pt:"--asdsadadsa"

r0lZ
30th October 2012, 13:57
OK, nice tricks. Perhaps this should be explained in the command line help?

Eseninzhiv
30th October 2012, 18:10
Neisklar
Later i will do a bigger post about 3D blu ray structure and an idea to a new open decoder plugin without the need of directshow and the corecodec
I look forward to
thanks

Neisklar
30th October 2012, 20:21
OK, nice tricks. Perhaps this should be explained in the command line help?

Yeah it should, you are absolutly right.

I uploaded V0.5:
http://www.share-online.biz/download.php?id=VYU90QCMHK0

Unless there aren't any more show stopping bugs, i think we should consider it as final, as it's only planned as temporary tool.

Your opinions?

Neisklar
31st October 2012, 00:18
Later i will do a bigger post about 3D blu ray structure and an idea to a new open decoder plugin without the need of directshow and the corecodec

Ok, lets get started.

Dunno what you opinion is, but i think a long term goal should be to have an mostly open and free (avisynth) MVC decoder.
The current way with the MVC Decoder from StereoPlayer/MVCToAVI is not future proof and also closed source.
Then we have ldecod, the reference implementation, slow as hell, but works. But we have the source code, so we can optimize it if we want, or convert two movies at once to use all cores;-). ldecod only takes an combined MVC bitstream, and outputs only yuv, so this needs work, but the knowledge is there. Also the old ssifsource plugin shows that its possible to pipe all steps together so we don't have big intermediate files.
Next we have the Intel Media SDK, which has an MVC Decoder. It comes with (even prebuild) samples, for which the sample_decode already works with an mvc bitstream, outputting yuv. So we could modify the "old" ssifsource to use that sample decode, add an bitstream-merger and we have free and open solution, quicker than ldecod. The SDK also has an already compiled directshow filter, which works, but i didn't manage to use it with avisynth.

I must admit that i'm lacking the coding skills, since it imho needs to be done in c(++), i could hack around, but thats not the way to go on the long run. So hopefully we get some good coders onboard.

OK, so whats needs to be done:


Get the two video biststreams (AVC base view and MVC dependent view) out of the ssif file, maybe start even a level higher and have mpls support.
combine these two bitstreams into a single MVC bitstream
feed it through the MVC decoder
take the two output yuvs and feed some to avisynth, optionally do transformations like SBS, OU, anaglyph and so on.


1. Get the left and right bitstream out of the ssif
We could just use eac3to and pipe the output to the bitstream-merger we have to create (which then acts as the "pipe-server" if eac3to doesn't support pipes), eac3to also brings in the mpls support. But eac3to is closed source afaik.
We could use the source of the MPEGSplitter Filter from the MPC project and modify it for our cases, maybe add mpls support.

So lets start with the tech stuff, .m2ts and .ssif

a .m2ts file, is just an slighly modified MPEG(2)-Transportstream (in future TS). A TS consists of packets of 188 Byte length. In an .m2ts file each packet has an additional header of 4 Bytes.
32 of these 192 Byte packets form a so called Aligned Unit of 6144 Bytes filling exactly 3 consecutive sectors on disk.

In such TS can be multiple streams of different types (video, audio, subtitle) called elementary streams (ES)

http://www.blu-raydisc.com/Assets/Downloadablefile/2b_bdrom_audiovisualapplication_0305-12955-15269.pdf page 15

Code, documentation handling and demultiplexing ES out of TS should be plenty on the internet.

To be backwards compatible, 3D BluRay have 2 .m2ts for a movie, one is a normal 2D stream, containing an normal H.264 video (the base view, mostly the left eye (i can be also the right one!!!)) and all the audio and subtitle streams. So normally every 3D BluRay could be played on a 2D Player, if the studios didn't code some restrictions in their menues....
The other .m2ts mostly contains only the MVC stream (sometimes additional subtitles, ...).

The .ssif File is an combination of both .m2ts. No modifications on the data is done, you only have some Aligned Units of file 1, some Aligned Units of File 2 and so on, nothing more, it's only two TS in one file

2. Combine the two extracted bitstreams to one MVC stream

An H.264 bitstream consists of different Network Abstraction Layer Units. Additional H.264 has also an concept of Access Units, which essentially means: all NALUs needed to decode on picture or all NALUs belonging to one exact timecode.

To create an combines MVC stream you just take all NALUs from the main view of one Access Unit, insert behind all NALUs from the single mvc stream of that Access Unit, and so on.
(Here i am not absolutly sure about the specific order of that NALUs: using the Intel Media SDK does it the way described above (first ALL main, then ALL dependent), but IMHO the spec says something about some ordering of certain types. Well, i got both to decode).

The ldecod source contains code in annexb..c/.h which contains exactly the parser for the bitstream to NALUs (it's defined in Annex B of the spec, hence the name), i already recoded a working but quick'n'dirty version in Delphi. I think going in more detail isn't useful here.

3. Decode that stream
The combined MVC stream can be feed through ldecod (which needs a minor patch, cause of an bug in that code) or through the Intel Media SDK Decoder. The SDL contains samples in source and precompiled form. One of them is the decode_sample, which takes that stream and decodes it to two yuv streams.

4. Transformations and Avisynth
Since we have sourcode and examples for all needed parts it could all be done in an avisynth plugin, without the need to start external processes and doing pipe magic. Additionally someone with knowledge of that stuff could do directly in the plugin the framestacking, and maybe anaglyph stuff.

Of course it could also be done the way the old ssifSource works, by chaining together different tools.

So lets start that project;-)

r0lZ
31st October 2012, 10:12
Nice and exciting project.

Unfortunately, I can't really help, as I'm not a C++ coder, and I know nothing about DirectShow and Avisynth plugins. But, of course, I will adapt my GUI to that method as soon as it will be usable. Let's hope someone else can do it.

Yeah it should, you are absolutly right.

I uploaded V0.5:
http://www.share-online.biz/download.php?id=VYU90QCMHK0

Unless there aren't any more show stopping bugs, i think we should consider it as final, as it's only planned as temporary tool.

Your opinions?
It's OK for me, although Suppe3d v0.4 doesn't return meaningful return codes when BDSup2Sum++ fails. For example, it returns 0 and prints "All done" when the output file has not been created. It's a pity, but not necessarily a big problem. The calling app can simply verify if the output file exist. I suppose v0.5 has the same limitation.

Also, the -full option should NOT be used. IMO, Suppe3d does its job correctly, but BDSup2Sub++ can't handle the double resolution, as it is limited to standard PAL/NTSC DVD or BD resolutions, and when it loads the XML/PNG subtitles created with the -full option, it tries to place them in the "normal" resolution, and changes the position of the subtitles. That makes the full subtitles useless. (It's why I haven't implemented the 3D conversion option in BD3D2MK3D when Full-SBS or Full-TB is selected.) So, IMO, that option can be removed (but it doesn't hurt much to leave it.)

I will add the possibility to specify the pass-through arguments in BD3D2MK3D...

[EDIT] I was wrong. Suppe3d seems to return the error codes correctly. I have been fooled by a Windows bug!
What I've said about the -full option is still valid.

r0lZ
1st November 2012, 14:41
I have mainly added the possibility to specify additional BDSup2Sub++ options in tab 2 and in the subtitle 3D converter. Note that if you hardcode a subtitle stream on the video, the options specified in tab 2 are used for that subtitles too. Use that options at your own risk, as there is no check for correct syntax or consistency at all.

# v0.7 (November 1, 2012)
# - Possibility to specify additional BDSup2Sub++ options when converting subtitles to 2D or 3D.
# - Updated Suppe3d.exe to v0.5 in the toolset directory.
# - Fix: Help -> BDSup2Sub++ Version was broken.
# - Changed the download link for x264 to http://komisar.gin.by/
# - Documentation updated.

Download the latest BD3D2MK3D version (http://download.videohelp.com/r0lZ/BD3D2AVS/BD3D2MK3D.7z)

MaistroX
1st November 2012, 19:27
Great update!
Can I be so bold to ask if these new "enhacments" can be added/avalible in the main options allso, not only in the converter?
Stupid Q from me maby, but what line do I add IF I want all subtitles to end upp 6pxls from bottom or topp?

Regards MaistroX


Regards MaistroX

r0lZ
1st November 2012, 19:52
Look in tab 2.

MaistroX
2nd November 2012, 20:19
Ahh I see! ;)
Look in tab 2.

But "Stupid Q from me maby, but what line do I add IF I want all subtitles to end upp 6pxls from bottom or topp? " ? :P

Regards MaistroX

r0lZ
2nd November 2012, 20:32
Honestly, I don't know. The move options of BDSup2Sub are very complex to use imo, and I have never understood exactly how they work. Use Move All Captions in the BDSup2Sub++ GUI to test, then add the corresponding arguments in BD3D2MK3D. You should probably use something like this, but I'm not sure:

--move-out-ratio 2.39 --move-y-offset 6

MaistroX
2nd November 2012, 21:34
Works like a Perfect, THX! :)

Honestly, I don't know. The move options of BDSup2Sub are very complex to use imo, and I have never understood exactly how they work. Use Move All Captions in the BDSup2Sub++ GUI to test, then add the corresponding arguments in BD3D2MK3D. You should probably use something like this, but I'm not sure:

--move-out-ratio 2.39 --move-y-offset 6


One other thing...
When in first tab oppening a new BD, the window that opens are ALLWAYS a bit under the viewing site on screen.
I have to move it up to gain access to "OK" and so on.
Can you add in BD3D2MK3D settings something like "save layout" or "save current place on screen on exit" ? ;)

MaistroX
2nd November 2012, 22:35
Another thing...

Subs extracted and made 3D (I think otherwise allso), gets the wrong label, if I open a ex: "21 Subtitle (PGS), Swedish 3D.idx" that I know allso is just Swedish, it says that is hase label "German" as language on subtitle, same goes for any extracted and converted via BD3D2MK3D.
If I use say RipBot and it extracts subs, it allways gets the right languange, as in, Swedish subtitle extracted, allso labeled as Swedish in language if I check say BDSup2Sub. ;)
Allso a "minor" language fault, say I extracted Norwegian it gets labeled "nno (Norwegian Nynorsk; Nynorsk, Norwegian).... it Should be labeled "nor (Norwegian).

Regards MaistroX

r0lZ
2nd November 2012, 23:12
The position of the Open Folder dialog cannot be saved, sorry. But you can resize it (and the size will be remembered by Windows from session to session), or move the main window near the top of the screen.
To save the main window position, just move it (and resize it if you wish), and use Settings -> Save Settings Now (or tick the Save Settings on Exit option).

When a SUP stream is converted to 2D SUB/IDX, I use a relatively complex method to convert the language name displayed by eac3to to the 3 letters language code necessary for BDSup2Sub and MkvMerge. The codes are converted using the list of languages returned by this command:mkvmerge.exe --list-languages --ui-language enUnfortunately, that list is somewhat complex, and some languages names are listed several times. I do my best to retrieve the correct code, but it's not always possible. It's probably why Norwegian is converted to "nno". I'll have a look at the code, but I'm not sure it will be possible to enhance the method.

When the stream is converted to 3D SUB, Suppe3D does not pass the language code to BDSup2Sub++, so it has only the file name to deduce the right code. I will see if I can pass the code with the -pt argument, but that will probably be difficult. Also, since Suppe3D calls BDSup2Sub++ several times, and it passes the -pt arguments only during the first pass, the subsequent passes may lose the code. Ideally, Suppe3d should have an additional -lang argument, to pass it to BDSup2Sub++ during all passes (or at least during the last pass). It's a job for Neisklar...

r0lZ
2nd November 2012, 23:27
I can confirm that the problem of the Norwegian name converted to "nno" is caused by the list of codes of MkvMerge:

Norwegian Nynorsk; Nynorsk, Norwegian | nno | nn
Norwegian | nor | no

I search for the word "Norwegian" in the list, and when it is found, I verify if there is a two-letters language code in the last column (as only the most used languages have that codes), and if it's not the case, I search for another line with the same word. Since Nynorsk has a 2-letters code, the search ends, and returns a wrong result.
That method works fine for example with "German", because only "German" alone has a two-letters code:

German | ger | de
German, Middle High (ca.1050-1500) | gmh |
German, Old High (ca.750-1050) | goh |
Germanic languages | gem |

I will try to find first a line containing the language name alone. That should work...

BTW, to check what code my function returns, you can open the console and type:

GetLanguageCode Norwegian [true]

As you can see, that command returns "nno" (or the ISO code "nn" when "true" is specified).

[EDIT] OK, problem fixed. Now, Norwegian is correctly converted to "nor" or "no". I hope I haven't broken the method for other languages.

The problem of the codes when converting to 3D SUB must still be fixed.
Neisklar?

emienator
3rd November 2012, 14:12
Hi, I've been using ssifSource for some time now to make encodes of 3d blu-rays, but the newest blu-ray releases don't seem to work anymore with ssifSource. For most blu-rays DirectShowMVCSource and ssifSource2 work just fine (even faster), but as far as I know they can't open .mpls files directly. This is a problem when the movie is split up over multiple .ssif files because the last frames of the clip are sometimes duplicated in the end, which makes sync errors when the files are encoded separately and combined afterwards.
Is there a way to combine multiple .ssif files to one file before opening it in avisynth?

r0lZ
3rd November 2012, 14:27
You should use something like this in your AVS script:

part1=DirectShowMVCSource("xxxx1.ssif", ...)
part2=DirectShowMVCSource("xxxx2.ssif", ...)
last=part1+part2

Extract the audio and subtitles from the mpls file, and mux everything.

It's the method implemented in BD3D2MK3D, and as far as I know, it works perfectly. But I have never noticed duplicated frames. Perhaps the problem you have is caused by streams of slightly different durations.

emienator
3rd November 2012, 15:12
DirectShowMVCSource("F:\BDMV\STREAM\SSIF\00948.ssif",stf=16)
When I open this code in AvsPmod it gives a of lenght 1254 frames, I just keep my right arrow key pressed until I get to the end of the clip. I notice that frames 1250 till 1253 are the same.
This also happens when I use ssifSource2 with the frame length eac3to gave me as a parameter.

Is it known btw why the original ssifSource doesn't work any more with recent blu-ray releases?

setarip_old
3rd November 2012, 15:35
@emienator

Hi! Is it known btw why the original ssifSource doesn't work any more with recent blu-ray releases?
Are you sure that you've properly "ripped"/decrypted the original, commercial Blu-ray disc?

emienator
3rd November 2012, 15:57
Are you sure that you've properly "ripped"/decrypted the original, commercial Blu-ray disc?
In other software the rip plays just fine.
It also doesn't work when I demux the left and right stream and let ssifSource open them directly.

r0lZ
3rd November 2012, 17:12
It's due to a known ldecod bug. It has been noticed and discussed many times in this thread.

emienator
3rd November 2012, 21:46
It's due to a known ldecod bug. It has been noticed and discussed many times in this thread.
Oh I see now, missed that piece of the thread. Is it also known what changed on the blu-rays to cause this problem?

Back to the problem of multiple clips, is it possible to join multiple ssif files to one file? Is there a program which can mux ssif?

Eseninzhiv
4th November 2012, 10:53
join multiple ssif files to one file
use TSSplitter

emienator
4th November 2012, 12:12
use TSSplitter
Ok thanks, but it still doesn't work correctly after joining the parts.
DirectShowMVCSource only detects 133316 frames of the 145149 eac3to says there are. ssifsource2 can output the right lenght when the correct number of frames are entered but it messes up the sync between the left and right stream...

r0lZ
4th November 2012, 12:53
DirectShowMVCSource only detects 133316 framesIs it the number of frames of the first part?

emienator
4th November 2012, 13:36
Is it the number of frames of the first part?
No, the first part has only 6849 frames.

emienator
5th November 2012, 17:59
I noticed some artifacts when decoding with the CoreAVCDecoder.dll from MVCToAVI 0.3.3
http://i50.tinypic.com/2wly338.jpg
When taking CoreAVCDecoder.dll from Stereoscopic Player 1.9.4 (latest) these artifacts are gone
http://i49.tinypic.com/140kdci.png
So i recommend updating CoreAVCDecoder.dll to the one from Stereoscopic Player 1.9.4, when doing that don't forget to rename the "magic folder" to "STEREOPLAYER.EXE" if you were using the dll from MVCToAVI .

r0lZ
5th November 2012, 18:02
Indeed, the artifacts are visible. Thanks for the finding!