Seite 1 von 2

Hilfe, Film ruckelt

Verfasst: 03.06.2007 23:37
von Franky
Hallo, ich hab ein ganz großes Problem

Ich habe einen Film erstellt (zumeist Diashow), in dem ich 2 Szenen habe, in denen ich jeweils ein Bild links und ein Bild rechts habe. das eine Bild wird aus dem Bild herraus geschoben, das andere Bewegt sich in die Mitte.

Dazu habe ich noch eine Szene, in der 2 Bilder von jeweils einer Position aus immer größer werden, bis sie halt nebeneinander stehen.

Das Filmformat ist Avi, 720*480pi, habs mal mit 24, mal mit 29 FPS ausprobiert.

Das Problem ist nun, dass eben genannte Szenen extrem flakern, so als ob immer einmal das Nächste Bild in der Reihe, dann aber wieder das erste Bild der gesamten Szene gezeigt wird. Ich hab es schon zerschnitten und die Menge der Stufen halbiert, im Editor kann man auch sehen, das das Flackern nicht an den Bildern eigentlich hängt.

Nun also meine ganz einfache Frage: Wie krieg ich das weg?

Achja, die Szenen hab ich mir mit PB selbst programmiert :mrgreen:

Um euch das Problem mal zu verdeutlichen:

Code: Alles auswählen

InitScreen()
InitSprite()
If OpenScreen(1024,768,32,"Problemzeiger")
    posx1=276
    posy1=404
    posx2=789
    posy2=404
    Repeat 
        ClearScreen(RGB(0,0,0))
        StartDrawing(ScreenOutput())
         FrontColor(RGB(255,255,255))
         DrawingMode(1)
         DrawText(0,0,"So sollte es sein")
         FrontColor(RGB(255,0,0))
         Box(posx1-200*a/100,768-posy1-300*a/100,400*a/100,400*a/100)
         FrontColor(RGB(0,0,255))
         Box(posx2-200*a/100,768-posy2-300*a/100,400*a/100,400*a/100)
        StopDrawing()
        FlipBuffers()
        Delay(15)
        a=a+1
    Until a=100
    ClearScreen(RGB(0,0,0))
        StartDrawing(ScreenOutput())
         FrontColor(RGB(255,255,255))
         DrawingMode(1)
         DrawText(512,384,"Gesehen?")
        StopDrawing()
        FlipBuffers()
        Delay(500)
      
    a=0
    Repeat 
        ClearScreen(RGB(0,0,0))
        StartDrawing(ScreenOutput())
         FrontColor(RGB(255,255,255))
         DrawingMode(1)
         DrawText(0,0,"So isses leider :(")
         FrontColor(RGB(255,0,0))
         If a%4
               Box(posx1-(200*a/100),768-posy1-300*a/100,400*a/100,400*a/100)
               FrontColor(RGB(0,0,255))
               Box(posx2-200*a/100,768-posy2-300*a/100,400*a/100,400*a/100)
         EndIf
        StopDrawing()
        FlipBuffers()
        Delay(15)
        a=a+1
    Until a=100
CloseScreen()
EndIf

Tja und eine Frage hab ich noch. Der 10 Minutenfilm braucht 1,92GB, dat geht doch auch ohne Qualitätsverlust sicher kleiner, oder? ;)

Verfasst: 03.06.2007 23:58
von Kaeru Gaman
womit machst du den film denn?

ich kenn solche flacker-probleme nicht, wenn ich bmp2avi benutze.
dort kann ich beim erstellen auch alle vorhandenen codex auswählen,
was sich eklatant auf die größe auswirken kann.
nachteil ist: ich muss alle einzelbilder als bmp in einem verzeichnis haben,
da muss ich also bei der erzeugung die 2GB vorhalten...

die frage dürfte also sein, womit du es erzeugst.

..und btw. probier mal ne bildrate von 30, das passt besser zu den verfügbaren refresh-raten.

Verfasst: 04.06.2007 16:08
von Alves
Um es kleiner zu halten, würde ich nahträglic hals xVid oder Divx mcodieren. Ist wesentlich kleiner bei gleicher Qualität.

Verfasst: 04.06.2007 16:34
von ts-soft
>> Ist wesentlich kleiner bei gleicher Qualität.
Gleiche Qualität stimmt nicht. Man sieht die Unterschiede, vorausgesetzt man
hat einen halbwegs hochwertigen Monitor.

Verfasst: 04.06.2007 16:38
von Alves
Man sieht einen UNterschied? Im Vergleich zu welchem Codec?

Verfasst: 04.06.2007 16:56
von ts-soft
Alves hat geschrieben:Man sieht einen UNterschied? Im Vergleich zu welchem Codec?
Bei jedem Codec sieht man einen Unterschied zu RAW-AVI, also
unkomprimiert. Je doller die Komprimierung, so schneller sind Unterschiede
zu sehen. XVID und DivX komprimieren sehr gut in sehr guter Qualität, was
aber nicht heißt, das es nicht sichtbar ist. Man bemerkt den Unterschied nicht
unbedingt, wegen nicht genaus gucken oder miesem Monitor.
Die Geschwindigkeit des PCs spielt auch noch eine Rolle, weil
dekomprimieren kostet nunmal Zeit.

Die Aussage: bei gleicher Qualität stimmt also nicht.

Verfasst: 04.06.2007 17:36
von Alves
Okay, also für mich reicht es^^

Verfasst: 04.06.2007 17:44
von ts-soft
Alves hat geschrieben:Okay, also für mich reicht es^^
Zum gucken reicht es, aber zum weiterbearbeiten ist es nicht unbedingt geeignet.

Verfasst: 05.06.2007 14:23
von Thalius
zum Bearbeiten von richtig grossen Videos oder auch mal temporär ohne Qualitätsverlust abzuspeichern gibts mal 3 Codecs .. braucht jedoch shcon ne heftige CPU.

GZIPCodec
LZWCodec
PNGCodec

sind im ACECodecpack enthalten falls jemand braucht.

Wegen Rucklen versuchs mal mit MPEG und schau obs da immernoch so wild tut könnte deine IO sein oder je nachdem wie du deinen Viewer aufgebaut hast ... Solltest auf jedenfall Sprites verwenden und keine Drawing Commands ( Es sei denn du hast Spass dich mit sync raten rumzuschlagen ... ;)

Thalius

Verfasst: 05.06.2007 14:30
von Kaeru Gaman
>> Wegen Rucklen versuchs mal mit MPEG und schau obs da immernoch so wild tut könnte deine IO sein oder je nachdem wie du deinen Viewer aufgebaut hast

>>> Der 10 Minutenfilm braucht 1,92GB

genau das ist der punkt... die datenmenge pro sekunde, die du ziehen willst,
ist einfach viel zu hoch für den BUS, weil es unkomprimiert ist.

10min = 1,92GB
1min = 196,6MB
1sec = 3,2768MB

3.3MB pro sekunde isn fett heftiger stream, das muss das interface erst mal schaffen.
...kein wunder, dass das ruckelt...