VideoHelp Forum
+ Reply to Thread
Results 1 to 28 of 28
Thread
  1. I'm using Simple x264 Launcher with Avisynth MT & MT version of QTGMC. My encodings keep failing within a couple of minutes of the encoding starting. My script is pretty simple, I'm downscaling 1080i 25fps to 720p 59.94fps. I'm using the following custom parameters in Simple x264 Launcher: --sar 1:1 which means make a progressive video at the correct aspect ratio. Here's my script:

    Code:
    setmtmode(5,9)
    DGSource("X:\Video.dgi")
    setmtmode(2)
    
    AssumeTFF() 
    QTGMC(Preset="Super Fast") 
    Lanczos4Resize(1280,720)
    ConvertFPS(59.94)
    The error message in Simple x264 Launcher says:
    Code:
    WARNING: Input process exited with error code: -1073741819.
    The error message in VirutalDub says:
    Code:
    An out-of-bounds memory access (access violation) occurred in module 'AviSynth'...
    ...reading address 00000000.
    How can I fix this so it doesn't crash? I'm using 32-bit Avisynth and plugins. I use QTGMC all the time when re-encoding 720 x 480i MPEG2 to h264 and the encodings never fail so I don't understand why they're failing for HD? I'm using the latest version of DGIndexNV to index the file which is read by Simple x264 Launcher. I use DGIndex for MPEG2s.

    Could it be the SetMtMode? I normally use the following on SD videos and I never get any crashes:

    setmtmode(5,9)
    setmtmode(2)

    I also tried lowering the value on the top line to this but it still crashes:
    setmtmode(5,6)

    I have an 8 core Intel Core i7 2700K 4.4Ghz CPU with 8GB Ram
    Last edited by VideoFanatic; 29th Dec 2013 at 13:55.
    Quote Quote  
  2. Try opening your script with VirtualDub. Or a media player. You may get more info.

    Are you running 64 bit windows? If so, you need to use all 64 bit components _OR_ all 32 bit components. Ie, 64 bit AviSynth, 64 bit filters, and 64 bit encoder. Or 32 bit AviSynth, 32 bit filters, and 32 bit encoder.
    Quote Quote  
  3. ..
    Last edited by VideoFanatic; 29th Dec 2013 at 10:10. Reason: changed 1st post to avoid confusion
    Quote Quote  
  4. Originally Posted by VideoFanatic View Post
    I found out the problem was using 5,12 for SetMTMode. I never got a problem when doing that for SD videos but it doesn't seem to work for HD videos. I'm using 5,9 for HD videos now and it's working. However it's strange how VirtualDub doesn't seem to mind 5,12 for the SetMTMode as it doesn't crash!
    If you look at the process with Task Manager you'll see memory is being gobbled up. A 32 bit program can only use about 3 GB of memory before it will fail. Different programs will be using different amounts of memory and accessing frames in different ways so they will crash with different numbers of threads.
    Last edited by jagabo; 29th Dec 2013 at 09:36.
    Quote Quote  
  5. Please see my 1st post which I've updated. Memory usage on the Performance tab of Task Manager shows 6GB memory being used. The processes tab shows less than 1GB of memory usage for avs2yuv_x86.exe. Any ideas on how I can prevent the encodings from crashing. Doesn't make sense as my standard definition encodings don't crash.
    Quote Quote  
  6. some suggestions:
    SetMemoryMac(768)
    SetMTMode(5,0)
    DGSource("X:\Video.dgi")
    RequestLinear(rlim=50,clim=50) # from TIVTC.dll; PreRoll migh also be a possibility, but for me RequestLinear holds better performance
    SetMTMode(2)
    AssumeTFF()
    QTGMC(Preset="Super Fast") # personally I would use a slower preset
    Lanczos4Resize(1280,720) # personally I would rather use Spline36Resize, GaussResize or BicubicResize
    ConvertFPS(59.94) # Why?
    Quote Quote  
  7. I tried all that without RequestLinear and it crashed as before. I also added RequestLinear and it still crashed but said something about a runtime error. I've just encoded a 720 x 480 2 hour video and it didn't crash so I don't understand why it's crashing when making a HD video.

    I'm using ConvertFPS(59.94) because I want to make an NTSC compatible Bluray.
    Quote Quote  
  8. Originally Posted by VideoFanatic View Post
    I've just encoded a 720 x 480 2 hour video and it didn't crash so I don't understand why it's crashing when making a HD video.
    HD frames require several times more memory.
    Quote Quote  
  9. The processes tab shows less than 1GB of memory usage for avs2yuv_x86.exe which was less than when I encoded an SD video because I lowered the SetMTMode threads used. Is there something else that's using memory or is all the memory for the plugins included in the memory count for that file?

    Does anyone have any suggestions for converting 1080i 25fps to 720p 59.94fps without Avisynth or do you know of a way to get Avisynth working please?
    Quote Quote  
  10. I don't use DgAVCDec (I usually ffVideoSource for AVC sources) but I use QTGMC with 1080i sources all the time in AviSynth. Typically with SetMtMode(2,6) (quad core CPU).
    Quote Quote  
  11. OK thanks. It wasn't DGAVCDec (no longer deveoloped) I was using, it was DGDecNV. What is the script you used for ffVideoSource as I've read it can cause artifacts so I want to make sure that I use it correctly?
    Quote Quote  
  12. Some samples:
    Code:
    ffVideoSource("filename.ext")
    ffVideoSource("filename.ext", fpsnum=30000, fpsden=1001)
    ffVideoSource("filename.ext", seekmode=0)
    And other variations. Sometimes the first few frames are garbage. That only gets you video. If you want audio too use something like:

    Code:
    A = FFAudioSource("filename.ext")
    V = FFVideoSource("filename.ext")
    AudioDub(V, A)
    or:

    Code:
    ffms2("filename.ext", atrack=1)
    Quote Quote  
  13. I downloaded FFmpegSource 2.18 RC1 and put the following files in the Avisynth plugins directory:

    ffms2.dll
    ffmsindex.exe
    FFMS2.avsi

    However it's not working. The encoding doesn't start. I get this message:

    Warning: Avisynth did not respond for 60 seconds, potential deadlock...
    error: ConvertFPS: New frame rate too small. Must be greater than 66.6666 Increase or use 'zone='
    Is there something specific I need to do to get it working?
    Quote Quote  
  14. Use standard debugging techniques. Simplify the script to just ffVideoSource. If that works, move to the next step...
    Quote Quote  
  15. Instead I downloaded ffms-2.17. I tried this script and AvsPmod froze and Simple x264 Launcher had the same problem as before:

    Code:
    ffVideoSource("X:\2 = New\z = WWE Late Night Smackdown full show ac3.ts")
    
    Crop(2,0,-0,-0)
    AddBorders(2,0,0,0, $000000)
    Quote Quote  
  16. What bizarre folder and file names you're using. Where do your TS files come from? Hauppuage HD PVR? Do you realize that ffVideoSource has to build an index file -- so it can take quite a while the first time you open a file with it.
    Quote Quote  
  17. They come from a VU+ Duo2 Satellite box. It records satellite TV and allows you to copy and paste the unencrypted recordings to your PC.

    I loaded that script I posted in the previous post and it seems to be working now in AvsPmod but it's reporting a framerate of 50 FPS. How should I get it to 59.94fps after using QTGMC?
    Quote Quote  
  18. ffVideoSource("filename.ext", fpsnum=25000, fpsden=1000)
    Quote Quote  
  19. I tried this script:
    Code:
    setmtmode(2,6)
    ffVideoSource("X:\Video.ts", fpsnum=25000, fpsden=1000)
    setmtmode(2)
    
    AssumeTFF() 
    QTGMC(Preset="Super Fast") 
    
    Lanczos4Resize(1280,720)
    
    ConvertFPS(59.94)
    For the first few minutes the FPS encoding speed was around 30 fps and the CPU usage was around 98-100%. Then the FPS encoding speed dropped to 14 fps and the CPU usage is as low as 25%. Bizarre. Is that normal?

    Also the encoding failed after a few minutes.

    I don't think Avisynth is going to work. I also tried Yadif on it's own but that didn't work either. Is there a video converter program I could use instead to convert 1080i 25fps to 720p 59.94fps?
    Last edited by VideoFanatic; 29th Dec 2013 at 23:49.
    Quote Quote  
  20. If you only knew how many people out there are trying to reverse the type of frame-blending you're inflicting on your video... If you're in a country that uses PAL for satellite, why do you want to convert it?
    Quote Quote  
  21. Because I have an NTSC Bluray player as well as a PAL Bluray player. I tested how the 25fps and 59.94 fps video looked when burned to Bluray and the framerate looks identical with no problems.
    Quote Quote  
  22. Originally Posted by VideoFanatic View Post
    I don't think Avisynth is going to work. I also tried Yadif on it's own but that didn't work either.
    Maybe it doesn't want you to butcher your video by purposely blending it. What happens when you use ChangeFPS(59.94) instead?

    But I don't really think the problem lies with the use of Yadif or ConvertFPS (or ChangeFPS). You could turn off multithreading and I'll bet it works. It beats having all those crashes.
    Quote Quote  
  23. Crashes of QTGMC + Avisynth MT are mainly related to:
    1. a bad combination of filter version, you can try the filters I use in my avisynthExtension. (see: http://www.selur.de/downloads)
    2. memory consumption problems
    Quote Quote  
  24. Such an overreaction and wrong! I converted the 1080i 25fps video to 720p 59.94 fps. I used ConvertFPS because ChangeFPS caused an unsmooth framerate when authored to a Bluray disc and played back on my PS3.

    720p 50fps (framerate doubled with QTGMC) looked identical to 59.94 fps via ConvertFPS!

    You were right about turning off MT. I tried Yadif on it's own non-multi-threaded and it didn't crash and it was still fast at 76 fps. So I'm just going to use that unless someone has a better solution? For a 1 hour 38 minute video using Yadif, it took 1 hour 18 minutes to encode. QTGMC on UltraFast (uses Yadif) took at least 6 hours as did QTGMC on SuperFast!

    Thanks everyone for your help.
    Quote Quote  
  25. Member 2Bdecided's Avatar
    Join Date: Nov 2007
    Location: United Kingdom
    Search Comp PM
    Originally Posted by VideoFanatic View Post
    Because I have an NTSC Bluray player as well as a PAL Bluray player.
    A true "VideoFanatic" would just play the native "PAL" 1080i50 capture on the PAL BluRay player!

    If downscaling to 720p and frame blending to 59.94 doesn't create any visible difference, I dread to think what your TV is doing to the picture. Some TVs detect stuttery conversions and try to unpick and restore them, but I've not seen one that really improves blended conversions. I guess some might try.

    Cheers,
    David.
    Quote Quote  
  26. Member Evil_Burrito's Avatar
    Join Date: Jun 2012
    Location: United States
    Search Comp PM
    You can get the latest versions ffms (currently is 2.19) here https://github.com/FFMS/ffms2/releases. FFMS greatly prefers progressive video. If you use it with interlaced video, I think you are supposed to set rffmode = 1 (honor pulldown). Although, I could be wrong about that. I do know the downside is you can't add any more extra options to ffms in combination with rffmode. I would try DGsource one more time.

    You should add those some of those commands (fps) to the custom x264 parameters box. In this case you are not converting frame rate, so you should not be calling that command in the avs script. That is a waste of processing power. I think what you are might be worried about is constant frame rate. A smarter filter to use (I'm NOT telling you to use it) would be fdecimate (free decimate). Avisynth frame serving will NEVER make vfr (variable frame rate) video unless you know how to force it. Even if the input is (yours is not) vfr, avisynth will not output vfr. In this situation, it would convert the fps to whatever the average is (a non-standard funky rate).

    Qtgmc does not need you to specify a parity (tff), so you don't need that in your script either. It "might" help to use a slower preset and also specify edithreads=X (4?).

    If qtgmc is so slow, use a different deinterlacer. Perhaps one of the decomb filters like, telecide orFieldDeinterlace.

    I am not surprised your script is crashing if you don't use setmemorymax and setting the cores above physical amount.

    For compatibility you might want to add: --bluray-compat --level 4.1 --keyint 60 --open-gop --colorprim "bt709" --transfer "bt709" --colormatrix "bt709"
    Quote Quote  
  27. Hi, I'm not sure what you're trying to say about FFMS. What does it do that I can't already do with the below script? My source is 1080i 25 fps. I want to convert to 720p but to do so you need to double the framerate otherwhise the frame rate will look choppy. I also chose 59.94 fps so that it would work in PAL and NTSC Bluray players.

    Code:
    DGSource("X:\WWE Late Night Smackdown full show 1 hour 38 mins.dgi")
    
    Load_Stdcall_plugin("C:\Program Files (x86)\AviSynth 2.5\plugins\yadif.dll")
    
    Yadif(mode=1, order=1)
    
    Lanczos4Resize(1280,720)
    
    ConvertFPS(59.94)
    Quote Quote  
  28. Member Evil_Burrito's Avatar
    Join Date: Jun 2012
    Location: United States
    Search Comp PM
    If you are talking to me, I did say, "I would try DGsource one more time [because you are working with an interlaced source]" That being said, reasons to use ffms are: it is slightly faster as a source filter and it gets updated much more often than DGAVCDecode.
    Quote Quote  



Similar Threads