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 > Capturing and Editing Video > Avisynth Development

Reply
 
Thread Tools Search this Thread Display Modes
Old 7th February 2012, 03:44   #1481  |  Link
LoRd_MuldeR
Software Developer
 
LoRd_MuldeR's Avatar
 
Join Date: Jun 2005
Location: Last House on Slunk Street
Posts: 12,900
@Chumbo:
Depending on what you are doing, running Avisynth in a 32-Bit process and processing the video in a separate 64-Bit process (e.g. x264) may be a feasible solution.
__________________
There was of course no way of knowing whether you were being watched at any given moment.
How often, or on what system, the Thought Police plugged in on any individual wire was guesswork.


LoRd_MuldeR is offline   Reply With Quote
Old 7th February 2012, 08:22   #1482  |  Link
LigH
German doom9/Gleitz SuMo
 
LigH's Avatar
 
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 5,434
Is FFIndex (either in ffms2.dll or via ffmsindex.exe) able to support a list of VOB segments as source (like DGMPGDec does), if not even an IFO (ideally with a PGC/angle definition, or at least a PGC/angle VOB set stripped by the ripper in IFO/movie mode or PGCDemux), and an MPLS Blu-ray playlist?

If not yet ... where is the recommendable place to add such a feature request?
__

P.S.: Exists already...
__________________

New German Gleitz board
MediaFire: x264 | x265 | VPx | AOM | Xvid

Last edited by LigH; 7th February 2012 at 12:51.
LigH is offline   Reply With Quote
Old 7th February 2012, 20:09   #1483  |  Link
Chumbo
Registered User
 
Chumbo's Avatar
 
Join Date: Feb 2005
Posts: 585
Quote:
Originally Posted by TheRyuu View Post
You know not using 64-bit is an acceptable solution. What about DGDecodeDI or DGDecodeNV (the latter even supports vc1)? You do know that you can run 32-bit applications on a 64-bit copy of Windows right?

I also doubt that the ffdshow deinterlacers are any good (other than yadif which can be used from avisynth as well).
Yep, I do know that. Unfortunately, when I run it that way, the components crash all the time, e.g., x264 successfully encodes pass1 and then crashes. This means I have to manually intervene constantly for every component that crashes. I'm an ATI shop so I can't use DGDecodeNV but did NOT know about DGDecodeDI so I'll definitely look that up. Thanks for the heads up. BTW, my source is AVC so I would need DGAVCDecode for 64bit.

I much prefer to use yadif which is what I was using in my scripts but with the problems with encoding these interlaced files with ffms2 I've been trying to find an alternative solution that is still free.

Quote:
Originally Posted by LoRd_MuldeR View Post
@Chumbo:
Depending on what you are doing, running Avisynth in a 32-Bit process and processing the video in a separate 64-Bit process (e.g. x264) may be a feasible solution.
Yep and per what I stated above, I actually started down that road initially but ran into the problems where the 32bit apps were essentially crashing at the end of their run which required constant manual intervention to my automated processes. Unless I'm missing something in how I'm running these? I have tried several different compatibility modes but got the same results.

The only way I was able to do this was to create a virtual machine running Windows 32bit but it's really slow to do this inside a VM.
__________________
Chumbo

Last edited by Chumbo; 7th February 2012 at 20:11.
Chumbo is offline   Reply With Quote
Old 8th February 2012, 16:55   #1484  |  Link
TheFluff
Excessively jovial fellow
 
Join Date: Jun 2004
Location: rude
Posts: 1,021
Quote:
Originally Posted by LigH View Post
Is FFIndex (either in ffms2.dll or via ffmsindex.exe) able to support a list of VOB segments as source (like DGMPGDec does), if not even an IFO (ideally with a PGC/angle definition, or at least a PGC/angle VOB set stripped by the ripper in IFO/movie mode or PGCDemux), and an MPLS Blu-ray playlist?

If not yet ... where is the recommendable place to add such a feature request?
__

P.S.: Exists already...
It's been on the todo list for ages, issue #33 is an even older feature request for the same thing.

Last edited by TheFluff; 13th February 2012 at 19:22.
TheFluff is offline   Reply With Quote
Old 8th February 2012, 17:43   #1485  |  Link
Chumbo
Registered User
 
Chumbo's Avatar
 
Join Date: Feb 2005
Posts: 585
Quote:
Originally Posted by Chumbo View Post
...I can't even use DGAVCDecode since that version is not available for 64bit.
Let me clarify what I said here. I CAN use dgdecode to produce the dga file. What I CANNOT do is load the DLL and use AVCSource in the script.
__________________
Chumbo
Chumbo is offline   Reply With Quote
Old 9th February 2012, 00:42   #1486  |  Link
TheRyuu
warpsharpened
 
Join Date: Feb 2007
Posts: 788
This is getting fairly off topic but it obviously shouldn't be crashing so you should probably look into why it is. Using 64-bit avisynth really is not an acceptable solution considering it's basically one giant hack.
TheRyuu is offline   Reply With Quote
Old 9th February 2012, 04:07   #1487  |  Link
Chumbo
Registered User
 
Chumbo's Avatar
 
Join Date: Feb 2005
Posts: 585
I agree, so back on topic. I think I found a working solution using ffms2. I've encoded around 15 files so far and they all good. Here's my script:
Code:
LoadPlugin("C:\megui64\tools\ffms\ffms2.dll") 
FFVideoSource("file.ts", threads=1) 
LoadPlugin("C:\megui64\tools\avisynth_plugin\TIVTC.dll") 
telecide(guide=1,order=1,hints=true,post=1) 
Load_Stdcall_Plugin("C:\megui64\tools\yadif\yadif.dll") 
Yadif(mode=0, order=1) 
converttoyv12()
My sources are all AVC interlaced at 30fps (30i and 60i) and 29.976fps. I am doing 2-pass and doing this linearly but did not specifically set seekmode nor using lavf for demuxer. So far so good.
__________________
Chumbo
Chumbo is offline   Reply With Quote
Old 11th February 2012, 15:36   #1488  |  Link
Atak_Snajpera
RipBot264 author
 
Atak_Snajpera's Avatar
 
Join Date: May 2006
Location: Poland
Posts: 6,494
Can I ask somebody to compile r644 for me?
Atak_Snajpera is offline   Reply With Quote
Old 11th February 2012, 20:01   #1489  |  Link
TheRyuu
warpsharpened
 
Join Date: Feb 2007
Posts: 788
Quote:
Originally Posted by Atak_Snajpera View Post
Can I ask somebody to compile r644 for me?
ffms2-r644.7z
TheRyuu is offline   Reply With Quote
Old 11th February 2012, 20:09   #1490  |  Link
Atak_Snajpera
RipBot264 author
 
Atak_Snajpera's Avatar
 
Join Date: May 2006
Location: Poland
Posts: 6,494
Thank you!
Atak_Snajpera is offline   Reply With Quote
Old 12th February 2012, 04:51   #1491  |  Link
burfadel
Registered User
 
Join Date: Aug 2006
Posts: 2,235
Thanks + 1!
burfadel is offline   Reply With Quote
Old 12th February 2012, 16:04   #1492  |  Link
Chumbo
Registered User
 
Chumbo's Avatar
 
Join Date: Feb 2005
Posts: 585
Quote:
Originally Posted by burfadel View Post
Thanks + 1!
me2...
__________________
Chumbo
Chumbo is offline   Reply With Quote
Old 13th February 2012, 15:26   #1493  |  Link
Atak_Snajpera
RipBot264 author
 
Atak_Snajpera's Avatar
 
Join Date: May 2006
Location: Poland
Posts: 6,494
Problem while requesting key frames in VC-1

sample -> http://forum.doom9.org/showthread.ph...14#post1551814

keyframe locations detected by ffindex
Code:
# keyframe format v1
fps 0
0
14
15
28
42
56
70
84
98
112
126
140
154
168
182
196
210
224
238
252
266
280
294
308
322
336
350
364
378
392
406
420
434
448
462
476
490
504
518
532
546
560
574
588
602
616
630
644
658
672
686
700
714
728
742
756
770
784
798
812
826
840
854
868
882
896
910
924
938
952
966
980
994
1008
1022
1036
1050
1064
1078
1092
1106
1120
1134
1148
1162
1176
1190
1204
1218
1232
1246
1260
1274
1288
1302
1316
1330
1344
1358
However if I ask for key frame (let's say 238) video starts from corrupted frame
Code:
FFVideoSource("..\video.mkv",threads=1)
Trim(238,1358)
but if use Trim(237,...) everything is ok!

I suspect that ffmpeg has some bug that it adds one frame to requested frame
Example: In order to start from keyframe you always must use Trim(detected_keyframe - 1, ...)

I tested with many BD VC-1 sources and above rule is always valid!

Maybe this a reason why corruption occurs while random seeking in VC-1 .

For mpeg2 and AVC keyframe is always correctly returned.

Last edited by Atak_Snajpera; 13th February 2012 at 15:29.
Atak_Snajpera is offline   Reply With Quote
Old 14th February 2012, 02:17   #1494  |  Link
TheFluff
Excessively jovial fellow
 
Join Date: Jun 2004
Location: rude
Posts: 1,021
Quote:
Originally Posted by Snowknight26 View Post
FFMS returns an error along the lines of "Insanity detected: decoder returned an empty frame" for this sample. ffmpeg/ffplay/everything else based off ffmpeg/libav plays it fine.
I don't get that message with threads=1, but the file exhibits the usual interlaced h264 shenanigans and also features significant corruption. MPC-HC plays it with some minor corruptions as well.

Quote:
Originally Posted by Snowknight26 View Post
On a related note, FFMS returns mangled timestamps for this sample. The timecode file ffindex writes shows that multiple frames are displayed at the same time, which x264 doesn't seem to like.
Haali's parser returns the same PTS twice or more in certain places in this stream. Not sure why, I haven't investigated deeper yet.

Edit: it seems to be because the stream is a mix of progressive and interlaced coded frames and Haali's parser returns one packet per field in some cases, and then both fields have the same PTS. While meditating on this I think I also might have discovered why we're getting those annoying frame duplication issues with interlaced h264. I'll return to this later.

Last edited by TheFluff; 14th February 2012 at 03:24.
TheFluff is offline   Reply With Quote
Old 19th February 2012, 01:35   #1495  |  Link
TheFluff
Excessively jovial fellow
 
Join Date: Jun 2004
Location: rude
Posts: 1,021
If you desperately need to open H.264 files using the RGB-hidden-in-YUV444 trick, here's a patched build that might do what you want: http://mod16.org/ffms2/ffms2-r654-gbrphack.7z

This is needed because vanilla builds of FFMS2 currently suffer from a bug in SWScale that makes such files take a roundtrip via YUV and also clamps the output to TV range. It's really a pretty ugly hack though and will not be committed to SVN; the SWScale maintainer is aware of the issue and is going to fix it Soon(tm).

Patch is in the archive.

Last edited by TheFluff; 19th February 2012 at 01:37.
TheFluff is offline   Reply With Quote
Old 1st March 2012, 09:12   #1496  |  Link
LigH
German doom9/Gleitz SuMo
 
LigH's Avatar
 
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 5,434
How can I avoid FFMS2 "going insane" and returning empty frames at tiny little video stream errors another VfW codec or DirectShow decoder survives?
__________________

New German Gleitz board
MediaFire: x264 | x265 | VPx | AOM | Xvid
LigH is offline   Reply With Quote
Old 1st March 2012, 16:23   #1497  |  Link
Gser
Registered User
 
Join Date: Apr 2008
Posts: 370
Quote:
Originally Posted by LigH View Post
How can I avoid FFMS2 "going insane" and returning empty frames at tiny little video stream errors another VfW codec or DirectShow decoder survives?
By not using FFMS2, not multithreading it also helps sometimes.
Gser is offline   Reply With Quote
Old 1st March 2012, 16:30   #1498  |  Link
LigH
German doom9/Gleitz SuMo
 
LigH's Avatar
 
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 5,434
Quote:
Originally Posted by Gser View Post
not multithreading it also helps sometimes.
That was the key I should have known already but forgot to remember.

Now I have a blue range there, that's indeed way better than a crash.
__________________

New German Gleitz board
MediaFire: x264 | x265 | VPx | AOM | Xvid
LigH is offline   Reply With Quote
Old 1st March 2012, 18:37   #1499  |  Link
TheFluff
Excessively jovial fellow
 
Join Date: Jun 2004
Location: rude
Posts: 1,021
Quote:
Originally Posted by LigH View Post
How can I avoid FFMS2 "going insane" and returning empty frames at tiny little video stream errors another VfW codec or DirectShow decoder survives?
A lot of the empty frame errors are probably caused by a bug in the frame delay calculation in FFMS2, in turn sorta caused by ffmpeg changing the definition of has_b_frames. We're working on it.
TheFluff is offline   Reply With Quote
Old 3rd March 2012, 21:25   #1500  |  Link
horrormaster34
Registered User
 
Join Date: May 2009
Posts: 32
Is it just me or do none of the FFIndex options work? I've tried to use "source", but it says that it can't open it. If I leave out "source" and call the file then it works. If I use "indexmask=-1" it uses that as the index file name. If I try to set the index file name using "cachefile" it again uses that as the index file name.

ex: ffmsindex64.exe D:\inputfile.mkv cachefile=D:\output.mkv.ffindex

that returns the index file as a literal cachefile=D:\output.mkv.ffindex instead of simply output.mkv.ffindex.

If I try to use any of the other options it just shows a message that it's unrecognized.
horrormaster34 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 08:43.


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