         }
     }
     
-    public var nativeStream: RTCMediaStream
+    var nativeStream: RTCMediaStream
     
-    public var nativeVideoTrack: RTCVideoTrack? {
+    var nativeVideoTrack: RTCVideoTrack? {
         get { return nativeStream.videoTracks.first }
     }
     
-    public var nativeVideoSource: RTCVideoSource? {
+    var nativeVideoSource: RTCVideoSource? {
         get { return nativeVideoTrack?.source }
     }
     
-    public init(nativeStream: RTCMediaStream) {
+    init(nativeStream: RTCMediaStream) {
         self.nativeStream = nativeStream
         streamId = nativeStream.streamId
         creationTime = Date()
     }
     
     private static let dummyCapturer: RTCVideoCapturer = RTCVideoCapturer()
-    public func render(videoFrame: VideoFrame?) {
+    func render(videoFrame: VideoFrame?) {
         if let frame = videoFrame {
             // フィルターを通す
             let frame = videoFilter?.filter(videoFrame: frame) ?? frame

        }
    }
    
    public var videoFilter: VideoFilter?
    
    public var videoRenderer: VideoRenderer? {
        get {
            return videoRendererAdapter?.videoRenderer
        }

    
}

class BasicMediaStream: MediaStream {
    
    var streamId: String = ""
    var videoTrackId: String = ""
    var audioTrackId: String = ""
    var creationTime: Date
    
    var videoCapturer: VideoCapturer? {
        willSet {
            if var oldValue = videoCapturer {
                // Do not autostop here, let others manage videoCapturer's life cycle
