-\r
- unsigned char* data = reinterpret_cast<unsigned char*>(bytes);\r
- const size_t frame_size = (format_desc_.width * 16 / 8) * format_desc_.height;\r
-\r
- // Convert to planar YUV422\r
- unsigned char* y = frame->image_data(0).begin();\r
- unsigned char* cb = frame->image_data(1).begin();\r
- unsigned char* cr = frame->image_data(2).begin();\r
- \r
- tbb::parallel_for(tbb::blocked_range<size_t>(0, frame_size/4), [&](const tbb::blocked_range<size_t>& r)\r
- {\r
- for(auto n = r.begin(); n != r.end(); ++n)\r
- {\r
- cb[n] = data[n*4+0];\r
- y [n*2+0] = data[n*4+1];\r
- cr[n] = data[n*4+2];\r
- y [n*2+1] = data[n*4+3];\r
- }\r
- });\r
- frame->set_type(format_desc_.mode);\r