VOGONS

Common searches


First post, by loki1985

User metadata
Rank Newbie
Rank
Newbie

i posted a feature request in sf.net
i would like to discuss the possibilities and problems with this RFE.

here is my original post:

it would be some real nice feature to record a sequence from dosbox vga output to a file. best would be an uncompressed avi fil […]
Show full quote

it would be some real nice feature to record a sequence
from dosbox vga output to a file.
best would be an uncompressed avi file. if that is too
much complicated to implement, then my other idea was
just to call the snapshot function after each screen
refresh and create an image sequence which consists of
each frame the dos application displays. therefore: is it
possible to detect when the dos application writes a
new frame to the screen output?
i think it would be very good to match the real FPS the
application displays, cause this would prevent from
getting duplicate images.

another important function is to do a frameskip=0.
i don't know if it is possible to set frameskip in dosbox,
or if it depends on the application running in dosbox.
anyway, this would be a cool feature.
real important is it only when recording.

next request: i can disable sound emulation, but can i
disable screen output, too? not only not displaying
screen output, but not emulating it, too. this would be
cool when trying to write a non-stuttering wave output
file.
there should be a key to en-/disable during runtime,
because navigating in dos without screen output
requires lots of acurate typing 😈

most of these features i request because when playing
intro movies of games in dosbox on my athlon 800
machine i get about 2-3 frames per second.
sorry, but i don't have a newer machine to use...

thanks for the great work and for allowing me to play all
those classic games on my machine again !
i hope you continue the great work!
(your sourceforge activity stats say you do 😈

---loki

forgot to mention:

are scalers/is the scaler always active?
can i deactivate it?
because when recording screen output, i don't need a scaler.
and it needs some ressources and cpu speed, too.
so disabling scalers for recording/screenshot sequence would
also speed up the process a bit

---loki

aVALON eST eXIDII

Reply 1 of 11, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

let's keep it simple
All vga modes and ega modes run on 70 hz.
simple as that.

frameskip =1 means dosbox does 35 Hz.

There's no detection routine whatsoever possible.

For creation of an avi. Ever though of writing your own directX filter ?
which saves the result ?

Water flows down the stream
How to ask questions the smart way!

Reply 2 of 11, by Harekiet

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Sound output while recording is always without stuttering, emulation just becomes slower when it can't keep up. As far as dosbox always using 70 hz isn't entirely correct since it can change depending on vga timing and also cga/tandy resolution all use 60hz like their originals did.

Reply 3 of 11, by Jackal

User metadata
Rank Newbie
Rank
Newbie

Hmm, yes i thinked about it too, do avi sequence, but i couldnt. Then i did something else. I really wanted the bioforge intro in avi sequence, then i did this: i started the game and i still was pressing ctrl+f5 (make screenshot), i had 1600 pictures, then i made that 1600 pictures to sequence with Vegas 4.0. Now i have bioforge intro in divx with audio.

Reply 4 of 11, by icemann

User metadata
Rank Member
Rank
Member

It would be cooler to have an avi record option (epsxe has had that for a fair while IIRC), but it wouldn`t be in my immediate list of much wanted features. Later on down the line, hell yeah. But right now I`d just prefer alittle more speed.

Two stones, two crosses, the rest is just icing. - 7th Guest

Reply 5 of 11, by loki1985

User metadata
Rank Newbie
Rank
Newbie

i got really stuttering wave file when i made a wave output.

the problem is that i have a non-interactive game demo which is simply one video. it's from the game "Hardline".
there are no external decoders for the format (HNS/HNM4 used by Cryo Interactive games) and so my only way is to record from dosbox.
do i have to activate some option to make the program wait for sound to make it non-stuttering ?
and can i set a frameskip=0 ?

thanks in advance

---loki

aVALON eST eXIDII

Reply 6 of 11, by icemann

User metadata
Rank Member
Rank
Member

Well if I could record onto avi all of the great dos game intros I`d have no room left on my hard drive 😜. The 7th Guest, Syndicate, Darkside of Xeen, and Ultima 8 intros would be the absolute first ones I`d record.

Two stones, two crosses, the rest is just icing. - 7th Guest

Reply 7 of 11, by taiken7

User metadata
Rank Member
Rank
Member

hmm.. Im experimenting with adding AVI output ..
but at the moment RAW24bit/30fps generates 256k/frame = 370mb/min !
(and thats only at 320x200, without audio!)

Will post an update when I finish a codec thats at least a little leaner ..

*update* Could look at adding .FLI support, if there is sufficient interest,
looks like it might run at 4mb/min, for comparison .gif_anim runs at 48mb/min.

As a side effect, added .tga support, (without requiring zlib/png).
Still not entirely sure about audio support ..

Reply 8 of 11, by Guest

User metadata

Hi,

AVI-Output would be a great thing. We could create own DVDs of our old Demos without having to install TVOut-Cards (and running into lots of other problems).
Uncompressed Avi is absolutely not necessary. The quality of an MJpeg-Codec is very good at a datarate of about 3MB/sec.

A very cool thing would be, if DOSBox would emulate an 25Hz/30-Monitor. That would give us an Avi with 25/30 fps (PAL/NTSC) and - if the computer is fast enough - every frame on video would be a new calculated one. Just ideal for DVDs.

PLEASE! Consider including such a feature!

...Han Solo/TC

Reply 9 of 11, by DemoFan

User metadata

This feature would be just so NEAT to transform those demos / intros, even protected mode ones now correctly render.

Having a non-realtime, avi output would allow to revival those demos and have them spred again in a way that many people can look.

Prepare the "dosbox-powered" banners 😀

Cheers

Reply 10 of 11, by oneirotekt

User metadata
Rank Member
Rank
Member

If anyone's serious about implementing AVI capture, might I recommend the HuffyUV codec? It's fast (easily realtime at DOS game resolutions), lossless (from which you can edit and encode to Divx, whatever) and free. I've used HuffyUV for AVI output from Visual Boy Advance and some other emulators before.

Reply 11 of 11, by Guest

User metadata

I managed to hack the screenshot feature so that it takes screenshot from every frame. Just commenting one line of code in gui/render.cpp:

if (render.shot.take) {
//render.shot.take=false;

This way, when I press Ctrl-F5, dosbox starts taking screenshots every frame (remember to set frameskip to 0). I also ran into problems with ffmpeg not handling very well sequences that were longer than 4 digits, so I made another change to hardware/hardware.cpp:

- sprintf(file_name,"%s%c%s%03d%s",capturedir,CROSS_FILESPLIT,file_start,last,ext);
+ sprintf(file_name,"%s%c%s%05d%s",capturedir,CROSS_FILESPLIT,file_start,last,ext);

Now I got enough headroom for long sequences and for ffmeg I just used:

ffmpeg -r 70 -i foo_%05d.png test.avi

Have fun! I did, though I'm struggling with one 64k intro which has mixed 70fps and 50fps and there is no easy way to make avi out of it...