VideoHelp Forum




+ Reply to Thread
Results 1 to 18 of 18
  1. I like to play virtually all my videos at 1.5x speed and no player can do it without choppiness except Virtualdub. I already have a script for autoloading any video from the context menu but I created another one to include audio. My question is, is it optimal? Is this how all of you would do it?

    Code:
    a=ffvideosource("C:\video.mkv", cache=true, cachefile="C:\video.mkv.ffindex") 
    b=ffaudiosource("C:\video.mkv", cache=true, cachefile="C:\video.mkv.ffindex") 
    audiodub(a,b) 
    #TimeStretch(Tempo=100.0)
    Quote Quote  
  2. The help file says ffms2 indexes twice if you index video first, and suggests you should do it the other way around.

    A = FFAudioSource(X)
    V = FFVideoSource(X)
    AudioDub(V, A)

    Although the indexing and AudioDub stuff happens automatically if you use FFmpegSource2 or FFMS2.
    The cachefile options are the same, and cache=true is the default anyway.

    FFmpegSource2("C:\video.mkv", atrack=-1, cachefile="C:\video.mkv.ffindex")
    or
    FFMS2("C:\video.mkv", atrack=-1, cachefile="C:\video.mkv.ffindex")

    How do you match the audio speed to the video though, as TimeStretch only adjusts audio?
    This should keep the audio and video in sync, without changing the audio pitch, and speed it all up 1.5x. Any player that can open Avisynth scripts should play it.

    FFMS2("C:\video.mkv", atrack=-1, cachefile="C:\video.mkv.ffindex")
    AssumeFPS(FrameRate*1.5)
    TimeStretch(Tempo=150.0)
    Last edited by hello_hello; 26th Mar 2019 at 03:37.
    Quote Quote  
  3. Originally Posted by hello_hello View Post
    The help file says ffms2 indexes twice if you index video first, and suggests you should do it the other way around.
    I didn't know this, thanks.

    Originally Posted by hello_hello View Post
    Although the indexing and AudioDub stuff happens automatically if you use FFmpegSource2 or FFMS2.
    Does FFMS2 open MKV and other videos? If so, I will switch to it. I know the FFMS predecessor only worked for MP4s.

    Originally Posted by hello_hello View Post
    How do you match the audio speed to the video though, as TimeStretch only adjusts audio?
    This should keep the audio and video in sync, without changing the audio pitch, and speed it all up 1.5x. Any player that can open Avisynth scripts should play it.

    FFMS2("C:\video.mkv", atrack=-1, cachefile="C:\video.mkv.ffindex")
    AssumeFPS(FrameRate*1.5)
    TimeStretch(Tempo=150.0)
    I was gonna do that part manually because I didn't know I could do FrameRate* 1.5.
    Many thanks! This is gonna save me a lot more grief than I expected.
    Quote Quote  
  4. Originally Posted by Aludin View Post
    I like to play virtually all my videos at 1.5x speed and no player can do it without choppiness
    Have you tried VLC? Everything I tried at 1.5x was smooth.
    Quote Quote  
  5. Originally Posted by Aludin View Post
    Does FFMS2 open MKV and other videos? If so, I will switch to it. I know the FFMS predecessor only worked for MP4s.
    I don't recall that limitation, but FFMS2 and FFmpegSource2 are effectively just an automatic way of doing this:

    A = FFAudioSource(X)
    V = FFVideoSource(X)
    AudioDub(V, A)

    So they should open anything FFVideoSource and FFAudioSource will open. They definitely open MKVs.
    Those functions used to be contained in a separate avsi script, but these days they're integrated into the dll.

    For some reason FFMS and FFmpegSource2 don't enable audio by default, hence the need to use Atrack=-1

    Attached are couple of functions if you want to try them. It's been a while since I created them, but if I remember correctly....

    The FFMS3 function is exactly the same as FFMS2, except audio is enabled by default. If you try to open a source without audio, and without disabling the audio, it'll produce an error as FFMS2 does. If you try to open a source without video, it'll produce an error as FFMS2 does (I'm pretty sure).

    The FFMS4 function has video and audio enabled by default, but you should be able to open a "video only" file, or an "audio only" file without having to disable either. The only time you should get an error, is if you disable audio and then try to open an audio-only file, or try to open a video-only file with video disabled, or if there are video/audio streams but FFMS2 can't open them for some reason (FFMS4 can disable video with VTrack=-2 and just open the audio).

    Edit: Doh! I was cleaning up the FFMS4 script a bit and I noticed a minor error. Nothing that should normally cause a problem, but I've attached a fixed version.
    Image Attached Files
    Last edited by hello_hello; 1st Apr 2019 at 00:15. Reason: Second edit to change the way a sentence was written
    Quote Quote  
  6. This works great, thanks.

    jagabo, VLC was choppier than Potplayer. I'm also getting annoying screen tearing but this is global. The only reason it doesn't show in virtualdub is because it's not fullscreen. But so far virtualdub is the only player with perfect temporal smoothness.
    Quote Quote  
  7. Originally Posted by Aludin View Post
    This works great, thanks.

    jagabo, VLC was choppier than Potplayer. I'm also getting annoying screen tearing but this is global. The only reason it doesn't show in virtualdub is because it's not fullscreen. But so far virtualdub is the only player with perfect temporal smoothness.
    I have a similar problem with fullscreen tearing. I don't really know why, but I discovered changing the MPC-HC resizer gets rid of it. It's set under Playback/Output for MPC-HC. If I select any of the Bicubic resizers I tend to see tearing. For any of the others it's fine, so I use "Bilinear (PS 2.0)". It's not as sharp though, although when running noisy or lower quality video fullscreen that's not a bad thing. It happens on two PCs with the same video card, so it's probably video card related. I don't know what Potplayer uses by default or if that's your issue, as I think VLC is fine for me (I rarely use it) but it's something to try.

    BTW, I have a two similar functions to FFMS4 called LSmashSource3 and LibavSource3. They're modified versions of the LSmashSource2 and LibavSource2 functions supplied with LSMASH. The former can be used to open files that don't require indexing, such as MP4, so it opens them faster.
    I also combined them using another function. It attempts to open a source with LSmashSource3 and if that fails, it moves onto indexing with LibavSource3. The idea is you can open any source with it and it won't index unless it needs to.
    Unfortunately though there's a problem I need to fix, but if you want to try it I'll do so tomorrow (hopefully) and upload it for you. It's not a huge issue and I don't use it regularly so I haven't been motivated to do anything about it until now.

    Cheers.
    Last edited by hello_hello; 1st Apr 2019 at 00:21.
    Quote Quote  
  8. Changing my resizer to any kind of billinear-based counterpart didn't work. Here's all the rendering modes I tried on potplayer for a 1080p video at 29.971 fps:

    No tearing
    VMR7 windowed
    VMR7 renderless
    EVR (Vista/ .Net3) - tearing for first few seconds and slow seek
    Haali - minimal tearing
    madVR - no tearing but slow seeking

    Tearing
    VMR9 windowed
    VMR9 renderless
    EVR (Custom preset)
    Built-in Direct3D9 Video Renderer
    Built-in OpenGL Video Renderer - horrible tearing

    So VMR7 renderless is my pick for now. The only problem is the lack of VMR9 features like multiple resolutions, e.g. subtitles should always be crisp and not rendered at the same resolution as the video. On small res videos, subtitles are unreadable. Same when pressing TAB to get video metadata info.

    Curiously, EVR fails only on the customizable one so not sure which setting is causing it. If I can find the cause, hopefully I can get VMR9 to work. I did get a new video card lately but my old one was 4x slower and I didn't get tearing issues so not sure what's wrong with this one. But my main problem is playback choppiness when increasing playback speed.

    Thanks for the offer for the new script but I have no need to avoid indexing. Better it be indexed than rendered on the fly which just consumes more resources.
    Quote Quote  
  9. I kind of remember changing the PCI Express frequency in the BIOS helped with tearing on a different computer (if you can). Maybe try taking it off "auto" and setting a fixed frequency might help, given it's only started since you changed video cards.

    While I was messing around with the other script I modified FFMS4 a bit. The only differences are...
    Previously if an error message was anything other than "no video/audio track found" (which is ignored when Vtrack=-1 or ATrack=-1), the script would attempt to open the video/audio a second time in order to display the error message. It no longer does that and just displays the error message from the first attempt.
    Also, when the error message is "not an audio track" because you specified a particular audio track with Atrack, and the track number exists but isn't audio, the script displays an FFMS4 error message rather than the one generated by FFMS2. The same applies when specifying a video track.

    So it's exactly the same, only different.
    Image Attached Files
    Quote Quote  
  10. I think you'd be better off fixing whatever is wrong with your computer rather than using a kludge of AviSnyth and VirtualDub to play videos.
    Quote Quote  
  11. Originally Posted by hello_hello View Post
    I kind of remember changing the PCI Express frequency in the BIOS helped with tearing on a different computer (if you can). Maybe try taking it off "auto" and setting a fixed frequency might help, given it's only started since you changed video cards.
    Actually, I neglected to mention that I got a new computer. I did get a new video card but I believe the onboard GPU was also causing the same problems. I'll try messing with the BIOS later but that really shouldn't be the cause if other rendering methods (or other players) are displaying the video fine.

    Your contribution to FFMS4 is valued, as always. Are you the author or what? I've not been keeping up to date lately so ffvideosource has been my standard loading sentence for a decade now. You've broken an old habit of mine.

    jagabo, that's the problem, I don't know what's wrong. The tearing is completely new but the unsmooth playback when speeding up on VLC and Potplayer has always been the case even on my old computer with the old video card. Potplayer's author assured me it's not his program but me but he's done nothing else but recommend I find another player.
    That's customer loyalty for you.
    Quote Quote  
  12. Originally Posted by Aludin View Post
    Are you the author or what? I've not been keeping up to date lately so ffvideosource has been my standard loading sentence for a decade now. You've broken an old habit of mine.
    No, I have nothing to do with the FFMS2 plugin. I was using the original FFMS2/FFmpegSource2 functions are bit, and FFMS3, then FFMS4, are just my modifications to the FFMS2 script to change some of the things that annoyed me.
    Quote Quote  
  13. Originally Posted by Aludin View Post
    Originally Posted by hello_hello View Post
    I kind of remember changing the PCI Express frequency in the BIOS helped with tearing on a different computer (if you can). Maybe try taking it off "auto" and setting a fixed frequency might help, given it's only started since you changed video cards.
    Actually, I neglected to mention that I got a new computer. I did get a new video card but I believe the onboard GPU was also causing the same problems. I'll try messing with the BIOS later but that really shouldn't be the cause if other rendering methods (or other players) are displaying the video fine.
    I don't play much high frame rate video, so I'd almost forgotten MPC-HC tends to stutter when playing video with frame rates above 30fps, until I tried to play some yesterday. So I did some experimenting and it's the same for me. Some renderers stutter and some don't. It's an old PC, so I put it down to that, but VLC plays 50/60fps video fine. MPC-HC stutters with most renderers (I couldn't test EVR Custom Presenter as it no longer supports XP) and most of the other renderers played without stuttering but the audio sync was terrible, If it was in sync when I navigated to a particular spot it'd often lose sync as playback progressed.

    I've settled on "System Default" as the renderer for high frame rate stuff. According to the tooltip, that means for XP it's using "VMR7 Windowed", although it's no longer a choice in the drop down list of renderers since XP support was dropped. That plays high frame rate stuff perfectly, but there's no subtitle or pixel shader support etc. Not that I'm too bothered about that, but....

    As MPC-HC can be installed as a portable version and save it's settings to an ini file, I now have it "installed" in two locations. One configured normally to use "VMR9 Renderless" for most video, and another configured for "System Default". I have shortcuts for both in the Explorer right click SendTo menu, so I can double click on a file to open the standard configuration, or use the SendTo method to open a file with the other.

    At some stage I might dig out an older version of MPC-HC to see if a version with XP support will also support subtitles when using VMR7, and If so I'll use the same method to switch between MPC-HC versions. I've no idea what's causing it, but as well as switching renderers I tried switching decoders, splitters and enabling/disabling hardware decoding, but changing renderers was the only thing that made a difference.
    Last edited by hello_hello; 4th Apr 2019 at 09:39.
    Quote Quote  
  14. I was going to test multiple frame rates for a more accurate experiment but Avisynth scripts are no longer opening in Potplayer all of a sudden so I'll have to wait till that's fixed.

    From what I understand you're still using Windows XP? I was a long time XP fan for almost 15 years before upgrading but you make me look like an innovator. How's that working out for you? How do you even make it work on modern hardware? It was a pain in the ass to get this damn 2017 PC to work on Windows 7. I can't imagine trying to install XP on this.

    About FFMS, it couldn't open VP9 videos but previous versions couldn't either so that's probably not your fault. I could've sworn I was able to do it before. I must've used dss2. Meh.
    Quote Quote  
  15. Yeah I'm still using XP. Mainly because the PCs had XP installed when they were built (yes, they're getting a bit old). The main reason I haven't upgraded them in a hurry is I don't want to upgrade Windows.

    I was at the other half's house last week. We were watching a movie. A movie on my USB hard drive connected to her laptop which was connected to the TV via HDMI. Just as I'd convinced dual display mode to work and the video was running fullscreen on the TV, up popped a message regarding Windows "goodness" and rebooting (or some retarded term for Windows updates). That locked the cursor on the TV screen for some reason. It wouldn't move back to the laptop display so I could dismiss the message. I think I had to disconnect the TV.
    About an hour later, the message popped up again, this time on the TV and over the video. And about another hour later, it popped up and interrupted the movie a second time. How do people put up with that crap?
    Quote Quote  
  16. Member
    Join Date
    Mar 2008
    Location
    United States
    Search Comp PM
    Originally Posted by hello_hello View Post
    Yeah I'm still using XP. Mainly because the PCs had XP installed when they were built (yes, they're getting a bit old). The main reason I haven't upgraded them in a hurry is I don't want to upgrade Windows.

    I was at the other half's house last week. We were watching a movie. A movie on my USB hard drive connected to her laptop which was connected to the TV via HDMI. Just as I'd convinced dual display mode to work and the video was running fullscreen on the TV, up popped a message regarding Windows "goodness" and rebooting (or some retarded term for Windows updates). That locked the cursor on the TV screen for some reason. It wouldn't move back to the laptop display so I could dismiss the message. I think I had to disconnect the TV.
    About an hour later, the message popped up again, this time on the TV and over the video. And about another hour later, it popped up and interrupted the movie a second time. How do people put up with that crap?
    I agree, I persisted with 10 for about a year, finally had enough -
    formatted and installed Windows 8.1 Pro. At least I feel I have control of my PC again
    Quote Quote  
  17. Originally Posted by hello_hello View Post
    Yeah I'm still using XP. Mainly because the PCs had XP installed when they were built (yes, they're getting a bit old). The main reason I haven't upgraded them in a hurry is I don't want to upgrade Windows.

    I was at the other half's house last week. We were watching a movie. A movie on my USB hard drive connected to her laptop which was connected to the TV via HDMI. Just as I'd convinced dual display mode to work and the video was running fullscreen on the TV, up popped a message regarding Windows "goodness" and rebooting (or some retarded term for Windows updates). That locked the cursor on the TV screen for some reason. It wouldn't move back to the laptop display so I could dismiss the message. I think I had to disconnect the TV.
    About an hour later, the message popped up again, this time on the TV and over the video. And about another hour later, it popped up and interrupted the movie a second time. How do people put up with that crap?
    I have twelve PCs and all but two are running XP, or earlier. The two running Windows 7 are required for a few programs and also to play certain content.

    However, no matter what version of Windows, I ALWAYS turn off ALL automatic updating. If my PC worked yesterday, I want it to work today. I never update Windows and, despite dire warnings, have never had a virus or any other form of malware. I also never use any anti-virus because I've had to fix dozens of PCs from friends, neighbors, and clients that have been totally trashed by anti-virus software that slows down everything.

    I do, however, have a very rigorous and "clever" backup routine so that if something does eventually happen, I can get back to my working PC in less than ten minutes.

    Like you, I do wonder how people put up with PCs that operate so poorly and which seem to be operated by someone else half the time, as though Microsoft or the app vendor was running the PC by remote control.
    Quote Quote  
  18. I didn't mention.... the laptop has Win10 installed, so you can't disable that crap. She claims she didn't want to upgrade Windows. She went to bed one night owning a laptop with Win7 installed, and the next morning it was running Win10. She swears she never gave it permission to install.

    As old as XP is, and keeping in mind it is tweaked to my liking, every time I use a computer with a newer version of Windows, returning to my old PC running XP still feels like an upgrade.
    Quote Quote  



Similar Threads

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