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 Usage

Reply
 
Thread Tools Search this Thread Display Modes
Old 26th September 2012, 16:24   #1  |  Link
Morku
Registered User
 
Join Date: Jul 2012
Posts: 208
Trying to load a lot of MPEG2 in FFMS2

Hi, I have a problem. We have a camcorder which records MPEG2 (Canon Legria FS306). Now I want the movie of our vacation convert with MeGUI. To load my clips I use FFmpegSource2. My project has 103 clips which is to much for FFMS2, because the RAM usage gets higher than 2GB -> it crashes with errors like: "FFVideoSource: Can't open file" or "FFAudioSource: Can't open file"
I can load with VirtualDub 64bit, but MeGUI is 32bit.
This is my script:

Quote:
global MeGUI_darx = 16
global MeGUI_dary = 9

SetMemoryMax(768)

SetMTMode(5, 2)

clip01 = FFmpegSource2("20100808_192954.MPG", atrack=-1, threads=1).AssumeTFF()
clip02 = FFmpegSource2("20100808_193030.MPG", atrack=-1, threads=1).AssumeTFF()
clip03 = FFmpegSource2("20100808_200352.MPG", atrack=-1, threads=1).AssumeTFF()
clip04 = FFmpegSource2("20100809_141850.MPG", atrack=-1, threads=1).AssumeTFF()
clip05 = FFmpegSource2("20100809_141926.MPG", atrack=-1, threads=1).AssumeTFF()
clip06 = FFmpegSource2("20100809_142012.MPG", atrack=-1, threads=1).AssumeTFF()
clip07 = FFmpegSource2("20100809_142226.MPG", atrack=-1, threads=1).AssumeTFF()
clip08 = FFmpegSource2("20100810_114454.MPG", atrack=-1, threads=1).AssumeTFF()
clip09 = FFmpegSource2("20100810_150240.MPG", atrack=-1, threads=1).AssumeTFF()
clip10 = FFmpegSource2("20100810_150516.MPG", atrack=-1, threads=1).AssumeTFF()
clip11 = FFmpegSource2("20100811_092816.MPG", atrack=-1, threads=1).AssumeTFF()
clip12 = FFmpegSource2("20100811_120208.MPG", atrack=-1, threads=1).AssumeTFF()
clip13 = FFmpegSource2("20100811_120348.MPG", atrack=-1, threads=1).AssumeTFF()
clip14 = FFmpegSource2("20100811_120754.MPG", atrack=-1, threads=1).AssumeTFF()
clip15 = FFmpegSource2("20100811_122450.MPG", atrack=-1, threads=1).AssumeTFF()
clip16 = FFmpegSource2("20100811_122502.MPG", atrack=-1, threads=1).AssumeTFF()
clip17 = FFmpegSource2("20100811_125038.MPG", atrack=-1, threads=1).AssumeTFF()
clip18 = FFmpegSource2("20100811_125234.MPG", atrack=-1, threads=1).AssumeTFF()
clip19 = FFmpegSource2("20100812_145554.MPG", atrack=-1, threads=1).AssumeTFF()
clip20 = FFmpegSource2("20100812_145812.MPG", atrack=-1, threads=1).AssumeTFF()
clip21 = FFmpegSource2("20100812_152532.MPG", atrack=-1, threads=1).AssumeTFF()
clip22 = FFmpegSource2("20100812_152556.MPG", atrack=-1, threads=1).AssumeTFF()
clip23 = FFmpegSource2("20100812_152636.MPG", atrack=-1, threads=1).AssumeTFF()
clip24 = FFmpegSource2("20100812_152824.MPG", atrack=-1, threads=1).AssumeTFF()
clip25 = FFmpegSource2("20100812_152918.MPG", atrack=-1, threads=1).AssumeTFF()
clip26 = FFmpegSource2("20100812_152944.MPG", atrack=-1, threads=1).AssumeTFF()
clip27 = FFmpegSource2("20100812_153112.MPG", atrack=-1, threads=1).AssumeTFF()
clip28 = FFmpegSource2("20100813_143532.MPG", atrack=-1, threads=1).AssumeTFF()
clip29 = FFmpegSource2("20100813_144742.MPG", atrack=-1, threads=1).AssumeTFF()
clip30 = FFmpegSource2("20100813_164130.MPG", atrack=-1, threads=1).AssumeTFF()
clip31 = FFmpegSource2("20100813_164610.MPG", atrack=-1, threads=1).AssumeTFF()
clip32 = FFmpegSource2("20100813_164650.MPG", atrack=-1, threads=1).AssumeTFF()
clip33 = FFmpegSource2("20100813_164754.MPG", atrack=-1, threads=1).AssumeTFF()
clip34 = FFmpegSource2("20100813_165150.MPG", atrack=-1, threads=1).AssumeTFF()
clip35 = FFmpegSource2("20100814_094516.MPG", atrack=-1, threads=1).AssumeTFF()
clip36 = FFmpegSource2("20100815_121938.MPG", atrack=-1, threads=1).AssumeTFF()
clip37 = FFmpegSource2("20100815_164708.MPG", atrack=-1, threads=1).AssumeTFF()
clip38 = FFmpegSource2("20100816_123356.MPG", atrack=-1, threads=1).AssumeTFF()
clip39 = FFmpegSource2("20100816_123432.MPG", atrack=-1, threads=1).AssumeTFF()
clip40 = FFmpegSource2("20100816_123700.MPG", atrack=-1, threads=1).AssumeTFF()
clip41 = FFmpegSource2("20100816_123810.MPG", atrack=-1, threads=1).AssumeTFF()
clip42 = FFmpegSource2("20100816_123928.MPG", atrack=-1, threads=1).AssumeTFF()
clip43 = FFmpegSource2("20100816_124026.MPG", atrack=-1, threads=1).AssumeTFF()
clip44 = FFmpegSource2("20100816_124622.MPG", atrack=-1, threads=1).AssumeTFF()
clip45 = FFmpegSource2("20100816_124632.MPG", atrack=-1, threads=1).AssumeTFF()
clip46 = FFmpegSource2("20100816_124658.MPG", atrack=-1, threads=1).AssumeTFF()
clip47 = FFmpegSource2("20100816_130156.MPG", atrack=-1, threads=1).AssumeTFF()
clip48 = FFmpegSource2("20100816_131026.MPG", atrack=-1, threads=1).AssumeTFF()
clip49 = FFmpegSource2("20100816_131504.MPG", atrack=-1, threads=1).AssumeTFF()
clip50 = FFmpegSource2("20100816_131710.MPG", atrack=-1, threads=1).AssumeTFF()
clip51 = FFmpegSource2("20100816_131944.MPG", atrack=-1, threads=1).AssumeTFF()
clip52 = FFmpegSource2("20100816_132156.MPG", atrack=-1, threads=1).AssumeTFF()
clip53 = FFmpegSource2("20100816_132532.MPG", atrack=-1, threads=1).AssumeTFF()
clip54 = FFmpegSource2("20100816_132704.MPG", atrack=-1, threads=1).AssumeTFF()
clip55 = FFmpegSource2("20100816_133016.MPG", atrack=-1, threads=1).AssumeTFF()
clip56 = FFmpegSource2("20100816_133132.MPG", atrack=-1, threads=1).AssumeTFF()
clip57 = FFmpegSource2("20100816_133522.MPG", atrack=-1, threads=1).AssumeTFF()
clip58 = FFmpegSource2("20100816_160840.MPG", atrack=-1, threads=1).AssumeTFF()
clip59 = FFmpegSource2("20100816_163246.MPG", atrack=-1, threads=1).AssumeTFF()
clip60 = FFmpegSource2("20100817_125616.MPG", atrack=-1, threads=1).AssumeTFF()
clip61 = FFmpegSource2("20100818_130054.MPG", atrack=-1, threads=1).AssumeTFF()
clip62 = FFmpegSource2("20100818_140948.MPG", atrack=-1, threads=1).AssumeTFF()
clip63 = FFmpegSource2("20100818_143254.MPG", atrack=-1, threads=1).AssumeTFF()
clip64 = FFmpegSource2("20100818_143740.MPG", atrack=-1, threads=1).AssumeTFF()
clip65 = FFmpegSource2("20100818_144650.MPG", atrack=-1, threads=1).AssumeTFF()
clip66 = FFmpegSource2("20100818_144744.MPG", atrack=-1, threads=1).AssumeTFF()
clip67 = FFmpegSource2("20100818_145128.MPG", atrack=-1, threads=1).AssumeTFF()
clip68 = FFmpegSource2("20100818_145144.MPG", atrack=-1, threads=1).AssumeTFF()
clip69 = FFmpegSource2("20100818_145608.MPG", atrack=-1, threads=1).AssumeTFF()
clip70 = FFmpegSource2("20100818_145736.MPG", atrack=-1, threads=1).AssumeTFF()
clip71 = FFmpegSource2("20100818_145920.MPG", atrack=-1, threads=1).AssumeTFF()
clip72 = FFmpegSource2("20100818_150050.MPG", atrack=-1, threads=1).AssumeTFF()
clip73 = FFmpegSource2("20100818_150142.MPG", atrack=-1, threads=1).AssumeTFF()
clip74 = FFmpegSource2("20100818_150302.MPG", atrack=-1, threads=1).AssumeTFF()
clip75 = FFmpegSource2("20100818_150358.MPG", atrack=-1, threads=1).AssumeTFF()
clip76 = FFmpegSource2("20100819_093232.MPG", atrack=-1, threads=1).AssumeTFF()
clip77 = FFmpegSource2("20100819_123536.MPG", atrack=-1, threads=1).AssumeTFF()
clip78 = FFmpegSource2("20100819_123742.MPG", atrack=-1, threads=1).AssumeTFF()
clip79 = FFmpegSource2("20100819_134318.MPG", atrack=-1, threads=1).AssumeTFF()
clip80 = FFmpegSource2("20100819_135400.MPG", atrack=-1, threads=1).AssumeTFF()
clip81 = FFmpegSource2("20100819_143600.MPG", atrack=-1, threads=1).AssumeTFF()
clip82 = FFmpegSource2("20100819_144006.MPG", atrack=-1, threads=1).AssumeTFF()
clip83 = FFmpegSource2("20100819_144044.MPG", atrack=-1, threads=1).AssumeTFF()
clip84 = FFmpegSource2("20100819_150020.MPG", atrack=-1, threads=1).AssumeTFF()
clip85 = FFmpegSource2("20100819_150116.MPG", atrack=-1, threads=1).AssumeTFF()
clip86 = FFmpegSource2("20100819_150232.MPG", atrack=-1, threads=1).AssumeTFF()
clip87 = FFmpegSource2("20100819_150428.MPG", atrack=-1, threads=1).AssumeTFF()
clip88 = FFmpegSource2("20100819_152432.MPG", atrack=-1, threads=1).AssumeTFF()
clip89 = FFmpegSource2("20100819_152646.MPG", atrack=-1, threads=1).AssumeTFF()
clip90 = FFmpegSource2("20100819_152924.MPG", atrack=-1, threads=1).AssumeTFF()
clip91 = FFmpegSource2("20100819_153326.MPG", atrack=-1, threads=1).AssumeTFF()
clip92 = FFmpegSource2("20100819_153450.MPG", atrack=-1, threads=1).AssumeTFF()
clip93 = FFmpegSource2("20100819_153616.MPG", atrack=-1, threads=1).AssumeTFF()
clip94 = FFmpegSource2("20100819_153912.MPG", atrack=-1, threads=1).AssumeTFF()
clip95 = FFmpegSource2("20100819_154034.MPG", atrack=-1, threads=1).AssumeTFF()
clip96 = FFmpegSource2("20100819_161322.MPG", atrack=-1, threads=1).AssumeTFF()
clip97 = FFmpegSource2("20100819_162028.MPG", atrack=-1, threads=1).AssumeTFF()
clip98 = FFmpegSource2("20100819_162042.MPG", atrack=-1, threads=1).AssumeTFF()
clip99 = FFmpegSource2("20100819_162054.MPG", atrack=-1, threads=1).AssumeTFF()
clip100 = FFmpegSource2("20100819_162108.MPG", atrack=-1, threads=1).AssumeTFF()
clip101 = FFmpegSource2("20100819_162122.MPG", atrack=-1, threads=1).AssumeTFF()
clip102 = FFmpegSource2("20100819_162134.MPG", atrack=-1, threads=1).AssumeTFF()
clip103 = FFmpegSource2("20100821_135706.MPG", atrack=-1, threads=1).AssumeTFF()

SetMTMode(2)

AlignedSplice(clip01, clip02, clip03, clip04, clip05, clip06, clip07, clip08, clip09, clip10, clip11, clip12, clip13, clip14, clip15, clip16, clip17, clip18, clip19, clip20, clip21, clip22, clip23, clip24, clip25, clip26, clip27, clip28, clip29, clip30, clip31, clip32, clip33, clip34, clip35, clip36, clip37, clip38, clip39, clip40, clip41, clip42, clip43, clip44, clip45, clip46, clip47, clip48, clip49, clip50, clip51, clip52, clip53, clip54, clip55, clip56, clip57, clip58, clip59, clip60, clip61, clip62, clip63, clip64, clip65, clip66, clip67, clip68, clip69, clip70, clip71, clip72, clip73, clip74, clip75, clip76, clip77, clip78, clip79, clip80, clip81, clip82, clip83, clip84, clip85, clip86, clip87, clip88, clip89, clip90, clip91, clip92, clip93, clip94, clip95, clip96, clip97, clip98, clip99, clip100, clip101, clip102, clip103)

tempgaussmc_beta2(edimode="nnedi3")
I also tried DGIndex, but with that tool image and sound get out of sync (like using UnalignedSplice instead of AlignedSplice).
What can I do?
If you need an example of videofiles I use download here: https://rapidshare.com/files/1903760703/MPEG2.zip

Sorry for my english and other mistakes.

Last edited by tebasuna51; 26th September 2012 at 22:08.
Morku is offline   Reply With Quote
Old 26th September 2012, 17:25   #2  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
DGDecNV will work as your audio is AC3. When it demuxs the audio, it will adjust the audio gaps between files. DGMPGDec does not have that capability.

Another option is to just concatenate them with DOS COPY /B so you have a single file. Then demux audio with EAC3TO, which also adjusts the gaps. You can load that combined file with FFMS2 but I don't know what it will do with the audio.
Guest is offline   Reply With Quote
Old 27th September 2012, 01:07   #3  |  Link
Morku
Registered User
 
Join Date: Jul 2012
Posts: 208
I tried DGDecNV to load my videos but get the error: Invalid License!
I also tried to merge with mkvmerge, but I get the error "--append-to is invalid"
Morku is offline   Reply With Quote
Old 27th September 2012, 01:08   #4  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
Quote:
Originally Posted by Morku View Post
I tried DGDecNV to load my videos but get the error: Invalid License!
It requires a $15 license. Did you buy one?
Guest is offline   Reply With Quote
Old 27th September 2012, 07:52   #5  |  Link
Blue_MiSfit
Derek Prestegard IRL
 
Blue_MiSfit's Avatar
 
Join Date: Nov 2003
Location: Los Angeles
Posts: 5,989
This is what AviSynth is not so good at

I'd suggest concatenating your clips with another tool - even copy /b as neuron2 has suggested.
__________________
These are all my personal statements, not those of my employer :)
Blue_MiSfit is offline   Reply With Quote
Old 27th September 2012, 14:09   #6  |  Link
sneaker_ger
Registered User
 
Join Date: Dec 2002
Posts: 5,565
Quote:
Originally Posted by Morku View Post
I also tried to merge with mkvmerge, but I get the error "--append-to is invalid"
What did you try exactly? Via the GUI or via CLI? Note that (1) "--append-to" is not always required, (2) the command-line on Windows has a limited length, that's why mkvmerge knows option files
sneaker_ger is offline   Reply With Quote
Old 30th September 2012, 11:24   #7  |  Link
Morku
Registered User
 
Join Date: Jul 2012
Posts: 208
I bought a license for DGDecNV to try, but image and sound still get out of synchronation. The image is faster than the sound. What I have to do?
Morku is offline   Reply With Quote
Old 30th September 2012, 13:29   #8  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
Upload three of the files that are to be merged to a hosting site and post the links here. That's the only way I can help you with this.

Also, tell the exact steps you used for the entire process with DGIndexNV. Describe how you handled the audio, how you muxed things at the end, everything.
Guest is offline   Reply With Quote
Old 30th September 2012, 16:31   #9  |  Link
Morku
Registered User
 
Join Date: Jul 2012
Posts: 208
I already posted 2 examples in the first post, but here you have 3 more, longer examples:
https://rapidshare.com/files/1616123473/3%20MPEG.zip
The files are from a Canon Legria FS306 Camcorder.
I open DGIndexNV.exe the 64bit version. File -> Open -> I select all the files I want have for one final video. I click OK.
File -> Save Project. I get a dgi and an ac3 file, which seems to be not synchron. To test it, I load the video in virtualDub, convert the ac3 to wav and load the wav. The longer the video (and I guess the more files) the more asynchronous gets the project.
I also have the same problem with a DVD camcorder (Canon DC100), but there I have VOB files instead the files seperatly, but first I want solve the other problem.
Morku is offline   Reply With Quote
Old 30th September 2012, 16:54   #10  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
Give me the Avisynth script that you load into VirtualDub please.

I asked for everything, please try to do that so I don't have to keep asking for things.

Also, please use mediafire.com and not rapidshare next time. Thank you.
Guest is offline   Reply With Quote
Old 30th September 2012, 17:23   #11  |  Link
Morku
Registered User
 
Join Date: Jul 2012
Posts: 208
Code:
LoadPlugin("DGDecodeNV.dll")
DGSource("20110910_154532.dgi",fieldop=0)
I converted the ac3 to wav with LameXP and loaded in VirtualDub with 'Source audio'
I want load the Avisynth Script in MeGUI. I thought the problem is already in file and you wanted to know how I use DGIndexNV, so for me it was 'everything'. No reason to criticize me.

Last edited by Morku; 30th September 2012 at 17:25.
Morku is offline   Reply With Quote
Old 30th September 2012, 17:28   #12  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
I didn't criticize you. I politely asked you for things.

Look, I'm taking my precious time to help you. If you start copping an attitude, I'm going to lose interest.
Guest is offline   Reply With Quote
Old 30th September 2012, 18:03   #13  |  Link
Morku
Registered User
 
Join Date: Jul 2012
Posts: 208
I just misunderstood a bit. My english isn't very well. Yes, you asked for everything. I also was in hurry. I am sorry, okay?
I hope I gave you all informations.
Morku is offline   Reply With Quote
Old 30th September 2012, 18:38   #14  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
No problem, Morku, we're going to get this fixed for you. I can work on it only this evening, then I will report.

Last edited by Guest; 1st October 2012 at 05:04.
Guest is offline   Reply With Quote
Old 1st October 2012, 03:38   #15  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
OK, we need to add this gap adjustment for program streams. Previously it was done only for transport streams.

Here is a first attempt. Please test it with a bunch of files loaded and report back. It correctly deleted 2 AC3 frames when used on your set of three files.

http://neuron2.net/misc/DGIndexNV_morku.zip

Last edited by Guest; 1st October 2012 at 03:59.
Guest is offline   Reply With Quote
Old 1st October 2012, 11:42   #16  |  Link
Morku
Registered User
 
Join Date: Jul 2012
Posts: 208
Okay I tried this version, loaded 63 files and used the same steps like above and it is working fine I can't see any delay anymore. Thank you very much!
But now I still have a problem like of the MPEG2 files. We had a DVD camcorder, the Canon DC100, and I also want to convert the videos to files.
This is whats the dvd folder says:

This is whats the DVD itself says:

There are 6x14 videoclips on this DVD (everytime when the filmer pressed the button)
Here are my steps:
I used the DGIndexNV_morku version, loaded the VTS_01_1.VOB, VTS_01_2.VOB and VTS_02_1.VOB, Saves project.
Loaded into VirtualDub again with:
Code:
LoadPlugin("DGDecodeNV.dll")
DGSource("VTS_01_1.dgi",fieldop=0)
and loaded the converted ac3 into VirtualDub.
In this case the sounds seems to be faster than the image. Any idea?
Morku is offline   Reply With Quote
Old 1st October 2012, 13:03   #17  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
You have to give me stream samples that I can use to recreate the problem.

Also, does the desync get larger as it plays, or is it a fixed desync throughout?
Guest is offline   Reply With Quote
Old 1st October 2012, 13:37   #18  |  Link
Morku
Registered User
 
Join Date: Jul 2012
Posts: 208
Damn, I knew it >.< My upload is so slow About 10KB/s, so it would take to much time to upload the full 1,3GB.
I am uploading now VIDEO_TS.BUP, VIDEO_TS.IFO, VIDEO_TS.VOB, VIDEO_TS.BUP, VTS_02_0.BUP, VTS_02_0.IFO, VTS_02_0.VOB. I hope this will be enough. This file is 83MB big. In this sample there is not much delay noticable (especially when you don't see someone talking), but maybe you will notice the problem.
I my sample of the full DVD Winamp says, the WAV has a lenght of 24:20
VirtualDub says the video has a lenght of 24:23:040
I will send you the link via PM, because I don't want share to many private videos public on internet. Still uploading...
Morku is offline   Reply With Quote
Old 1st October 2012, 13:58   #19  |  Link
Guest
Guest
 
Join Date: Jan 2002
Posts: 21,901
You did not answer this important question:

"Also, does the desync get larger as it plays, or is it a fixed desync throughout?"

I need only the VOB files. Nothing else is of any use.
Guest is offline   Reply With Quote
Old 1st October 2012, 14:08   #20  |  Link
Morku
Registered User
 
Join Date: Jul 2012
Posts: 208
Sorry, I don't understand this question.
The real DVD has a playback time of 23:02+1:18 (the controller starts from beginning after 23:02)=24:20.
I gave you the link via PM.
Morku 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 02:38.


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