0

I was finding that when watching some video files using VLC 2.0.6 (Twoflower) that I have on my hard drive, they were sputtering quite a bit (stopping and starting causing video and audio artifacts and dropouts). This is especially noticeable when I increase the playback rate above 1.0x.

These video files are small (around 300-700MB+) and my computer isn't that old (about 6 months). Its a Dell Inspiron N411Z computer with an Intel Core i5-2450M 2.5GHz, 6.00GB of RAM, 64-bit Windows 7 Home Premium SP1 OS with a rating of 4.8 (which is the graphics performance). The hard drive is a 500GB SATA drive with 8MB cache and 3GB transfer spinning at 5400RPM (complete specs can be found here).

Codec of one of the videos as reported by ffmpeg:

Stream #0:0: Video: mpeg4 (Advanced Simple Profile) (XVID / 0x44495658), yuv420p, 608x336 [SAR 1:1 DAR 38:21], 23.98 tbr, 23.98 tbn, 23.98 tbc
Stream #0:1: Audio: mp3 (U[0][0][0] / 0x0055), 48000 Hz, stereo, s16p, 32 kb/s

This is quite annoying, and I don't think it should be happening. I did see this question, but I don't think it's quite the same issue as that one only refers to video and not audio.

How many others have had this occur and what has your fix been?

Adrian
  • 641

1 Answers1

0

This problem seems to be a disk access issue. By putting the movie into the cache, this problem goes away. The issue is how to put it in the OS's disk cache in the first place. I've written this simple batch script:

c:\cygwin\bin\cp.exe "%~1" /dev/null

That of course requires that cygwin is loaded on to the system. MinGW didn't work as it caused this error:

/usr/bin/cp: cannot create regular file `/dev/null': Invalid request code

Seems like cp isn't implemented correctly under MinGW. I did try this:

copy /b %1 nul

But for some reason, it didn't seem to work as well (though it did work better than not doing it at all).

Implementation

I named the script cacheFile.bat and put the script into a folder (like %USERPROFILE%\bin, which I created) and then created a .lnk to that file in the SendTo folder to that file which I named cache file (to get to the SendTo folder easily, type shell:SendTo and hit enter at the Start->Run prompt or on the Explorer address bar). By setting the Run properties of the .lnk file to Minimized, the window doesn't show up, except in the task bar. This is done by right clicking on the .lnk file, selecting Properties and in the Shortcut tab, set Run to Minimized.

Now I can right click on a movie and put it into the cache.

context menu

The batch file can be of course modified to cache it and then run VLC immediately after doing so, but this way I don't have to wait for the file to be fully copied before starting to view the video, or while watching the video, I can cache it again if required.

Adrian
  • 641