aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--TODO4
-rw-r--r--src/main.cpp7
2 files changed, 9 insertions, 2 deletions
diff --git a/TODO b/TODO
index c37da4e..c642f2b 100644
--- a/TODO
+++ b/TODO
@@ -60,4 +60,6 @@ Intel is a bit weird with monitor capture and multiple monitors. If one of the m
How about if multiple monitors are rotated?
When using multiple monitors kms grab the target monitor instead of the whole screen.
-Enable opus/flac again. It's broken right now when merging audio inputs. The audio gets a lot of static noise! \ No newline at end of file
+Enable opus/flac again. It's broken right now when merging audio inputs. The audio gets a lot of static noise!
+
+Support vp8/vp9/av1. This is especially important on amd which on some distros (such as Manjaro) where hardware accelerated h264/hevc is disabled in the mesa package. \ No newline at end of file
diff --git a/src/main.cpp b/src/main.cpp
index f1d3bcf..2c73cb5 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -1577,7 +1577,12 @@ int main(int argc, char **argv) {
}
if(!video_codec_f) {
- fprintf(stderr, "Error: your gpu does not support '%s' video codec\n", video_codec == VideoCodec::H264 ? "h264" : "h265");
+ const char *video_codec_name = video_codec == VideoCodec::H264 ? "h264" : "h265";
+ fprintf(stderr, "Error: your gpu does not support '%s' video codec. If you are sure that your gpu does support '%s' video encoding and you are using an AMD/Intel GPU,\n"
+ " then it's possible that your distro has disabled hardware accelerated video encoding for '%s' video codec.\n"
+ " This may be the case on corporate distros such as Manjaro.\n"
+ " You can test this by running 'vainfo | grep VAEntrypointEncSlice' to see if it matches any H264/HEVC profile. vainfo is part of libva-utils.\n"
+ " On such distros, you need to manually install mesa from source to enable H264/HEVC hardware acceleration, or use a more user friendly distro.\n", video_codec_name, video_codec_name, video_codec_name);
exit(2);
}