Outputting HD still frame sequences?

General discussion about Celestia that doesn't fit into other forums.
Topic author
disc0stu
Posts: 10
Joined: 20.06.2005
With us: 19 years 5 months

Outputting HD still frame sequences?

Post #1by disc0stu » 20.06.2005, 18:57

I need to find a way to output high definition still frame image sequences in celestia and am not sure exactly where to begin (and have tried searching the forums). Any help is greatly appreciated.

Avatar
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 2 months
Location: NY, USA

Post #2by selden » 20.06.2005, 20:04

Unfortunately, Celestia really doesn't have that capability exactly. There are a few awkward workarounds, though.

Some of the video resolution options supposedly are compatible with hidef. You should be able to use a video editor to export individual frames from an uncompressed video file.

Another option would be to take higher resolution screenshots (assuming your monitor and video card are good enough to support a high enough resolution) and use an image processing package to reduce the horizontal and vertical resolutions by different amounts to match the resolution that you need. Don't forget that there are several hi-def standards.

Alternatively, you could use an external framerate convertor to convert the video card's RGB output to something more appropriate.

I hope this helps a little.
Selden

Topic author
disc0stu
Posts: 10
Joined: 20.06.2005
With us: 19 years 5 months

Post #3by disc0stu » 20.06.2005, 20:23

Thanks for the info, that certainly does help. Also, is there any way to write a script that will capture screen shots at given intervals of time? I cant find anything in the scripting guide about how to capture images using a script.

thanks again

Avatar
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 2 months
Location: NY, USA

Post #4by selden » 20.06.2005, 22:21

Apparently a CELX command to do frame capture was added to the source code after v1.4.0pre6 was released. Unfortunately, that's all I know about it right now.
Selden

Harry
Posts: 559
Joined: 05.09.2003
With us: 21 years 2 months
Location: Germany

Post #5by Harry » 21.06.2005, 07:50

selden wrote:Apparently a CELX command to do frame capture was added to the source code after v1.4.0pre6 was released. Unfortunately, that's all I know about it right now.

Taking screenshots was possible with CELX for quite some time. However a command to take screenshots was added to CEL scripting recently, and as a result some restrictions on taking screenshots from CELX were lifted because they can be circumvented by using a CEL script anyway (you can overwrite any file from a CEL script, but this is still not possibly using only CELX).
Harald

Topic author
disc0stu
Posts: 10
Joined: 20.06.2005
With us: 19 years 5 months

Post #6by disc0stu » 22.06.2005, 20:03

I have not been able to find the CEL command to capture an image in the scripting guide that I have been looking at (which I believe is current). Does anyone have a link to a more current scripting guide that includes that command? Otherwise, could you give a shorte example of how the command is used (arguments etc.)


thanks so much

Harry
Posts: 559
Joined: 05.09.2003
With us: 21 years 2 months
Location: Germany

Post #7by Harry » 22.06.2005, 21:15

disc0stu wrote:I have not been able to find the CEL command to capture an image in the scripting guide that I have been looking at (which I believe is current).
The only scripting guide for CEL-scripting I am aware of is the one by Don Goyette, which doesn't include the command.
Does anyone have a link to a more current scripting guide that includes that command? Otherwise, could you give a shorte example of how the command is used (arguments etc.)

Don is no longer actively working on Celestia related stuff, so his guide is not being updated anymore. I am not aware of any effort to take over his work. However the changes to CEL scripting have been relatively minor.

The command I was referring to is:

Code: Select all

capture { type "..." filename "..." }

type can either be "jpeg" or "png". filename is the path where the screenshot is written to, existing files will be overwritten.

There have been two more new commands:

Code: Select all

exit { }

This command terminates Celestia immediately.

Code: Select all

renderpath { path "..." }

This command changes the renderpath. path can be one of basic, multitexture, vp, vp-nv, glsl.

Harald

Topic author
disc0stu
Posts: 10
Joined: 20.06.2005
With us: 19 years 5 months

Post #8by disc0stu » 22.06.2005, 22:30

Upon trying to use the new commands, I get an error: "Unknown command name 'xxxxx' " .

I have version 1.3.2 and am running it on windows. What do I need to support the new commands?

thanks again and sorry for all of the questions.

Harry
Posts: 559
Joined: 05.09.2003
With us: 21 years 2 months
Location: Germany

Post #9by Harry » 22.06.2005, 23:02

disc0stu wrote:Upon trying to use the new commands, I get an error: "Unknown command name 'xxxxx' " .

I have version 1.3.2 and am running it on windows.

You need a version of Celestia that was created later than 2004-12-22.

Harald

Topic author
disc0stu
Posts: 10
Joined: 20.06.2005
With us: 19 years 5 months

Post #10by disc0stu » 06.07.2005, 23:49

Is there any way to have Celestia capture an image every X seconds? Other than simply pasting in a bunch of capture commands (which would not be on precise time intervals), I cant figure any way to do it. Any help is greatly appreciated.

Harry
Posts: 559
Joined: 05.09.2003
With us: 21 years 2 months
Location: Germany

Post #11by Harry » 07.07.2005, 06:31

disc0stu wrote:Is there any way to have Celestia capture an image every X seconds? Other than simply pasting in a bunch of capture commands (which would not be on precise time intervals), I cant figure any way to do it. Any help is greatly appreciated.

A CELX script can do that - a few keys won't work while it is running, you shouldn't press ESC or you'll terminate it and the taking of the screenshots will be pretty annoying because the computer stops while writing it to disk. To allow this to work, you may have to edit your celestia.cfg and set ScriptScreenshotCount(?) value to -1. And it won't work to create smooth animations:

Code: Select all

while true do
  wait(1)
  celestia:takescreenshot("png", "")
end

(I currently can't test if this works as it should - please report errors)

Topic author
disc0stu
Posts: 10
Joined: 20.06.2005
With us: 19 years 5 months

Post #12by disc0stu » 07.07.2005, 18:31

I dont think I was clear enough in my question (or perhaps I am not fully understanding the response).

I am trying to run a celx script and at the same time be capturing images every X seconds without repeating the original celx script.

Does the above response still hold or does the clarification change what needs to be done? Let me know if I need to further clarify my question.

thanks in advance for the help

Harry
Posts: 559
Joined: 05.09.2003
With us: 21 years 2 months
Location: Germany

Post #13by Harry » 07.07.2005, 18:45

In this case you would have to modify the original script, which requires considerably more work.

Topic author
disc0stu
Posts: 10
Joined: 20.06.2005
With us: 19 years 5 months

Post #14by disc0stu » 07.07.2005, 19:12

So are you saying that a series of capture and wait commands is the only way to do it?

Harry
Posts: 559
Joined: 05.09.2003
With us: 21 years 2 months
Location: Germany

Post #15by Harry » 08.07.2005, 14:16

disc0stu wrote:So are you saying that a series of capture and wait commands is the only way to do it?

You would have to put them into the original script at the right places. Getting the timing right is difficult. I still don't understand what you are trying to do: if you want to create screenshots suitable to create a movie sequence, than this won't work due to delays. If you only need screenshots from a couple of key scenes, than this works if you put the capture commands at the right places in the script.

Harald


Return to “Celestia Users”