Safari H264 (MP4) Schwarze Linie

  • Hi Klaus,

    unter Safari werden Videohotspots noch immer mit einer feinen schwarzen Außenlinie angezeigt, obwohl Du ja schon vor Ewigkeiten den Videohintergrund direkt in der videoplayer.js transparent machen wolltest.
    Ich habe sämtliche mir bekannten Möglichkeiten des H264-Codecs ausgeschöpft (Square pixels, 1:1-Seitenverhältnis, exakte Höhe und Breite, 1 Pixel mehr und weniger usw.) aber nichts hilft. Ich habe die Videos auch in After Effects kontrolliert und die schwarze Linie ist definitiv nicht in der Videodatei.

    Hier im Forum wurde auch empfohlen im HTML-Style folgendes einzufügen:
    video {background-color: transparent !important;}
    Was imho auch genau das ist, was Du ja direkt in den videoplayer integrieren wolltest. Aber auch das hat keinerlei Auswirkungen - oder ich binde diese Zeile nicht korrekt ein?!

    Getestet unter krpano 1.19pr3 bis 1.19pr12 und Safari 8.0.8 (10600.8.9) und MacOS X Yosemite 10.10.5.


    Und unter Chrome (60.0.3112.90) werden Videos im WEBM-Format nach dem ersten Loop plötzlich heller?! *blink* Beim ersten abspielen passt die Farbe noch perfekt und sofort beim 1.Loop *bamm* deutlich heller. Allerdings auch nur unter HTML5 und MacOS. Unter Windows ist alles hübsch *smile*

    Viele Grüße,
    Nupsi

  • Hi,

    der CSS Hintergrund der Videos ist schon lange auf transparent gesetzt, allerdings werden Video-Hotspots seit der Version 1.19 standardmäßig (siehe renderer) mit WebGL dargestellt, d.h. dort hat dies gar keine Auswirkungen (und dort wo es Auswirkungen hatte, betraf es eigentlich Browser-Darstellungs-Bugs).

    Es gibt hier aber wie es aussieht leider ein paar technische bzw. grundlegende Missverständnisse wie Videos in HTML5 eigentlich funktionieren - krpano verarbeitet oder dekodiert die Videos nicht selber, das macht alles der Browser und es gibt hier auch keine Eingriffmöglichkeiten. Es ist im Prinzip so: es gibt ein HTML5 Video Objekt, dieses hat als Quelle die Video-Url zugewiesen und dieses HTML5 Video Objekt wird für die Darstellung in eine 'WebGL Texture' geladen - das ist alles vereinfacht gesagt. Um das weitere kümmert sich der Browser (und in weiterer Folge das System) selber. D.h. es gibt hier nichts wodurch man durch falschen Code so etwas wie eine schwarze Linie erzeugen oder gar verhindern könnte!

    Bei meinen Tests auf OSX mit Safari sind mir solche Probleme allerdings nicht aufgefallen, allerdings habe ich natürlich auch alle möglichen Video-Kodierungen und alle möglichen Systeme durch-getestet.


    Quote

    Und unter Chrome (60.0.3112.90) werden Videos im WEBM-Format nach dem ersten Loop plötzlich heller?! *blink* Beim ersten abspielen passt die Farbe noch perfekt und sofort beim 1.Loop *bamm* deutlich heller. Allerdings auch nur unter HTML5 und MacOS. Unter Windows ist alles hübsch *smile*

    Hier gilt das gleiche wie oben.

    D.h. ich würde hier sehr stark auf Browser oder System-abhängige GPU Bugs tippen - eventuell auch im Zusammenhang mit der Video-Kodierung.

    Schöne Grüße,
    Klaus

  • Hi Klaus,

    und vielen, vielen Dank, für die sehr informative Antwort *thumbup*
    Somit weiß ich zumindest, dass ich beim Codec nicht weiter zu schrauben brauche und nach einer anderen Alternative für Macs suchen muss.

    Beste Grüße,
    Nupsi

  • Somit weiß ich zumindest, dass ich beim Codec nicht weiter zu schrauben brauche


    Warum nicht?
    Das kann sehr wohl am Codec bzw. den Encodier-Einstellungen - eventuell wird eine für den Browser ungünstige Kombination verwendet...

    Für die Video-Kodierung könnte ich ffmpeg empfehlen, man muss sich zwar etwas in die Thematik einlesen, hat dann aber viele Möglichkeiten.

    Schöne Grüße,
    Klaus

  • Hi Klaus,

    FFMPEG nutze ich sogar bevorzugt und hab ich natürlich bereits ausgiebig getestet, neben dem Adobe Media Encoder, After Effects und Premiere Pro. Ich hatte sogar die Hoffnung, dass H265 bereits experimentell unterstützt wird, aber leider konnte krpano (Safari?) diese Dateien nicht lesen. Auch im MOV-Container bleibt das Problem bestehen, was ich jedoch auch nicht anders erwartet hatte. Soweit ich weiß, müssen Videos für konforme-H264-Files ja in der Pixelgröße durch 2 teilbar sein, was ich auch getestet habe. Zumindest wüsste ich jetzt einfach nicht mehr, wo ich sonst noch ansetzen könnte *sad*

    Hast Du denn in Deinen vielen Beispielen irgendwo einen Videohotspot, welcher auch in Safari unter HTML5 fehlerfrei (also ohne Kantenflimmern) läuft? So könnte ich den Fehler bei mir vielleicht besser zurückverfolgen *squint*

    Viele Grüße,
    Nupsi

  • Hi,

    Hast Du denn in Deinen vielen Beispielen irgendwo einen Videohotspot, welcher auch in Safari unter HTML5 fehlerfrei (also ohne Kantenflimmern) läuft? So könnte ich den Fehler bei mir vielleicht besser zurückverfolgen *squint*

    Ich könnte hier eigentlich eine Gegenfrage stellen - gibt es denn ein Beispiel welches generell nicht funktioniert? *wink*

    Da per WebGL gerendert wird und Antialiasing im Normalfall aktiviert ist, sollte es eigentlich kein 'Kantenflimmern' geben...

    Hier z.B. ein Screenshot dieses Beispiels:
    https://krpano.com/examples/119/k…ideohotspot.xml

    im Safari auf einem MacMini:

    Schöne Grüße,
    Klaus

  • Hi Klaus,

    und Danke für das Beispiel inkl. Link. Ist ja eh in den krpano beiliegenden Beispielen enthalten, wie ich mich erinnere. Hätte wohl erstmal dort schauen sollen *whistling*
    Aber zu wissen das es irgendwie geht, ist ja schon mal die halbe Miete. Ich werde das Beispiel als Ausgangspunkt nutzen und mich damit bis zum Ziel hangeln!

    Dank und Gruß,
    Nupsi

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!