Media

für die Liste aller Seiten

Hier finden Sie, wie Sie Audio- und Videoplayer in Ihre Wikiseiten einbetten können, entweder für hochgeladene oder für externe Medien-Dateien.

Die Funktionen basieren auf dem Rezept Cookbook:Ape, sind aber um einiges einfacher zu benutzen, und es gibt Unterschiede im Wiki-Markup.

Aktivieren der Media-Funktionen

Medien einzubetten ist seit PmWiki 2.5.10 möglich und kann aktiviert werden durch das Hinzufügen dieser Zeile in die config.php-Datei:

$PmMedia['EnableEmbed'] = 1;

Basisverwendung

Das Einbetten von Media-Playern ist vergleichbar mit dem Einbetten von Bildern in Wiki-Seiten mit dem Attach:-Link oder des nackten Remote-URLs, ohne eckige Klammern.

Um eine Mediendatei in eine Seite einzubetten, laden Sie sie hoch, indem Sie das "Attach:"-Markup verwenden oder die Adresse (URL) der Datei in den Markup-Text einfügen.

Eingebettete lokal gespeicherten Datei:
Attach:video.webm

Eingebettete externen Datei:
https://example.com/video.mp4

Eingebettete Datei auf dem gleichen Server außerhalb der Verzeichnisstruktur für hochgeladene Dateien:
Path:/some/directory/video.mp4

Einfache Links (nicht eingebettet, beachten Sie die eckigen Klammern):
[[Attach:video.webm]], [[Attach:video.webm|link text]]
[[https://example.com/video.mp4]]
[[Path:/some/place/video.mp4]]

Die folgenden Dateiendungen werden als Mediendateien angesehen und können eingebettet werden:

  • Audio files: mp3, opus, weba, m4a, ogg, flac, wav
  • Video files: mp4, webm, m4v, ogv, mov

Formate lokal angehängte Dateien, verwandte Dateien, Poster, Untertitel

Die Medienunterstützung unterscheidet sich zwischen den verschiedenen Browsern.

Wenn der Link ein externer URL, Path: oder InterMap-Präfixe ist, wird PmWiki einfach diese Datei einbinden.

Wenn Hochladen von Dateien aktiviert ist und es ist ein Attach:-Link zu eine lokal hochgeladenen Datei, wird PmWiki das Verzeichnis für die Dateien nach alternativen Dateien in anderen Formaten untersuchen und dem Browser alle anbieten.

Wenn Sie beispielsweise auf Attach:My-Trip-2026.webm verlinken, wird PmWiki diese Datei einbetten. PmWiki wird auch nach Dateien mit dem gleichen Basisnamen und einer anderen Mediendateiendung suchen: My-Trip-2026.mp4, My-Trip-2026.m4v, My-Trip-2026.ogv, My-Trip-2026.mov (in dieser Reihenfolge) und wird sie dem Player als alternative Formate anbieten.

Der Browser wird das erste Format, das er unterstützt, abspielen; wenn er keines der verfügbaren Formate unterstützt, sollte er direkte Links zu den Dateien anzeigen, sodass der Besucher sie herunterladen kann.

Wenn Sie nur eine Datei hochladen können, bevorzugen Sie für maximale Kompatibilität MP4 (H.264/AAC) für Video und MP3 für Audio.

Für beste Qualität bei kleinerer Dateigröße bevorzugen Sie WebM (VP9) für Video und Opus/Ogg/WebA für Audio. Diese sollten in aktuellen Browsern funktionieren.

Für beste Benutzererfahrung laden Sie, wenn es möglich ist, Mediendateien in diesen beiden obigen Formaten hoch und verlinken Sie auf die Formate mit der besten Qualität (die anderen Formate sollten erkannt und im Player verfügbar gemacht werden).

Video encoding optimized for web

To do.

Bei lokal hochgeladenen Dateien wird PmWiki auch nach zugehörigen Bildern und Untertiteln/Legenden/Kapiteln suchen, die den gleichen Basisnamen und eine andere Dateiendung haben, und diese in den Player einfügen.

  • Poster(cover)-Bilder: webp, jpg, jpeg, png
  • Tracks (Untertitel/Legenden/Kapitel): vtt

Wenn Sie zum Beispiel auf Attach:My-Trip-2026.webm verlinken und es gibt eine Bilddatei My-Trip-2026.jpg, sollte das Bild als des Videos Poster(cover)-Bild gezeigt werden, bevor das Video abgespielt wird.

Wenn es eine Audiodatei ist und es gibt eine zugehörige Posterdatei, sollte der Browser ein <video>-Element mit dem Poster als Hintergrund erzeugen.

Nur für Videodateiformate werden die folgenden 'Track-Dateien' dem Player automatisch hinzugefügt, wenn sie in dem Uploadverzeichnis vorhanden sind und eine Videodatei basename.webm eingebettet wird:

  • Untertitel:
    • basename.vtt
    • basename.en.vtt, basename.en-US.vtt : mit einem definierten Sprachkode
  • Legenden haben ein ".captions"-Teil zwischen dem Basisnamen und der Dateierweiterung:
    • basename.captions.vtt
    • basename.en.captions.vtt, basename.en-US.captions.vtt : mit einem definierten Sprachkode
  • Kapitel haben ein ".chapters"-Teil zwischen dem Basisnamen und der Dateierweiterung:
    • basename.chapters.vtt
    • basename.en.chapters.vtt, basename.en-US.chapters.vtt : mit einem definierten Sprachkode

Sie können mehr als eine zugehörige VTT-Datei haben, alle werden dem Player hinzugefügt und der Benutzer kann von ihnen eine zur Zeit aktivieren.

Player-Optionen

Player-Optionen können in einem Doppelkreuz-Fragment hinter dem URL gesetzt werden. Unterschiedliche Player-Optionen sollten durch Semikolons getrennt werden:

Attach:video.mp4#800x450;loop;t=1:20,5:33

Die folgenden Optionen werden unterstützt, nach dem Doppelkreuz, durch Semikolons getrennt:

  • audio - Spiele ein Video in einem Audio-Player ab (nur der Ton wird wiedergegeben ohne das Video; beachten Sie: der Browser lädt dennoch die ganze Datei herunter).
  • controls=0 - Zeige den Player ohne Kontroll- oder Such-Leiste; das Rechts-Klick-Menü erlaubt dem Benutzer den Player zu kontrollieren.
  • muted - Der Player ist zu Beginn stumm, der Benutzer kann das umschalten.
  • loop - Nach dem Ende beginnt der Player von vorn.
  • preload=none - Lade keine Metadaten zum Video herunter, bevor der Benutzer es abspielt.
  • loading=lazy - Beginne nicht mit dem Herunterladen der Mediadatei, bis der Player nahe dem Viewport auf dem Bildschirm ist.
  • 800x450 - Die Pixel-Dimension BreitexHöhe des Playerelements (kein 'px', keine Prozente); empfohlen bei preload=none oder loading=lazy
    • 1280x - definiere nur die Breite, x720 - definiere nur die Höhe (der Browser sollte die andere Dimension proportional einstellen).
  • 1.25x, 0.8x - Ändere die Wiedergabegeschwindigkeit des Videos (z. B., 2x = doppelt so schnell); der Benutzer ist in der Lage, die Geschwindigkeit zu ändern (Dreipunktmenü oder Rechts-Klick-Menü). Die Werte müssen zwischen 0.5 und 3.0 liegen.
  • autoplay - Der Player beginnt mit dem Abspielen, sowie die Datei geladen ist. Beachten Sie, dass manche Browser für "muted" (stumm) verlangen, aktiviert zu werden, und sie könnten den Benutzer bitten, die Erlaubnis für die Autoplayfunktion für die Website zu bestätigen.
  • id=video_id - Füge einen Identifizierer-Namen hinzu (einen einmaligen); der kann als Anker für Links zum Player benutzt werden, etwa Seite#video_id, und für Stilangaben.
  • class=vertical - Füge einen CSS-Klassennamen hinzu (einen einzelnen).
  • t=start,end - Konfiguriere start und end Zeitstempel
    • t=01:00,07:53 - im Format (HH:)MM:SS(.000)
    • t=130,187 - im Format Startsekunde,Endsekunde
    • t=10 - nur die Startzeit, die Endzeit ist optional
    • Die Sekunden können Dezimalzahlen mit einem Dezimalpunkt sein wie 20.907.
  • lang=fr - Setze eine Standardsprache für Untertitel/Legenden im Videoplayer; das aktiviert eine Untertiteldatei video.fr.vtt, wenn sie existiert, ohne dass der Benutzer sie auswählen muss.

Es gibt noch andere Optionen, siehe developer.mozilla.org: <video> (außer für poster und src).

Konfigurationsvariablen

Das Folgende kann in lokalen Konfigurationen aktiviert werden:

  • $PmMedia['EnableEmbed'] = 1; Füge Mediafunktionen ein (Voreinstellung disabled; notwendig für gesamte Funktionalität).
  • $PmMedia['EnableUploadEmbed'] = 1; Aktiviere Einbettung von Attach: nackte URLs zu Mediadateien (Voreinstellung enabled, setze auf 0 zum Deaktivieren).
  • $PmMedia['EnableRemoteEmbed'] = 1; Aktiviere Einbettung von externen nackten URLs auf Mediadateien (Voreinstellung enabled, setze auf 0 zum Deaktivieren).
  • $PmMedia['AudioExts'] = 'opus|weba|m4a|ogg|mp3|flac|wav'; Unterstützte Audio-Dateierweiterungen, in der vorgezogenen Reihenfolge.
  • $PmMedia['VideoExts'] = 'webm|mp4|m4v|ogv|mov'; Unterstützte Video-Dateierweiterungen, in der vorgezogenen Reihenfolge.
  • $PmMedia['PosterExts'] = 'webp|jpg|jpeg|png'; Unterstützte Poster-Dateierweiterungen, in der vorgezogenen Reihenfolge (keine regulären Ausdrücke).
  • $PmMedia['DefaultAttrs']['attribute'] = 'value'; voreingestellte Attributwerte, siehe Player options:
    • $PmMedia['DefaultAttrs']['controls'] = false; Verberge Kontrollelemente per Voreinstellung, benutze #controls im Fragment für die Einstellung per Player.
    • $PmMedia['DefaultAttrs']['loading'] = 'lazy'; Verzögertes Laden aller Mediadateien.

Bei Untertiteln und Legenden, wenn ein Sprachkode festgestellt wurde, wird der Sprachname als Label im Player angezeigt. Einige Sprachkodes und Labels sind enthalten. Sie können folgendermaßen andere Sprachkodes und Labels definieren:

  • $PmMedia['Langs']['fr-CA'] = 'Français (Canada)'; Zeige dies Label für eine Untertiteldatei namens video.fr-CA.vtt.

Links auf Zeitstempel / Kapitel

Zeitstempel wie 0:19 oder 1:01:34 als puren Text nach dem Player geschrieben werden in Links verwandelt, die das Abspielen an diesen Punkten beginnen:

Attach:video.mp4
The first song starts at 0:19, the end credits at 12:58.
* 0:00 start/intro
* 0:19 first song
* 6:55 second song
* ...
* 12:58 end credits

Ein weiterer Mediaplayer oder ein Seitentitel vom Level 1, 2 oder 3 wie !!! Next Heading wird die Suche nach Zeitstempeln in der aktuellen Mediadatei abbrechen.

Unterschiede zu Cookbook:Ape

Ape ist ein populäres PmWiki-Rezept, das Einfügen von HTML5-Video- und -Audio-Playern erlaubt. Diese PmWiki-Kernfunktion basiert auf Ape, ist aber vereinfacht für Wikiautoren, mit weniger Markup zu schreiben.

Die Hauptunterschiede zwischen PmMedia und Ape sind:

  1. Keine Notwendigkeit von %embed%...%% Wikistilen; nackte URLs werden umgeändert in <audio> und <video> HTML5-Tags.
  2. Nur nacke URLs werden eingebettet wie bei Bildern; Ape erlaubt auch Links in eckigen Klammern einzubetten.
  3. Player-Optionen werden ins Doppelkreuz-Fragment geschrieben anstatt in Wikistile.
  4. Automatische Erkennung innerhalb lokaler Uploads von alternativen Medienformaten, Posterbildern und Untertiteln/Legenden, keine Notwendigkeit auf sie zu verlinken.
    • PmMedia hat Umwandlungen von Dateinamenmustern, während Ape Verweise auf alle Dateien erlaubt.
  5. Automatisches Setzen von Labeln in vielen Sprachen für Untertitel/Legenden.
  6. Videoplayer für Audiodateien + Poster.
  7. Links auf Zeitstempel müssen nicht in >>embed<< oder >>mediajump<< eingepackt werden und werden nur nach dem Videoplayer erkannt.
  8. Anders als Ape erfordert PmMedia kein aktiviertes Javascript (außer für Links auf Zeitstempel).
  9. Anders als Ape können PmMedia-Player in eine Ape-Map eingebettet werden.

Der Plan ist, eines Tages für PmMedia das Einbetten von Videos von Youtube und Vimeo, wie in Ape, zu ermöglichen, aber mit besserer GDPR-Compliance.

Wenn Sie momentan Ape benutzen, ist PmMedia kein "drop-in"-Ersatz — das Ziel war, weniger Markup/Wirrwarr zu haben und die Schreibererfahrung zu verbessern. Wenn Sie PmMedia aktivieren, müssen Sie auch ihre existierenden Seiten überprüfen und, falls notwendig, das Wiki-Markup ändern (eckige Klammern entfernen, Doppelkreuz-Optionen anstelle von Wikistilen benutzen) und möglicherweise jede alternative/bezogene Datei umbenennen.

Bemerkungen

Der Webserver muss für alle Mediadateiformate, die oben diskutiert werden, die korrekten Content-Type-Header senden.

Apache configuration

To do.

für die Liste aller Seiten


Übersetzung von PmWiki.Media,   Originalseite auf PmWikiDe.Media   —   Rückverweise

Zuletzt geändert:   PmWikiDe.Mediaam 14.05.2026
 PmWiki.Mediaam 12.05.2026