Giter VIP home page Giter VIP logo

Comments (5)

joncampbell123 avatar joncampbell123 commented on June 23, 2024

At this moment, the raw capture mode is more of a direct capture of the pixel values as rasterized by the monitor, so if you're using a 200-line graphics mode on VGA, and the VGA is doubling each scan line as VGA normally does in those modes, then the raw capture will contain the raw pixel values, scan line doubled.

Good point on the aspect ratio fields though, I think I can figure out how to use libpng to write that.

from dosbox-x.

joncampbell123 avatar joncampbell123 commented on June 23, 2024

I'm sorry if "raw" is confusing in that it's not exactly a snapshot of video memory, but only a snapshot of the raw pixel values from video memory as they are rasterized to the screen.

from dosbox-x.

joncampbell123 avatar joncampbell123 commented on June 23, 2024

http://www.libpng.org/pub/png/book/chapter11.html#png.ch11.div.9

image

And the libpng function is png_set_pHYs but only if PNG_pHYs_SUPPORTED.

#ifdef PNG_pHYs_SUPPORTED
PNG_EXPORT(150, void, png_set_pHYs, (png_const_structrp png_ptr,
    png_inforp info_ptr, png_uint_32 res_x, png_uint_32 res_y, int unit_type));
#endif

from dosbox-x.

joncampbell123 avatar joncampbell123 commented on June 23, 2024

Done. See latest commit.

from dosbox-x.

johnnovak avatar johnnovak commented on June 23, 2024

FYI, DOSBox Staging now has a revised raw capture mode which writes the raw framebuffer, e.g., 640x200 as 640x200.

Plus we also write the aspect ratio info into the PNG header, and we introduced the "upscaled" mode which essentially does aspect ratio correct upscaling via bilinear sharp to roughly 1200px of vertical resolution as most image viewers can only do square pixels.

from dosbox-x.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.