diff options
author | dec05eba <dec05eba@protonmail.com> | 2025-03-18 21:54:12 +0100 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2025-03-18 21:54:12 +0100 |
commit | d2ab24121dcf66e261ae6b205290df7e8dbfa4e6 (patch) | |
tree | f7a200ba9418f17d144e178d2d55ea659dfe2d5e /src | |
parent | e7a95f830abc358fcdf6d24fcf11e346e0b77e99 (diff) |
Test broadcom (raspberry pi) support
Diffstat (limited to 'src')
-rw-r--r-- | src/main.cpp | 10 | ||||
-rw-r--r-- | src/utils.c | 2 |
2 files changed, 11 insertions, 1 deletions
diff --git a/src/main.cpp b/src/main.cpp index 5669d17..9f0847e 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1922,7 +1922,8 @@ static gsr_video_encoder* create_video_encoder(gsr_egl *egl, bool overclock, gsr switch(egl->gpu_info.vendor) { case GSR_GPU_VENDOR_AMD: - case GSR_GPU_VENDOR_INTEL: { + case GSR_GPU_VENDOR_INTEL: + case GSR_GPU_VENDOR_BROADCOM: { gsr_video_encoder_vaapi_params params; params.egl = egl; params.color_depth = color_depth; @@ -1956,6 +1957,7 @@ static bool get_supported_video_codecs(gsr_egl *egl, VideoCodec video_codec, boo switch(egl->gpu_info.vendor) { case GSR_GPU_VENDOR_AMD: case GSR_GPU_VENDOR_INTEL: + case GSR_GPU_VENDOR_BROADCOM: return gsr_get_supported_video_codecs_vaapi(video_codecs, egl->card_path, cleanup); case GSR_GPU_VENDOR_NVIDIA: return gsr_get_supported_video_codecs_nvenc(video_codecs, cleanup); @@ -2029,6 +2031,9 @@ static void list_gpu_info(gsr_egl *egl) { case GSR_GPU_VENDOR_NVIDIA: printf("vendor|nvidia\n"); break; + case GSR_GPU_VENDOR_BROADCOM: + printf("vendor|broadcom\n"); + break; } printf("card_path|%s\n", egl->card_path); } @@ -2369,6 +2374,9 @@ static bool gpu_vendor_from_string(const char *vendor_str, gsr_gpu_vendor *vendo } else if(strcmp(vendor_str, "nvidia") == 0) { *vendor = GSR_GPU_VENDOR_NVIDIA; return true; + } else if(strcmp(vendor_str, "broadcom") == 0) { + *vendor = GSR_GPU_VENDOR_BROADCOM; + return true; } else { return false; } diff --git a/src/utils.c b/src/utils.c index f053eed..325f750 100644 --- a/src/utils.c +++ b/src/utils.c @@ -396,6 +396,8 @@ bool gl_get_gpu_info(gsr_egl *egl, gsr_gpu_info *info) { info->vendor = GSR_GPU_VENDOR_INTEL; else if(strstr((const char*)gl_vendor, "NVIDIA")) info->vendor = GSR_GPU_VENDOR_NVIDIA; + else if(strstr((const char*)gl_vendor, "Broadcom")) + info->vendor = GSR_GPU_VENDOR_BROADCOM; else { fprintf(stderr, "gsr error: unknown gpu vendor: %s\n", gl_vendor); supported = false; |