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

Side by Side Diff: talk/media/base/mediachannel.h

Issue 1631703002: Make WebRtcVideoChannel2::WebRtcVideoSendStream implement rtc::VideoRendererInterface. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Fix PropagatesInputFrameTimestamp and ProducesIncreasingTimestampsWithResetInputSources. Created 4 years, 10 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
1 /* 1 /*
2 * libjingle 2 * libjingle
3 * Copyright 2004 Google Inc. 3 * Copyright 2004 Google Inc.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met: 6 * modification, are permitted provided that the following conditions are met:
7 * 7 *
8 * 1. Redistributions of source code must retain the above copyright notice, 8 * 1. Redistributions of source code must retain the above copyright notice,
9 * this list of conditions and the following disclaimer. 9 * this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright notice, 10 * 2. Redistributions in binary form must reproduce the above copyright notice,
(...skipping 24 matching lines...) Expand all
35 #include "talk/media/base/constants.h" 35 #include "talk/media/base/constants.h"
36 #include "talk/media/base/streamparams.h" 36 #include "talk/media/base/streamparams.h"
37 #include "webrtc/base/basictypes.h" 37 #include "webrtc/base/basictypes.h"
38 #include "webrtc/base/buffer.h" 38 #include "webrtc/base/buffer.h"
39 #include "webrtc/base/dscp.h" 39 #include "webrtc/base/dscp.h"
40 #include "webrtc/base/logging.h" 40 #include "webrtc/base/logging.h"
41 #include "webrtc/base/optional.h" 41 #include "webrtc/base/optional.h"
42 #include "webrtc/base/sigslot.h" 42 #include "webrtc/base/sigslot.h"
43 #include "webrtc/base/socket.h" 43 #include "webrtc/base/socket.h"
44 #include "webrtc/base/window.h" 44 #include "webrtc/base/window.h"
45 #include "webrtc/media/base/videosinkinterface.h"
perkj_webrtc 2016/01/26 15:40:56 forward declare?
nisse-webrtc 2016/01/28 08:24:53 I know how to forward declare a plain class, but h
45 // TODO(juberti): re-evaluate this include 46 // TODO(juberti): re-evaluate this include
46 #include "talk/session/media/audiomonitor.h" 47 #include "talk/session/media/audiomonitor.h"
47 48
48 namespace rtc { 49 namespace rtc {
49 class Buffer; 50 class Buffer;
50 class RateLimiter; 51 class RateLimiter;
51 class Timing; 52 class Timing;
52 } 53 }
53 54
54 namespace webrtc { 55 namespace webrtc {
55 class AudioSinkInterface; 56 class AudioSinkInterface;
56 } 57 }
57 58
58 namespace cricket { 59 namespace cricket {
59 60
60 class AudioRenderer; 61 class AudioRenderer;
61 class ScreencastId; 62 class ScreencastId;
62 class VideoCapturer; 63 class VideoCapturer;
64 class VideoFrame;
63 class VideoRenderer; 65 class VideoRenderer;
64 struct RtpHeader; 66 struct RtpHeader;
65 struct VideoFormat; 67 struct VideoFormat;
66 68
67 const int kMinRtpHeaderExtensionId = 1; 69 const int kMinRtpHeaderExtensionId = 1;
68 const int kMaxRtpHeaderExtensionId = 255; 70 const int kMaxRtpHeaderExtensionId = 255;
69 const int kScreencastDefaultFps = 5; 71 const int kScreencastDefaultFps = 5;
70 72
71 template <class T> 73 template <class T>
72 static std::string ToStringIfSet(const char* key, const rtc::Optional<T>& val) { 74 static std::string ToStringIfSet(const char* key, const rtc::Optional<T>& val) {
(...skipping 999 matching lines...) Expand 10 before | Expand all | Expand 10 after
1072 virtual bool GetSendCodec(VideoCodec* send_codec) = 0; 1074 virtual bool GetSendCodec(VideoCodec* send_codec) = 0;
1073 // Sets the format of a specified outgoing stream. 1075 // Sets the format of a specified outgoing stream.
1074 virtual bool SetSendStreamFormat(uint32_t ssrc, 1076 virtual bool SetSendStreamFormat(uint32_t ssrc,
1075 const VideoFormat& format) = 0; 1077 const VideoFormat& format) = 0;
1076 // Starts or stops transmission (and potentially capture) of local video. 1078 // Starts or stops transmission (and potentially capture) of local video.
1077 virtual bool SetSend(bool send) = 0; 1079 virtual bool SetSend(bool send) = 0;
1078 // Configure stream for sending. 1080 // Configure stream for sending.
1079 virtual bool SetVideoSend(uint32_t ssrc, 1081 virtual bool SetVideoSend(uint32_t ssrc,
1080 bool enable, 1082 bool enable,
1081 const VideoOptions* options) = 0; 1083 const VideoOptions* options) = 0;
1084 // Get the VideoSink for passing frames into a video sendstream
1085 virtual rtc::VideoSinkInterface<cricket::VideoFrame>* GetSink(
1086 uint32_t ssrc) = 0;
1082 // Sets the renderer object to be used for the specified stream. 1087 // Sets the renderer object to be used for the specified stream.
1083 // If SSRC is 0, the renderer is used for the 'default' stream. 1088 // If SSRC is 0, the renderer is used for the 'default' stream.
1084 virtual bool SetRenderer(uint32_t ssrc, VideoRenderer* renderer) = 0; 1089 virtual bool SetRenderer(uint32_t ssrc, VideoRenderer* renderer) = 0;
1085 // If |ssrc| is 0, replace the default capturer (engine capturer) with 1090 // If |ssrc| is 0, replace the default capturer (engine capturer) with
1086 // |capturer|. If |ssrc| is non zero create a new stream with |ssrc| as SSRC. 1091 // |capturer|. If |ssrc| is non zero create a new stream with |ssrc| as SSRC.
1087 virtual bool SetCapturer(uint32_t ssrc, VideoCapturer* capturer) = 0; 1092 virtual bool SetCapturer(uint32_t ssrc, VideoCapturer* capturer) = 0;
1088 // Gets quality stats for the channel. 1093 // Gets quality stats for the channel.
1089 virtual bool GetStats(VideoMediaInfo* info) = 0; 1094 virtual bool GetStats(VideoMediaInfo* info) = 0;
1090 // Send an intra frame to the receivers. 1095 // Send an intra frame to the receivers.
1091 virtual bool SendIntraFrame() = 0; 1096 virtual bool SendIntraFrame() = 0;
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
1218 // Signal when the media channel is ready to send the stream. Arguments are: 1223 // Signal when the media channel is ready to send the stream. Arguments are:
1219 // writable(bool) 1224 // writable(bool)
1220 sigslot::signal1<bool> SignalReadyToSend; 1225 sigslot::signal1<bool> SignalReadyToSend;
1221 // Signal for notifying that the remote side has closed the DataChannel. 1226 // Signal for notifying that the remote side has closed the DataChannel.
1222 sigslot::signal1<uint32_t> SignalStreamClosedRemotely; 1227 sigslot::signal1<uint32_t> SignalStreamClosedRemotely;
1223 }; 1228 };
1224 1229
1225 } // namespace cricket 1230 } // namespace cricket
1226 1231
1227 #endif // TALK_MEDIA_BASE_MEDIACHANNEL_H_ 1232 #endif // TALK_MEDIA_BASE_MEDIACHANNEL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698