更新捕获视频保存到文件和更新编译方法
This commit is contained in:
@@ -4,16 +4,33 @@
|
||||
#include <iostream>
|
||||
#include <thread>
|
||||
#include <chrono>
|
||||
#include <fstream>
|
||||
|
||||
int main(int argc, char* argv[]) {
|
||||
std::string ip = "127.0.0.1";
|
||||
int port = 8888;
|
||||
std::string outputFileName = "";
|
||||
|
||||
if (argc > 1) ip = argv[1];
|
||||
if (argc > 2) port = std::stoi(argv[2]);
|
||||
if (argc > 3) outputFileName = argv[3];
|
||||
|
||||
std::cout << "Starting Windows Sender Demo..." << std::endl;
|
||||
std::cout << "Target: " << ip << ":" << port << std::endl;
|
||||
if (!outputFileName.empty()) {
|
||||
std::cout << "Output File: " << outputFileName << std::endl;
|
||||
}
|
||||
|
||||
// Debug: Open file to save H.264 stream if filename is provided
|
||||
std::ofstream outFile;
|
||||
if (!outputFileName.empty()) {
|
||||
outFile.open(outputFileName, std::ios::binary);
|
||||
if (outFile.is_open()) {
|
||||
std::cout << "Debug: Saving video stream to '" << outputFileName << "'" << std::endl;
|
||||
} else {
|
||||
std::cerr << "Warning: Failed to open output file '" << outputFileName << "'" << std::endl;
|
||||
}
|
||||
}
|
||||
|
||||
ScreenCapture capture;
|
||||
if (!capture.Initialize()) {
|
||||
@@ -67,6 +84,10 @@ int main(int argc, char* argv[]) {
|
||||
|
||||
sender.SendFrame(encodedData, timestamp, width, height, isKeyFrame);
|
||||
// std::cout << "Sent frame: " << encodedData.size() << " bytes, Key: " << isKeyFrame << std::endl;
|
||||
|
||||
if (outFile.is_open()) {
|
||||
outFile.write(reinterpret_cast<const char*>(encodedData.data()), encodedData.size());
|
||||
}
|
||||
}
|
||||
}
|
||||
capture.ReleaseFrame();
|
||||
|
||||
Reference in New Issue
Block a user