graph_->add_guide("tick-time", 0.5);\r
graph_->set_color("tick-time", diagnostics::color(0.0f, 0.6f, 0.9f)); \r
graph_->add_guide("frame-time", 0.5f); \r
- graph_->set_color("frame-time", diagnostics::color(1.0f, 0.0f, 0.0f));\r
- graph_->set_color("sync-time", diagnostics::color(0.5f, 1.0f, 0.2f));\r
+ graph_->set_color("sync-time", diagnostics::color(1.0f, 0.0f, 0.0f));\r
+ graph_->set_color("frame-time", diagnostics::color(0.5f, 1.0f, 0.2f));\r
graph_->set_text(print());\r
diagnostics::register_graph(graph_);\r
\r
executor_.begin_invoke([=]\r
{\r
try\r
- {\r
- frame_timer_.restart(); \r
-\r
- display_frame(frame);\r
-\r
- graph_->update_value("frame-time", static_cast<float>(frame_timer_.elapsed()*format_desc_.fps*0.5));\r
-\r
+ { \r
+ display_frame(frame); \r
graph_->update_value("tick-time", static_cast<float>(tick_timer_.elapsed()*format_desc_.fps*0.5));\r
tick_timer_.restart();\r
}\r
\r
void display_frame(const safe_ptr<core::read_frame>& frame)\r
{\r
- // Copy to local buffers\r
+ // Sync\r
\r
+ sync_timer_.restart();\r
+ unsigned long n_field = 0;\r
+ blue_->wait_output_video_synch(UPD_FMT_FRAME, n_field);\r
+ graph_->update_value("sync-time", sync_timer_.elapsed()*format_desc_.fps*0.5);\r
+ \r
+ frame_timer_.restart(); \r
+\r
+ // Copy to local buffers\r
+ \r
if(!frame->image_data().empty())\r
{\r
if(key_only_) \r
else\r
fast_memclr(reserved_frames_.front()->image_data(), reserved_frames_.front()->image_size());\r
\r
- // Sync\r
-\r
- sync_timer_.restart();\r
- unsigned long n_field = 0;\r
- blue_->wait_output_video_synch(UPD_FMT_FRAME, n_field);\r
- graph_->update_value("sync-time", sync_timer_.elapsed()*format_desc_.fps*0.5);\r
\r
// Send and display\r
\r
}\r
\r
boost::range::rotate(reserved_frames_, std::begin(reserved_frames_)+1);\r
+ \r
+ graph_->update_value("frame-time", static_cast<float>(frame_timer_.elapsed()*format_desc_.fps*0.5));\r
}\r
\r
void encode_hanc(BLUE_UINT32* hanc_data, void* audio_data, size_t audio_samples, size_t audio_nchannels)\r