Inhaltsverzeichnis

Einbinden von Videos und Erstellen von frab.xml

Dieser Eintrag ist Teil der Anleitung zur Chaotikum Website

Videos werden von uns erstellt und auf verschiedene Dienste hochgeladen. Metadaten zu erstellten Videos, oder sogar zu Talks oder Workshops, aus denen letztendlich doch kein Video geworden ist, hinterlegen wir aus verschiedenen Gründen als Markdown Datei im Ordner _media in unserer Website.

Daraus

  1. Wird unter https://chaotikum.org/media/ eine Übersicht aller von uns erzeugten Medien erstellt
  2. Unter https://chaotikum.org/media.xml ein Atom-RSS Feed erzeugt, über welchen sich Personen und Systeme über neue Video-Releases informieren lassen können
  3. Werden unter Blog-Posts zu Events Links zu in dem Event erzeugte Videos angezeigt (noch nicht umgesetzt)
  4. Wird für jedes erzeugte Video eine Seite erstellt, welche einen Überblick über die Orte gibt, an welchen man es sehen kann: Z.B. https://chaotikum.org/media/2022-05-18-10-jahre/
  5. Kann das Video als Widget in Blogposts oder Pages eingebunden werden (noch nicht umgesetzt)
  6. Wird ein frab-schedulle XML erzeugt

Media

Wie diese Dateien im _media Ordner üblicherweise erzeugt werden, ist im Detail im [hackspace:infrastruktur:videosetup:dataworkflow|Video-Workflow der Video Dokumentation] beschrieben (noch nicht, kommt aber), hier geht es nur darum, wie die Datei aufgebaut ist.

Die Datei sieht ca so aus:

---
layout: video
release_date:   2022-12-25 20:00:00 +0200
recording_date: 2022-11-12 20:00:00 +0200
duration: "45:00"
room: Audimax
title:  "Titel des Vortrags"
subtitle: "Ein Subtitle"
persons:
- "person 1"
- "person 2"
licence: CC-BY-NC#
language: de
optout: false
fahrplan_url: https://chaotikum.org/fahrplan-des-events
image: "https://video.chaotikum.net/image/bla.png"
#https://www.uuidgenerator.net/
uid: 8080f1f4-1f28-46ca-cf57-0578baa109c9
ticket_id: 1337
yt: "<youtube link>"
mccc: "<media.ccc.de link>"
archive: "<archibve.org link>"
file: "https://video.chaotikum.net/..."
event: 46370f56-bfc1-413e-b220-431eec727d47
conferences:
- conf
---
Beschreibung des Videos, wie sie nachher überall wo das Video hochgeladen wird stehen soll.

Felder

Pflichtfelder

Optionale Felder

Hier wird insbesondere beschrieben, wie das frab.xml erstellt wird. Nicht alle Fallback-Mechanismen greifen zwangsläufig überall so.

Conferences

Conferences sind ebenfalls Markdown Dateien, sie stellen einen Kontext dar, in welchem Vorträge aufgezeichnet werden, man könne sie auch Playlists oder sonstwas nennen, aber in Anlehnung an die Begrifflichkeit im frab.xml heißen sie conference.

Sie sind eine Markdown Datei im ordener _conferences und sehen so aus:

---
layout: conference
title: Eine Konferenz
acronym: conf
ecki: true
name_before_title: true
base_url: https://chaotikum.org/conferences/conf/
---

Ein Text der bei allen Videos in dieser Conference der Beschreibung des Videos angehängt werden soll.

Felder

Pflichtfelder

Optionale Felder

Der Freitext wird an die Beschreibung jedes Videos angehängt, welches zu der Konferenz gehört, dies wird z.B. bei „5 Minuten Terminen“ genutzt. Sind es mehrere anzuhängende Texte geschieht dies in der Reihenfolge, in welcher diese in der Datei in _media angegeben sind.

Conferencefrab

Diese Datei dient dem jekyll als Flag, dass eine frab.xml für diese Conference zu erstellen ist.

Sie sieht so aus:

---
layout: [frab]
title: conf
---

Felder

Pflichtfelder

Wie entsteht die Frab XML

Das passiert in der Datei frab.xml mithilfe der Liquid-Templating Sprache und ist alles andere als Leicht zu lesen. Die Datei findet sich hier: https://git.chaotikum.org/chaotikum/website/-/blob/master/_layouts/frab.xml Die zu erstellende Datei soll dem Frab Schedulle XML entsprechen. Hierbei werden insbesondere Daten aus drei Dateien kombiniert:

- Den Meta Informationen zu einem Video in _media - Den Informationen zu einer Konferenz in _conference - Den Informationen zu einem Event in _event

Diese sind jeweils verknüpft. Ein Video gehört zu mehreren Konferenzen (acronym der Conference in der Liste conferences) und einem Event (uid des Events in event).