Prinzipielles Vorgehen: Fotos auf DVD

  • Nachdem ich bereits die erste Versuche unternommen habe, einen Film aus Bildern zu erstellen und mit dem Ergebnis (qualitativ) nicht so ganz zufrieden war wollte ich die Profis nochmals fragen wie den hier prinzipiell am besten vorgegangen wird.

    Ausgangsmaterial:
    Bilder einer Digicam in Auflösungen von 1600 x 1200 (als jpg)

    Ziel:
    MPEG-Video für DVD

    Meine Schritte waren:
    1. Resizen der Bilder auf 768 x 576
    2. Zusammenstellung der Bilder mittel Ulead Media Studio zu einem Film
    3. Erstellung eines AVI mit Ligos XP 5.2 - Komprimierung
    4. Resizen des Films auf 704 x 576
    5. Umwandel mittels TMPEG in ein mpg-Video

    Problem:
    Heftigstes Flimmern, insbesondere bei Landschaftsbildern mit viel Grün

    Fragen:
    1. Ist es besser, die Bilder im Originalformat zu verwenden (also 1600 x 1200) ?
    2. Ist es besser, das avi-Video unkomprimiert zu erstellen ?
    3. Ist es besser, das Video gleich aus dem Media Studio heraus als mpg zu erstellen?
    4. Wie gut ist TMPEG?

  • Ich würde das ganze komplett in Avisynth erledigen.

    Die Rotation der Erde wurde in den letzten Jahren primär durch sich im Grab umdrehende Musiker angetrieben - Mainstream sei dank.

  • Zitat

    Kann man da zum Schluss ein mpg-Video erstellen?

    Ich hab das Gefühl , du weißt nicht , was Avisynth ist ;)
    Avisynth ist "nur" ein Frameserver.
    Du brauchst natürlich noch einen Encoder.
    Ich kann dir QuEnc 0.6 empfehlen.

    Zitat

    Hat das qualitative Vorteile?

    Wenn ich mir deine Vorgehensweise so anschaue:ja:

    Die Rotation der Erde wurde in den letzten Jahren primär durch sich im Grab umdrehende Musiker angetrieben - Mainstream sei dank.

  • Das Flimmern dürfte daran liegen, dass der Fernseher abwechselnd jede zweite Zeile darstellt. Zu viele Details im Bild wechseln sich mit jeder 50stel-Sekunde ab. Das Bild ist einfach "zu scharf / zu detailreich". Abhilfe schafft da eigentlich nur, sie künstlich unscharf zu machen, insbesondere in senkrechter Richtung (wenn du in deinem Malprogramm "Bewegungsunschärfe" hast - perfekt).

    Auch der Zwischenschritt über Ligos/Indeo 5.2 halte ich für ungünstig, verlustfrei komprimierende Codecs (wie HuffYUV) sind sicherer - ganz unkomprimiert ist aber Verschwendung; im Grunde hätte man das ganze vielleicht auch komplett in AviSynth erledigen können, und gar kein AVI zwischendurch speichern müssen.

    TMPGEnc ist vermutlich besser als der MPEG-Encoder im Media-Studio, vor allem weil das Ergebnis ja auch halbwegs DVD-konform sein soll (keine Ahnung, ob Media-Studio das kann oder nicht).
    __

    :rolleyes: Eastermeyer! - Empfiehlt direkt QuEnc, obwohl TMPGEnc schon vorhanden ist.

    Der HC-Encoder wäre ebenfalls sehr gut und auch noch kostenlos, erfordert aber - wie QuEnc - auch YV12-Video, da muss man geradezu zwangsläufig mit AviSynth arbeiten.

  • Wie gut das Resizen in Schritt 1 bei Dir war, weiß ich nicht, hängt von der verwendeten (Bildbearbeitungs-)Software ab.

    Aber 2x resizen würde ich lassen:

    Du könntest die Bilder in Avisynth laden und direkt auf 704x576 resizen. Ich kenne mich mit Mpeg2-Encodern nicht so aus, aber vermutlich schlucken die Avisynth-Skripte.
    Hat (außer daß Du eine Resize-Schritt sparst, der Qualität kostet) einen weiteren Vorteil, da Du den Resizer bei Avisynth nach Deinen Bedürfnissen (Schärfen-Weichzeichnen) anpasen bzw. aussuchen kannst.

    Grüße!
    Trekkie2

  • Zitat von LigH

    Abhilfe schafft da eigentlich nur, sie künstlich unscharf zu machen,

    Das kann man aber auch mit Avisynth machen ;)

    Zitat von LigH

    Eastermeyer! - Empfiehlt direkt QuEnc, obwohl TMPGEnc schon vorhanden ist.

    :zwingern:

    Die Rotation der Erde wurde in den letzten Jahren primär durch sich im Grab umdrehende Musiker angetrieben - Mainstream sei dank.

  • P.S.: 1600 x 1200 ist 4:3 (1600 / 1200 = 1,33periode), d.h. du kannst dir den Zwischenschritt auf 768 x 576 sparen und direkt auf 704 (bzw. gaaanz korrekt 702 + jeweils 1 Pixel schwarzen Rand links und rechts) x 576 resizen.

    /EDIT: war zu langsam ;)

    Noch was wichtiges: den Encoder dann bitte auch auf progressives Eingangsmaterial und progressives Encoding einstellen.

    Gruß, Christian

  • Ich fasse dann mal zusammen:

    1)Du lädst die Bilder in AviSynth (Stichwort:ImageReader)
    2)Du veränderst die Große auf 702x576 (Stichwort:Resize)
    3)Du machst links und rechts jeweils 1nen schwarzen Pixel dran (Stichwort:AddBorders)
    4)Du unschärfst das Bild leicht (Stichwort:Blur)

    Die Rotation der Erde wurde in den letzten Jahren primär durch sich im Grab umdrehende Musiker angetrieben - Mainstream sei dank.

  • Prima. Und dann kümmern wir uns noch um die Einhaltung unserer Forumregeln:

    - Einen Beitragstitel mit aussagekräftigem Inhalt;
    - Verschieben in ein Forum, das inhaltlich passt.
    __

    Was mir noch einfällt:

    Wie lange soll jedes Bild zu sehen sein?

    Wenn das jeder selber entscheiden können soll (per Fernbedienung), müssen alle Bilder als I-Frames encodiert sein, damit man dort Kapitel einfügen kann, sonst sieht man jedes Bild nur für 1/25 Sekunde.

    Eigentlich müssen dazu aber auch noch spezielle Strukturen untergebracht werden, damit so hohe Bitraten überhaupt verdaulich werden. Also eigentlich ist das Encodieren von Einzelbildern als ein Videostrean gar nicht sinnvoll, nicht?! ... :grübeln:

    Oder man encodiert es so, dass jedes Bild mehrere Sekunden lang gezeigt wird. Ist aber eigentlich Platzverschwendung.

    Vielleicht sollte man so was doch lieber einem Authoringtool überlassen, das diesen speziellen Fall korrekt beherrscht.

  • Weil ich im Moment selber in der Richtung was mache, hier mal meine Gedanken, Schritte etc.....

    BildResizen mit imagemagick:
    montage -background none -filter Lanczos -geometry 764x552+12+12 -quality 100 QUELLBILD ZIELBILD###.png

    * hier entsteht aus verschiedenen Bildgrößen ein RGB32 Bild (Hintergrund Transparent)

    Ueberblenden mit Avisynth

    Code
    bg=ImageReader(hintergrund.png,0,0,25,use_DevIL=false,info=false,pixel_type="rgb32").Loop(25)
    bildA=ImageReader(ZIELBILDA,0,0,25,use_DevIL=false,info=false,pixel_type="rgb32").Loop(24)
    bildB=ImageReader((ZIELBILDB,0,0,25,use_DevIL=false,info=false,pixel_type="rgb32").Loop(24)
    
    
    bildAni=Dissolve(bildA,bildB,24)+Trim(bildB,0,-1)
    bildAni=Layer(bg,bildAni,"add",255,0,0)
    bildAni=Lanczos4Resize(bildAni,720,576)
    return ConvertToYV12(bildAni)

    * hier werden die Bilder mit einen Übergang erzeugt und auf den Hintergrund gelegt.

    Encoden mit HC
    per Batch das AVISynth in MPEG2 Video encoden (WICHTIG! LASTIFRAME)

    Authoring mit Muxman
    nach jedem Video bleibt es maximal 254Sekunden stehen und man kann per Next zum nächsten "hüpfen"

    Dabei ist Laufplan ganz einfach:
    BILD1: Übergang(24frames) Menü > Bild1 > StillFrame (warten)
    BILD2: Übergang(24frames) Bild1 > Bild2 > StillFrame (warten)
    usw
    BILDx: Übergang(24frames) Bildx > Menü


    noch Fragen?

  • Für sowas habe ich auch schon etwas gemacht, allerdings waren das Ausgangsmaterial mehrere hunder JPGs, die auch Hochformat in einem Ordner lagen.
    Im "Zeilenändernde Bat Datei gesucht" Thread habe ich auch eine Super Lösung bekommen und die große Menge an Bildern in den Griff zu bekommen.

    Um auch alle Auflösungen eines Bildes, und sei sie hochformat oder doppelt so breit wie hoch, habe ich dieses russische, aber funktionstüchtige Skript geschrieben.

    Code
    function boxto43(clip in){#gibt 4/3 anamorph auf D1PAL zurueck  borders_h=Round(((in.height*1.333)-in.width)/2) #hier werden ganzzahlige borders berechnet,  borders_v=Round(((in.width*0.75)-in.height)/2)  #die aber auch negativ werden koennen!    borders_h = (borders_h<0) ? 0 : borders_h       #negative zahlen werden hier auf 0 gesetzt  borders_v = (borders_v<0) ? 0 : borders_v     in.AddBorders(borders_h,borders_v,borders_h,borders_v).LanczosResize(704,576)  Addborders(8,0,8,0)  return last  }ImageReader("bild.png",0,0,50).boxto43().Loop(250)


    Um die Zeile nicht eintausendmal kopieren zun ändern zu müssen reichte ein

    Code
    for %a in (*.jpg) do @echo ImageReader("%a",0,0,50).boxto43().Loop(250), + \ >> datei.txt

    in der Kommandozeile.

    Bereits ausprobiert, funktioniert, schluckt aber eine gewaltige Menge Speicher.

    Och, schon wieder zu spät, Katjarella hat da schon was feines...

  • Zitat von Eastermeyer

    Ich fasse dann mal zusammen:

    1)Du lädst die Bilder in AviSynth (Stichwort:ImageReader)
    2)Du veränderst die Große auf 702x576 (Stichwort:Resize)
    3)Du machst links und rechts jeweils 1nen schwarzen Pixel dran (Stichwort:AddBorders)
    4)Du unschärfst das Bild leicht (Stichwort:Blur)

    Super, vieln Dank für die zahlreichen Antworten. Werd heute abend wohl wieder lange vor der Kiste sitzen :)

  • Hallo kostolany, bevor Du Dich jetzt mit AVISynth rumschlägst... Mal ne Frage:
    wie soll die BilderShow aussehen?
    A: Bild für Bild ohne Animation, ohne Musike etc oder
    B: ein echter Film mit schönen Übergängen, Motion-Fahrten und Sound?

    Bei B: empfehle ich Dir ProShow Gold, das ist eines der Besten auf dem Markt und dort kannst Du auch den Film als DVD MPEG abspeichern und in zb DVDLab importieren.

  • Plane auch demnächst mal neben dem Hauptfilm zusätzlich auch Fotos auf eine DVD zu packen, jedoch hätte ich eigentlich nicht vor mit AviSynth einen Film zu generieren (was grundsätzlich natürlich OK wäre), sondern wollte eigentlich die in DVDLab Pro integrierte Slideshow-Funktionalität nutzen:

    Da kann man ja die Fotos einfach reinziehen (vorausgesetzt sie wurden zuvor bereits richtig auf z.B. 704x576 resized), definiert dann wie lange die Fotos angezeigt werden sollen u. das wars. Habs noch nicht versucht, aber hört sich zumindest recht einfach an.

    Im Hauptmenü der DVD sollte man dann auswählen können ob man den Hauptfilm guckt od. die Slideshow.

    Spricht da was dagegen z.B. aus Gründen d. Qualität oder sonst irgendwas?

  • Zitat von Eastermeyer

    Also ich sehe da ein starkes Argument für Avisynth und gegen ProShow Gold:
    [Blockierte Grafik: http://images.photodex.com/layout/2004/buttons/buyit_6995.jpg]


    Das ist ja SEHR BILLIG. schon mal versucht, diese 100te von Animationen und ExtraEffecte mit Avisynth nachzubaun? von der einfachheit gegenüber AviSynth mal angesehen. WINNER: ProShow Gold

    Trotzdem arbeite ich bei Spezial Sachen und Patchverarbeitung mit AviSynth.

    Zitat von grua

    Spricht da was dagegen z.B. aus Gründen d. Qualität oder sonst irgendwas?


    Die Quali der Bilder ist mir zu schlecht. (DVDLab 1Bild=1Frame=~40kb // meine StillShows 1Bild=1Frame=~100-200kb)
    Auch gibt es nicht die Möglichkeit zu Animieren und auf BilligPlayern solls nicht sauberlaufen (StillFrame+Video-Nav-Sectoren+Audio)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!