SMIL

[שמאל|ממוזער|250px|שימוש בSmil בסרט של קהילת [בלנדר (תוכנה)|בלנדר.]]
**Synchronized Multimedia Integration Language**, בקיצור **SMIL**, הוא פרוטוקול מבוסס XML המאפשר שילוב תכנים ויזואליים ושמיעתיים בצורה סינכרונית ואינטראקטיבית בדפי אינטרנט לצורך יצירת חוויית משתמש עשירה. ניתן להשתמש בפרוטוקול כדי לבצע התאמה מקומית (לוקליזציה) למשתמש ללא צורך לכתוב את אותו הדף בגרסאות שונות.
## דוגמאות לשימוש בפרוטוקול
* הצגת סרטון וידאו אשר מלווה בהסברים שמקורם בקובץ שמע (אודיו) בשפה המקומית. בחירת השפה יכולה להתבצע על ידי המשתמש או באופן אוטומטי. כך גם לגבי כתוביות.
* מצגות אינטרנט אשר משלבות תכנים משרתים שונים ובתזמונים מוגדרים.
* בקרת השליטה על המצגת היא בידי המשתמש ובאפשרותו לעצור, להריץ קדימה\אחורה.
* קובצי SMIL מועברים ברשת הסלולר מאז השימוש במסרוני מולטימדיה (MMS) בין הטלפונים הניידים.
* קובצי SMIL משודרים במהירות גבוהה בגלל נפחם הקטן יחסית, קבצים אלו שומרים את המידע אודות קובצי המולטימדיה.
* מצגות SMIL מאפשרות לאוכלוסייה מוגבלת כגון חרשים לצפות ולהבין מצגות לימוד, מצגות SMIL משלבות תוכני לימוד ויזואליים כמו גם תכנים טקסטואליים כגון הסברי טקסט ושילובם יחדיו. דבר אשר תורם להבנה טובה יותר של החומר הנלמד.

## התפתחות
SMIL פותחה על ידי קבוצת עניין בארגון W3C. הקבוצה כללה נציגים מענפים טכנולוגיים ועסקיים מגוונים. בשנת 1998 הקבוצה פרסמה את הגרסה הראשונה של הפרוטוקול: SMIL 1.0 אשר הגדירה את מבנה המצגת ותזמון האלמנטים השונים.

בשנת 2001 הוכנסה לשימוש גרסה 2 של SMIL. השינויים כללו שיפורים סינטקטיים המאפשרים שילוב של SMIL בתוך מקורות מידע אחרים מבוססי XML, יצירת והגדרת מבנה מודולרי למאפייני השפה השונים כגון: סידור, תזמון ועוד. שינוי נוסף הוא תמיכה בתוכן סטטי ודינמי (אנימציה) בקובצי SVG.

בשנת 2008 שוחררה גרסה 3 של SMIL. הגרסה החדשה עושה שימוש ב"משתנים חכמים" המאפשרים לעורכי המצגות ליצור בקרות זרימה מורחבות יותר ממודלי התזמון והבקרה של SMIL 2.

## סקירה טכנית
SMIL מגדירה כיצד מספר אלמנטים שונים כגון קובצי אודיו, וידאו, טקסט ותמונה יוצגו יחדיו בדף האינטרנט בתזמונים ובקואורדינטות שנקבעו על ידי המעצב. 
### אלמנטים ב SMIL
# הגדרה ברורה של מבנה דף האינטרנט והאלמנטים הרלוונטיים 
# אפיון חלוקת אופן הורדת הקבצים מהשרתים השונים – נפח קובצי שמע ווידאו גדול בכמה סדרי גודל מקבצי תמונה וטקסט ממוצעים, באפשרות השפה להגדיר בצורה דינמית אלו קבצים ישמשו משרתים אחסון שונים, כך שקבצים קטנים יחסית יורדו למצגת משרתים בעלי קצב העברת נתונים קטן וקבצים גדולים יורדו משרתים בעלי קצב העברת נתונים גבוה, תכונה זו תורמת לחוויות צפיית משתמש קצה חלקה וללא קיטועים במצגת האינטרנט.
# הגדרת ניתוב דינמית (Catedng for Differing Connecffon Speeds) – נגן SMIL מאפיין בצורה דינמית את מערכת משתמש הקצה כגון גודל מסך, כרטיס המסך, שפה וקצב הורדה כך שבהתאם לביצועי מערכת משתמש הקצה נקבעים איכות וגודל המצגת. 
### מודולים קיימים SMIL2
# תזמון: מודול אשר מאפשר שליטה על סדר הזמנים בו יופיעו תוכני המולטימדיה השונים במצגת.
# מניפולציית תזמון: מודול המאפיין אובייקט מדיה במשך הזמן בו יופיע.
# אנימציה: מודול המאפשר שליטה דינמית בקובצי מדיה ובתכונת מניפולציית התזמון.
# בקרת שליטה: מאפשר שליטה לגבי התוכן במצגת בכל הקשור להרצה קדימה או אחורה ועצירת המצגת.
# סידור: מאפשר הגדרה ברורה ונוחה של מיקום הצגת סוגי המדיה במצגת.
# קישור: מתאר ומגדיר קישורים חיוניים לקובצי המדיה השונים.
# אינפורמציית מידע: מאפשר לקבל מידע אודות קובץ ה-SMIL כגון כתובות מיקומי המידע.
# מבנה: מודול המתאר מבנה בסיסי של קוד SMIL כראש (head) וגוף (body).
# מעברים: מודול המאפשר להגדיר מעברים בין מצגות באמצעות מניפולציות ויזואליות.
### דוגמת קוד ב SMIL

```html
<smil xmlns="http://www.w3.org/2001/SMIL20/Language">
<head>
<layout>
<root-layout width="320" height="240"/>
<region id="text1_region" left="0" top="0" width="160" height="120"/>
<region id="text2_region" left="160" top="120" width="160" height="120"/>
<region id="text3_region" left="80" top="60" width="160" height="120"/>
<region id="image_region" left="0" top="0" width="320" height="240"/>
</layout>
</head>
<body>
<seq>
<text src="data:text/plain,First%20Slide" region="text1_region" dur="2s"/>
<text src="data:text/plain,Second%20Slide" region="text2_region" dur="3s"/>
<text src="data:text/plain,Third%20Slide" region="text3_region" dur="3s"/>
<img src="sample_jpg.jpg" region="image_region" dur="3s"/>
</seq>
</body>
</smil>
```


## נגני SMIL
SMIL תומך במספר נגנים. להלן רשימה חלקית.
* adobe media player
* Windows Media Player
* quicktime player
* realplayer
* ambulant

## לקריאה נוספת

* Darren, J., & Jane, H. (n.d.). A Streamlined System for Building Online Presentation Archives using SMIL.
* Hesse, R. (2000). SMIL and Videostreaming for Teaching Business Telecommunications and e-Commerce. IN THE CLASSROOM, 6-7.
* Lloyd, R., Jacco, v. ,., Lynda, H., & Dick, C. B. (1999). Anticipating SMIL 2.0: the developing cooperative infrastructure for multimedia on the Web. Computer Networks, 1422-1423.
* Lloyd, R., Lynda, H., & Jacco, v. ,. (n.d.). Evaluating SMIL: Three User Case Studies. 172-173.
* Philipp, H. (n.d.). SMIL – An Introduction. World Wide Web Consortium (W3C)/INRIA .
* Takeshi, Y., Yoshifumi, Y., Tomoyuki, O., Minoru, E., & Susie, W. (n.d.). Mobile Streaming Media CDN Enabled by Dynamic SMIL. 651-654.

## קישורים חיצוניים

* דוגמאות למצגות SMIL.
* עמוד הבית של SMIL בארגון W3C לתקני אינטרנט
* גרסת SMIL 3.0 בארגון W3C לתקני אינטרנט

קטגוריה:XML