Twitch SDK (Internal)
framecapturer.h
Go to the documentation of this file.
1 /********************************************************************************************
2 * Twitch Broadcasting SDK
3 *
4 * This software is supplied under the terms of a license agreement with Twitch Interactive, Inc. and
5 * may not be copied or used except in accordance with the terms of that agreement
6 * Copyright (c) 2012-2016 Twitch Interactive, Inc.
7 *********************************************************************************************/
8 
9 #pragma once
10 
12 #include <memory>
13 
14 namespace ttv
15 {
16  namespace broadcast
17  {
18  class FrameCapturer;
19  class BroadcastAPI;
20  }
21 }
22 
23 //
25 // * The base class for automatic frame capturers.
26 // */
27 //class ttv::broadcast::FrameCapturer
28 //{
29 //public:
30 // FrameCapturer();
31 // virtual ~FrameCapturer();
32 //
33 // virtual TTV_ErrorCode SetBroadcastAPI(std::shared_ptr<BroadcastAPI> api);
34 //
35 // virtual TTV_ErrorCode Start(const TTV_VideoParams* videoParams, const TTV_AudioParams* audioParams, const TTV_IngestServer* ingestServer, uint32_t flags);
36 // virtual TTV_ErrorCode Stop();
37 // virtual TTV_ErrorCode PauseFrameSubmission();
38 // virtual TTV_ErrorCode ResumeFrameSubmission();
39 // virtual TTV_ErrorCode SubmitTexture(void* p, int width, int height) = 0;
40 //
41 // virtual void Shutdown();
42 // virtual void PreDeviceReset();
43 // virtual void PostDeviceReset();
44 // virtual bool RequiresVerticalFlip();
45 //
46 // bool GetIsStarted() const { return mStarted; }
47 //
48 //protected:
49 // static void BufferUnlockCallback(const uint8_t* buffer, void* userData);
50 //
51 // virtual bool ShouldCreateFrameBuffers() const;
52 // virtual void HandleBufferUnlock(const uint8_t* buffer);
53 // virtual void CleanupObjects();
54 // virtual TTV_ErrorCode SubmitVideoFrame(const uint8_t* frameBuffer, TTV_BufferUnlockCallback callback, void* userData);
55 //
56 // typedef std::vector<uint8_t*> BufferList;
57 //
58 // BufferList mAllFrameBuffers;
59 // BufferList mFreeFrameBuffers;
60 // TTV_VideoParams mVideoParams;
61 // bool mStarted;
62 // std::shared_ptr<BroadcastAPI> mBroadcastAPI;
63 //
64 // static const size_t kNumBuffers = 3;
65 //};
JSON (JavaScript Object Notation).
Definition: adsapi.h:16