diff --git a/aegisub/video_provider_dshow.cpp b/aegisub/video_provider_dshow.cpp
index 739fe43472f006538bc7b033405afb14fcd153f0..c9f65852586a64877e16b9753b0a356ec04200d3 100644
--- a/aegisub/video_provider_dshow.cpp
+++ b/aegisub/video_provider_dshow.cpp
@@ -139,7 +139,6 @@ DirectShowVideoProvider::DirectShowVideoProvider(wxString _filename, double _fps
 	fps = _fps;
 	m_registered = false;
 	m_hFrameReady = CreateEvent(NULL, FALSE, FALSE, NULL);
-	SetCacheMax(8);
 	HRESULT hr = OpenVideo(_filename);
 	if (FAILED(hr)) throw _T("Failed opening DirectShow content.");
 }
diff --git a/aegisub/video_provider_dshow.h b/aegisub/video_provider_dshow.h
index 631d9e9ee1e6932c18683a9d992277cc17c63238..3059ee0504606b929c7ad7df52db96d0c3558f54 100644
--- a/aegisub/video_provider_dshow.h
+++ b/aegisub/video_provider_dshow.h
@@ -114,6 +114,7 @@ public:
 	bool IsNativelyByFrames() { return false; }
 
 	void OverrideFrameTimeList(wxArrayInt list);
+	int GetDesiredCacheSize() { return 8; }
 };
 
 
diff --git a/aegisub/video_provider_lavc.cpp b/aegisub/video_provider_lavc.cpp
index 9877cf31027566185a21425a5ebb9445aa5582d1..c2f1a553b329e9b0e179c2e6d9e02d844d54b966 100644
--- a/aegisub/video_provider_lavc.cpp
+++ b/aegisub/video_provider_lavc.cpp
@@ -73,7 +73,6 @@ LAVCVideoProvider::LAVCVideoProvider(wxString filename,double fps) {
 	validFrame = false;
 
 	// Load
-	SetCacheMax(8);
 	LoadVideo(filename,fps);
 }
 
diff --git a/aegisub/video_provider_lavc.h b/aegisub/video_provider_lavc.h
index 120e70bf38820fcdad319f324f63f40f00cac619..82ff78dd922907fff696aa9bfc23c9937b0b6e72 100644
--- a/aegisub/video_provider_lavc.h
+++ b/aegisub/video_provider_lavc.h
@@ -106,6 +106,7 @@ public:
 	double GetFPS();
 	wxString GetDecoderName() { return _T("FFMpeg/libavcodec"); }
 	bool IsNativelyByFrames() { return true; }
+	int GetDesiredCacheSize() { return 8; }
 };