# Synchronized Multimedia Integration Language

Die Synchronized Multimedia Integration Language (SMIL; Aussprache wie engl. smile) ist ein auf XML basierender, von dem World Wide Web Consortium (W3C) entwickelter Standard für eine Auszeichnungssprache für zeitsynchronisierte, multimediale Inhalte. SMIL ermöglicht die Einbindung und Steuerung von Multimedia-Elementen wie Audio, Video, Text und Grafik in Webseiten; SMIL-Dateien können mit Java-Applets und -Servlets oder CGI-Skripten verknüpft werden und so beispielsweise auf eine Datenbank zugreifen. Als Dateierweiterung wird .smi oder .smil verwendet.

## Einsatzgebiete

SMIL-Anwendungen können vielfältig eingesetzt werden. Geeignet sind sie vor allem für Anwendungsfälle, in denen mit zusätzlichen Medien angereicherte Videos wiedergegeben werden sollen. Neben den hier aufgeführten Beispielen sind weitere Einsatzgebiete denkbar. Insbesondere in Verbindung mit SVG und ECMAScript eröffnen sich Anwendungsmöglichkeiten, die jenen von Adobe Flash und anderen Rich Internet Applications entsprechen.

### Rechnerunterstützter Unterricht

Als Beispiel lässt sich rechnerunterstützter Unterricht mit SMIL anreichern. In diesem Fall ist es sehr hilfreich, zeitgesteuert Texte und zusätzliche Informationen zu einem Video einzublenden. Das Video kann zum Beispiel an wichtigen Stellen automatisch pausieren, um dem Betrachter die Möglichkeit zu geben, die entsprechenden Informationen in Ruhe aufzunehmen. Der Betrachter kann dadurch die Lerngeschwindigkeit selbst bestimmen. Zudem kann durch Verknüpfungen im Video oder zusätzlichen Medien eine interaktive Hypermedia-Struktur aufgebaut werden. Das ermöglicht dem Betrachter, neben der Lerngeschwindigkeit auch die Lernrichtung selbst zu bestimmen. Bisher war das bei konventionellen linearen Videos nicht möglich. Neben den Vorteilen für den Betrachter ergeben sich auch Vorteile für den Autor. So kann dieser eine SMIL-Präsentation modular aufbauen und somit einen höheren Wiederverwendungsgrad erreichen, was eine Zeit- und Kostenersparnis ermöglicht. Zudem wird durch eine höhere Wiederverwendung weniger Speicherplatz benötigt.

### Video-Schnitt

Durch die Timing- und Überblenden-Funktionalitäten kann SMIL auch als Schnitt-Werkzeug eingesetzt werden. Der Autor kann einzelbildgenau den Beginn, das Ende sowie die aktive Dauer eines Videos oder anderen Elementes angeben. Durch kleine Workarounds kann sogar ein längeres lineares Video in kleinere Teile "zerschnitten" werden, ohne dass die Videodatei tatsächlich verändert wird. Im Gegensatz zu professioneller Videoschnittsoftware benötigen die Angaben über Schnittmarken und weitere Eigenschaften nur wenige Kilobyte. SMIL bietet eine Vielzahl von Überblendeffekten an, die selbst auch durch weitere Angaben verändert werden können. Auch das Einblenden von Text und Bild ist ohne weiteres möglich. Diese können in Größe und Position beliebig verändert oder ausgetauscht werden. Zudem kann SMIL zusätzliche Tonspuren beinhalten. Diese und alle anderen Elemente können abhängig von der Benutzersprache automatisch ausgewählt werden, ohne dass der Benutzer eingreifen muss. Auch hier können einzelne Elemente wiederverwendet werden. Zudem sind auch Bild-in-Bild oder sogar Bild-neben-Bild-Darstellungen möglich. Der größte Vorteil ist, dass die geschnittenen und bearbeiteten Videos nicht zeitaufwendig in ein Binärformat gerendert werden müssen. Jede Veränderung kann sofort betrachtet und veröffentlicht werden.

## Merkmale

Zu den wichtigsten Merkmalen von SMIL zählen:
* Spezifikation des Layouts und Synchronisation;
* Anpassung an die Übertragungsbandbreite;
* Auswahl verschiedener Sprachversionen;
* Anpassung an verschiedene Bildschirmauflösungen und Farbtiefen;
* Unterstützung von Hyperlinks;
* leicht erlernbar, ähnlich wie HTML.

## Versionen

Die aktuell zu verwendende Version ist SMIL 3.0.
SMIL 1.0 Das W3C veröffentlichte im Juni 1998 die erste offizielle Empfehlung für SMIL 1.
SMIL 2.0 Die offizielle Empfehlung für SMIL 2 wurde im August 2001 freigegeben. Deren nicht normative Vorversion Boston-Draft wurde bereits für neue Implementierungen benutzt (IE5.5).
SMIL 2 führte, neben einigen Erweiterungen, mit einer Modularisierung vor allem grundlegende strukturelle Änderungen ein. Die Modularisierung ermöglicht es, Teile der Spezifikation innerhalb von anderen (XML-)Formaten zu integrieren (Namespace-Mechanismus), oder auch eine definierte Teilmenge der Spezifikation zu implementieren.
Aus dem Vektorgrafik-Format SVG wurden mit Version 2 die Animationselemente übernommen und erweitert. Eine eigenständige Animation (sowie auch das Ein- und Ausblenden von Video-Inhalten) war vorher in SMIL nicht vorgesehen. SVG sieht ab Version 1.1 auch ausdrücklich die Integration des eigenen Formates durch SMIL vor.
SMIL 2.1 SMIL 2.1 liegt seit Dezember 2005 in der endgültigen Fassung vor. Diese Version enthält eine kleine Anzahl an Erweiterungen, die sich hauptsächlich auf den Einsatz in mobilen Endgeräten mit Multimedia Messaging Service auswirken.
SMIL 3.0 SMIL 3.0 wurde am 21. Dezember 2006 als W3C Working Draft eingereicht. Die endgültige Version wurde am 1. Dezember 2008 veröffentlicht. Version 3.0 erweitert die Funktionalität von SMIL 2.1 und ersetzt diese Version als W3C-Empfehlung.

## Produktion

SMIL ist textbasiert und eine Anwendung von XML. Die grundlegende Syntax definiert das Layout der Multimedia-Präsentation; der zeitlichen Ablauf und die Interaktion mit der Präsentation lässt sich leicht erlernen. Prinzipiell kann man SMIL-Dateien mit jedem Texteditor erstellen oder verändern.
Die Erstellung von SMIL wird von verschiedenen Anwendungen unterstützt:
* Adobe GoLive!
* Allaires HomeSite
* Oratrix GRiNS Editor
* Macromedia Dreamweaver in Verbindung mit den G2 Objects
* LIMSee 2.0 und LIMSee 3.0
* Kino, freies Videoschnittprogramm für Unix
Während SMIL1 ein für sich stehendes Dateiformat ist, kann SMIL2 auch in andere Datei-Formate wie XHTML oder SVG integriert werden. Dazu wird der Namespace-Mechanismus des XML-Formates verwendet, auf dem alle genannten Formate aufbauen.
Den ersten breiten Einsatz fand SMIL bei der HD DVD. Seit ca. 2010 wird ein Subset von SMIL 3.0 im Bereich Digital Signage eingesetzt.

## Player

Ambulant Ambulant ist ein Open-Source-Projekt vom Centrum Wiskunde & Informatica (CWI) aus den Niederlanden. Ambulant ist der einzige Player, der SMIL 2.1 vollständig unterstützt. Ambulant gibt es für Windows, macOS, Linux und Pocket PCs mit Windows CE.
RealPlayer Der RealPlayer spielt SMIL-Dateien ab Version 8. Zudem versteht der Player RealText in SMIL-Dateien. Das ermöglicht weitere Formatierungen und zeitabhängige Abläufe in SMIL-Präsentationen. Auch erlaubt der RealPlayer einige spezifische Erweiterungen, die nur von ihm verstanden werden. Ein Beispiel dafür ist "rp:BackgroundOpacity" welches transparente Grafiken oder Videos ermöglicht.
HelixDNA Client Das Streaming-Media-Unternehmen RealNetworks bietet den Player Helix DNA Client für Linux, als Open-Source-Software unter der RealNetworks Public Source License an.
QuickTime Apples QuickTime Player unterstützt nur einen Teil des gesamten SMIL 1.0-Sprachumfangs.
Übersicht :
| Bezeichnung | Video | Audio | Bilder | Betriebssystem |
| Ambulant | DivX, MJPEG | MP3; Ogg Vorbis (streamed) | JPEG, PNG, GIF | macOS, Windows, Linux |
| QuickTime | QuickTime, MPEG 4 (streamed) | MP3, AIFF; RealAudio (streamed) | JPEG, PNG, GIF, Flash | macOS, Windows |
| RealPlayer | MPEG-2, MPEG-4; RealVideo (streamed), MJPEG | MP3; RealAudio (streamed) | JPEG, PNG, GIF, Flash | macOS, Windows, Linux, Palm OS, Symbian OS, Windows Mobile |
| Helix Player | RealVideo (streamed), unbekannt | RealAudio (streamed), unbekannt | unbekannt | Linux |
| Gnome Videos | unbekannt | unbekannt | unbekannt | Linux |
| Windows Media Player | unbekannt | unbekannt | unbekannt | Windows |
| Media Player Classic | unbekannt | unbekannt | unbekannt | Windows |
| X-SMILES | unbekannt | unbekannt | JPEG, SVG | Windows |
| Grins Player | unbekannt | unbekannt | unbekannt | Windows |
| Schmunzel | unbekannt | unbekannt | unbekannt | Windows |