Media3 1.10 כוללת תכונות חדשות, תיקוני באגים ושיפורים בתכונות, כולל ווידג'טים להפעלה שמבוססים על Material3, תמיכה מורחבת בפורמטים ב-ExoPlayer ושיפור בהתאמת המהירות כשמייצאים מדיה באמצעות Transformer. בהמשך המאמר מפורט מידע נוסף, ובנתוני הגרסה המלאים מופיעה רשימה מקיפה של השינויים.
ממשק המשתמש של ההפעלה ופיתוח נייטיב
אנחנו ממשיכים להרחיב את המודול media3-ui-compose-material3 כדי לעזור לכם ליצור ממשקי משתמש של Compose להפעלה.
הוספנו Player Composable חדש שמשלב ContentFrame עם אמצעי בקרה להפעלה שניתנים להתאמה אישית, וכך מאפשר לכם ליצור ווידג'ט של נגן מוכן לשימוש עם ממשק משתמש מודרני.
בנוסף, בגרסה הזו נוסף רכיב ProgressSlider Composable להצגת ההתקדמות של הנגן ולביצוע פעולות חיפוש באמצעות מחוות גרירה והקשה. לניהול מהירות ההפעלה, יש רכיב חדש PlaybackSpeedControl במודול הבסיסי media3-ui-compose, לצד רכיב PlaybackSpeedToggleButton עם סגנון במודול Material 3.
אנחנו נמשיך לעבוד על תוספות חדשות כמו כלי בחירת רצועות, תמיכה בכתוביות ועוד אפשרויות התאמה אישית בגרסאות הקרובות של Media3. נשמח לקבל משוב, ולכן כדאי לשתף את דעתכם בכלי למעקב אחר בעיות של הפרויקט.
שיפורים בתכונת ההפעלה
Media3 1.10 כולל מגוון תוספות ושיפורים במודולים של ההפעלה:
- תמיכה בפורמטים: ExoPlayer תומך עכשיו בחילוץ של פרופיל 10 של Dolby Vision ושל טראקים של Versatile Video Coding (VVC) במאגרי MP4, והוספנו תמיכה במנהל ממשק המשתמש של MPEG-H ב-decoder_mpeghextension. התוסף IAMF תומך עכשיו בצורה חלקה בפלט בינאורלי, דרך המפענח באמצעות iamf_tools או דרך ה-Spatializer של מערכת ההפעלה Android, עם לוגיקה חדשה שתואמת לפריסת הפלט של הרמקולים.
- הפעלת מודעות: שיפורים באמינות, תמיכה משופרת במודעות מעבר בפורמט HLS עבור X-PLAYOUT-LIMIT ו-X-SNAP, ובאמצעות התלות האחרונה ב-IMA SDK אפשר לקבוע אם כתובות URL של קליקים על מודעות ייפתחו בכרטיסיות בהתאמה אישית באמצעות setEnableCustomTabs.
HLS: עכשיו ExoPlayer מאפשר מעבר למיקום חלופי במקרה של שגיאות טעינה, אם יש זרמים מיותרים ממיקומים שונים.
- סשן: MediaSessionService מורחב עכשיו ל-LifecycleService, ומאפשר לאפליקציות לגשת להיקף מחזור החיים של השירות.
אחד מתחומי ההתמקדות העיקריים שלנו השנה הוא יעילות ההפעלה והביצועים. Media3 1.10 כולל תמיכה ניסיונית בתזמון של לולאת ההפעלה המרכזית בצורה יעילה יותר. אפשר לנסות את זה על ידי הפעלת experimentalSetDynamicSchedulingEnabled() דרך ExoPlayer.Builder. אנחנו מתכננים לבצע שיפורים נוספים בגרסאות עתידיות, אז כדאי להמשיך להתעדכן!
עריכת מדיה ו-Transformer
למפתחים שיוצרים חוויות עריכה של מדיה, שיפרנו את האמינות של ההתאמות של מהירות ההפעלה. הפונקציה EditedMediaItem.Builder.setFrameRate() יכולה עכשיו להגדיר קצב פריימים מקסימלי של פלט לווידאו. השיטה הזו שימושית במיוחד לשליטה בגודל הפלט ולשמירה על הביצועים כשמגדילים את מהירות המדיה באמצעות setSpeed().
מודולים חדשים לחילוץ פריימים ולהחלת אפקטים של Lottie
בגרסה הזו פיצלנו חלק מהפונקציונליות למודולים חדשים כדי לצמצם את היקף התלות בחלק מהרכיבים:
- הסרנו את FrameExtractor מהמודול הראשי media3-inspector, לכן צריך להעביר את הקוד לשימוש במודול החדש media3-inspector-framemodule ולעדכן את ההצהרות על ייבוא ל-androidx.media3.inspector.frame.FrameExtractor.
- העברנו גם את האפקט LottieOverlay למודול נפרד media3-effect-lottie. תזכורת: האפשרות הזו מאפשרת לכם להחיל בקלות אנימציות Lottie מבוססות-ווקטור ישירות על פריימים של סרטונים.
אם נתקלתם בבאגים, או אם יש לכם שאלות או בקשות לתכונות, אתם מוזמנים לפנות אלינו דרך כלי המעקב אחר בעיות. נשמח לשמוע ממך.
להמשך הקריאה
-
חדשות על מוצרים
באירוע Google I/O 2026, הצגנו את השינוי ב-Android ממערכת הפעלה למערכת חכמה. הדגמנו גם איך אפשר ליצור חוויות חכמות באופן מקורי באמצעות המערכת, ולשלב את היכולות של ה-AI של Google באפליקציות שלכם.
Jingyu Shi • משך הקריאה: 2 דקות
-
חדשות על מוצרים
אנחנו שמחים להודיע על השקת תמיכה רשמית ב-Unreal Engine וב-Godot ל-Android XR. אנחנו משיקים גם כלים חדשים שנועדו לשפר את הפרודוקטיביות ולאפשר יכולות XR חדשות: Android XR Engine Hub ו-Android XR Interaction Framework.
Luke Hopkins, Ryan Bartley • משך הקריאה: 4 דקות
-
חדשות על מוצרים
עם השקת Android 17, אנחנו עוברים לסטנדרט פיתוח ראשון אדפטיבי. המשתמשים שלכם כבר לא מסתמכים על גורם צורה יחיד. במהלך היום הם עוברים בין טלפונים, מכשירים מתקפלים, טאבלטים, מחשבים ניידים, מסכים ברכב וסביבות XR סוחפות.
Fahd Imtiaz • משך הקריאה: 4 דקות
כדאי תמיד להיות בעניינים
רוצים לקבל טיפים עדכניים לפיתוח Android ישירות לאימייל כל שבוע?