The appliance should take STREAM.CONTAINER payloads and spit out frames as png files.
The appliance should allow the user to specify the number of frames per second.
Question
We need to decide whether the resulting frames are (A) written to disk or (B) emitted directly as part of the payload.data or (C) some flavor of both.
This question has deeper implications, since this will set a precedent for all kinds of appliances that generate self contained outputs. For instance, will the SRT appliance (#58) write to a file? What about an appliance that generates gifs from these extracted frames? Etc.
Similarly, what about appliances that, for instance, burn captions onto a keyframe? Or highlight something about that keyframe? Should those appliances write directly to disk?
To be clear: we do ultimately want the ability to write to a disk. The question is simply whether that should be:
An appliance configuration (e.g. "please store a copy of each image this appliance generates")
If the TVK implementation should handle the logic for writing to disk (i.e. countertop.on('data', (payload) => write image payloads to disk)
If we should create appliances whose sole purpose is to record various types of data (e.g. ImageRecorderAppliance which can be added to a topology and instructed to record certain types of output from certain stations in certain ways)
I'm leaning into the idea that, at least for now, appliances should never write to the file system (unless they need to internally).
This means that TVK implementations would be responsible for writing files however / wherever they would like, which gives them full control over things like naming, location, etc.
Task
Description
The appliance should take STREAM.CONTAINER payloads and spit out frames as png files.
The appliance should allow the user to specify the number of frames per second.
Question
We need to decide whether the resulting frames are (A) written to disk or (B) emitted directly as part of the
payload.data
or (C) some flavor of both.This question has deeper implications, since this will set a precedent for all kinds of appliances that generate self contained outputs. For instance, will the SRT appliance (#58) write to a file? What about an appliance that generates gifs from these extracted frames? Etc.
Similarly, what about appliances that, for instance, burn captions onto a keyframe? Or highlight something about that keyframe? Should those appliances write directly to disk?
To be clear: we do ultimately want the ability to write to a disk. The question is simply whether that should be:
countertop.on('data', (payload) => write image payloads to disk
)ImageRecorderAppliance
which can be added to a topology and instructed to record certain types of output from certain stations in certain ways)I'm leaning into the idea that, at least for now, appliances should never write to the file system (unless they need to internally).
This means that TVK implementations would be responsible for writing files however / wherever they would like, which gives them full control over things like naming, location, etc.