Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(268)

Side by Side Diff: webrtc/modules/video_render/android/video_render_android_surface_view.h

Issue 1912143002: Delete video_render module. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Move -framework flags from legacy_objc_api_tests.gyp to legacy_objc_api.gyp. Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 /*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3 *
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10
11 #ifndef WEBRTC_MODULES_VIDEO_RENDER_MAIN_SOURCE_ANDROID_VIDEO_RENDER_ANDROID_SUR FACE_VIEW_H_
12 #define WEBRTC_MODULES_VIDEO_RENDER_MAIN_SOURCE_ANDROID_VIDEO_RENDER_ANDROID_SUR FACE_VIEW_H_
13
14 #include <jni.h>
15
16 #include "webrtc/modules/video_render/android/video_render_android_impl.h"
17 #include "webrtc/modules/video_render/video_render_defines.h"
18
19 namespace webrtc {
20
21 class CriticalSectionWrapper;
22
23 class AndroidSurfaceViewChannel : public AndroidStream {
24 public:
25 AndroidSurfaceViewChannel(uint32_t streamId,
26 JavaVM* jvm,
27 VideoRenderAndroid& renderer,
28 jobject javaRenderObj);
29 ~AndroidSurfaceViewChannel();
30
31 int32_t Init(int32_t zOrder, const float left, const float top,
32 const float right, const float bottom);
33
34 //Implement VideoRenderCallback
35 virtual int32_t RenderFrame(const uint32_t streamId,
36 const VideoFrame& videoFrame);
37
38 //Implements AndroidStream
39 virtual void DeliverFrame(JNIEnv* jniEnv);
40
41 private:
42 uint32_t _id;
43 CriticalSectionWrapper& _renderCritSect;
44
45 VideoFrame _bufferToRender;
46 VideoRenderAndroid& _renderer;
47 JavaVM* _jvm;
48 jobject _javaRenderObj;
49
50 jobject _javaByteBufferObj;
51 unsigned char* _directBuffer;
52 jmethodID _createByteBufferCid;
53 jmethodID _drawByteBufferCid;
54
55 jmethodID _setCoordinatesCid;
56 int _bitmapWidth;
57 int _bitmapHeight;
58 };
59
60 class AndroidSurfaceViewRenderer : private VideoRenderAndroid {
61 public:
62 AndroidSurfaceViewRenderer(const int32_t id,
63 const VideoRenderType videoRenderType,
64 void* window,
65 const bool fullscreen);
66 ~AndroidSurfaceViewRenderer();
67 int32_t Init();
68 virtual AndroidStream* CreateAndroidRenderChannel(
69 int32_t streamId,
70 int32_t zOrder,
71 const float left,
72 const float top,
73 const float right,
74 const float bottom,
75 VideoRenderAndroid& renderer);
76 private:
77 jobject _javaRenderObj;
78 jclass _javaRenderClass;
79 };
80
81 } // namespace webrtc
82
83 #endif // WEBRTC_MODULES_VIDEO_RENDER_MAIN_SOURCE_ANDROID_VIDEO_RENDER_ANDROID_ SURFACE_VIEW_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698