#include <iterator>
#include <set>
#include <future>
+#include <thread>
-#include <boost/thread.hpp>
#include <boost/algorithm/string/predicate.hpp>
#include <boost/filesystem.hpp>
+#include <boost/thread.hpp>
#include <tbb/atomic.h>
int current_sleep = sleep_millis;
if (current_sleep > 0)
- boost::this_thread::sleep_for(boost::chrono::milliseconds(current_sleep));
+ std::this_thread::sleep_for(std::chrono::milliseconds(current_sleep));
on_send(std::move(frame));
on_send = nullptr;
void generate(const std::wstring& media_file)
{
using namespace boost::filesystem;
- auto base_file = media_path_ / media_file;
- auto folder = base_file.parent_path();
+
+ auto base_file = media_path_ / media_file;
+ auto folder = base_file.parent_path();
+ bool found = false;
for (boost::filesystem::directory_iterator iter(folder); iter != boost::filesystem::directory_iterator(); ++iter)
{
auto stem = iter->path().stem();
if (boost::iequals(stem.wstring(), base_file.filename().wstring()))
+ {
monitor_->reemmit(iter->path());
+ found = true;
+ }
}
+
+ if (!found)
+ CASPAR_THROW_EXCEPTION(file_not_found() << msg_info(L"Media file " + media_file + L" not found"));
}
void generate_all()