עיבוד גרפיקה במדיה של SDV

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

במאמר ניהול תצוגות מופיעה סקירה כללית של תהליך ההגדרה של הקשר הצפוי של עיבוד OpenGL.

Vulkan

ההטמעה לדוגמה של SDV Media מספקת תמיכה ניסיונית ב-Vulkan וירטואלי. כדי להפעיל את Vulkan, מפעילים את sdv_media_cf target עם ארגומנט נוסף בשורת הפקודה: --gpu_mode=gfxstream_guest_angle

cvd start --gpu_mode=gfxstream_guest_angle

כך, SDV Media מספק תמיכה ב-Vulkan וירטואלי, ומתרגם קריאות של EGL ו-OpenGL ES ל-Vulkan באמצעות ספריית ANGLE.

מגבלות ידועות

אופן הפעולה של יעד ההפניה של SDV משתנה בהתאם ל-GPU המארח.

  • אין תמיכה בכרטיסים גרפיים של NVIDIA (כולל מכונות Google Cloud).

  • כדי למנוע עיבוד שגוי, כשמשתמשים בכרטיסים גרפיים של Intel, צריך להקצות את מאגרי ה-GPU של האפליקציות באמצעות הדגל GBM_BO_USE_LINEAR. כשמשתמשים ב-sdv_multi_display_sample_rust, צריך להגדיר את משתנה הסביבה GBM_USE_LINEAR כדי לאלץ את הדוגמה להשתמש בדגל הזה:

    GBM_USE_LINEAR=1 sdv_multi_display_sample_rust
    
  • אין תמיכה בכרטיסים גרפיים של AMD בגלל באג פתוח בליבת המערכת.