This has been discussed again and again on forums but there are a lot of naive users who are unable to get the conversion done. But my question is not just limited to SBS 3D to Anaglyph (Red-Cyan 3D) Conversion.
I have a 3D SBS Video(.mkv), which I generally play using KM Player and use the 3D options of the player to view it as Anaglyph (Red-Cyan 3D) video. I have a pair of glasses and this setup really works fine to watch 3D movies on my PC.
The issue is I want to watch the same videos on my TV. But my TV is not a 3D tv (Panasonic Viera Th-P42V20 with DLNA). I generally stream movies from my PC to TV using Mezzmo Media server software connected through Ethernet cable. When I tried to play the same 3D video on TV, I see the video being played side by side. I want to see the video as Anaglyph video.
Kindly please suggest me a way out for this.
1. Is it right to convert SBS 3D to Anaglyph (Red-Cyan)? Will it degrade the quality ?
2. Is there any GUI based converter to convert this video ?
> I have tried Avisynth and tried to do with it but I always filed. I wonder if did even understand the procedure.
Also tried >> I have K lite codec installed on my pc. I have opened ffdshow Video Decoder (x64) and selected Avisynth and updated this script
c = ConvertToRGB32()
w = c.width()/2
h = c.height()/2
Have done everything I could but was never able to convert the video. I tired xilisoft 3d video converter as well. But it was slow and the output was not all what I wanted.
3. What are the alternates we have for this. Is there any other way I can play the same file on my TV without a need of conversion ?
At the end I want watch the video on my non 3D TV ... be it based on conversion: 1 is the original sample.mkv (SBS) file and 2 is the conversion to Anaglyph or even without conversion.
Please suggest your ideas on this. It would be of great help.
Once I m through with this, I will be posting a tutorial on how to use/script Avisynth. Seriously, I still did not understand how to use it, may my tutorial will help others.
Thanks In Advance. Should you require more details, please let me know.
+ Reply to Thread
Results 1 to 9 of 9
So it sounds like KMplayer won't do the conversion while you're outputting to your TV? Weird...Oh, now I get it, you aren't using KMplayer for that, but Mezzmo (which doesn't do S3D conversions on-the-fly).
So, yes, you will have to Pre-Render a copy of your SbS file as R/C Anaglyph.
1. Is it Right (correct) to do it this way? For now, until your HW situation changes.
Will it degrade quality? Sure. Once for compression generational loss and once for loss of color fidelity. But in your current situation, that can't be avoided.
2. Is there a GUI available to do this? Yes, for Windows, there is Stereo Movie Maker. Not the most elegantly-written software, but thoroughly does the job. IIRC, up to v1.3 now. There are a number of other GUI possibilities, though. Just google "SBS to Anaglyph" to find more.
3. Alternatives? Within the confines of keeping & using only your current HW, there are none that I know of: you MUST convert, as there is no General Purpose DNLA-serving Media Player software that can auto-convert SbS to Anaglyph. Stereoscopic Player is the most versatile of the S3D-aware players, but it is not a DLNA server. Personally, I think you are doing yourself a disservice by avoiding getting a true 3DTV, but I understand that it's your money and you've already invested in a decent TV otherwise, so...
4. Your AVISynth Script is missing a few things ("DirectshowSource", Pantarheon AVSI linkup). Would be much better if you documented your code w/ Comments.
Whenever you have trouble with AVISynth, it will give you error messages, with the line# for the 1st offending error in the message. Always work directly in response to those messages. Probably best to post them here so they can be commented on.
Doing a google search on this site or Doom9 for "avisynth script sbs to anaglyph" will give you a number of example scripts to start from.
I would say that, if you're having this much trouble starting to USE Avisynth, you wouldn't carry much weight when providing a tute, until you have greatly improved your scripting skills.
At the outset I want to thank you for taking time to reply to my query. I agree to what you have said... It wasnt the right decision of not choosing a 3D TV. Nevertheless I can still make use of the technology(like AVISYNTH etc) and shall try to sustain for a while
Coming to AviSynth, let me first tell you that I know coding(I code in Jquery) and its really embarrassing to say that I could not do it myself in this case. Coding is not a issue. The problem is I never understood how to use AviSynth. I somehow found a Video tutorial that explains how to used Avisynth. Before I list out the things I treid so far let me tell you I couldn't do something as simple as being able to play an AVI file using AviSource("file.avi", pixel_type="RGB32") function.
1. I have Avisynth 2.5 installed
2. virtualDubMod 184.108.40.206
I will share the other piece of code as soon as I get the basics right. I guess I m missing something very basic and if I get through that, rest will work automatically.
Also tried this.
#ASYNTHER DirectShowSource LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\DirectShowSource.dll") DirectShowSource("D:\test-3d-mp4.mp4") ConvertToRGB() # extract left and right views as separate videos left=Crop(0,0,width/2,-0) right=Crop(width/2,0,width/2,-0) # merge color channels to make an anaglyph image r=ShowRed(left) g=ShowGreen(right) b=ShowBlue(right) MergeRGB(r,g,b) LanczosResize(1280,720)
Error I got
(Dammit, lost my first draft of this to an errant mouse click!)
Error#1 should be an easy fix.
It said right there in the message: Can't find the Xvid codec! Do you have that installed? Not sure? Well, here's a way to find out using a tool that you already have shown you have at your disposal: VirtualdubMod.
- Load up in Vdm a file that you already know is viewable/playable.
- Go to menuitem |Video|Compression| (aka Ctrl+P)
- Look near the end of the list: you should see "Xvid Mpeg4" listed among the codecs
If it isn't listed, download & install the Xvid codec (there are links from here).
If it IS listed, uninstall & then properly reinstall it.
That should take care of Error#1.
Note that for AVISynth to properly use a media file/stream, it must have 2 things properly installed: a "Source" filter and a Codec (one that is compatible with the source filter's API). Each source filter has its quirks and none work with all codecs. The ffmpegSource, which includes its own codecs, is probably the most all-encompassing.
Sounds to me like you've got a problem with your DirectshowSource filter (or you *.MP4 files).
Working on the filter first:
If you installed a recent copy of AVISynth correctly, you should not even need to explicitly load/link DirectshowSource, as it is a standard internal filter existing in the standard, expected plugins folder.
WAIT! Are you running Win7/8 x64? You may have some compatibility problems between bit-depth variations in code. IOW, when working in Virtualdub or AVISynth, all the code needs to be 32bit or 64bit. You cannot mix & match. This often crops up when attempting to use certain plugins (ones which only exist at one bit depth). I'm thinking that this might be a major factor in what's going on.
If the problem were non-compliant MP4 files, we could probably find out using MediaInfo readouts.
Let us know more,
<edit>I noticed on the AVISynth wiki page this documentation:
Windows 7 forces its own DirectShow filters for decoding several audio and video formats. Changing their merits or physically removing those filters doesn't help. clsid made the tool "Win7DSFilterTweaker" to change the preferred filters. However new decoders need to be added each time so it's not the perfect solution.
Last edited by Cornucopia; 27th Feb 2014 at 16:05.
You know a filter using optimized (Dubois) anaglyph method.
the advanced Dubois algorithm, which is able to reduce the ghosting effect that is possible in the conversion.
I found this link
but it is broken
I had no trouble using that link (even the link that you provided). Even downloaded the newest zip file from it.
Personally, I wouldn't put too much faith in the Dubois method. Yes, there are elements to it that lessen the crosstalk (aka Ghosting), but this comes at the expense of giving you false coloring (even as-seen through the filters). Also, it is adjusting the luminance on some elements (mainly to lessen the contrast), so there is false overall contrast as well. Good for some people (those who are FORCED to only view 3D as Anaglyph, I guess, and aren't color-conscious), but not for me.
Note that Dubios' own website gives links to other softwares that use his method: http://www.site.uottawa.ca/~edubois/anaglyph/ (beyond the AVISynth script you already referred to.
Is there ANOTHER AVISynth script out there that already uses this method? I doubt it, although you could create your own if you followed the "Least Squares" projection method as documented by his thesis.
Latest version: AviSynth_Anaglyph_plugin_V1.0.zip (503.6 kilobytes)
Wayback Machine doesn't have that page archived.
I do not understand why?
you know another link?
I have just started playing with this issue recently, and I think I have found a MUCH simpler solution than AviSynth. I'm sure you are familiar with VLC, correct? You can do the entire process right in VLC if you know what you are doing. First, open a SBS 3d video. The picture will be, well, Side-By-Side!! So now you need to view in Anaglyph mode. Go to the "Tools" menu at top of screen and select "Effects and Filters", then select "Video Effects". You will see several tabs...select "Video Effects." Once in this box, you will see "colors", "geometry," "overlay," and several others...you want the one all the way to the right labeled "Advanced." (use the little left/right arrow buttons if necessary to see the "Advanced" menu. In that menu, the very bottom option is "Anaglyph 3D"....check that box. This SHOULD make your SBS 3D video display in red/cyan anaglyph. (I use this feature every time I want to watch a SBS 3D movie in VLC.)
Now you need to record that output to a file as an anaglyph instead of a SBS. Open the "Media" tab at the top of the screen. Select "Convert/Save." You will get a box titled "Open Media." Select "Add" and you will be prompted to choose the input file...select the SBS file that is already open in VLC) Once the file is added, look to the bottom of the dialogue box and you will see a "Convert/Save" button. Click that button. Now you have some choices to make regarding the video and audio format of the output file. Every time I have done this I use the default profile: "Video - H.264 + MP3 (MP4)" You can, however, experiment with different profiles or even create your own, but the default seems to be the best and results in the smallest file size while maintaining good quality. (There are even profiles for various smartphones) You will see that a "Convert" box is already selected for you. Another option is to "Display the Output"...I don't recommend this as it may slow down the conversion process. If you KNOW the file is interlaced, there is a box to check if you want to deinterlace (I don't recommend this) Nor do I recommend the final option in that box: "Dump Raw Input." Now this is VERY IMPORTANT: The final line in this box is "Destination File"...YOU MUST ENTER A NAME FOR YOUR OUTPUT FILE HERE INCLUDING THE EXTENSION (ie "testrun.MP4") Many times this is overlooked and you end up with a complete GOOSE EGG after waiting all that time converting. And yes, one big drawback to this method is that VLC essentially has to play the entire movie to convert it. So a 2 hour flik will take 2 hours to convert. And one more thing: Once you have converted your entire movie, you may want to test it out using VLC; just remember that you previously turned ON 3d anaglyph from the "Tools-->Effects and Filters-->Video Effects-->Advanced" menu....you MUST turn it back OFF to view your new anaglyph movie or it will show the movie as a "double anaglyph," which is impossible to watch with or without red/blue glasses!
Hope someone finds this helpful. I worked on this problem for weeks so that I could watch 3D movies (anaglyph ones) with my red/blue glasses on my 62 inch NON-3D TV. This IS the simplest solution I have found so far; no avisynth or scripts or any such multi-layered processes....all you need is a SBS version of a movie and VLC. (and of course those ever-present red/blue glasses!) If anyone needs help with this process, feel free to email me: email@example.com