DV Info Net

DV Info Net (https://www.dvinfo.net/forum/)
-   3D Stereoscopic Production & Delivery (https://www.dvinfo.net/forum/3d-stereoscopic-production-delivery/)
-   -   Producing 3D files in AviSynth (https://www.dvinfo.net/forum/3d-stereoscopic-production-delivery/479703-producing-3d-files-avisynth.html)

Adam Stanislav December 13th, 2010 07:14 PM

Yes, such an encoder would be nice. And someday someone will release one. But it is still too new.

Seref Halulu December 13th, 2010 08:14 PM

At least there are some open source codes nowadays and i hope somebody -or a team will implement MVC encoder soon. Thanks for your assist btw.

Adam Stanislav December 14th, 2010 10:02 AM

Perhaps the VLC encoder is the step in the right direction.

Seref Halulu December 20th, 2010 03:58 PM

Hi,

I wanted to share my test results.

For the time being i sticked with x264's frame-packing capabilities; it puts some flags and you everytime have to select "side-by-side" or "top-bottom" options on player's settings according to the source file.
Yesterday i made some trials and i found "TopDown3D"/ "LeftRight3D" is only working with TMT5 in 3D mode.

So for now the best solution is to use "-reduced" option. (IMO)

Here are some scripts: (Created x264 files with those scripts and packed into m2ts /mkv containers work flawlessly in 3D mode with both TMT 5 and PDVD 10 .) And you can open them with MeGui and re-encode to x264 as frame packed... (you may use any desired preset too...)

(Sample avisynth scripts are written for left-right frame packing, you may change "LeftRight3DReduced(lv, rv)" line with "TopDown3DReduced(lv, rv)" )

With DGNVTools of Don.(you need to have a compatible nVidia card and the application of course.):

LoadPlugin("C:\DG\DGDecodeNV.dll")

lv = DGSource("C:\xxx\left.dgi")

rv = DGSource("C:\xxx\right.dgi")

LeftRight3DReduced(lv, rv)

ConvertToYV12()



Or without DGNVTools:

either:

lv = FFVideoSource("C:\xxx\left.m2ts")

rv = FFVideoSource("C:\xxx\right.m2ts")

LeftRight3DReduced(lv, rv)

ConvertToYV12()

or:

lv = directshowsource("C:\xxx\left.m2ts")

rv = directshowsource("C:\xxx\right.m2ts")

LeftRight3DReduced(lv, rv)

ConvertToYV12()


Thanks Adam really for your great tool.

EDIT: btw there are no options here like bold, code, quote, etc. Why? I'm a new boot here; is this the reason?

Adam Stanislav December 20th, 2010 07:14 PM

You're quite welcome. As for bold and such, just use regular BBCode tags (see https://secure.wikimedia.org/wikipedia/en/wiki/BBCode for details). Those work on most web-based fora, including this one.

Seref Halulu December 21st, 2010 05:02 PM

Thanks Adam.

Seref Halulu January 14th, 2011 04:45 PM

Hi Adam, me again.

I found left video is extracted as 1088p, so i left DGNVTools to crop the left movie and i used this aviscript:

Quote:

LoadPlugin("C:\DG\DGDecodeNV.dll")
LoadPlugin("H264StereoSource.dll")
lv = DGSource("C:\H264StereoSource_a2\left.dgi")
rv= H264StereoSource("decoder.cfg",64140)
lv = lv.ConvertToYUY2
rv = rv.ConvertToYUY2
HDMI3D(lv, rv)
And used:
Code:

C:\blabla>x264 --fps 24000/1001 --level 4.1 --sar 1:1 --aud -o adam.264 adam.avs

avs [info]: 1920x2205p 1:1 @ 24000/1001 fps (cfr)
resize [warning]: converting from yuyv422 to yuv422p
resize [error]: resolution 1920x2205 is not compliant with colorspace i420

And?

Seref Halulu January 18th, 2011 05:00 PM

FYI those are working:

Quote:

SetMemoryMax (64)
LoadPlugin("C:\DG\DGDecodeNV.dll")
LoadPlugin("H264StereoSource.dll")
lv = DGSource("C:\blabla\left.dgi")
rv= H264StereoSource("decoder.cfg",*****)
LeftRight3D(lv, rv)
ConvertToYV12()
Quote:

SetMemoryMax (64)
LoadPlugin("C:\DG\DGDecodeNV.dll")
LoadPlugin("H264StereoSource.dll")
lv = DGSource("C:\blabla\left.dgi")
rv= H264StereoSource("decoder.cfg",*****)
TopDown3D(lv, rv)
ConvertToYV12()

Adam Stanislav January 18th, 2011 05:26 PM

Yes, sometimes 1080 decodes as 1088 because certain formats have to be divisible by 16. Nothing I can do about it. You may want to try cropping it after you convert it to YV12.

Seref Halulu January 18th, 2011 05:41 PM

But i have tried with ffVideoSource too; FFVideoSource always perceives it as is; 1080...

Quote:

LoadPlugin("H264StereoSource.dll")
lv= FFVideoSource("C:\H264StereoSource_a2\left.m2ts")
rv = H264StereoSource("decoder.cfg",64172)
HDMI3D(lv, rv)
Same result...

Should i still crop after converting to YV12?

Adam Stanislav January 18th, 2011 05:57 PM

No, if it already is seen as 1080, cropping would be just a waste of time.

But you cannot convert the HDMI videos into a format that expects an even number of lines, such as MPEG, because it always has an odd number of lines (as I explain in Pantarheon 3D AviSynth Toolbox).

Seref Halulu January 18th, 2011 06:38 PM

Yeah, forgot to add "YUY2" lines...

Quote:

LoadPlugin("H264StereoSource.dll")
lv= FFVideoSource("C:\H264StereoSource_a2\left.m2ts")
rv = H264StereoSource("decoder.cfg",64172)
lv = lv.ConvertToYUY2
rv = rv.ConvertToYUY2
HDMI3D(lv, rv)
But:

Quote:

C:\H264StereoSource_a2>x264 --fps 24000/1001 --level 4.1 --sar 1:1 --aud --frames 3000 -o adam_HDMI.264 adam_HDMI.avs

avs [info]: 1920x2205p 1:1 @ 24000/1001 fps (cfr)
resize [warning]: converting from yuyv422 to yuv422p
resize [error]: resolution 1920x2205 is not compliant with colorspace i420
Or? Have i missed something else? Supposed those 45 lines are added automatically or not?
Anyway it seems to be added: 2205...

Adam Stanislav January 18th, 2011 08:24 PM

Quote:

Originally Posted by Seref Halulu (Post 1608866)
Have i missed something else? Supposed those 45 lines are added automatically or not?
Anyway it seems to be added: 2205...

Yes, they are added. But do not forget what I said on my web site:

Quote:

That means that HDMI did not create the standard for storage in files but for video players and games to produce the image from some other format, or even on the fly. This is particularly clear when you consider that MPEG files use the YUV format. So, do not blame me, blame HDMI.
HDMI transfers data in the RGB format. So, if you actually want to save it all in a file, instead of converting to YUY2, try converting to RGB and save it as an RGB file.

Seref Halulu January 19th, 2011 04:36 PM

Thanks but it doesn't work:

Quote:

SetMemoryMax (64)
LoadPlugin("H264StereoSource.dll")
lv= FFVideoSource("C:\H264StereoSource_a2\left.m2ts")
rv = H264StereoSource("decoder.cfg",64172)
lv = lv.ConvertToRGB
rv = rv.ConvertToRGB
HDMI3D(lv, rv)
Quote:

C:\H264StereoSource_a2>x264 --fps 24000/1001 --level 4.1 --aud --frames 3000 -o adam_HDMI.264 adam_HDMI.avs

avs [info]: 1920x2205p 0:0 @ 25/1 fps (cfr)
resize [error]: resolution 1920x2205 is not compliant with colorspace i420

Adam Stanislav January 19th, 2011 05:22 PM

Quote:

Originally Posted by Seref Halulu (Post 1609261)
Thanks but it doesn't work:

And it never will. You are trying to convert it to an MPEG format which cannot handle video with an odd number of lines. That is what I have been trying to tell you. You could save it in the RGB format with some RGB codec in an AVI file or similar.

The HDMI 1.4a standard was not meant for saving video into files to start with. It is only meant to send video (and audio) data directly to a monitor over a cable. You still can save it in a file, but it cannot be in the color space you are trying to save it in.


All times are GMT -6. The time now is 03:40 AM.

DV Info Net -- Real Names, Real People, Real Info!
1998-2021 The Digital Video Information Network