framerip/tiff_writer.h

27 lines
742 B
C++

#pragma once
#include "frame_extractor.h"
#include <cstdint>
#include <string>
/**
* Writes FrameData objects as uncompressed RGB TIFF files.
* No external library required — the TIFF structure is written by hand.
* This produces baseline TIFF 6.0 files that every TIFF reader understands.
*/
class TiffWriter {
public:
explicit TiffWriter(const std::string& outputDir);
/**
* Write a single frame.
* @param frame Source pixel data (RGB24, packed).
* @param frameIndex Zero-based frame number used to build the filename.
* @return Full path of the written file, or "" on error.
*/
std::string write(const FrameData& frame, uint64_t frameIndex);
private:
std::string m_dir;
};