1*3f982cf4SFabien Sanglard // Copyright 2019 The Chromium Authors. All rights reserved. 2*3f982cf4SFabien Sanglard // Use of this source code is governed by a BSD-style license that can be 3*3f982cf4SFabien Sanglard // found in the LICENSE file. 4*3f982cf4SFabien Sanglard 5*3f982cf4SFabien Sanglard #ifndef CAST_STANDALONE_RECEIVER_DUMMY_PLAYER_H_ 6*3f982cf4SFabien Sanglard #define CAST_STANDALONE_RECEIVER_DUMMY_PLAYER_H_ 7*3f982cf4SFabien Sanglard 8*3f982cf4SFabien Sanglard #include <stdint.h> 9*3f982cf4SFabien Sanglard 10*3f982cf4SFabien Sanglard #include <vector> 11*3f982cf4SFabien Sanglard 12*3f982cf4SFabien Sanglard #include "cast/streaming/receiver.h" 13*3f982cf4SFabien Sanglard #include "platform/api/task_runner.h" 14*3f982cf4SFabien Sanglard #include "platform/api/time.h" 15*3f982cf4SFabien Sanglard 16*3f982cf4SFabien Sanglard namespace openscreen { 17*3f982cf4SFabien Sanglard namespace cast { 18*3f982cf4SFabien Sanglard 19*3f982cf4SFabien Sanglard // Consumes frames from a Receiver, but does nothing other than OSP_LOG_INFO 20*3f982cf4SFabien Sanglard // each one's FrameId, timestamp and size. This is only useful for confirming a 21*3f982cf4SFabien Sanglard // Receiver is successfully receiving a stream, for platforms where 22*3f982cf4SFabien Sanglard // SDLVideoPlayer cannot be built. 23*3f982cf4SFabien Sanglard class DummyPlayer final : public Receiver::Consumer { 24*3f982cf4SFabien Sanglard public: 25*3f982cf4SFabien Sanglard explicit DummyPlayer(Receiver* receiver); 26*3f982cf4SFabien Sanglard 27*3f982cf4SFabien Sanglard ~DummyPlayer() final; 28*3f982cf4SFabien Sanglard 29*3f982cf4SFabien Sanglard private: 30*3f982cf4SFabien Sanglard // Receiver::Consumer implementation. 31*3f982cf4SFabien Sanglard void OnFramesReady(int next_frame_buffer_size) final; 32*3f982cf4SFabien Sanglard 33*3f982cf4SFabien Sanglard Receiver* const receiver_; 34*3f982cf4SFabien Sanglard std::vector<uint8_t> buffer_; 35*3f982cf4SFabien Sanglard }; 36*3f982cf4SFabien Sanglard 37*3f982cf4SFabien Sanglard } // namespace cast 38*3f982cf4SFabien Sanglard } // namespace openscreen 39*3f982cf4SFabien Sanglard 40*3f982cf4SFabien Sanglard #endif // CAST_STANDALONE_RECEIVER_DUMMY_PLAYER_H_ 41