makedng(1)

πŸ“¦
version 0.2.2 Β· 5 versions
, in ubuntu resolute, ubuntu stonking

okay bestie, sit down, hydrate, and let me tell you about makedng(1) β€” it's from the General Commands Manual and it's genuinely one of the most lowkey useful little tools out there. πŸ’–

✨ NAME ✨

makedng β€” pack raw sensor data into a dng file with metadata πŸŽ€

🌸 SYNOPSIS 🌸

makedng [OPTIONS] input-file output-file

OPTIONS := { -w width | -h height | -p pixfmt | -m make,model | -s
software | -o orientation | -n r,g,b | -b r,g,b | -e program }

πŸ¦‹ DESCRIPTION πŸ¦‹

So here's the vibe: it reads your raw sensor data from a file, and it generates a DNG 1.4 compliant file with all the metadata you need to actually render that file correctly. That's it. That's the whole job. And it does it flawlessly. πŸ’…


πŸ’œ OPTIONS πŸ’œ

  • -w width, -h height, --width width, --height height β€” sets the width and height of your source data. This is a required option, no skipping it bestie.
  • -p pixelfmt, --pixfmt pixelfmt β€” sets the pixelformat for the source data. It takes a V4L2 fourcc code, or the V4L constant name like "RGGB" and "SRGGB8". Also required. Yeah. Both of them. Required required.
  • -m make,model, --model make,model β€” sets the camera Make and Model as a comma separated string. πŸŽ€
  • -s software, --software software β€” sets the name of the camera software that was used to take the picture.
  • -o orientation, --orientation orientation β€” sets the orientation of the image data, as a number from 1-8 straight out of the DNG specification.
  • -c dcp-file, --calibration dcp-file β€” loads a DCP calibration file and appends the color profile onto the final DNG. glow up unlocked ✨
  • -n red,green,blue, --neutral red,green,blue β€” sets the neutral whitepoint for the picture as the 3 floating point gain values.
  • -b red,green,blue, --balance red,green,blue β€” sets the analog sensor gain for the three color channels, as three comma separated floats.
  • -e program, --program program β€” sets the exposure program in the EXIF data, using one of the program numbers from the DNG spec.
  • -t seconds, --exposure seconds β€” sets the exposure time for the picture in seconds (eg. 0.01 for 1/100).
  • -i iso-speed, --iso iso-speed β€” sets the ISO speed rating for the picture.
  • -f fnumber, --fnumber fnumber β€” sets the aperture size, aka the f-number, of the picture (2.2 for f/2.2).
  • -l focal-length,crop-factor | -l focal-length, --focal-length len,crop, --focal-length len β€” sets the focal length for the lens. And listen: if you don't supply a crop factor for the system, it just assumes a 35mm full-frame sensor. iykyk.

🌈 PIXEL FORMATS 🌈

The pixel format argument accepts the following values:

πŸ’« 8-bit bayer formatted data, this matches with MIPI RAW8:

  • RGGB, SRGGB8: RG,GB bayer pixel data
  • GRBG, SGRBG8: GR,BG bayer pixel data
  • GBRG, SGBRG8: GB,RG bayer pixel data
  • BGGR, SBGGR8: BG,GR bayer pixel data

πŸ’« 10-bit bayer formatted data. transmitted as 16-bit format in 8 bytes:

  • RG10, SRGGB10: RG,GB bayer pixel data
  • BA10, SGRBG10: GR,BG bayer pixel data
  • GB10, SGBRG10: GB,RG bayer pixel data
  • BG10, SBGGR10: BG,GR bayer pixel data

πŸ’« 10-bit bayer formatted data packed into 5 bytes, this matches with MIPI RAW10:

  • pRAA, SRGGB10P: RG,GB bayer pixel data
  • pgAA, SGRBG10P: GR,BG bayer pixel data
  • pGAA, SGBRG10P: GB,RG bayer pixel data
  • pBAA, SBGGR10P: BG,GR bayer pixel data

πŸ’« 12-bit bayer formatted data, transmitted as 16-bit format in 8 bytes:

  • RG12, SRGGB12: RG,GB bayer pixel data
  • BA12, SGRBG12: GR,BG bayer pixel data
  • GB12, SGBRG12: GB,RG bayer pixel data
  • BG12, SBGGR12: BG,GR bayer pixel data

πŸ’« 12-bit bayer formatted data packed into 6 bytes, this matches with MIPI RAW12:

  • pRCC, SRGGB12P: RG,GB bayer pixel data
  • pgCC, SGRBG12P: GR,BG bayer pixel data
  • pGCC, SGBRG12P: GB,RG bayer pixel data
  • pBCC, SBGGR12P: BG,GR bayer pixel data

πŸ’« 16-bit bayer formatted data:

  • RG16, SRGGB16: RG,GB bayer pixel data
  • GR16, SGBRG16: GR,BG bayer pixel data
  • GB16, SGBRG16: GB,RG bayer pixel data
  • BYR2, SBGGR16: BG,GR bayer pixel data

πŸ‘‘ EXPOSURE PROGRAMS πŸ‘‘

The defined exposure programs in the DNG specification are:

  • 0: Undefined exposure program (default)
  • 1: Full manual program
  • 2: Full auto program
  • 3: Aperture priority
  • 4: Shutter priority
  • 5: Creative program
  • 6: Action program (fast shutter)
  • 7: Portrait program (Large aperture)
  • 8: Landscape program (Small aperture)
ok that's literally the whole page bestie, go make some DNGs, you got this 🫢

makedng πŸ’– version stamped 2025-11-11, and yeah the footer says makedng(1) again because it's iconic like that. mwah πŸ’‹ periodt.

πŸ“¦ where this page comes from