Seite 1 von 1

Bilschirmausgabe von PB-Programm Frame-by-Frame speichern

Verfasst: 21.07.2011 17:47
von Delle
Hallo,

gibt es eine Möglichkeit die Bildschirmausgabe eines PB-Programmes Frame-by-Frame z.B. als .bmp zu speichern?

Ich meine jetzt keinen Screengrabber oder sowas sondern das man intern jeden Frame anzeigen und dann abspeichern lässt.

Hab ein kleines "Video" zu einem Musikjingle programmiert und das muss natürlich synchron vorhanden sein...

Danke,
Delle

Re: Bilschirmausgabe von PB-Programm Frame-by-Frame speicher

Verfasst: 21.07.2011 17:56
von Christian+
Meinst du so was wie du mit GrabSprite() und SaveSprite() umsetzen kannst?

Re: Bilschirmausgabe von PB-Programm Frame-by-Frame speicher

Verfasst: 21.07.2011 17:59
von STARGÅTE
Frame-by-Frame z.B. als .bmp zu speichern
Mal angenommen: Auflösung: 1024x768 mit 60FPS ... dann wäre das in einer Sekunde 188 MB
Der Ansatz ist also schon mal völlig falsch.

Wenn du wirklich dein "Video" mitscheiden willst, dann machst du das besser von außen mit zB Screen Capturer.

Die synchronisation übernimmt dabei natürlich das Programm von Purebasic, indem das "Video" zeitkritisch programmit wurde/wird und du den sound von PB starten lässt.

Re: Bilschirmausgabe von PB-Programm Frame-by-Frame speicher

Verfasst: 22.07.2011 07:38
von dige
Wenn Du Dein Demo statt auf den Screen als Video rendern willst, musst Du komplett das
Timing ändern. Also die statt 60 FPS musst Du überlegen wie Du die Abläufe, die einer Sekunde
entsprechen, auf 25 Bilder verteilst.
Das Speichern ist kein Problem. Entweder mittels GrabSprite () oder über den Drawingbuffer()
bzw. am besten einfach alles in ein Bild rendern ...

Re: Bilschirmausgabe von PB-Programm Frame-by-Frame speicher

Verfasst: 22.07.2011 19:39
von Vermilion
Um es platzsparender zu machen könntest du auch ein komprimiertes Format nehmen. Ich würde das Portable Network Graphics Format dafür nehmen, es ist komprimiert und dennoch verlustfrei. Es beansprucht mehr Rechenzeit dies abzuspeichern aber dafür brauchst du nicht so viel Speicherplatz.

Zusammenfügen musst du die Bilder dann mit einem anderen Programm, es geht sogar mit PureBasic und irgendeiner Bibliothek, die mir gerade nicht einfällt.

@Stargate: Im Profi-Video Bereich ist das eigentlich normal mit gigantischen Daten zu hantieren. Unkomprimierte Rohdaten sind auch in der Musikindustrie der Ausgangspunkt für jede weitere Verarbeitung.