Banuba SDK
Loading...
Searching...
No Matches
input.hpp
1#pragma once
2
5#include <bnb/types/full_image.hpp>
6#include <bnb/utils/defs.hpp>
7
8namespace bnb::player_api::interfaces
9{
10 class input;
11} // namespace bnb::player_api::interfaces
12
13namespace bnb::player_api
14{
15 using frame_data_sptr = std::shared_ptr<bnb::interfaces::frame_data>;
16 using full_image_sptr = std::shared_ptr<bnb::full_image_t>;
17 using input_sptr = std::shared_ptr<bnb::player_api::interfaces::input>;
18 using frame_processor_sptr = std::shared_ptr<bnb::interfaces::frame_processor>;
19} // namespace bnb::player_api
20
21namespace bnb::player_api::interfaces
22{
23
24 /**
25 * The interface is inherited by all classes that must work with the player,
26 * responsible for providing frames from outside in the player.
27 */
28 class BNB_EXPORT input
29 {
30 public:
31 virtual ~input() = default;
32
33 /**
34 * Get last available frame
35 * @return frame_processor with filled frame_data
36 */
37 virtual frame_processor_sptr get_frame_processor() const noexcept = 0;
38
39 /**
40 * Get timestamp of the current frame.
41 * @return timestamp
42 */
43 virtual uint64_t get_frame_time_us() const noexcept = 0;
44 }; // class input
45
46} // namespace bnb::player_api::interfaces
The interface is inherited by all classes that must work with the player, responsible for providing f...
Definition input.hpp:29
virtual frame_processor_sptr get_frame_processor() const noexcept=0
Get last available frame.
virtual uint64_t get_frame_time_us() const noexcept=0
Get timestamp of the current frame.