Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Einzelbilder -> als Video darstellen

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Andy19312



Anmeldungsdatum: 22.10.2005
Beiträge: 428

BeitragVerfasst am: 18.11.2009, 13:19    Titel: Einzelbilder -> als Video darstellen Antworten mit Zitat

Kann man mit Hilfe des timers einen Film aus mehreren Einzelbildern darstellen?

ich meine:
Habe ich die zeit 1111.111 sekunden
dann habe ich 1111 Sekunden und 111 Millisekunden.

Wenn jetzt 25 Bilder in der Sekunde dargestellt werden,
dann habe ich 1000 Millisekunden / 25 = 40 ms

also muss ich zu den 111 Millisekunden 40 ms addieren usw.

Das wären dann 151 Millisekunden.

Also bei der Zeit 1111.151 Sekunden, müsste ein Bild dargestellt werden.

Geht das so einfach ?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
28398



Anmeldungsdatum: 25.04.2008
Beiträge: 1917

BeitragVerfasst am: 18.11.2009, 16:01    Titel: Antworten mit Zitat

Naja so inetwa. Du solltest vorher noch schauen, wie lange es dauert ein Bild zu dekodieren und zu blitten... den Wert dann noch mit einrechnen...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1839
Wohnort: [JN58JR]

BeitragVerfasst am: 18.11.2009, 19:39    Titel: Antworten mit Zitat

Code:

dim xtot as double
do
    for x as uinteger = 1 to ubound(picarray)
        put (0, 0), picarray(x)
        do
            if xtot < timer() then exit do
        loop
        xtot = timer + (1 / 25)
    next
loop



MfG
TPM
_________________
[ WebFBC ][ OPS ][ ToOFlo ][ Wiemann.TV ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Andy19312



Anmeldungsdatum: 22.10.2005
Beiträge: 428

BeitragVerfasst am: 18.11.2009, 20:56    Titel: Antworten mit Zitat

Danke euch....

Habs grad noch abgeändert:

Code:

screenres 320,240,32
dim bild (1 to 2000) as any ptr
dim datei(1 to 2000) as string
dim breite as integer
dim hoehe as integer
dim i as uinteger
breite=240
hoehe=320


dim laenge as uinteger
dim texta as string
dim spielzeit as uinteger
DIM xtot AS DOUBLE
DO
    FOR x AS UINTEGER = 1 TO UBOUND(bild)
        laenge = len (str(x))
        if laenge = 1 then
            texta="000"
        end if
        if laenge = 2 then
            texta="00"
        end if
        if laenge = 3 then
            texta="0"
        end if
        if laenge = 4 then
            texta = ""
        end if
        bild(x)=IMAGECREATE(hoehe,breite,0) 
        datei(x)="c:\film\"+texta+str(x)+".bmp"
        bload datei(x),bild(x)
        PUT (0, 0), bild(x),pset
        If bild(x) <> 0 Then ImageDestroy bild(x)
        locate 1,1
        print "BildNr.";x
        spielzeit = x * 40 /1000
        print "Sekunden:";spielzeit
        DO
           
            IF xtot < TIMER() THEN EXIT DO
        LOOP
        xtot = TIMER + (1 / 25)
    NEXT
LOOP
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Andy19312



Anmeldungsdatum: 22.10.2005
Beiträge: 428

BeitragVerfasst am: 18.11.2009, 21:03    Titel: Antworten mit Zitat

ist simple, aber mit ton wirds wahrscheinlich nichts, leider
Irgendwie scheint es auch ein weng ruckelig zu sein.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ThePuppetMaster



Anmeldungsdatum: 18.02.2007
Beiträge: 1839
Wohnort: [JN58JR]

BeitragVerfasst am: 19.11.2009, 08:04    Titel: Antworten mit Zitat

Natürlich is das langsam!!!

Du lädst in jedem durchlauf die bilder neu und entlädst sie wieder, anstat ein array zu erstellen, welches vor schleifenbeginn einfach alle bilder "vor"läd, und später nur mit put anzeigt. (was DEUTLICH an geschwindigkeit ausmacht)


MfG
TPM
_________________
[ WebFBC ][ OPS ][ ToOFlo ][ Wiemann.TV ]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz