27 lines
742 B
C++
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;
|
|
};
|