You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
60 lines
1.7 KiB
60 lines
1.7 KiB
/*
|
|
* Copyright (c) Hisilicon Technologies Co., Ltd.. 2019-2019. All rights reserved.
|
|
* Description: support private media overlay solution
|
|
* Author: Hisilicon
|
|
* Created: 2019.12.30
|
|
*/
|
|
#ifndef TV_GRAPHICS_H
|
|
#define TV_GRAPHICS_H
|
|
|
|
#include <android/rect.h>
|
|
#include <cutils/native_handle.h>
|
|
#include <cstdint>
|
|
#include <vendor/huanglong/hardware/hwgraphics/1.0/IGraphicsCallback.h>
|
|
|
|
#ifdef __cplusplus
|
|
#if __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
#endif
|
|
// init
|
|
int Init();
|
|
|
|
// overlay
|
|
int PresentOverlay(uint64_t display, int32_t seq, buffer_handle_t handle, bool visible);
|
|
int SetOverlayPosition(int32_t seq, int32_t left, int32_t top, int32_t right, int32_t bottom);
|
|
int SetOverlayCrop(int32_t seq, int32_t left, int32_t top, int32_t right, int32_t bottom);
|
|
int SetOverlayTransform(int32_t seq, int32_t transform);
|
|
int SetOverlayZOrder(int32_t seq, int32_t zOrder);
|
|
void SetOverlayDataSpace(int32_t seq, int32_t dataSpace);
|
|
void CloseOverlay(int32_t seq);
|
|
void SfDeathRecipient();
|
|
|
|
// capture
|
|
int CaptureScreenByVDP(int32_t mode, buffer_handle_t buffer, ARect cropRect);
|
|
|
|
// cast
|
|
int InitCast(uint64_t display, uint32_t format, uint32_t width, uint32_t height);
|
|
int CastFrame(int32_t castHandle, const buffer_handle_t& rawHandle, const buffer_handle_t& fence,
|
|
int& acqurieFence);
|
|
int CloseCast(int32_t castHandle);
|
|
void SetBlackCastFrame(bool isBlack);
|
|
|
|
namespace android {
|
|
class HwGraphicsListener : public ::vendor::huanglong::hardware::hwgraphics::V1_0::IGraphicsCallback {
|
|
public:
|
|
HwGraphicsListener() {}
|
|
~HwGraphicsListener() override {}
|
|
android::hardware::Return<int32_t> hwNotify() override
|
|
{
|
|
return 0;
|
|
}
|
|
};
|
|
}
|
|
#ifdef __cplusplus
|
|
#if __cplusplus
|
|
}
|
|
#endif
|
|
#endif
|
|
#endif
|