Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,15 @@ StreamHistoryOption::StreamHistoryOption()
true
)
, DESCRIPTION(
"Keep a record of the recent video+audio streams. This will allow video capture "
"Keep a record of the recent video streams. This will allow video capture "
"for unexpected events.<br><br>"
"<font color=\"red\">Warning: This feature has a known memory leak. It will leak ~3GB per day per "
"video stream. You have been warned!</font>"
"<br><br>"
// "<font color=\"red\">Warning: This feature has a known memory leak. It will leak ~3GB per day per "
// "video stream. You have been warned!</font>"
// "<br><br>"
"<font color=\"orange\">Warning: This feature is computationally expensive and "
"will require a more powerful computer to run (especially for multi-Switch programs).<br>"
"Furthermore, the current implementation is inefficient as it will write a lot "
"of data to disk. This feature is still a work-in-progress."
// "Furthermore, the current implementation is inefficient as it will write a lot "
// "of data to disk. This feature is still a work-in-progress."
"</font>"
)
, HISTORY_SECONDS(
Expand Down Expand Up @@ -80,13 +80,39 @@ StreamHistoryOption::StreamHistoryOption()
LockMode::UNLOCK_WHILE_RUNNING,
5000
)
, VIDEO_FPS(
"<b>Video Frames per second:</b><br>"
"Lower = choppier video, smaller file size.<br>"
"Higher = smoother video, larger file size.",
{
// {VideoFPS::MATCH_INPUT, "match", "Match Input FPS"},
{VideoFPS::FPS_30, "fps-30", "30 FPS"},
{VideoFPS::FPS_15, "fps-15", "15 FPS"},
{VideoFPS::FPS_10, "fps-10", "10 FPS"},
{VideoFPS::FPS_05, "fps-05", "5 FPS"},
{VideoFPS::FPS_01, "fps-01", "1 FPS"},
},
LockMode::UNLOCK_WHILE_RUNNING,
VideoFPS::FPS_15
)
, JPEG_QUALITY(
"<b>JPEG Quality:</b><br>"
"Video frames are compressed into JPEGs to save space in RAM.<br>"
"Lower = lower quality, lower RAM usage.<br>"
"Higher = high quality, higher RAM usage.",
LockMode::UNLOCK_WHILE_RUNNING,
80,
0, 100
)
{
PA_ADD_STATIC(DESCRIPTION);
PA_ADD_OPTION(HISTORY_SECONDS);
PA_ADD_OPTION(RESOLUTION);
PA_ADD_OPTION(ENCODING_MODE);
PA_ADD_OPTION(VIDEO_QUALITY);
PA_ADD_OPTION(VIDEO_BITRATE);
PA_ADD_OPTION(VIDEO_FPS);
PA_ADD_OPTION(JPEG_QUALITY);
// PA_ADD_OPTION(ENCODING_MODE);
// PA_ADD_OPTION(VIDEO_QUALITY);
// PA_ADD_OPTION(VIDEO_BITRATE);

StreamHistoryOption::on_config_value_changed(this);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,17 @@ class StreamHistoryOption : public GroupOption, public ConfigOption::Listener{
};
EnumDropdownOption<VideoQuality> VIDEO_QUALITY;
SimpleIntegerOption<uint32_t> VIDEO_BITRATE;

enum class VideoFPS{
// MATCH_INPUT,
FPS_30,
FPS_15,
FPS_10,
FPS_05,
FPS_01,
};
EnumDropdownOption<VideoFPS> VIDEO_FPS;
SimpleIntegerOption<uint16_t> JPEG_QUALITY;
};


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@
#include "CommonFramework/Recording/StreamHistoryOption.h"

#if (QT_VERSION_MAJOR == 6) && (QT_VERSION_MINOR >= 8)
//#include "StreamHistoryTracker_SaveFrames.h"
#include "StreamHistoryTracker_SaveFrames.h"
//#include "StreamHistoryTracker_RecordOnTheFly.h"
#include "StreamHistoryTracker_ParallelStreams.h"
// #include "StreamHistoryTracker_ParallelStreams.h"
#else
#include "StreamHistoryTracker_Null.h"
#endif
Expand Down
Loading