auto key_data = channel_.ogl().create_host_buffer(frame->image_data().size(), host_buffer::write_only); \r
fast_memsfhl(key_data->data(), frame->image_data().begin(), frame->image_data().size(), 0x0F0F0F0F, 0x0B0B0B0B, 0x07070707, 0x03030303);\r
std::vector<int16_t> audio_data(frame->audio_data().begin(), frame->audio_data().end());\r
- return make_safe<read_frame>(channel_.ogl(), std::move(key_data), std::move(audio_data));\r
+ return make_safe<read_frame>(std::move(key_data), std::move(audio_data));\r
}\r
\r
return make_safe<read_frame>();\r
auto image = mix_image(frames);\r
auto audio = mix_audio(frames);\r
\r
- return make_safe<read_frame>(channel_.ogl(), std::move(image), std::move(audio));\r
+ return make_safe<read_frame>(std::move(image), std::move(audio));\r
}\r
catch(...)\r
{\r
{\r
std::shared_ptr<host_buffer> image_data_;\r
std::vector<int16_t> audio_data_;\r
- ogl_device& ogl_;\r
\r
public:\r
- implementation(ogl_device& ogl, safe_ptr<host_buffer>&& image_data, std::vector<int16_t>&& audio_data) \r
+ implementation(safe_ptr<host_buffer>&& image_data, std::vector<int16_t>&& audio_data) \r
: image_data_(std::move(image_data))\r
- , audio_data_(std::move(audio_data))\r
- , ogl_(ogl){} \r
+ , audio_data_(std::move(audio_data)){} \r
\r
const boost::iterator_range<const uint8_t*> image_data()\r
{\r
}\r
};\r
\r
-read_frame::read_frame(ogl_device& ogl, safe_ptr<host_buffer>&& image_data, std::vector<int16_t>&& audio_data) \r
- : impl_(new implementation(ogl, std::move(image_data), std::move(audio_data))){}\r
+read_frame::read_frame(safe_ptr<host_buffer>&& image_data, std::vector<int16_t>&& audio_data) \r
+ : impl_(new implementation(std::move(image_data), std::move(audio_data))){}\r
read_frame::read_frame(){}\r
const boost::iterator_range<const uint8_t*> read_frame::image_data() const\r
{\r
{\r
public:\r
read_frame();\r
- read_frame(ogl_device& ogl, safe_ptr<host_buffer>&& image_data, std::vector<int16_t>&& audio_data);\r
+ read_frame(safe_ptr<host_buffer>&& image_data, std::vector<int16_t>&& audio_data);\r
\r
virtual const boost::iterator_range<const uint8_t*> image_data() const;\r
virtual const boost::iterator_range<const int16_t*> audio_data() const;\r