| // Copyright 2016 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef MEDIA_BASE_MEDIA_URL_PARAMS_H_ |
| #define MEDIA_BASE_MEDIA_URL_PARAMS_H_ |
| |
| #include "media/base/media_export.h" |
| #include "net/cookies/site_for_cookies.h" |
| #include "url/gurl.h" |
| #include "url/origin.h" |
| |
| namespace media { |
| |
| // Encapsulates the necessary information in order to play media in URL based |
| // playback (as opposed to stream based). |
| // See MediaUrlDemuxer and MediaPlayerRenderer. |
| struct MEDIA_EXPORT MediaUrlParams { |
| MediaUrlParams(const GURL& media_url, |
| const net::SiteForCookies& site_for_cookies, |
| const url::Origin& top_frame_origin, |
| bool allow_credentials, |
| bool is_hls); |
| MediaUrlParams(const MediaUrlParams& other); |
| ~MediaUrlParams(); |
| |
| // URL of the media to be played. |
| GURL media_url; |
| |
| // Used to play media in authenticated scenarios. |
| // In the MediaPlayerRenderer case, it will ultimately be used in |
| // MediaResourceGetterTask::CheckPolicyForCookies, to limit the scope of the |
| // cookies that the MediaPlayerRenderer has access to. |
| net::SiteForCookies site_for_cookies; |
| |
| // Used to check for cookie content settings. |
| url::Origin top_frame_origin; |
| |
| // True when the crossorigin mode is unspecified or set to "use-credentials", |
| // false when it's "anonymous". |
| // |
| // Used by MediaPlayerRenderer when determining whether or not send cookies |
| // and credentials to the underlying Android MediaPlayer. Cookies/credentials |
| // are retrieved based on whether or not the `media_url` passes the checks |
| // initiated in MediaResourceGetter::CheckPolicyForCookies() for the given |
| // `site_for_cookies`. |
| bool allow_credentials; |
| |
| // True when MediaPlayerRenderer has been selected because the media has been |
| // detected to be HLS. Used only for metrics. |
| bool is_hls; |
| }; |
| |
| } // namespace media |
| |
| #endif // MEDIA_BASE_MEDIA_URL_PARAMS_H_ |