diff options
Diffstat (limited to 'python/openvino/runtime/common/format_reader/yuv_nv12.cpp')
| -rw-r--r-- | python/openvino/runtime/common/format_reader/yuv_nv12.cpp | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/python/openvino/runtime/common/format_reader/yuv_nv12.cpp b/python/openvino/runtime/common/format_reader/yuv_nv12.cpp new file mode 100644 index 0000000..f25c5cb --- /dev/null +++ b/python/openvino/runtime/common/format_reader/yuv_nv12.cpp @@ -0,0 +1,36 @@ +// Copyright (C) 2018-2022 Intel Corporation +// SPDX-License-Identifier: Apache-2.0 +// + +// clang-format off +#include <fstream> +#include <iostream> +#include <string> + +#include "yuv_nv12.h" +// clang-format on + +using namespace FormatReader; + +YUV_NV12::YUV_NV12(const std::string& filename) { + auto pos = filename.rfind('.'); + if (pos == std::string::npos) + return; + if (filename.substr(pos + 1) != "yuv") + return; + + std::ifstream file(filename, std::ios::binary); + if (!file.is_open()) { + return; + } + + file.seekg(0, file.end); + _size = file.tellg(); + file.seekg(0, file.beg); + + _data.reset(new unsigned char[_size], std::default_delete<unsigned char[]>()); + + file.read(reinterpret_cast<char*>(_data.get()), _size); + + file.close(); +} |
