diff --git a/Cargo.toml b/Cargo.toml
index d73faad8b8dac8d680d05b348b7b20b15666e18e..e405c72627440e9c6cbbbb37e29d3e3c4fd54f31 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -24,3 +24,4 @@ toml = { package = "basic-toml", version = "0.1.4" }
 [features]
 default = ["mem_limit"]
 mem_limit = []
+vaapi = []
diff --git a/src/render/ffmpeg.rs b/src/render/ffmpeg.rs
index 8bcc37bf5d6ab51a8be7415d784d2fb7337a4032..30b3d79e6966912c1524ffe7716efcb6d9a40972 100644
--- a/src/render/ffmpeg.rs
+++ b/src/render/ffmpeg.rs
@@ -322,7 +322,7 @@ impl Ffmpeg {
 
 		// initialise a vaapi device if one exists
 		let vaapi_device: PathBuf = "/dev/dri/renderD128".into();
-		let vaapi = vaapi_device.exists();
+		let vaapi = cfg!(feature = "vaapi") && vaapi_device.exists();
 		if vaapi && venc {
 			if vdec {
 				cmd.arg("-hwaccel").arg("vaapi");