VideoHelp Forum
+ Reply to Thread
Results 1 to 16 of 16
Thread
  1. Member vhelp's Avatar
    Join Date
    Mar 2001
    Location
    New York
    Search Comp PM
    i recently learned about this plugin and it handles my hdpvr .ts files very well. no more crashes or program shutdowns while stepping bw/fw. however, i also just learned that its very slow at loading an avs script. when i am debuggin my scripts, i have to wait for it to load up the video. i even tried trim'ing to the position to speed it up, but that doesn't matter, it still takes the same amount of time to load up.

    Code:
    v = "h:\video.ts"
    LoadPlugin( "C:\PLUGINS\LSMASHSource.dll" )
    LWLibavVideoSource(v, cache=True, threads=2).selectevery(2,1)
    AudioDub(last, LWLibavAudioSource(v, stream_index=1, av_sync=true))
    the above snippet is the complete script to load both audio/video.

    is there any way of speeding it up ?
    Quote Quote  
  2. Loading a source will take some time due to the indexing step.
    cache=True -> index file will be created next to the input file (if it does not exist)
    cache=false -> index will be created inside the RAM (this might cause problems)
    read: http://forum.doom9.org/showthread.php?t=167435 and: https://github.com/VFR-maniac/L-SMASH-Works/issues/17

    i even tried trim'ing to the position to speed it up, but that doesn't matter,
    the index gets created for the whole file, no matter how much of the file you later use in your script

    Only way to really speed up the loading of the Avisynth script, would be to create the index file before loading the script.
    Quote Quote  
  3. Member vhelp's Avatar
    Join Date
    Mar 2001
    Location
    New York
    Search Comp PM
    yeah, but loading for the first time thus creating the initial first index always took a long time in ffmpegsource too, but subsequent loading was always instant, thanks to the index it created. LWLibavVideoSource doesn''t seem to work the same. it recreates the index or is re-reading it entirely, thus taking the same amount of time. the index has been created. but this is no good way to work with scripts under this behavior. i'd sure forget the next move (edit/idea) that i was planning while waiting for the video to load up again during repetivie dubugging situtations.

    just for record purposes, the sources are .ts files from the hauppauge hdvpr, 720x480i, duration 01:33:53.280 on file used in this post. my usual file lengths are 1/2 hr or less captures.

    edit: i closed down other tasks and re-ran stats again.

    the script in post #1 takes: 2min 02secs to load 1st time, and 18secs subseq loads, index size 82MB
    the script below takes: 2min 4secs to load 1st time, and 1.5secs subseq loads, index size 501KB

    Code:
      v = "h:\499.video.hdpvr.nbc.snl.MyLeyCyrus2013.full.9Mbpts.ts"
      LoadPlugin( "c:\plugins\ffms2.dll" )
      FFIndex(v)
      aud = FFAudioSource(v)
      vid = FFVideoSource(v)
      audiodub(vid, aud)
    Last edited by vhelp; 14th Oct 2013 at 11:06.
    Quote Quote  
  4. Have you tried creating the index (using the aui_indexer) before running the Avisynth script?
    Quote Quote  
  5. Member vhelp's Avatar
    Join Date
    Mar 2001
    Location
    New York
    Search Comp PM
    is that a utility ?
    Quote Quote  
  6. yes, aui_indexer (which requires lsmashinput.aui) is comparable to ffmsindex.
    Quote Quote  
  7. Member vhelp's Avatar
    Join Date
    Mar 2001
    Location
    New York
    Search Comp PM
    i goggle "aui_indexer" and found this link and downloaded the app, but the readme is in japaneese.

    https://github.com/VFR-maniac/L-SMASH-Works/issues/17

    edit: i see i need more files. i will search later, have to step out..thanks for the help.
    Last edited by vhelp; 14th Oct 2013 at 11:57.
    Quote Quote  
  8. attached aui_indexer 0.01 and lwinput from L-SMASH_Works r679


    got L-SMASH_Works from:
    http://translate.google.de/translate?hl=de&sl=ja&tl=en&u=http%3A%2F%2Fpop.4-bit.jp%2F%3Fp%3D5060
    and
    aui_indexer from:
    https://skydrive.live.com/?cid=6bdd4375ac8933c6&id=6BDD4375AC8933C6!505&sc=documents
    Image Attached Files
    Last edited by Selur; 14th Oct 2013 at 12:21.
    Quote Quote  
  9. Member vhelp's Avatar
    Join Date
    Mar 2001
    Location
    New York
    Search Comp PM
    just d/l'ed the tool. will try it out, thanks again.
    Quote Quote  
  10. Member vhelp's Avatar
    Join Date
    Mar 2001
    Location
    New York
    Search Comp PM
    no, it failed. when i loaded the script, it overwritten the aui_indexer's.. it is rewriting the index now..
    Quote Quote  
  11. Member vhelp's Avatar
    Join Date
    Mar 2001
    Location
    New York
    Search Comp PM
    cache=false was used. i will try with cache=true now..
    Quote Quote  
  12. Member vhelp's Avatar
    Join Date
    Mar 2001
    Location
    New York
    Search Comp PM
    nope. cache=true also overwites aui_index's index file.
    Quote Quote  
  13. hmm, seems like they changed something.
    Quote Quote  
  14. Member vhelp's Avatar
    Join Date
    Mar 2001
    Location
    New York
    Search Comp PM
    i should have kept a record of all the test scenarios so, far. i guess i'll have to start over.

    this is the d/l'ed pkg version i have currently: "L-SMASH-Works_r688v2.7z" files dumped inside my c:\plugins folder.
    Code:
    LSMASHSource.dll  8,230kb  08/30/2013  12:45pm
    msvcr110.dll        855kb  11/05/2012   9:20am
    
    #01 overwrites aui_index index file
    LWLibavVideoSource(v, stream_index=1, cache=true).selectevery(2,0)
    AudioDub(last, LWLibavAudioSource(v, cache=true, stream_index=1, av_sync=true))
    Quote Quote  
  15. Member vhelp's Avatar
    Join Date
    Mar 2001
    Location
    New York
    Search Comp PM
    #02 video only = 9 secs load time:
    Code:
    # if original LSMash created index, then=9secs, else if aui_index created=overwrites a new index
    # LWLibavVideoSource(v, stream_index=0,  cache=true , seek_mode=0 ).selectevery(2,0)
    #03 video/audio = 17 secs load time:
    Code:
    # if original LSMash created index, then=17secs, else if aui_index created=overwrites a new index
      LWLibavVideoSource(v, stream_index=0,  cache=true , seek_mode=0 ).selectevery(2,0)
      AudioDub(last, LWLibavAudioSource(v, av_sync=true))
    #04 video/audio (directshow) = 49 secs load time:
    Code:
    # if original LSMash created index, then=17secs, else if aui_index created=overwrites a new index
      LWLibavVideoSource(v, stream_index=0,  cache=true , seek_mode=0 ).selectevery(2,0)
      AudioDub(last, directshowsource(v)) # get audio through directshow, sample rate was 44.1k, probably default, maybe conversion-slowed
    #05 video/audio (ffAudioSource) = 9 secs load time:
    Code:
    # if original LSMash created index, then=17secs, else if aui_index created=overwrites a new index
      LWLibavVideoSource(v, stream_index=0,  cache=true , seek_mode=0 ).selectevery(2,0)
      AudioDub(last, ffAudioSource(v, track=1))  # get audio through ffAudioSource (ffms2.dll),  sample rate was 48k, crashes after 1st playback
    #05 was the fastest load up time of 9 secs. but when you step anywhere into the video and start to play it, as soon as you stop, it hangs virtualdub. you are left with ctrl+alt+del the virtualdub process. the only way around this method is to comment out the audiodub(ffaudiosource()) line until your edits are complete and then un-comment the audio section back in.
    Quote Quote  
  16. After about 5 years,
    is there some command line utility out there to create lwi , index file for LWLibavSource?
    I downloaded that lwinput.aui from Selur, also downloaded latest aui_indexer.exe for 2016 but those lwi do not match, there is difference in header, POC value and some more.

    Both utilities aui_indexer.exe or LWLibavSource in Vapoursynth refuse the other lwi respectively and create one of their own.
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!