none
Error beim Codieren von mp4 in "Wiedergabe auf iOS-Geräten und PC/Mac"

    Frage

  • Hallo zusammen,

    ich nutze die Azure Cloud zum Bereitstellen von Videos. Diese werden sowohl über Silverlight, als auch über iOS- und Android-Geräte abgespielt.

    Als Ausgangs-Material habe ich die Videos in mp4 vorliegen (H.264-Codec, 50 fps, 1500 kbps, 4:3, 768x576), diese lade ich in die Azure Cloud und codiere sie dort um. Das hat bisher auch immer einwandfrei funktioniert. Neuerdings erhalte ich aber eine Fehlermeldung wenn ich eine mp4-Datei in codieren möchte und als Voreinstellung "Wiedergabe auf iOS-Geräten und PC/Mac" auswähle. 

    Der Codierungs-Vorgang startet ganz normal unter "Aufträge" kann ich dann aber erkennen, dass die "Verschlüsselungsaufgabe" zu 100% durchgeführt wurde, die "HLS-Unterstützungsaufgabe" allerdings nicht. Wähle ich bei der HLS-Unterstützungsaufgabe die Details an, so finde ich dort folgende Fehlerbeschreibung, aus der ich nicht schlau werde:

    HLS-Unterstützungsaufgabe
    Unknown : We were unable to parse the confirguration information passed to the task.  The configuration information could not be read as a valid XML file.  Please check your configuration information. Configuration <?xml version="1.0" encoding="utf-16"?>
    <taskDefinition xmlns="http://schemas.microsoft.com/iis/media/v4/TM/TaskDefinition#">
      <name>Smooth Streams in Apple-HTTP-Live-Streams</name>
      <id>A72D7A5D-3022-45f2-89B4-1DDC5457C111</id>
      <description xml:lang="en">Konvertiert mit H.264 (AVC)-Video- und AAC-LC-Audiocodecs verschlüsselte On-Demand-Smooth Streams in Apple-HTTP-Live-Streams (MPEG-2 TS) und erstellt eine Apple-HTTP-Live-Streaming-Wiedergabelistendatei (.m3u8) für die konvertierte Präsentation.</description>
      <inputDirectory></inputDirectory>
      <outputFolder>TS_Out</outputFolder>
      <properties namespace="http://schemas.microsoft.com/iis/media/AppleHTTP#" prefix="hls">
        <property name="maxbitrate" required="true" value="8500000" helpText="Die maximale in MPEG-2 TS zu konvertierende Bitrate in Bit pro Sekunde (bit/s). On-Demand-Smooth Streams mit diesem oder einem geringeren Wert werden in MPEG-2 TS-Segmente konvertiert. Smooth Streams mit einem höheren Wert werden nicht konvertiert. Die meisten Apple-Geräte sind in der Lage, mit Bitraten von bis zu 8.500 Kbit/s verschlüsselte Medien abzuspielen."/>
        <property name="manifest" required="false" value="" helpText="Der Dateiname, der für die konvertierte Apple-HTTP-Live-Streaming-Wiedergabelistendatei (eine Datei mit der Dateinamenerweiterung ".m3u8") verwendet werden soll. Wird kein Wert angegeben, wird der folgende Standardwert verwendet: &lt;ISM_file_name&gt;-m3u8-aapl.m3u8"/>
        <property name="segment" required="false" value="10" helpText="Die Länge eines jeden MPEG-2 TS-Segments in Sekunden. Apple empfiehlt für die meisten seiner mobilen Digitalgeräte eine Einstellung von 10 Sekunden."/>
        <property name="log"  required="false" value="" helpText="Der Dateiname, der für eine Protokolldatei (mit der Dateinamenerweiterung ".log") verwendet werden soll. In dieser wird die Konvertierung erfasst. Wenn Sie einen Protokolldateinamen angeben, wird die Datei in dem Ordner mit der Ausgabe für die Aufgabe gespeichert." />
        <property name="encrypt"  required="false" value="false" helpText="Ermöglicht die Verschlüsselung von MPEG-2 TS-Segmenten mithilfe des erweiterten Verschlüsselungsstandards (Advanced Encryption Standard, AES) mit einem 128-Bit-Schlüssel (AES-128)." />
        <property name="pid"  required="false" value="" helpText="Die Programm-ID der MPEG-2 TS-Präsentation. Die gleiche Programm-ID wird von verschiedenen Verschlüsselungen von MPEG-2 TS-Streams in der gleichen Präsentation verwendet, damit Clients einfach zwischen verschiedenen Bitraten wechseln können." />
        <property name="codecs"  required="false" value="false" helpText="Ermöglicht die Integration von Codec-Formatbezeichnern (wie durch RFC 4281 definiert) in der Apple-HTTP-Live-Streaming-Wiedergabelistendatei (.m3u8)." />
        <property name="backwardcompatible"  required="false" value="false" helpText="Ermöglicht die Wiedergabe der MPEG-2 TS-Präsentation auf Geräten mit dem mobilen Apple-Betriebssystem iOS 3.0." />
        <property name="allowcaching"  required="false" value="true" helpText="Ermöglicht, dass die MPEG-2 TS-Segmente auf Apple-Geräten zwischengespeichert werden, um sie später wiederzugeben." />
        <property name="passphrase"  required="false" value="" helpText="Eine zum Generieren des Inhaltsschlüsselbezeichners verwendete Passphrase." />
        <property name="key"  required="false" value="" helpText="Die hexadezimale Darstellung des für die Verschlüsselung verwendeten 16-Oktett-Werts des Inhaltsschlüssels." />
        <property name="keyuri"  required="false" value="" helpText="Ein alternativer, von Clients zum Herunterladen der Schlüsseldatei zu verwendender URI. Wird kein Wert angegeben, wird davon ausgegangen, dass die Schlüsseldatei von dem Live Smooth Streaming-Veröffentlichungspunkt bereitgestellt wird." />
        <property name="overwrite"  required="false" value="true" helpText="Ermöglicht, dass im Ausgabeordner vorhandene Dateien überschrieben werden, wenn konvertierte Ausgabedateien über identische Dateinamen verfügen." />
      </properties>
      <taskCode>
        <type>Microsoft.Web.Media.TransformManager.SmoothToHLS.SmoothToHLSTask, Microsoft.Web.Media.TransformManager.SmoothToHLS, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35</type>
      </taskCode>
    </taskDefinition>
    . Exception message Name cannot begin with the '.' character, hexadecimal value 0x2E. Line 10, position 198.

    Was ist hier das Problem? Bisher hat es immer funktioniert. Ich habe es nochmal mit "alten" Dateien versucht, die ich bereits umcodiert habe, das geht nun auch nicht mehr. Hat jemand von Euch das gleiche Problem und/oder eine Lösung für mich?

    Danke und viele Grüße

    hrgsd

    Dienstag, 27. Mai 2014 09:58

Antworten

  • Hallo zusammen,

    ich konnte nun nach langem Rätseln selbst die Lösung finden: Die Oberfläche von Microsoft Azure war bei mir auf Deutsch, statt auf Englisch eingestellt. 

    Kaum hatte ich die Sprache auf Englisch geändert, konnte ich die Videos wieder ganz normal codieren und der Fehler tritt nun nicht mehr auf.

    (Sprach umstellen: oben rechts ist links vom Benutzernamen eine kleine Weltkugel, dort draufklicken und Englisch wählen - fertig)

    Allen die mir geantwortet haben dennoch vielen Dank für die Hilfe.

    Viele Grüße

    hrgsd

    • Als Antwort markiert hrgsd Freitag, 6. Juni 2014 12:49
    Freitag, 6. Juni 2014 12:49

Alle Antworten

  • Hi,

    die Fehlermeldung kommt wohl daher, dass in Zeile 9, Spalte 198 ein . steht. Du beendest den Wert des Attributs "helpText" dort in Spalte 197 mit einem ". Das muss dort weg., alternativ durch &quot; ersetzen. Entferne oder ersetze also die " um ".m3u8" in helpText. Ggfs. gibt es noch andere Stellen, da musst Du dann dasselbe machen.

    In der Fehlermeldung steht zwar Zeile 10, ggfs. fehlt da aber eine Zeile.


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community


    Dienstag, 27. Mai 2014 10:13
  • Hallo Stefan,

    danke für Deine Antwort. Bleibt nur noch eine Frage: Wo kann ich das denn anpassen? Ich habe zwar den Code für die Voreinstellungen (also auch für das Profil "Wiedergabe auf iOS-Geräten und PC/Mac") gefunden, aber der Code sieht natürlich völlig anders aus.

    Ich muss dazu sagen, dass ich bisher nur Videos hochgeladen und umcodiert habe, ich habe weder die Cloud eingerichtet noch irgendetwas darin konfiguriert, deshalb mein Unwissen :)

    Viele Grüße

    hrgsd

    Dienstag, 27. Mai 2014 11:30
  • Hallo,

    im Container mit deinen Video Assets müsstest Du einen entsprechenden XML - File (MediaPackager_SmoothToHLS.xml) finden.

    Schöne Grüße

    Oliver


    Donnerstag, 29. Mai 2014 14:18
    Moderator
  • Guten Morgen Oliver,

    danke für Deine Antwort. In dem Container liegen haufenweise Assets nur leider kein einziges XML-File. Gibt es noch einen anderen Ort wo ich diese Datei finden kann?

    Viele Grüße
    hrgsd

    Montag, 2. Juni 2014 07:49
  • Hallo zusammen,

    ich konnte nun nach langem Rätseln selbst die Lösung finden: Die Oberfläche von Microsoft Azure war bei mir auf Deutsch, statt auf Englisch eingestellt. 

    Kaum hatte ich die Sprache auf Englisch geändert, konnte ich die Videos wieder ganz normal codieren und der Fehler tritt nun nicht mehr auf.

    (Sprach umstellen: oben rechts ist links vom Benutzernamen eine kleine Weltkugel, dort draufklicken und Englisch wählen - fertig)

    Allen die mir geantwortet haben dennoch vielen Dank für die Hilfe.

    Viele Grüße

    hrgsd

    • Als Antwort markiert hrgsd Freitag, 6. Juni 2014 12:49
    Freitag, 6. Juni 2014 12:49