Danke G. Schurkin für diese Rückfrage 👍
The_C Ich vermute mal ganz stark, dass das die Ursache ist. Aktuell verwendest du f:uri.image
, also den ImageViewHelper. Dieser bezieht sich inter auf:
$GLOBALS['TYPO3_CONF_VARS']['GFX']['imagefile_ext']
während der MediaViewHelper sich auf:
$GLOBALS['TYPO3_CONF_VARS']['SYS']['mediafile_ext']
bezieht.
Da es keinen f:uri.media
ViewHelper gibt, musst du direkt den f:media
ViewHelper benutzen, der die gesamte HTML-Ausgabe steuert.
Das würde (ungetestet) so aussehen können:
<f:media file="{file}" width="400" height="375" additionalConfig="{autoplay: '1', loop: '1', muted: '1', playsinline: '1'}" style="width: 100%; height: 100%; object-fit: cover; position: absolute; z-index: -1;" />
Die Problematik in deinem Use-Case ist jedoch, dass die Eigenschaft des file
-Attributs ein FileInterface
-Objekt erwartet. Du benötigst also einen vorgelagerten Prozess, der dir den Pfad zur webm-Datei in ein echtes File-Objekt umwandelt. Siehe dazu:
https://docs.typo3.org/m/typo3/reference-coreapi/main/en-us/ApiOverview/Fal/UsingFal/ExamplesFileFolder.html#by-its-combined-identifier
Wenn du ohnehin über einen eigenen Controller dein Fluid-Template mit Informationen versorgst, kannst du die Umwandling ja einfach vornehmen. Wenn allerdings ein Fluid-Template über das TypoScript FLUIDTEMPLATE
-Objekt ansteuerst, müsstest du einen anderen Weg, ggfls. über einen eigenen ViewHelper, gehen.