כיצד להפעיל האצת חומרה בדפדפני לינוקס

העדכון אחרון: 28/01/2026
מחבר: יצחק
  • האצה על ידי חומרה en לינוקס זה תלוי ב-VA-API, נהגים תצורת דפדפן ומשתני סביבה מתאימים ונכונים.
  • חיוני להתקין את מנהל ההתקן הנכון של VA-API (i965/iHD ב- אינטל, Mesa ב-AMD/Nouveau) ובדוק עם vainfo אילו קודקים הכרטיס הגרפי באמת תומך.
  • דפדפנים מבוססי Firefox ו-Chromium דורשים הפעלת דגלים ספציפיים, ובמקרים רבים, הפעלת הדפדפן עם פרמטרים נוספים כדי להשתמש ב-VA-API.
  • כפיית H.264 עם הרחבות כמו h264ify ובדיקת השימוש ב-GPU עם כלים כמו intel_gpu_top או DevTools מבטיחים נגינה חלקה ויעילה יותר.

מדריך להפעלת האצת חומרה בדפדפני לינוקס

אם אתם משתמשים בלינוקס מדי יום, סביר להניח ששמתם לב שכאשר אתם מפעילים סרטונים בדפדפן, המאוורר מסתובב, המעבד מגיע ל-100%, והמחשב הנייד מרגיש כאילו הוא עומד להמריא. זה בדרך כלל סימפטום של האצת וידאו חומרתית הוא לא מופעל כראוי: המעבד בסופו של דבר עושה את העבודה שה-GPU אמור לעשות, והתוצאה היא יותר רעש, טמפרטורות גבוהות יותר וחיי סוללה קצרים יותר.

החדשות הטובות הן שכיום Firefox, Chromium וכמעט כל הנגזרות שלהם כבר כוללות תמיכה אמיתית ב-VA-API והאצת חומרה בלינוקס, אם כי לעתים רחוקות הן מגיעות מכווננות היטב מהקופסה. במדריך זה נסקור, שלב אחר שלב ובפירוט רב, כיצד להכין את הדרייברים, כיצד להפעיל את VA-API בדפדפנים העיקריים וכיצד באמת לבדוק שהווידאו מפוענח על ה-GPU ולא על ה-CPU.

מהי האצת חומרה של וידאו ומדוע כדאי להפעיל אותה?

כשאנחנו מדברים על האצת חומרה בדפדפנים, אנחנו מתכוונים להעביר את העבודה הכבדה של פענוח ועיבוד וידאו לכרטיס המסך (GPU), במקום להשאיר את כולה למעבד. בפועל, משמעות הדבר היא שכאשר מנגנים תוכן מולטימדיה (YouTube, נטפליקס(למשל, טוויץ' וכו') כרטיס המסך אחראי על פירוק ועיבוד פריימים של הווידאו, בעוד שהמעבד פנוי הרבה יותר.

הטכנולוגיה שמגשרת בין יישומים ומעבדים גרפיים בלינוקס עבור וידאו נקראת VA-API (Video Acceleration API), והיא הסטנדרט דה פקטו בשולחן העבודה של פינגווין. תוכנות רבות תומכות בכך: דפדפנים, נגנים כמו VLC או OBS Studio לקידוד/פענוח עם כרטיס המסך, ואפילו כלי עריכה ולכידה.

היתרונות המעשיים של הפעלה תקינה של האצת וידאו ברורים למדי בשימוש יומיומי: פחות שימוש במעבד, צריכת אנרגיה נמוכה יותר, טמפרטורות נמוכות יותר והשמעה יציבה יותר, במיוחד ב מחשבים ניידים ישנים או עם מעבדים צנועים (2C/4T, לדוגמה).

מצד שני, ישנם כמה חסרונות ומגבלות שכדאי לזכור כבר מההתחלה: מעבדים גרפיים ישנים רבים אינם תומכים עוד בקודקים מודרניים, חלק מהדפדפנים מגבילים את הרזולוציה בעת שימוש ב-H.264 במקום VP9/AV1, ויישום רופף של VA-API יכול לגרום לארטיפקטים, מסכים ירוקים או גמגום בסרטונים מסוימים.

יתר על כן, התמיכה בלינוקס נותרה עדינה במקצת מאשר ב Windowsהשילוב של דרייברים + VA-API + דפדפן לא תמיד עובד בפעם הראשונה, והמצב יכול להיות שונה מאוד בהתאם למשתמשים ב-Intel, AMD או... NVIDIA ובהתאם לחלוקה. לכן חשוב להבין תחילה איזו חומרה יש לך, אילו מנהלי התקנים אתה משתמש, ואילו רכיבי codec תומך ה-GPU שלך.

בדוק איזה כרטיס מסך יש לך ואילו דרייברים משתמש הלינוקס שלך.

לפני שנוגעים במשהו בפיירפוקס או בכרומיום, עליכם לדעת בדיוק איזה כרטיס מסך מותקן אצלכם ואיזה מנהל התקן הגרעין טוען. זה קריטי לבחירת חבילת VA-API הנכונה ולמניעת שגיאות נדירות בהמשך.

כדי לזהות את ה-GPU במערכת מבוססת לינוקס, פשוט הפעל מסוף משהו כמו: lspci -k | grep -EA3 'VGA|3D|Display'הפלט יציין את דגם הכרטיס ואת מודול הליבה בו הוא משתמש, לדוגמה, Intel UHD Graphics 600/620 עם הדרייבר. i915.

אם למחשב שלך יש רק כרטיס מסך אחד, בדרך כלל תראה התקן כמו "בקר תואם VGA" ואת מנהל ההתקן בשימוש, בעוד שאם יש לך מחשב נייד היברידי (Intel iGPU + AMD/NVIDIA dGPU) יופיעו שני התקני מסך. זה חשוב מכיוון שבתרחישים של ריבוי GPU מעורבים שני התקני רינדור DRI.

כדי לאשר אילו התקני רינדור יש לך, רשום את התוכן של /dev/dri עם: ls /dev/driבמחשב פשוט תראה משהו כזה card0 y renderD128; בהיברידית הם יופיעו גם כן card1 y renderD129.

אם ברצונך להתקדם צעד נוסף ולגלות איזה מנהל התקן משויך לכל התקן DRI, תוכל להתייעץ עם /sys/kernel/debug/dri/128/name, /sys/kernel/debug/dri/129/name, וכו ' לדוגמה, קובץ המכיל "i915" מציין שצומת הרינדור הזה מתאים ל-iGPU של אינטל, בעוד שקובץ המכיל "radeon", "amdgpu" או "nouveau" ייצג את ה-GPU של AMD או NVIDIA בו משתמשת המערכת.

מנהלי התקנים של VA-API באובונטו ובהפצות נגזרות: אינטל, AMD ו-NVIDIA

לאחר זיהוי ה-GPU, השלב הבא הוא להתקין את מנהל ההתקן המתאים של VA-API כך שכרטיס המסך יוכל לפענח וידאו דרך החומרה. בהפצות מבוססות דביאן/אובונטו, זה נעשה באמצעות apt עם כמה חבילות מפתח.

עבור כרטיסי מסך של אינטל ישנן בעיקרון שתי משפחות של דרייברים של VA-API: ה-i965 ה"קלאסי" וה-iHD המודרני יותר (intel-media-driver), ובדרך כלל מוצעות גם גרסאות חינמיות ו"לא חינמיות". בְּעֵרֶך:

  • i965-va-driverמנהל התקן חינמי עבור VA-API נתמך בדורות Cantiga, Ironlake, Sandy Bridge, Ivy Bridge, Haswell, Broadwell, Skylake, Kaby Lake, Coffee Lake ו-Cannon Lake.
  • i965-va-driver-shaders: גרסה קניינית לאותם דורות, עם אופטימיזציות מסוימות.
  • דרייבר אינטל-מדיה-VAמומלץ דרייבר VA-API חינמי מברודוול ואילך (Skylake, Kaby Lake, Coffee Lake, Whiskey Lake, Cannon Lake, Ice Lake, Alchemist, Meteor Lake וכו').
  • intel-media-va-driver-non-free: גרסה קניינית של הגרסה הקודמת, אשר מוסיפה תכונות נוספות כגון קידוד חומרה בקודקים מודרניים כמו H.265, בהתאם לחומרה.

במחשב נייד טיפוסי עם Intel UHD 600/620, לדוגמה, ניתן להתקין את הגרסה המודרנית והקניינית עם: sudo apt install intel-media-va-driver-non-free vainfo. החבילה vainfo הוא משמש לבדיקה מאוחר יותר אילו קודקים מדויקים תומכים בכרטיס המסך שלך.

לאחר ההתקנה אמור להיות לך /usr/lib/x86_64-linux-gnu/dri/ קובץ iHD_drv_video.so (עבור מנהל התקן של אינטל-מדיה) או i965_drv_video.so (עבור i965). קבצים בינאריים אלה הם מה ש-VA-API טוען באופן פנימי כאשר דפדפן או יישום אחר מבקשים האצת וידאו.

עבור מעבדים גרפיים של AMD Radeon ו-NVIDIA המשתמשים במנהל ההתקן Nouveau בקוד פתוח, הרכיב המרכזי באובונטו הוא mesa-va-drivers, אשר מתקין את מערכות ה-backend הנדרשות של VA-API עבור כרטיסים אלה. במקרה של כרטיסי NVIDIA עם דרייברים קנייניים, הדברים מסתבכים יותר: VA-API עצמו אינו נתמך ישירות, אלא דרך גשר VDPAU→VAAPI (לדוגמה עם vdpau-va-driver), ובכל זאת דפדפנים כמעט ולא מסתמכים על VDPAU בימים אלה.

  COSMIC Desktop 1.0.6: מה חדש, שיפורים וכיצד להתקין אותו

אם יש לכם מערכת היברידית של Intel + AMD או Intel + NVIDIA עם מנהלי התקנים בקוד פתוח, הנוהג הרגיל הוא להתקין גם את מנהל ההתקן של VA-API עבור Intel (iHD או i965) וגם את mesa-va-driversכדי שתוכל לבחור איזה GPU מטפל בפענוח וידאו. בהמשך נראה כיצד לבחור התקן DRI ספציפי באמצעות משתני סביבה.

דרייברים של VA-API בפדורה והייחודיות שלהם עם NVIDIA

בפדורה הגישה דומה, אך מנהל החבילות וכמה שמות חבילות ספציפיים שונים. עבור גרפיקה של אינטל, תמיכה ב-VA-API כרוכה בדרך כלל בהתקנה של:

בטרמינל, עם הרשאות מנהל, ניתן להשתמש ב: sudo dnf install libva-intel-driver intel-mediasdk intel-media-driverזה מבטיח שיהיה לך גם את הדרייברים הקלאסיים וגם את הדרייברים החדשים וגם את הספריות המשויכות אליהם.

אם אתם משתמשים ב-AMD Radeon או NVIDIA עם מנהל ההתקן Nouveau בקוד פתוח, תמיכה ב-VA-API כלולה בחבילה. mesa-dri-driversאשר בדרך כלל מותקן כברירת מחדל בתחנת העבודה של פדורה. למרות זאת, במערכות מסוימות התוצאה בפועל עם VA-API ב-AMD/Nouveau עשויה להיות לא עקבית או אפילו להיכשל.

היתרון של פדורה על פני אובונטו בזירת NVIDIA הקניינית הוא שגשר VDPAU עבור VA-API (כמו libva-vdpau-driver) זמין בדרך כלל ישירות ממאגרים רשמיים. לדוגמה, ניתן להתקין אותו באמצעות sudo dnf install libva-vdpau-driverעם זאת, אין זה מבטיח שדפדפנים אכן ישתמשו ב-VDPAU בפועל.

תשתמש ב-vainfo כדי לבדוק אילו קודקים הכרטיס הגרפי שלך באמת תומך בהם.

התקנת החבילות אינה מספיקה: עליכם לדעת אילו קודקים ומצבים (קידוד/פענוח) הכרטיס הגרפי שלכם תומך בהם דרך VA-API כדי להימנע מלהיתקע עם הגדרות בלתי אפשריות. כאן נכנס לתמונה vainfo, אשר מפרט פרופילים נתמכים עבור התקן DRI ספציפי ומנהל התקן VA-API.

הדרך היעילה ביותר להפעיל את vainfo היא על ידי ציון מפורש של שם הדרייבר והתקן הרינדור הרצוי, לדוגמה: LIBVA_DRIVER_NAME=iHD vainfo --display drm --device /dev/dri/renderD128זה מונע בלבול במערכות עם מספר כרטיסי מסך או מספר מנהלי התקנים מותקנים.

הפלט הטיפוסי של vainfo מתחיל בציון גרסת ה-VA-API והמנהל התקן, ולאחר מכן מציג רשימה ארוכה של "פרופיל ונקודות כניסה". לכל שורה יש בדרך כלל פרופיל קודק (MPEG2, H264Main, H264High, HEVCMain, VP8, VP9, ​​​​AV1…) ומצב קלט/פלט.

מה שמעניין אותנו בהפעלת וידאו הוא שמופיעים ערכים כאלה VAEntrypointVLD עבור הקודק הרצוי, שכן משמעות הדבר היא שה-GPU יכול לפענח אותו בחומרה. לדוגמה, ראה VAProfileH264High : VAEntrypointVLD מרמז על תמיכה בפענוח H.264; ראה VAProfileVP9Profile0 : VAEntrypointVLD זה כולל תמיכה בחומרה של VP9 וכן הלאה.

במעבדים גרפיים ישנים יותר תראו בדרך כלל תמיכה נוחה ב-H.264 אך היעדר VP8, VP9 או AV1, מה שמאלץ אתכם להשתמש בתוספי דפדפן כדי לאלץ אתרים לשרת H.264 במקום קודקים חדשים יותר. שימו לב שאם הסרטון קיים רק ב-VP9/AV1, אין קסם: הוא יפוענח על ידי תוכנה.

אם vainfo מחזיר שגיאות כגון "va_openDriver() failed" או אינו מצליח לאתחל את מנהל ההתקן המבוקש, סביר להניח שה-GPU שלך אינו תואם לשרת backend ספציפי זה. במקרה כזה, בדרך כלל עובד לעבור מ-iHD ל-i965 במערכות אינטל ישנות יותר, או לבדוק שחבילת Mesa המתאימה מותקנת כהלכה עבור AMD/Nouveau.

הגדרת משתני סביבה לתיקון מנהל התקן VA-API והתקן DRI

מדריכים רבים מניחים שהתקן ה-DRI הראשון (renderD128) הוא תמיד ה-iGPU ושהמערכת בוחרת את הדרייבר הנכון ללא עיכובים נוספים, אך בפועל, במיוחד במחשבים ניידים עם מספר כרטיסי מסך, ייתכן שזה לא יהיה המצב. מכאן החשיבות של הגדרת משתני סביבה מסוימים לפני הפעלת הדפדפן.

שלושת המשתנים הנפוצים ביותר לשליטה ב-VA-API וב-backend הגרפי של Firefox בלינוקס הם:

  • מכשיר_DRM_MOZ_WAYLAND: נתיב להתקן ה-DRI שבו עליך להשתמש (לדוגמה, /dev/dri/renderD128 o /dev/dri/renderD129).
  • שם_נהג_ליבבהשם מקוצר של מנהל ההתקן של VA-API שיש לטעון (i965, iHD, nouveau, r600, radeonsi, וכו ').
  • MOZ_X11_EGL / MOZ_ENABLE_WAYLANDמחווני מספרים שלמים (0/1) כדי לאפשר שימוש ב-EGL ובנתיב הספציפי בהתאם למיקום שלך ב-Xorg או ב-Wayland.

לדוגמה, כדי להפעיל את Firefox בסשן X11 באמצעות כונן קשיח Intel HD עם מנהל התקן iHD, תוכל להשתמש במשהו כמו: MOZ_WAYLAND_DRM_DEVICE=/dev/dri/renderD128 LIBVA_DRIVER_NAME=iHD MOZ_X11_EGL=1 firefoxב-Wayland הגרסה תהיה דומה אך עם MOZ_ENABLE_WAYLAND=1 במקום MOZ_X11_EGL.

כדי שלא אצטרך לכתוב את זה כל פעם אתחולמשתמשים רבים מוסיפים LIBVA_DRIVER_NAME=iHD (או מי שזה לא יהיה) לקובץ הגלובלי /etc/environmentכך שלכל המערכת יהיה את מנהל ההתקן של VA-API כברירת מחדל. למרות זאת, שמור את MOZ_WAYLAND_DRM_DEVICE ואת MOZ_X11_EGL/MOZ_ENABLE_WAYLAND במפעיל או תסריט פיירפוקס עדיין מומלץ במחשבים ניידים היברידיים.

במחשבים שולחניים כמו KDE Plasma, ניתן לערוך את מפעיל Firefox ולהוסיף "env" ואחריו המשתנים לפקודת הביצוע, כך שלא תהיו תמיד תלויים בטרמינל. משהו כמו Exec=env MOZ_WAYLAND_DRM_DEVICE=/dev/dri/renderD128 LIBVA_DRIVER_NAME=iHD MOZ_X11_EGL=1 firefox %u זה בדרך כלל עובד טוב.

הפעלת האצת חומרה בפיירפוקס (VA-API + WebRender)

מוזילה הציגה תמיכה רשמית ב-VA-API בפיירפוקס עבור לינוקס, החל מ-Wayland ומאוחר יותר הרחיבה אותה ל-X11, אך במשך זמן רב היא הייתה מושבתת כברירת מחדל או יושמה באופן חלקי בלבד. זו הסיבה שמדריכים רבים ממליצים לכוונן מספר העדפות פנימיות כדי להפיק את המרב מכך.

הדבר הראשון שיש לעשות הוא להיכנס לדף ההגדרות המתקדמות המפורסם: הקלד about:config בשורת הכתובת, קבל את האזהרה והשתמש בסרגל החיפוש בחלק העליון. משם, ישנן מספר קבוצות התאמה רלוונטיות.

כדי להפעיל את המחבר המודרני מבוסס GPU, עליך להפעיל את מנוע WebRender או לאלץ את השימוש ב-OpenGL: busca gfx.webrender.all ולשים את זה ל נָכוֹןואם אתם מעדיפים, אתם יכולים גם לאלץ layers.acceleration.force-enabled a נָכוֹן כדי להבטיח שפיירפוקס ינסה להשתמש במעבד הגרפי.

שנית, עליך לוודא ש-Firefox משתמש ב-FFmpeg עם VA-API במקום במפענחים הפנימיים שלו, במידת הצורך. לשם כך, אתר את המקשים הבאים והתאם את הערכים שלהם:

  • media.ffmpeg.vaapi.enabledנָכוֹן (לאפשר שימוש ב-VA-API דרך FFmpeg).
  • media.ffvpx.מופעלשקר (השבת את מפענח ה-FFVPX הפנימי כדי לאלץ את השימוש ב-FFmpeg).
  • media.av1.מופעלשקר אם הכרטיס הגרפי שלך אינו תומך ב-AV1 על ידי חומרה, האתר יציע באופן עדיף קודקים אחרים, "ידידותיים" יותר.
  • media.rdd-vpx.enabled במעבדים גרפיים מודרניים עם תמיכה בחומרה ב-VP9, ניתן לגשת אל נָכוֹןבגרפיקה ישנה יותר עדיף להשאיר אותה כפי שהיא שקר.
  פתרונות שונים ללינוקס: מדריך מלא ומעשי

במכונות עם מספר מעבדים גרפיים (GPU) ומנהלי התקנים בקוד פתוח (לדוגמה, אינטל + AMD) ניתן גם לשחק עם המשתנים MOZ_WAYLAND_DRM_DEVICE ו-LIBVA_DRIVER_NAME כדי להחליט אם הווידאו מפוענח על ה-iGPU או ה-dGPU. לדוגמה, הצבעה על /dev/dri/renderD129 עם LIBVA_DRIVER_NAME=r600 או radeonsi כדי להשתמש ב-Radeon כמאיץ וידאו.

במערכות שבהן, אפילו לאחר התאמת פרמטרים אלה, VP9 ו-AV1 נותרים עתירי משאבים מדי, פתרון מעשי הוא לאלץ את השימוש ב-H.264 עם הרחבות כגון h264ify o h264ify משופר. הרחבות אלו חוסמות VP8/VP9/AV1 באתרים כמו יוטיוב ומבקשים באופן ספציפי שידורי AVC1 (H.264), שכמעט כל המעבדים הגרפיים עם VA-API מפענחים בקלות.

לאחר ביצוע השינויים, סגור את Firefox לחלוטין, הפעל אותו עם משתני הסביבה המתאימים, ונסה להפעיל סרטון YouTube ברזולוציה של 1080p60 תוך כדי ניטור עומס המעבד והכרטיס הגרפי. תשימו לב במיוחד לשיפור במחשבים בני יותר מעשור, שבהם המעבד כבר מתקשה לעבד וידאו ברזולוציה גבוהה באמצעות תוכנה.

ודא שפיירפוקס משתמש ב-GPU כדי לפענח וידאו

לא מספיק שהדפדפן "ייראה" כאילו הוא פועל בצורה חלקה יותר: יש צורך לוודא באופן אובייקטיבי שנעשה שימוש ב-VA-API ושהפריימים מפוענחים על גבי ה-GPU. ישנן מספר דרכים לעשות זאת בפיירפוקס תחת לינוקס.

הראשון הוא פשוט להסתכל על הפלט של הטרמינל שממנו הפעלת את Firefox עם משתני הסביבה שהוגדרו. אם הכל ילך כשורה, אתה אמור לראות הודעות מ libva info המצביע על כך va_openDriver() returns 0 והפניות לדרייבר שהוטען (למשל, i965 או iHD) ללא שגיאות נוספות.

אם אתם משתמשים במעבדי גרפי של אינטל, תוכלו להשתמש ב intel_gpu_top (חלק מ intel-gpu-tools) כדי לצפות במקטעי פעילות ספציפיים, כגון "וידאו", המייצגים את אחוז השימוש במנוע הפענוח. בלי VA-API תראו את העמודה הזו באפס גם אם הסרטון קטוע; כאשר VA-API פעיל, הוא אמור להראות אחוז מורגש בזמן שהסרטון מתנגן.

בכרטיסי מסך של Radeon, הכלי המקביל הוא radeontop, אשר מציג סרגלי שימוש ב-GPU וב-VRAM. למרות שלא תמיד יש בו מדור נפרד ומפורש לפענוח וידאו, קל לראות כיצד הפעילות עולה כאשר VA-API פועל והמנהל התקן (למשל, r600 או radeonsi) מופנה כהלכה להתקן Radeon DRI.

בסביבות עם מספר מעבדים גרפיים, ייתכן שתצטרכו להוסיף גם אפשרויות כגון --bus ב-Radeontop כדי לנטר רק את הכרטיס המתאים. בכל מקרה, הדפוס זהה: אם עומס המעבד יורד ולכרטיס המסך יש יותר עבודה לעשות כשאנחנו מפעילים וידאו, אנחנו בדרך הנכונה.

לבסוף, חזרה על אותה בדיקה עם הרחבות h264ify מופעלות ומבוטלות מאפשרת לך לבדוק את ההשפעה האמיתית של שינוי VP9/AV1 ל-H.264 על צריכת המשאבים. מדידות שבוצעו במערכות עם i5-2450M ו-i7-7700HQ מראות הפחתות בניצול המעבד, שבמעבדים צנועים יכולות להגיע עד לחצי כאשר VA-API נכנס לתמונה.

האצת חומרה ב-Chromium, Chrome ונגזרות (VA-API + דגלים)

Chromium 88 סימנה נקודת מפנה בכך שהציגה תמיכה "רצינית" ב-VA-API בלינוקס, אם כי עם ניואנסים: תלות חזקה ב-Xorg, צורך להשתמש בדגלים מסוימים ותמיכה טובה יותר באינטל וב-NVIDIA מאשר ב-Radeon. למרות זאת, התמיכה הזו הועברה לכל המשפחה: Google Chrome, אדג', ברייב, ויוואלדי, אופרה וכו'.

הצעד הראשון בכל דפדפן מבוסס כרום הוא לבדוק את דף הדגלים הפנימי, אליו ניתן לגשת באמצעות chrome://flags בכרום ובכרומיום, brave://flags ב"אמיץ", edge://flags באדג', vivaldi://flags בוויוואלדי או opera://flags באופרה. לאחר הכניסה, חפש והפעל לפחות:

  • להשתלט על רשימת המרת התוכנה ‏מופעל (כופה התעלמות מהרשימה השחורה של ה-GPU וכופה תכונות מואצות).
  • פענוח וידאו מואץ בחומרה ‏→ מופעל (מאפשר פענוח וידאו בחומרה).

לאחר הפעלת אפשרויות אלו, הדפדפן יבקש ממך להפעיל מחדש כדי להחיל את השינויים; עשו זאת ולאחר מכן בקרו באתר chrome://gpu (או הגרסה של הדפדפן שלך) כדי לבדוק את הסטטוס של "סטטוס תכונות גרפיקה" ו"מידע על האצת וידאו". באופן אידיאלי, כל דבר רלוונטי צריך להופיע כ"מואצת חומרה".

הנקודה המרכזית הבאה ב-Chromium ונגזרותיו היא כיצד האפליקציה מופעלת משורת ה- פקוד. בהפעלות Xorg בדרך כלל מומלץ להוסיף את הדגל --use-gl=desktop, בעוד שבסשנים של Wayland שבהם הדפדפן פועל על XWayland, הוא משמש לעתים קרובות --use-gl=egl כדי להימנע מבעיות.

בנוסף, ישנה קבוצה של דגלים הקשורים ל-VA-API ב-Chromium שיש להוסיף, או לפקודת הביצוע או לקובץ תצורה של דגלים:

  • --enable-accelerated-video-decode
  • --enable-accelerated-video-encode
  • --enable-features=VaapiVideoDecoder
  • --disable-features=UseChromeOSDirectVideoDecoder

לדוגמה, ב-Xorg עם Google אתה יכול להפעיל משהו כזה בכרום היציב: google-chrome-stable --use-gl=desktop --enable-accelerated-video-decode --enable-accelerated-video-encode --enable-features=VaapiVideoDecoder --disable-features=UseChromeOSDirectVideoDecoderאותו דפוס חל על אמיץ (brave-browser), ויוואלדי (vivaldi), אופרה (opera) או קצה (microsoft-edge).

בהפצות כמו CachyOS, Arch ומערכות דומות, דפדפנים רבים מאפשרים ריכוז של דגלים אלה בקבצים כמו ~/.config/chromium-flags.conf, ~/.config/brave-flags.conf או דומה. אלטרנטיבה נפוצה נוספת היא עריכת הקובץ. .desktop מהדפדפן, העתק אותו מ /usr/share/applications a ~/.local/share/applications ולהוסיף את הדגלים לשורה Exec=.

שוב, אם אתם רוצים שהכל יהיה קבוע ולא תלוי בטרמינל, עדיף לערוך את זה. .desktop או את המשגר ​​בתפריט סביבת שולחן העבודה כך שהוא תמיד יוסיף את הדגלים הנכונים. בדרך זו, בעת פתיחת הדפדפן מהתפריט או מה-Dock, אפשרויות ה-VA-API תמיד נשמרת.

בדיקת פענוח חומרה בדפדפני כרום

במשפחת Chromium ישנן שתי דרכים עיקריות לוודא שפענוח וידאו מתרחש על ידי חומרה. אחד יותר כללי והשני מנצל כלי פיתוח.

הדרך המהירה היא לבקר chrome://gpu (או המקבילה בדפדפן שלך) ובדקו שב"מידע על האצת וידאו" ישנם ערכים עם סטטוס של "האצת חומרה". זה נותן תמונה כוללת של היכולות, אבל זה לא מבטיח שסרטון מסוים אכן ישתמש ב-GPU.

  כיצד למנוע מגוגל כרום לחסום הורדות: מדריך מלא ומעודכן

כדי לבדוק דוגמה מהעולם האמיתי, פתחו סרטון (לדוגמה, ביוטיוב), לאחר מכן היכנסו לכלי המפתחים באמצעות F12 או Ctrl+Shift+I וחפשו את הכרטיסייה מדיה (אם הוא לא מופיע, תמצא אותו בתפריט הכרטיסיות הנוספות). בתוך מדיה, בחר את הנגן עבור הסרטון שאתה מפעיל.

במידע המפורט של הנגן, תראו שדה המציין את סוג מפענח הווידאו בו נעשה שימוש והאם האפשרות "מפענח חומרה" מוגדרת כ-true. באופן אידיאלי, עליך לראות מפענח המשויך ל-VA-API/GL ועם מפענח החומרה מופעל; אם במקום זאת אתה רואה שמות כמו VpxVideoDecoder, FFmpegVideoDecoder o Dav1dVideoDecoder בלי התייחסות לחומרה, סביר להניח שמדובר בתוכנה.

בגרסאות ישנות יותר, הומלץ להשתמש chrome://media-internals עבור אותה בדיקה, ובדיקת שדות כגון kVideoDecoderName, כאשר ערך מסוג MojoVideoDecoder זה הצביע על שימוש בהאצת חומרה לעומת מפענחי תוכנה בלבד. בעזרת כלים מודרניים, לשונית המדיה בכלי הפיתוח החליפה במידה רבה את הדף הזה.

לבסוף, ניתן לשלב אימות זה עם כלי ניטור של GPU דומים לאלה הנראים ב-Firefox (intel_gpu_top, radeontop, amdgpu_top, nvtop וכו'), ולוודא שכאשר הדפדפן מנגן וידאו, מנועי הווידאו של ה-GPU יציגו פעילות אמיתית.

קידוד וקודקים: H.264, VP9, ​​​​AV1 ותוספים כגון h264ify

פרט אחד שלעתים קרובות נעלם מעיניו הוא שגם אם ה-GPU תומך ב-VA-API, אם קודק הווידאו אינו מיושם בחומרה, בסופו של דבר תצטרכו להשתמש בפענוח תוכנה. כאן נכנסות לתמונה הרחבות ותצורות נוספות.

H.264/AVC1 הוא הקודק "wildcard" שכמעט כל הכרטיסים הגרפיים בני כמה שנים מטפלים בו היטב דרך VA-API, בעוד ש-VP8, VP9 ו-AV1 מואצים חומרה רק בדורות מודרניים יחסית. זה ניכר בבירור ביציאה של vainfoכאשר כרטיסי מסך ישנים יותר מראים תמיכה רק ב-H.264 ומעט מעבר לכך.

פלטפורמות כמו יוטיוב, לעומת זאת, נותנות עדיפות ל-VP9 או אפילו AV1 עבור דפדפנים מודרניים, ומשאירות את H.264 כאפשרות משנית או רק עבור רזולוציות ספציפיות. לכן, גם אם הגדרתם VA-API, אם YouTube תחליט להגיש לכם VP9 והכרטיס הגרפי שלכם לא תומך בו, המעבד יספוג את המכה.

שם נמצאות תוספים כמו h264ify והמזלגות שלו (Enhanced h264ify וכו') שימושיות ביותר: הן חוסמים VP8/VP9/AV1 ומכריחות את האתר להשתמש בפרופיל H.264 הזמין כאשר הוא קיים. עם זאת, אם אין גרסת H.264 של סרטון ספציפי, הם לא יוכלו ליצור אחת.

ראוי לציין שיוטיוב, כאשר נאלצת להשתמש ב-H.264, מגבילה לעתים קרובות את הרזולוציה המקסימלית ל-1080p ב-60 פריימים לשנייה, בעוד ש-VP9/AV1 היא יכולה להציע 1440p, 4K וקצבי פריימים גבוהים. לכן, הפעלת h264ify לפעמים פירושה ויתור על הרזולוציה המקסימלית האפשרית בתמורה להפעלה חלקה יותר ופחות אגרסיבית על המעבד.

במקרה של קודקים מהדור הבא כמו AV1, רק לכרטיסי מסך מודרניים מאוד יש תמיכה אמיתית בפענוח חומרה, כך שברוב המחשבים האישיים הנוכחיים עדיין עדיף להשבית אותה בדפדפן אם אתם שמים לב שהמאווררים שלכם הופכים לטורבינות בעת צפייה בסרטון כלשהו.

השפעה אמיתית על הביצועים: מתי משתלם להילחם עם VA-API

בדיקות אמפיריות שבוצעו על מחשבים ניידים עם מעבדים בעלי 2 ליבות ו-4 נימים (למשל, i5-2450M מלפני שנים) מראות כי הפעלת VA-API והאצלת פענוח H.264 לכרטיס המס יכולות להפחית כמעט בחצי את ניצול המעבד הממוצע במהלך הפעלת וידאו 1080p60 בפיירפוקס. זה מתורגם לציוד קריר ושקט יותר, ולחוויה יציבה הרבה יותר.

במכונות חדשות יותר עם מעבדי 4C/8T ומעלה (כגון i7-7700HQ), ההבדל באחוז המעבד פחות דרמטי, לפעמים נמוך יותר בסדר גודל של 3-6%. למרות זאת, העומס נוטה להתפזר טוב יותר ושיאי שימוש קיצוניים שיכולים לגרום לזעזועים קטנים מופחתים.

מעניין לציין, שאם משווים ניגון בדפדפן עם VA-API לעומת נגן כמו VLC שתצורתו נקבעה גם היא עם VA-API, תראו שצריכת המעבד של הדפדפן בדרך כלל גבוהה משמעותית. זה מצביע על כך שעדיין יש מקום לשיפור באופן שבו דפדפנים משלבים VA-API ומנהלים העברת נתונים בין המעבד לכרטיס המסך בלינוקס.

בכל מקרה, עבור מחשבים ניידים צנועים או ישנים יותר, הקדשת זמן לכוונון עדין של האצת החומרה יכולה לעשות את ההבדל בין הצורך לוותר על סרטוני 1080p לבין היכולת לצרוך תוכן ברזולוציה גבוהה מבלי שהמערכת תסבול. במערכות חזקות השיפור קיים, אך הוא עדין יותר ובתרחישים רבים ייתכן שלא כדאי לסבך את הדברים יותר מדי אם אתם כבר עושים זאת "מספיק טוב".

מה שכן נראה ברור הוא שהשילוב של לינוקס + דפדפנים מודרניים + VA-API עדיין קצת מאחור בהשוואה לחוויה שהושגה ב-Windows, שם הדרכים להאציל וידאו ל-GPU מלוטשות וסטנדרטיות יותר. למרות זאת, בעזרת הצעדים הנכונים, ניתן להשיג התנהגות מכובדת מאוד גם על שולחן העבודה של הפינגווין.

אם הגעתם עד לכאן, אתם כבר יודעים שהפעלת האצת וידאו בחומרה בלינוקס אינה רק סימון תיבה בדפדפן שלכם, אלא יישור נכון של מנהלי התקנים של VA-API, משתני סביבה, דגלים פנימיים ובחירות קודקים כך ש-Firefox, Chrome, Brave ואחרים יעבדו בצורה חלקה עם ה-GPU שלכם במקום להעמיס על המעבד שלכם שלא לצורך.

כתבות קשורות:
מהי האצת חומרה של Chrome (CHA)? זה קל להבנה