Beiträge von Drachir

    Ich würde mir noch mal VLC anschauen.
    http://www.videolan.org/streaming-features.html

    Unter "Output method / muxer matrix" in der Spalte "RTP" ist zwar abzulesen das MJPEG via RTP nicht unterstützt wird, aber bei RAW ist ein grüner Haken. Es ist also nicht zwingend ein Transportstream bei der Verwendung von RTP notwendig.

    Wenn man dann bei "Muxer / audio and video formats matrix" in der Spalte "RTP" schaut, sieht man für welche Audio/Video Formate VLC ein RTP Payload Format unterstützt. Für dich käme dann nur H263 in Frage. Ob VLC das von dir benötigte H263 RTP Payload Format verwendet müßtest du mal testen.

    http://www.videolan.org/doc/streaming-…g-howto-en.html

    Unterstützt das Java-Framework auch RTSP oder braucht es eine SDP Beschreibung? - Viel Erfolg.

    Das von dir Beobachtete verhalten, ist beabsichtigt. Das von dir erstellte Xvid AVI, enthielt vermutlich, sogenannte NVOB("not coded video object"). Diese werden von Xvid erstellt, wenn die Bildinformationen von zwei aufeinander folgenden Frames (nahezu?)identisch sind. Das AVI Datei Format unterstützt meines Wissens keine variable Framerate. Hier behilft man sich mit den NVOB.

    Das MP4 Datei Format unterstützt Video Streams mit variabler Framerate, so dass man nicht auf das Hilfsmittel NVOB angewiesen ist. Konsequenter Weise entfernt MP4Box die NVOB und passt die Anzeigedauer des Frames vor dem NVOB an. Das Frame wird jetzt doppelt so lange angezeigt.
    Du kannst dir ein Bild davon machen, wenn du MP4Box, wie folgt Informationen zu deiner erstellten Datei anzeigen lässt:

    "MP4Box -diso deineDatei.mp4"

    Du erhälst eine XML Datei als Ausgabe. Öffne diese Datei in einem Editor deiner Wahl und suche nach "SampleDelta". Es sollten dir SampleDelta Werte auf fallen, die doppelt so groß sind wie die Werte der restlichen Frames. Jeder Video Frame in einer MP4 Datei kann einen anderen SampleDelta Wert haben.

    Jeder Track hat eine "TimeScale". Die zu deinem Video Track gehörende TimeScale solltest du auch in der XML Datei finden. Die TimeScale gibt an, in wie viele Zeiteinheiten(klicks) eine Sekunde unterteilt wird. Der Wert der unter SampleDelta steht legt fest wie viele dieser Zeiteinheiten ein Frame dargestellt wird.

    Mit deiner Datei sollte also alles in Ordnung sein.

    Gruß
    Richard


    in der Tat hast Du mich jetzt heftig verwirrt... ;)
    ..da ich mich erst 2-3 Tage mit dem Thema "Flash" und auch h. bzw. x264 beschäftige, sind viele Deiner Bezeichnungen "böhmische Dörfer" - da steig ich aber noch durch!


    [OFF-TOPIC]
    Ich schweife noch mal etwas ab, für den Fall das es jemanden interessiert.
    Viele der Erklärungen bezogen sich eher auf Formate die auf dem ISO base media file format (ISO/IEC 14496-12) basieren, haben also nicht unbedingt etwas mit Flash zu tun. Die meisten dieser Formate sind sich recht ähnlich sei es nun, 3GP(3GPP File Format),M4V(nennen wir mal iTunes File Format) oder das Format von Adobe F4V.
    Die Unterschiede zum MP4 File Format(ISO/IEC 14496-14) sind da schon größer. Diese Unterschiede werden aber wie bereits erwähnt nicht besonders gut unterstützt.

    Nehmen wir mal zum Beispiel wie mehre Audio/Video Tracks im "iTunes Format" und "MP4 Format" verwendet werden.

    Im "iTunes Format" wird über alternateGroup geregelt welche Audio Tracks abgespielt werden sollen. Wie man so etwas mit MP4Box erstellen kann siehe hier:
    http://sourceforge.net/forum/forum.ph…forum_id=287547

    Im MP4 File Format wird das über die Szenenbeschreibung(BIFS Track) im Zusammenspiel mit dem Object Description Framework geregelt. Solche Dateien ließen sich auch mit MP4Box erstellen. Für ein DVD BackUP gibt es auch ein Programm welches einen die Arbeit erleichtert:
    http://forum.doom9.org/showthread.php?t=117574

    Allerdings ist der Support bei Playern in Bezug auf Szenenbeschreibung und
    Object Description Framework sehr bescheiden.
    Ich würde also anstelle von MP4 Dateien eher Dateien im iTunes Format(*.m4v) erstellen.
    [/OFF-TOPIC]

    H.264 in FLV Dateien ist möglich, weitere Informationen dazu kann man in der hier http://www.adobe.com/devnet/flv/ verlinkten PDF Datei finden.

    Mit FFmpeg sollte etwas in dieser Art klappen:

    Zitat


    ffmpeg -i 'input.mpeg' -vcodec libx264 -r 25 -b 1000k -acodec libfaac -ar 44100 -ab 128k -ac 2 -f flv 'output.flv'

    Es wird aber die Verwendung des neuen auf ISO/IEC-14496-12 basierenden Format empfohlen.

    Zitat

    http://labs.adobe.com/wiki/index.php…pdate:H.264#FAQ
    Q: Will I be able to multiplex H.264 video and AAC audio into the current FLV container format?
    A: Adobe encourages customers to use the new MPEG-4-based file format. The new file format is designed to work with the features of these codecs.


    ...
    weiß Jemand, was die Unterschiede für avc1/aac im mp4- bzw. f4v-Container sind? ...

    Aus Player Sicht, so wie die meisten Player Dateien die auf ISO/IEC 14496-12 basieren handhaben, sind die Unterschiede verschwindend gering.
    Adobe wollte bei diesen Dateien, hervorheben das diese Dateien für die Wiedergabe mit dem Flash Plug-in vorgesehen sind, und hat ein neues Format/Main File Brand(main ftyp) ins Leben gerufen. Adobe scheint dieses Format allerdings (noch?) nicht http://www.mp4ra.org/ registriert zu haben. Es ist auf jeden Fall kein File Brand "f4v " dort gelistet.
    Adobe hätte im Grunde aber auch das von Apple verwendete iTunes Format, mit main ftyp "m4v " und Datei Endung *.m4v verwenden können.

    Wenn es nach ISO/IEC 14496-14(MP4 File Format) main ftyp "mp41" oder mp42" geht, ist der Haupt Unterschied, dass beim MP4 File Format verwendete "Object Description Framework". Eine MP4 Datei mit einem Audio und Video Track, enthält zusätzlich noch einen IOD und BIFS und OD Track.
    Die überwiegende Anzahl an Playern weiß damit allerdings nichts anzufangen. Das MP4 File Format, wird wenn man es streng nimmt, zur Zeit nicht verwendet.

    Die meisten Programme erstellen wenn man es streng nimmt auch keine MP4 Dateien, sondern irgend etwas basierend auf ISO/IEC 14496-12.
    Die von dir mit x264 erstellte Datei macht dies auch deutlich, in dem sie den main ftyp auf "isom" gesetzt hat. Es wird also nicht behauptet das diese Datei, für eine bestmögliche Wiedergabe, gemäß ISO/IEC 14496-14 gehandhabt werden sollte.
    Was für einen Player auch recht schwierig wäre, da diese Datei keinen IOD und BIFS/OD Track enthält.

    Dennoch sollte "isom" nicht als main ftyp verwendet werden. Ich persönlich würde dann auf den main ftyp "m4v " mit der Datei Endung *.m4v zurückgreifen, wenn man eine Datei ohne IOD,BIFS ... haben will, die sich an einen Standard hält.
    M4v ist eigentlich das Format das alle haben wollen, iTunes Tags,kein BIFS ... .
    Wenn es die Möglichkeit gibt, Dateien nach einen vorhandenen Regelwerk zu erstellen, warum also Dateien erstellen, welche in Bezug auf die Formatierung etwas schwammig sind?

    Ich hoffe ich habe dich nicht verwirrt, obiges kannst du auch getrost wieder vergessen ;) .

    Um noch zum FLV Format zu kommen, dieses basiert nicht auf ISO/IEC-14496-12 und hat einen anderen Aufbau.


    Hintergrund der Frage: Der IE6 schmiert bei MP4-FLVs öfter mal ab (nicht bei h263 oder VP6 im FLV-Container). Opera, Firefox und Safari zeigen den Effekt nicht!


    Um das noch mal klar zustellen,der IE6 hat Probleme beim Progressive Download von MP4 oder F4V Dateien. Dies Probleme treten mit FLV Dateien nicht auf. Wird in allen Browsern das aktuellste Flash Plug-in verwendet?

    Lösung:
    Wenn ich mich richtig erinnere, ist es auch möglich H.264 in FLV Dateien zu verwenden. Solche Dateien konnte man glaube ich mit FFmpeg erstellen. Das könnte dein Problem lösen. Versuche dein Glück mal mit Google, lass dich aber nicht durch die Verwendeten Datei Endungen verwirren. Da viele SWF Player anfänglich nur mit der Datei Endung flv zurecht kamen, wurden viele mp4,f4v Dateien einfach umbenannt. Vielleicht hat jemand anders aber auch die passende Kommandozeile zur Hand.


    Nun ist das Ding nicht gerade mit CPU power gesegnet und obwohl auch videos 320x240 25fps AVC möglich sind, sieht man diese mit ca. 0.1 fps bzw nur jedes 10te.


    Das Nokia E66 schafft vermutlich maximal H.264 in Basline@Level1.2. Würde es also noch mal mit 320x240 bei maximal 20fps versuchen, oder damit du sicher bist das dein Handy es schafft mit 15fps.


    Also den guten alten Xvid rausgekramt und neu codiert. Das Ergebnis war schon besser. Immerhin ca. 2 bis 5 frames die sekunde aber alles andere als flüssig.


    S60 Handys der letzten drei Jahre sollten, eigentlich MPEG-4 SP@Level3(neuere Handys auch MPEG-4 SP@Levlel 4a) schaffen. Also bei 15fps bis zu einer Auflösung von 352x288. Da die Handys in der Regel nur eine Auflösung von 320x240 haben, würde ich keine größere Auflösung verwenden. Höhere Auflösungen machen nur Sinn wenn man das Handy an einen Fernseher anschließen will.
    Zu beachten ist auch, je mehr man den Handy zu mutet um so schneller macht der Akku schlapp.
    Also ist MPEG-4 SP bei 15fps und 320x240 vielleicht ein guter Kompromiss für dich.

    Mein mittlerweile in die Jahre gekommenes Nokia E60(ARM 9 CPU 220MHz) kommt mit eine MP4 oder 3GP Datei mit MPEG-4 SP bei 320x240 und 15fps problemlos zu recht. Dein Nokia E66 ist mit einer ARM 11 CPU mit 369MHz ausgestattet und sollte damit auch keine Probleme haben.
    Du hast auf B-Frames und andere nicht SimpelProfile konforme Einstellungen verzichtet?


    ...das Handy "sollte" eigentlich VP7 könen


    Flash Lite 3.0 unterstützt glaube ich maximal On2 VP6.
    Flash Lite 3.1 hat glaube ich auch noch Support für H.264.
    Das Nokia E66 kommt mit Flash Lite 3.0.

    Bei vielen anderen Handy Herstellern sieht der Support für Auflösungen größer 176x144 meißt schon schlechter aus. Ist aber auch Abhängig vom Alter des Handys oder auf welche Plattform zurück gegriffen wird. Samsung hat auch ein paar S60(Symbian) Handys im Angebot.

    Weiß jemand:
    1. ob das 'hinting' zu einen Nachteil beim Normalen Playback führen kann?


    Es verursacht keine Nachteile beim normalen Playback, bringt aber auch keinen Mehrwert/Nutzen. Hinting ist nur Sinnvoll wenn man Video mit einem Streaming Server wie DSS ( http://dss.macosforge.org/ ) via rtp (rtsp) streamen will. Durch hinting wird die Datei nur größer, sollte man also nur anwenden wenn man es auch braucht.


    2. ob das interleaving zu einen Nachteil beim Normalen Playback führen kann?


    Ein Interleaving alle 500 Millisekunden, ist das Standard Verhalten von MP4Box.
    Mit -inter "Zeit in ms" kann man das Interleaving Intervall verändern. Das Interleaving hat z.B. den Vorteil das eine Lesekopf einer Festplatte nicht andauernd von A nach B springen muss, um die benötigten Daten für eine Synchrone Wiedergab zu bekommen.
    Würde Flat-storage verwendet, befänden sich in eine 4GB großen Datei z.B erst 3GB Video und sagen wir mal 1GB Audio hintereinander. Auf einer DVD oder Festplatte müsste der Lesekopf bei der Wiedergabe andauernd die Position ändern.
    Beim Interleaving, wenn immer kurze Audio/Video Intervalle verschachtelt in der Datei abgelegt sind, braucht eine Lesekopf nicht so weite Wege gehen, wie es bei Flat-storage nötig wäre.


    4. spricht etwas dagegen einen stream sowohl zu interleaven als auch zu hinten ?


    Hinten würde ich nur verwenden, wenn man vor hat Audio und Video über rtp auszuliefern, da es andren Falls nicht benötigt wird.
    Wenn man hingegen die Datei via http (Progressive Download) ausliefern will, ist Hinting überflüssig. Ein HTTP Server weiß nichts mit den Informationen aus den Hint Tracks anzufangen. Beim Hinting wird die Datei größer, es müsste also mehr über http heruntergeladen werden.

    Hi, die Audio Datei hat eine falsche Datei Endung. Es ist keine AAC Datei sondern irgend etwas was auf dem ISO Base Media Format basiert. Temporär würde ich als Dateieindung mp4 durch gehen lassen. Die passendste Datei Endung wäre aber vermutlich .m4a wenn der Main File Brand entsprechend gesetzt wäre.

    Zur Kommandozeile, "#audio" kannst du weg lassen die Datei enthält ja nur einen Audio Track. Bei ISO Base Media basierten Formaten wird auch die Track ID zur Auswahl verwendet.

    Zum Problem, MP4Box scheint die ISO Base Media Dateien die NeroAACEnc erstellt nicht zu mögen. Wenn man den Audio Track mit mp4creator extrahiert läßt er sich problemlos mit MP4Box muxen.

    Ich würde einen Bugreport auf der Sourceforge Seite von GPAC erstellen.

    Gruß
    Richard

    Strange, früher ging meine alte Anleitung, auf jeden Fall Danke für die Info werde ich morgen abend antesten, heute zu platt dafür. -> doch noch getestet, hat leider nichts gebracht Fehlermeldung ist die Gleiche geblieben,...

    Hmm, dann scheint es entweder Fehler bei configure und den Makefiles zu geben oder der JavaSrcipt Support ist nicht mehr optional bzw. er wird jetzt nicht mehr nur in den Modulen von GPAC sondern auch in libgpac benötigt.

    Bei mir gibt es auch Probleme mit SpiderMonkey wenn ich GPAC CVS unter obenSUSE 11.0 mit Paketen von http://packman.links2linux.de/ ( libffmpeg, libjs ...) übersetzen will. Ich behelfe mir dann immer, dass ich in gpac/src/Makefile bei "CFLAGS+=" "-DXP_UNIX -I/usr/include/js" mit angebe. Das configure Script findet diese zusätzlichen Angaben("JS_FLAGS=" in config.mak) für den Compiler, aber die Makefiles scheinen einen Fehler zu haben, so dass es nicht verwendet wird.

    Bei dir mit MinGW würde ich es dann mit "./configure --use-js=local" versuchen und dann so vorgehen wie es im Readme der GPAC Extra Libs ( http://downloads.sourceforge.net/gpac/gpac_extra_libs-0.4.4.zip ) steht. Allerdings nur mit libjs. Sollte es dann immer noch Probleme geben erstelle eine Bugreport. Was ich vermutliche auch noch machen werde, nachdem ich vorher versucht habe aus den Makefiles schlau zu werden. Kann aber noch etwas dauern.

    Aber eigentlich ist der Javascript Support in deinem Fall überflüssig.


    Ps.: AARGH und ein upgrade auf Kubuntu 8.1 hat auch gerade mein KubuntuSystem geschossen. :( -> heute nicht mein Tag


    Guter Zeitpunkt um auf openSUSE 11.0 mit KDE 3.5.* umzusteigen ;) .

    Gruß
    Richard

    Wenn du libgpac nur brauchst um mit "x264" ISO Base Media Dateien erstellen zu können, kannst du auf den JavaScript Support verzichten. Deaktiviere es einfach mit "./configure --use-js=no". Sollte das nicht klappen suche in config.mak nach "CONFIG_JS=" und schreibe ein "no" dahinter.

    JavaScript sollte nur von MP4Client/Osmo4 benötigt werden um in Szenebeschreibungen Javascript zu unterstützen.

    Ps.: Spidermonkey hat GPAC schon immer benutzt.

    Hui! Danke für die Info :)

    Hab ich das richtig verstanden:
    1. gdsmux erzeugt .mp4 files mit .ac3 wie sie aktuell von Nero unterstützt werden


    Soweit ich weiß nicht.
    Gsdmeux benuzt, wenn ich mich richtig erinnere eine ObjectTypeIndication aus dem Privaten Bereich, siehe "user private" -> http://www.mp4ra.org/object.html
    Also der so oft erwähnte "Private Stream".

    Nero wollte wohl ürsprünglich den Code Point "sac3" für AC3 verwenden und verwendet diesen zur Zeit.
    Seit der Registrierung durch ETSI ist wohl eine Umstellung auf den Code Point "ac-3" geplannt oder die ObjectTypeIndication "0xA5" ??? Vermute aber eher ersteres, da Nero das Object Descriptor Framework und somit das MP4 File Format nicht benutzt.
    Allerdings benutzen Sie bei Untertiteln (Vobsub) meines Wissens eine ObjectTypeIndication aus dem privaten Bereich. Nero kann sich irgendwie nicht richtig entscheiden.

    Die Dateien von gdsmux sind im Grunde auch keine MP4 Dateien, da diese auch nicht auf das Object Descriptor Framework zurückgreifen. Da sich darum aber sowie so niemand kümmert ....


    2. mp4box erzeugt .mp4 files mit .ac3 welche ISO/IEC 14496-14 entsprechen


    Mit MP4Box kann man Dateien mit AC3 Audio gemäß ISO/IEC 14496-14 erstellen.
    MP4Box kann allerdings auch Dateien ohne BIFS&Object Descriptor Framework erstellen.
    Wenn kein Haupt Filebrand(ftyp) wie "M4V ", "3gp6" oder "mp42" gesetzt ist, handelt es sich um so genannte FreeFormat Dateien. Diese Dateien entsprechen nicht direckt einem bestimmten Stanard wie 3GPP oder MPEG-4. In diesem Fall sezt MP4Box den Haupt Ftyp auf "isom".
    Der Haupt File Brand gibt an, nach welchen Standard sich der Player richten sollte, für eine korrekte Widergabe der Datei.


    3. mp4creator erzeugt .mp4 files mit .ac3 welche vom AppleTV unterstützt werden


    http://mpeg4ip.sf.net wird nicht weiter fortgeführt. Bei dem vorher verlinkten mp4creator handelt es sich um einen Fork: http://www.dvbportal.de/projects/mp4muxer/

    Die Dateien für AppleTV sind im Grunde genommen keine MP4 Dateien, siehe Komentar weiter oben zum Object Descriptor Framework. Umgangssprachlich werden allerdings gerne alle Dateien die irgendwie auf dem ISO Base Media File Formt basieren als MP4 Dateien bezeichnet. Nur bei 3GPP Dateien macht man seltsamer Weise eine Ausnahme.


    -> Je nach dem für was man Multiplexen will sollte man sol gdsmux, mp4box oder mp4creator nutzen.

    Cu Selur

    Gdsmux würde ich wegen Verwendung der privaten ObjectTypeIndication nicht mehr benutzen.

    MP4Box hält sich an den Standard (ISO/IEC 14496-14) wenn man es richtig bediehnt ;) . Aber dieser Standard wird eigentlich von niemanden benutzt, also ...
    Auch ist das erstellen von Dateien mit mehr als einen Audio Track aufwendiger. Aber zum Beispiel mit http://mp4menugui.sourceforge.net/ möglich oder man erstellt eine BIFS Text Datei von Hand.
    Für Dateien mit einem Audio Track reicht es bei MP4Box ein "-isma" mit anzugeben.
    Zur Zeit steht der Aufwand aber in keinem Verhältnis zum Nutzen, da es so gut wie keine Player gibt die das unterstützen.

    So macht eingentlich nur das erstellen von M4V Dateien Sinn. Sie werden von allen Software Playern abgespielt (da die meißten Player im Grunde QuickTime Format Player sind) und diese Dateien sind kompatibel zu AppleTV.
    Dafür bietet sich http://www.dvbportal.de/projects/mp4muxer/ oder http://handbrake.fr/ an.

    Gdsmux würde ich nicht mehr verwenden, da es für auf dem ISO Base Media File Formt (ISO/IEC 14496-12) basierende Formate mittlerweile einen offiziell registrierten Code Point gibt. ( http://www.mp4ra.org/codecs.html )

    Der Code Point "ac-3" wird so weit ich weiß von Apples iTunes Format(*.m4v) verwendet.
    Auch scheint es so, dass Nero den Code Point "ac-3" in ihrem auf ISO/IEC 14496-12 basierenden Format verwenden will. (Nero sollte sich wirklich überlegen ob sie nicht einen neuen Haupt File Brand(ftyp) einführen und auch wie Apple oder 3GPP eine andere Datei-Endung verwenden, denn korrekte MP4 Dateien nach ISO/IEC 14496-14 erstellt Nero nicht wirklich.)

    Für das MP4 File Format (ISO/IEC 14496-14) wurde die ObjectTypeIndication "0xA5" registriert. ( http://www.mp4ra.org/object.html )

    MP4 Dateien(ISO/IEC 14496-14) mit AC3 Audio kann man mittlerweile mit MP4Box erstellen - siehe: http://forum.doom9.org/showthread.php?t=142190

    Wenn man die Dateien mit AppleTV abspielen will, sollte man besser auf das Format von Apple "M4V" zurückgreifen und MP4Muxer verwenden - siehe:
    http://forum.doom9.org/showthread.php?t=138445

    Mit einer aktuellen VLC Version sollte es eigentlich klappen. Hatte gerade keine MP4 Datei mit Delay zur Hand. Also habe habe ich ein Delay bei einer Datei angegeben, die eigentlich keins benötigte. Als Ergebnis hatte ich eine Datei die VLC danach asynchron abspiele, das Dealy also berücksichtigte. (Getestet unter openSUSE mit VLC 0.9.3)

    Ob der Haali Media Splitter oder der interne Splitter des MPC die elst Box unterstützt, weiß ich nicht.

    MPlayer unterstützt es glaube ich nicht mehr, seit dem der default mp4/mov auf FFmpeg(libavformat) basiert. Der mov Demxuer von MPlayer hatte es glaube ich unterstützt.

    Der Fehler liegt vermutlich bei dem von dir verwendeten Player. MP4Box verwendet für das Delay die Edit List Box. Die Edit List Box wird nicht von jedem Player unterstützt.

    Welche Player hast du getestet?


    ...
    "ISO Reserved Profile" ?! -- Klingt leicht nach "nicht ganz korrekt"...

    Möglich das es sich dabei um ein neues Level für Simpel Profile handelt, dass MP4Box noch nicht kennt. So weit ich weiß, gibt es ein paar neue Level für SP, die höhere Auflösungen erlauben. Finde dazu im Augenblick leider nichts konkretes.


    MediaInfoCLI.exe 16042008001.mp4

    Code
    General #0
    Complete name                : F:\Downloads\16042008001.mp4
    Format                       : MPEG-4
    Format/Info                  : ISO 14496-1 [b]version 2[/b]
    ...


    Ist "version 2" ein Hinweis auf MPEG4-ASP (also eher ähnlich DivX / Xvid)?


    Format/Info bezieht sich auf das verwendete Datei Format, bzw. welcher Main File Brand (ftyp Box) verwendet wird. In der Datei hier ist das "mp42".

    So das die Anzeige "ISO 14496-1 version 2" etwas unglücklich gewählt ist.
    In älteren Version von MPEG-4 Systems (ISO/IEC -14496-1) beinhaltete diese noch das "MP4 File Format" Version 1(Haupt ftyp "mp41") und BIFS.

    Später wurde dieses aufgesplittet in "ISO Base Media File Format"(ISO/IEC 14496-12), "MP4 File Format"(ISO/IEC 14496-14), Systems(ISO/IEC 14496-1) und Scene description (BIFS) and Application engine (MPEG-J)(ISO/IEC 14496-11) um eine einfachere Wiederverwertbarkeit der einzelnen Teile zu gewährleisten. Wenn man will kann man BIFS & CO auch in einem MPEG-2 Transport Stream verwenden, siehe MPEG-2 Systems (ISO/IEC 13818-1).

    Bei einem Main File Brand von "mp42" sollte eigentlich noch ein BIFS/OD Track und IOD vorhanden sein damit die Datei dem MP4 File Format(ISO/IEC 14496-14) entspricht. Das wird aber im allgemeinen von dem Meisten Firmen großzügig ignoriert.
    Die Datei wäre Standard konformer hätte man als Main ftyp 3gp5 und als Datei Erweiterung .3gp verwendet. Aber nun Gut, es läßt sich von diversen Playern abspielen.


    Der FourCC "mp4v" weist eigentlich auch auf ASP hin, für AVC wäre der FourCC wohl eher "avc1".

    Nicht zwangsläufig, bei der Verwendung von "mp4v" kann das verwendete Video Format durchaus MPEG-2 sein, beim MP4 File Format ist das ausschlaggebende die objectTypeIndication. Das bei H.264/AVC ein Ausnahme gemacht wird und eine andere Sampleentry Box verwendet wird ist aber korrekt.

    Hierzu ein Auszug aus ISO/IEC 14496-12:

    Bin ja mal gespannt ob Apple die bei ihrem iTunes File Format (main ftyp "m4v ") verwendete Sampleentry Box fürt ac3 Audio noch registrieren wird http://mp4ra.org/, und es somit auch für das MP4 File Format eine ObjectTypeIndication geben wird. Dann hätten wir 3 verschiedene Möglichkeiten um ac3 Audio in auf dem ISOBase Media Format basierenden Containern zu verwenden, da die Sampleentry Box die von Apple TV verwendet wird sich von der von Nero unterscheidet.
    Na ja mal sehen ;) .

    Zu den Untertitel, vielleicht hilft dir dieses weiter:
    http://forum.doom9.org/showthread.php?t=136170

    Ich habe es noch nicht ausprobiert und kann auch nicht viel dazu sagen. Auch kann ich nicht genau sagen ob die so entstandene Datei lieber als QuickTime Format, iTunes Format oder MP4 Format Datei bezeichen sollte.
    Laut verlinkten Forums Beitrag wird es zumindest abgespielt, aber das ist noch keine Garantie dafür das man eine Datei hat, die sich an ein bestimmtes Format/Standard hält, oder eine Mischung aus verschieden auf dem ISO Base Media Format(ISO/IEC 14496-12) basierenden Formaten.

    Was sein Problem mit der dunklen Hintergrund hinter den Untertiteln betrifft, hat er diesen eventuell selber beim erstellen des Timed Text Track im Notepad definiert.

    Zur "sbtl" Atom/Box konnte ich auf die Schnelle nichts finden, vermute also das diese Box im iTunes Format oder QuickTime Format definiert ist. Würde wenn die Rest in dieser Datei auch zu dem entsprecheden Format passt einer solchen Datei eher die Endung *.m4v (iTunes Format) und den Main File Brand (ftyp Box) dem entsprechend setzen.

    Ich kenn mich im MPEG4 Umfeld nicht so aus, gibt es dort vergleichbares zu den MPEG2 Transport und Program Streams und wenn ja, auf welchen Typ von Container/Stream bezieht sich dein erster Satz?


    Mein Satz bezieht sich wie geschrieben auf den MP4 Format(Container) [ISO/IEC 14496-14] bzw. ISO Base Media File Format[ISO/IEC 14496-12] wo die bekannte Box Struktur(früher Atom genannt) definiert ist.

    In MPEG-2 Transport Streams können soweit ich weiß auch MPEG-4 Visual und AVC/H.264 verwendet werden. Habe aber keine aktuelle Version von MPEG-2 Systems [ISO/IEC 13818-1] und kenne mich da auch nicht aus.


    Welches Inhaltsfeld der moov Box erfordert die Kenntnis des gesamten Streams? Erlaubt der Standard die Platzierung am Dateianfang?


    Unter der stbl box(Sample Table Box) ist ein Art Index, der sich nur erstellen lässt wenn die entsprechenden Audio und Video Frames bekannt sind.
    ...

    Wenn du mehr über das ISO Base Media File Format[ISO/IEC 14496-12] wissen willst benutze mal https://localhost/www.google.de , der Standard ist frei erhältlich.

    Die moov Box ist am Anfang und Ende der Datei erlaubt.

    [EDIT]Ich würde aber auch bei einem MPEG-2 Transport Stream eher rtp als http verwenden[/EDIT]