Files
rk35xx-android14/external/v4l2_codec2/plugin_store/DmabufHelpers.cpp
T
hmz007 36ed224bac Rockchip Anroid14_SDK 20240628-rkr5 (2556df1a)
Signed-off-by: hmz007 <hmz007@gmail.com>
Change-Id: Ib87fdbe7a0be7dc961af3500fe9ea4589a127f9f
2024-10-29 18:12:02 +08:00

33 lines
744 B
C++

// Copyright 2021 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//#define LOG_NDEBUG 0
#define LOG_TAG "DmabufHelpers"
#include <v4l2_codec2/plugin_store/DmabufHelpers.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <unistd.h>
#include <log/log.h>
namespace android {
std::optional<unique_id_t> getDmabufId(int dmabufFd) {
struct stat sb {};
if (fstat(dmabufFd, &sb) != 0) {
return std::nullopt;
}
if (sb.st_size == 0) {
ALOGE("Dma-buf size is 0. Please check your kernel is v5.3+");
return std::nullopt;
}
return static_cast<unique_id_t>(sb.st_ino);
}
} // namespace android