summaryrefslogtreecommitdiffstats
path: root/content/public/renderer
diff options
context:
space:
mode:
Diffstat (limited to 'content/public/renderer')
-rw-r--r--content/public/renderer/media_stream_api.cc14
-rw-r--r--content/public/renderer/media_stream_api.h8
2 files changed, 22 insertions, 0 deletions
diff --git a/content/public/renderer/media_stream_api.cc b/content/public/renderer/media_stream_api.cc
index 5baaa54..a1cc697 100644
--- a/content/public/renderer/media_stream_api.cc
+++ b/content/public/renderer/media_stream_api.cc
@@ -13,6 +13,7 @@
#include "base/strings/utf_string_conversions.h"
#include "content/renderer/media/media_stream_audio_source.h"
#include "content/renderer/media/media_stream_video_capturer_source.h"
+#include "content/renderer/media/media_stream_video_source.h"
#include "content/renderer/media/media_stream_video_track.h"
#include "content/renderer/render_thread_impl.h"
#include "third_party/WebKit/public/platform/WebMediaStream.h"
@@ -112,4 +113,17 @@ bool AddAudioTrackToMediaStream(
return true;
}
+const media::VideoCaptureFormat* GetCurrentVideoTrackFormat(
+ const blink::WebMediaStreamTrack& video_track) {
+ if (video_track.isNull())
+ return nullptr;
+
+ content::MediaStreamVideoSource* source =
+ content::MediaStreamVideoSource::GetVideoSource(video_track.source());
+ if (!source)
+ return nullptr;
+
+ return source->GetCurrentFormat();
+}
+
} // namespace content
diff --git a/content/public/renderer/media_stream_api.h b/content/public/renderer/media_stream_api.h
index b87c93d..907415c 100644
--- a/content/public/renderer/media_stream_api.h
+++ b/content/public/renderer/media_stream_api.h
@@ -8,10 +8,12 @@
#include "content/common/content_export.h"
#include "media/base/audio_capturer_source.h"
#include "media/base/channel_layout.h"
+#include "media/base/video_capture_types.h"
#include "media/base/video_capturer_source.h"
namespace blink {
class WebMediaStream;
+class WebMediaStreamTrack;
}
namespace content {
@@ -41,6 +43,12 @@ CONTENT_EXPORT bool AddAudioTrackToMediaStream(
bool is_readonly,
blink::WebMediaStream* web_media_stream);
+// On success returns pointer to the current format of the given video track;
+// returns nullptr on failure (if the argument is invalid or if the format
+// cannot be retrieved at the moment).
+CONTENT_EXPORT const media::VideoCaptureFormat* GetCurrentVideoTrackFormat(
+ const blink::WebMediaStreamTrack& video_track);
+
} // namespace content
#endif // CONTENT_PUBLIC_RENDERER_MEDIA_STREAM_API_H_