Clean up RTCVideoFrame

RTCVideoFrame is an ObjectiveC version of webrtc::VideoFrame, but it
currently contains some extra logic beyond that. We want RTCVideoFrame
to be as simple as possible, i.e. just a container with no extra state,
so we can use it as input to RTCVideoSource without complicating the
interface for consumers.

BUG=webrtc:7177
NOTRY=True

Review-Url: https://codereview.webrtc.org/2695203004
Cr-Commit-Position: refs/heads/master@{#16740}
diff --git a/webrtc/sdk/objc/Framework/Classes/RTCNativeNV12Shader.mm b/webrtc/sdk/objc/Framework/Classes/RTCNativeNV12Shader.mm
index 5000dbc..2d402ee 100644
--- a/webrtc/sdk/objc/Framework/Classes/RTCNativeNV12Shader.mm
+++ b/webrtc/sdk/objc/Framework/Classes/RTCNativeNV12Shader.mm
@@ -19,7 +19,6 @@
 #import "RTCShader+Private.h"
 #import "WebRTC/RTCVideoFrame.h"
 
-#include "webrtc/api/video/video_rotation.h"
 #include "webrtc/base/checks.h"
 #include "webrtc/base/optional.h"
 
@@ -50,7 +49,7 @@
   CVOpenGLESTextureCacheRef _textureCache;
   // Store current rotation and only upload new vertex data when rotation
   // changes.
-  rtc::Optional<webrtc::VideoRotation> _currentRotation;
+  rtc::Optional<RTCVideoRotation> _currentRotation;
 }
 
 - (instancetype)initWithContext:(GlContextType *)context {
@@ -155,8 +154,7 @@
 
   glBindBuffer(GL_ARRAY_BUFFER, _vertexBuffer);
   if (!_currentRotation || frame.rotation != *_currentRotation) {
-    _currentRotation = rtc::Optional<webrtc::VideoRotation>(
-        static_cast<webrtc::VideoRotation>(frame.rotation));
+    _currentRotation = rtc::Optional<RTCVideoRotation>(frame.rotation);
     RTCSetVertexData(*_currentRotation);
   }
   glDrawArrays(GL_TRIANGLE_FAN, 0, 4);