As explained in the next post, try to uninstall avisynth and be sure to install avisynth+ WITH VCRedist. The absence of vcredist may be the cause of the problem.
BTW, that makes me think that the problem can also be caused by an auto-loaded anisynth plugin or script. Uninstalling everything or renaming the directory within the Program Files folder may solve the problem. Try it !
I'm interested to know when exactly the encoding crashes. Is it immediately, when the command-prompt window opens, or is it somewhere in the middle of an encoding, or at the end, just before the mux operation ? After the crash, can you see a file with a filename similar to "00000_3D.264" (where 00000 is the number of the MPLS file selected in the blu-ray) ? If it has been created, what is the size of that file ?
+ Reply to Thread
Results 151 to 167 of 167
Avisynth+ 64-bit. (You may have to install the version including VCRedist the first time: AviSynthPlus_3.7.0_20210111_vcredist.exe). Also, you may want to uninstall your current version first. If it's your version of avisynth that causes the crash, it is better to avoid it completely. And if you still have the problem with Avisynth+ x64, try uninstalling it and install the 32-bit version only. (BD3D2MK3D uses the 64-bit version when it is present, but can use also the 32-bit version, on a 32-bit system or if the 64-bit version is not installed.)
Note that avisynth is basically only a single DLL, installed in the Windows\System32 or SysWOW64 directory (respectively for the 64 and 32-bit versions of the DLL). The files installed in the Program files directory are not really necessary, and are mainly the documentation, some plugins and/or examples.
# AVC/MVC video decoder LoadPlugin("D:\Tcl\work\BD3D2MK3D\toolset\plugins64bit\FRIMSource.dll") # Load the two video streams interleaved = FRIMSource("mvc", "00000.track_4113.264", "00000.track_4114.mvc", layout = "alt", num_frames = 177167, cache = 2, platform = "") # Current base view: left eye. # The views are in the common order: AVC stream = left view, MVC stream = right view. left = SelectEven(interleaved) right = SelectOdd(interleaved) # Build the Half Side-by-Side stream StackHorizontal(HorizontalReduceBy2(Left), HorizontalReduceBy2(Right)) AssumeFPS("ntsc_film")
Last edited by MajinDustin; 25th Aug 2021 at 18:48. Reason: Added screenshot
I see that the MKV3D_3D.264 file (normally created during the encoding phase) is empty. That means probably that the program crashes immediately. Also, the file name suggests that you are encoding from a MKV created with MakeMKV. Fine, but perhaps MakeMKV is the culprit, for example if something has changed in the way it muxes the 3D MKV file. I will do a test here, but be patient. Currently, I don't have much time for that kind of work...
Sorry for the long delay. BD3D2MK3D v1.23 is finally here. It should fix all issues reported so far.
v1.23 (September 10, 2021)
- Updated the mkvtoolnix tools to the latest version (v56.1.0 'My Friend')
- Bug fix: Crash when checking if Avisynth+ is properly installed when the VC++ redistributable package is not installed.
- Bug fix: Clone subtitle positions did not work correctly when Process only the subs in the upper half of the screen was selected and the last subtitle in the guide was in the upper part of the screen.
- Bug fix: Clone subtitle positions: The warning (if any) was added to the XML even if it was already present.
Thanks for your continuous maintenance & improvements on this great tool, r0lZ
I second this, thank you for this amazing tool Two questions:
1) Is there no tune: animation option for h.265? It is not in the dropdown but it seems to be in the official h.265 documentation
2) Is there any way to produce an h.265 output file that MadVR recognises as 3D? I have tried both h.264 and h.265 frame sequential without success
Reason I'm asking 2) is because I am currently using MadVR to play the Blu Ray rips created with MakeMkv. I would love to compress these to h.265 to save space, but still take advantage of all MadVR features (cropping out the black bars of 3D content and scaling the image correctly in high quality).
Thank you very much in advance for your time!
Thanks for the thanks !
1) Sorry, but I can't see the animation option in the help of x265:
-t/--tune <string> Tune the settings for a particular type of source or situation:
psnr, ssim, grain, zerolatency, fastdecode
2) Sorry again, but I don't use MadVR and therefore I can't help much. Anyway, as far as I know, it is not possible to define an HEVC encoding as 3D. Only AVC supports that (notably with x264). BD3D2MK3D sets also the correct 3D flag in the header of the mkv, regardless of the encoder. At least that flag should be recognised by MadVR, even for a h265 encoding. The two standard methods to define the 3D format internally are therefore supported by BD3D2MK3D, and I can't invent another one. If MadVR cannot recognise the 3D format, you should report that limitation/bug to the developers.
Note that you can also add a specific extension to the filename, that can be used by some players to recognise the 3D-format. (See Settings -> Output file name.) If MadVR requires another extension, please let me know, and I'll add it in the next version. Try also the official extension for 3D MKV: .mk3d. Maybe that will be sufficient, but it is not possible to specify precisely the frame sequential format.
Anyway, I suppose you will have a more precise information in a forum dedicated to MadVR. And let me know if you find a solution, even if it doesn't require a modification of BD3D2MK3D. Thanks in advance.
Appreciate the detailed and prompt response!
1) Yes, that's what I have done (albeit more cumbersome method via editing the _ENCODE_3D.cmd directly). The jobs indeed encode without error message, indicating that it should work. Here is the section form the h.265 documentation mentioning the option: https://x265.readthedocs.io/en/stable/presets.html#tuning
2) Ok no problem. I have tried pretty much everything at this point, including re-encoding the MakeMKV file in Handbrake, and then setting the stereoscopic option in the file manually via mkvtoolnix gui as well, no dice. MadVR is no longer being developed. I will check the file name and extension suggestions you mentioned, but am pretty sure that MadVR just expects certain parameters in the AVC file itself. It can obviously play TAB and SBS files, but then the black bar cropping and image zoom doesn't produce the desired results. The cropping does work for a frame sequential file, but it only shows it as frame sequential, and I need TAB output for my passive LG in 4k.
I was perfectly happy with full resolution TAB files and PotPlayer until I tried MadVR last weekend, and the difference is astonishing. Just can't go back after seeing it. Very performance hungry, but worth it.
Last question: do you know if there is such a thing as an h.265 encoded frame packed mkv? Sorry if this is silly, I'm still learning about all this and my 3 hours of googling tonight were unsuccessful
Sorry for replying only now. I have not been noticed of your reply, and I find it only now.
1) OK, I have just added animation in the list of tuning parameters for x265. But I will not release a new version just for that. In the meantime, use the Additional parameters trick explained above. (You can save the parameters with Settings -> Save tab settings now.)
2) Hum, as I wrote above, h264 is not supposed to encode 3D content. IMO, only x264 has the internal flag in the video stream to instruct the player of the 3D format. (Although that flag is less good than the MKV header for this: you can define, for example, SBS, but not HSBS/FSBS and the order of the views.) Anyway, good luck !
3) Sorry, I'm not sure I understand your question. It is of course possible to encode 3D content in frame packed format, regardless of the encoder, but only h264 is officially supported for 3D content (and therefore, encoding 3D in UHD is theoretically not possible). Converting a 3D blu-ray to MKV, even in frame packed format, can be made potentially with any encoder, including x265, but as you know, x265 cannot inform the player of the right format.
AFAIK, frame packed 3D is rarely (and perhaps even never) available on the internet. It's certainly the less used packing method, even for x264. HSBS and HTAB are the only official standards. (BTW, I have added the frame-packed format in BD3D2MK3D originally only because some projectors require that format.)
Awesome, thank you so much Really appreciate you replying at all and being so dedicated to this amazing tool.
Ok, I thought "page flip" / frame sequential and frame packed were different things? Where frame packed is basically full resolution TAB at 24fps with 40ish pixels vertically between, separating the images? And frame sequential alternating left/right image in a normal 1080p image at 48fps?
Please correct me if I'm wrong!
On another note, I have a question regarding cropping and stretching the image to eliminate black bars at cost of losing some information at the edges of the screen.
I understand you don't want to support this option (and I respect that). I've found your reply in an old locked thread:
"Anyway, if your intention is really to crop and enlarge a part of the image to keep the original AR and size unchanged, it is easy to modify the avisynth script to do it yourself. You can add the Crop() and *Resize() commands on the left and right views, and you'll get the zoom you want. That's really simple, if you know some basis of avisynth scripting. I can help you if you wish."
Would you be able to point me in the right direction with this? I believe the section in the .avs file that is generated that's relevant is this:
left = SelectEven(interleaved)
right = SelectOdd(interleaved)
Is that correct, or do I need to put it somewhere else?
The commands I want to apply are these:
Crop(39, 22, -39, -22)
For Cinemascope 2.35:
Crop(235, 132, -235, -132)
I have spent a few days reading about the AviSynth grammar, and have tried all possible combinations of including these commands myself, but could not make it work. It is sadly beyond my skill level. Would you please be so kind and let me know how I could make it happen?
Thank you a ton in advance!!!
Last edited by tOXicSilence; 21st Sep 2021 at 07:57.
The correct names for the various packing methods is not well established, except SBS (Side by Side). Even TAB is not always accepted : many peoples prefer OU, and to add to the confusion, I have decided to call it T&B in BD3D2MK3D. So, IMO, discussing of what is what doesn't make much sense. SBS, TAB and Frame Sequential are widely used, and I have adopted that packing methods and (almost) their names. I know that some players require fancy (read : totally out of standard) formats, such as some kind of TAB with an additional black bar in the middle, but it's stupid, as no software is able to create that bizarre formats (especially when the width of the additional black bar is an odd number of pixels, totally impossible to encode with any encoder !) Anyway, I use "packing" as a generic term that means "method to put together the images of the two stereoscopic views". It's also the terminology used by x264: the flag telling what 3D format is used is called frame packing. Therefore, for me and I believe most users, frame packing (or frame packed) doesn't specify a specific... frame packing method. It may be used to designate one of those fancy non-standard formats, but I suppose it's simply because they do not have a better name.
To crop each view independently (before they are joined), you can concatenate the commands in a single line with a dot, like this:
left = SelectEven(interleaved).Crop(39, 22, -39, -22).Lanczos4Resize(1920, 1080)
Or, if you prefer to keep the commands on separate lines, you have to specify the name of the clip:
left = SelectEven(interleaved)
left = Crop(left, 39, 22, -39, -22)
left = Lanczos4Resize(left, 1920, 1080)
But note that cropping the black bars and then resizing them to 1920x1080 (16:9) is IMO a nonsense. You will deform the image completely. Of course, you will not see the black borders any more, but the price to pay is, IMO, way too much. It's only my opinion, but it's why I don't want to add a crop feature in BD3D2MK3D. Even without the resize, the movie will be distorted when played on some TVs, like my Samsung. IMO, it's a crime !
Thank you for such a detailed response and explanation! That makes sense.
Your instructions for the crop/resize worked! I actually got really close, it just bugged out with file name errors. Tried the exact syntax you suggested previously, and just didn't have my NAS drive mounted then The values I settled for after testing are:
left = SelectEven(interleaved).Crop(248, 140, -248, -140).Lanczos4Resize(1920, 1080)
right = SelectOdd(interleaved).Crop(248, 140, -248, -140).Lanczos4Resize(1920, 1080)
I understand that the black bars topic usually spark a really charged philosophical discussion about what the correct way to watch a movie is What I am doing is not cropping and distorting the image. It is zooming the black bars away at the expense of losing information on the right/left side of the image (if we're talking cinemascope to 16:9).
The aspect ratio of the image remains the same, the geometry remains the same, it is just zoomed in more so that the picture fills the entire 16:9 screen.
I have attached a demo render of the original in cinemascope, and a zoomed version:
The screenshots in that folder compare the quality of the Bluray "live" upscaled directly from 1080p in MadVR, and the h.265 compressed TAB file after being conditioned with the optimal MadVR settings. You may notice chroma compression in the background in the h.265 example, but apart from that, the quality is amazing.
File size of the h.265 is under 30% of the Bluray file for animated movies (CF20, --tune animation). File size for "normal" movies typically reaches about 40% of the original with CF20.
Thank you for all your help, this is now working exactly as intended for my use case! I've even been able to feed the file to Topaz Video Enhance AI to upscale it to 3840x4320. The process works, but it takes about 20x the runtime of the file to enhance it offline (RX5700XT). And the results are not superior enough to warrant the 40+hrs of rendering per movie on top of the previous conversion.
Take care and best wishes
Thanks for the info. I like to hear what users do with my programs. It's why I prefer to document all files as completely as possible, and avoid the (IMO bad) philosophy of the "press one big button and you'll get the job done". Obviously, you are such a power user, and I'm happy to develop BD3D2MK3D for guys like you.
Have fun with your 3D movies.