Update code to resolve problems due to base updates.

Notably deprecate of OVERRIDE, to be replaced with C++11 override.

Bug: 22463130
Bug: 22664127

Change-Id: I12c82e092e9e8eb0870da4363307c3563a3531b7
This commit is contained in:
Kongqun Yang 2015-07-22 16:40:45 -07:00 committed by KongQun Yang
parent 8cd33d8b21
commit 47c79d08ce
70 changed files with 356 additions and 369 deletions

View File

@ -78,7 +78,7 @@ namespace media {
// testing. // testing.
class FakeClock : public base::Clock { class FakeClock : public base::Clock {
public: public:
virtual base::Time Now() OVERRIDE { return base::Time(); } base::Time Now() override { return base::Time(); }
}; };
// Demux, Mux(es) and worker thread used to remux a source file/stream. // Demux, Mux(es) and worker thread used to remux a source file/stream.
@ -88,7 +88,7 @@ class RemuxJob : public base::SimpleThread {
: SimpleThread("RemuxJob"), : SimpleThread("RemuxJob"),
demuxer_(demuxer.Pass()) {} demuxer_(demuxer.Pass()) {}
virtual ~RemuxJob() { ~RemuxJob() override {
STLDeleteElements(&muxers_); STLDeleteElements(&muxers_);
} }
@ -100,7 +100,7 @@ class RemuxJob : public base::SimpleThread {
Status status() { return status_; } Status status() { return status_; }
private: private:
virtual void Run() OVERRIDE { void Run() override {
DCHECK(demuxer_); DCHECK(demuxer_);
status_ = demuxer_->Run(); status_ = demuxer_->Run();
} }

View File

@ -76,7 +76,8 @@ bool ValidateWidevineCryptoFlags() {
success = false; success = false;
} }
if (widevine_crypto && FLAGS_signer.empty() && if (widevine_crypto && FLAGS_signer.empty() &&
StartsWithASCII(FLAGS_key_server_url, "http", false)) { base::StartsWith(FLAGS_key_server_url, "http",
base::CompareCase::INSENSITIVE_ASCII)) {
LOG(WARNING) << "--signer is likely required with " LOG(WARNING) << "--signer is likely required with "
"--enable_widevine_encryption/decryption."; "--enable_widevine_encryption/decryption.";
} }

View File

@ -18,6 +18,10 @@
], ],
'conditions': [ 'conditions': [
['clang==1', { ['clang==1', {
'cflags': [
# Temporary workaround a gtest bug on ImplicitCast_.
'-Wno-pessimizing-move',
],
# Revert the relevant settings in Chromium's common.gypi. # Revert the relevant settings in Chromium's common.gypi.
'cflags!': [ 'cflags!': [
'-Wno-char-subscripts', '-Wno-char-subscripts',

View File

@ -135,7 +135,7 @@ namespace media {
class AesCtrEncryptorTest : public testing::Test { class AesCtrEncryptorTest : public testing::Test {
public: public:
virtual void SetUp() { void SetUp() override {
key_.assign(kAesKey, kAesKey + arraysize(kAesKey)); key_.assign(kAesKey, kAesKey + arraysize(kAesKey));
iv_.assign(kAesIv, kAesIv + arraysize(kAesIv)); iv_.assign(kAesIv, kAesIv + arraysize(kAesIv));
plaintext_.assign(kAesCtrPlaintext, plaintext_.assign(kAesCtrPlaintext,
@ -400,7 +400,7 @@ TEST_F(AesCbcPkcs5EncryptorTestEncryptionDecryption, EncryptAES192CBCRegression)
class AesCbcPkcs5EncryptorTest : public testing::Test { class AesCbcPkcs5EncryptorTest : public testing::Test {
public: public:
virtual void SetUp() { void SetUp() override {
const std::string kKey = "128=SixteenBytes"; const std::string kKey = "128=SixteenBytes";
const std::string kIv = "Sweet Sixteen IV"; const std::string kIv = "Sweet Sixteen IV";
key_.assign(kKey.begin(), kKey.end()); key_.assign(kKey.begin(), kKey.end());
@ -443,7 +443,7 @@ TEST_F(AesCbcPkcs5EncryptorTest, CipherTextNotMultipleOfBlockSize) {
class AesCbcCtsEncryptorDecryptorTest : public testing::Test { class AesCbcCtsEncryptorDecryptorTest : public testing::Test {
public: public:
virtual void SetUp() { void SetUp() override {
key_.assign(kAesKey, kAesKey + arraysize(kAesKey)); key_.assign(kAesKey, kAesKey + arraysize(kAesKey));
iv_.assign(kAesIv, kAesIv + arraysize(kAesIv)); iv_.assign(kAesIv, kAesIv + arraysize(kAesIv));
} }

View File

@ -52,8 +52,8 @@ class AudioStreamInfo : public StreamInfo {
/// @name StreamInfo implementation overrides. /// @name StreamInfo implementation overrides.
/// @{ /// @{
virtual bool IsValidConfig() const OVERRIDE; bool IsValidConfig() const override;
virtual std::string ToString() const OVERRIDE; std::string ToString() const override;
/// @} /// @}
AudioCodec codec() const { return codec_; } AudioCodec codec() const { return codec_; }
@ -76,7 +76,7 @@ class AudioStreamInfo : public StreamInfo {
uint8_t audio_object_type); uint8_t audio_object_type);
private: private:
virtual ~AudioStreamInfo(); ~AudioStreamInfo() override;
AudioCodec codec_; AudioCodec codec_;
uint8_t sample_bits_; uint8_t sample_bits_;

View File

@ -8,7 +8,7 @@
#include <limits> #include <limits>
#include "packager/base/file_util.h" #include "packager/base/files/file_util.h"
#include "packager/base/memory/scoped_ptr.h" #include "packager/base/memory/scoped_ptr.h"
#include "packager/media/base/buffer_reader.h" #include "packager/media/base/buffer_reader.h"
#include "packager/media/base/test/status_test_util.h" #include "packager/media/base/test/status_test_util.h"

View File

@ -33,11 +33,11 @@ class ClosureThread : public base::SimpleThread {
const base::Closure& task); const base::Closure& task);
/// The destructor calls Join automatically if it is not yet joined. /// The destructor calls Join automatically if it is not yet joined.
virtual ~ClosureThread(); ~ClosureThread() override;
protected: protected:
/// SimpleThread implementation overrides. /// SimpleThread implementation overrides.
virtual void Run() OVERRIDE; void Run() override;
private: private:
const base::Closure task_; const base::Closure task_;

View File

@ -40,7 +40,7 @@ class ClosureThreadTest : public ::testing::Test {
base::Unretained(this)))), base::Unretained(this)))),
val_(0) {} val_(0) {}
virtual ~ClosureThreadTest() {} ~ClosureThreadTest() override {}
void ClosureCallback() { void ClosureCallback() {
// Exit the loop if DoSomething return false. // Exit the loop if DoSomething return false.

View File

@ -4,7 +4,7 @@
#include <gtest/gtest.h> #include <gtest/gtest.h>
#include "packager/base/file_util.h" #include "packager/base/files/file_util.h"
#include "packager/media/base/container_names.h" #include "packager/media/base/container_names.h"
#include "packager/media/test/test_data_util.h" #include "packager/media/test/test_data_util.h"

View File

@ -30,12 +30,12 @@ class HttpKeyFetcher : public KeyFetcher {
/// Create a fetcher with timeout. /// Create a fetcher with timeout.
/// @param timeout_in_seconds specifies the timeout in seconds. /// @param timeout_in_seconds specifies the timeout in seconds.
HttpKeyFetcher(uint32_t timeout_in_seconds); HttpKeyFetcher(uint32_t timeout_in_seconds);
virtual ~HttpKeyFetcher(); ~HttpKeyFetcher() override;
/// @name KeyFetcher implementation overrides. /// @name KeyFetcher implementation overrides.
virtual Status FetchKeys(const std::string& url, Status FetchKeys(const std::string& url,
const std::string& request, const std::string& request,
std::string* response) OVERRIDE; std::string* response) override;
/// Fetch content using HTTP GET. /// Fetch content using HTTP GET.
/// @param url specifies the content URL. /// @param url specifies the content URL.

View File

@ -14,7 +14,7 @@ namespace media {
class OffsetByteQueueTest : public testing::Test { class OffsetByteQueueTest : public testing::Test {
public: public:
virtual void SetUp() OVERRIDE { void SetUp() override {
uint8_t buf[256]; uint8_t buf[256];
for (int i = 0; i < 256; i++) { for (int i = 0; i < 256; i++) {
buf[i] = i; buf[i] = i;

View File

@ -185,11 +185,11 @@ class MultiThreadProducerConsumerQueueTest : public ::testing::Test {
base::Bind(&MultiThreadProducerConsumerQueueTest::PushTask, base::Bind(&MultiThreadProducerConsumerQueueTest::PushTask,
base::Unretained(this))), base::Unretained(this))),
queue_(kCapacity) {} queue_(kCapacity) {}
virtual ~MultiThreadProducerConsumerQueueTest() {} ~MultiThreadProducerConsumerQueueTest() override {}
protected: protected:
virtual void SetUp() OVERRIDE { thread_.Start(); } void SetUp() override { thread_.Start(); }
virtual void TearDown() OVERRIDE { thread_.Join(); } void TearDown() override { thread_.Join(); }
void PushTask() { void PushTask() {
int val = 0; int val = 0;
@ -302,7 +302,7 @@ class MultiThreadProducerConsumerQueueStopTest
: public ::testing::TestWithParam<Operation> { : public ::testing::TestWithParam<Operation> {
public: public:
MultiThreadProducerConsumerQueueStopTest() : queue_(1), event_(true, false) {} MultiThreadProducerConsumerQueueStopTest() : queue_(1), event_(true, false) {}
virtual ~MultiThreadProducerConsumerQueueStopTest() {} ~MultiThreadProducerConsumerQueueStopTest() override {}
public: public:
void ClosureTask(Operation op) { void ClosureTask(Operation op) {

View File

@ -42,7 +42,7 @@ class RequestSigner {
/// AesRequestSigner uses AES-CBC signing. /// AesRequestSigner uses AES-CBC signing.
class AesRequestSigner : public RequestSigner { class AesRequestSigner : public RequestSigner {
public: public:
virtual ~AesRequestSigner(); ~AesRequestSigner() override;
/// Create an AesSigner object from key and iv in hex. /// Create an AesSigner object from key and iv in hex.
/// @return The created AesRequestSigner object on success, NULL otherwise. /// @return The created AesRequestSigner object on success, NULL otherwise.
@ -51,8 +51,8 @@ class AesRequestSigner : public RequestSigner {
const std::string& iv_hex); const std::string& iv_hex);
/// RequestSigner implementation override. /// RequestSigner implementation override.
virtual bool GenerateSignature(const std::string& message, bool GenerateSignature(const std::string& message,
std::string* signature) OVERRIDE; std::string* signature) override;
private: private:
AesRequestSigner(const std::string& signer_name, AesRequestSigner(const std::string& signer_name,
@ -66,7 +66,7 @@ class AesRequestSigner : public RequestSigner {
/// RsaRequestSigner uses RSA-PSS signing. /// RsaRequestSigner uses RSA-PSS signing.
class RsaRequestSigner : public RequestSigner { class RsaRequestSigner : public RequestSigner {
public: public:
virtual ~RsaRequestSigner(); ~RsaRequestSigner() override;
/// Create an RsaSigner object using a DER encoded PKCS#1 RSAPrivateKey. /// Create an RsaSigner object using a DER encoded PKCS#1 RSAPrivateKey.
/// @return The created RsaRequestSigner object on success, NULL otherwise. /// @return The created RsaRequestSigner object on success, NULL otherwise.
@ -74,8 +74,8 @@ class RsaRequestSigner : public RequestSigner {
const std::string& pkcs1_rsa_key); const std::string& pkcs1_rsa_key);
/// RequestSigner implementation override. /// RequestSigner implementation override.
virtual bool GenerateSignature(const std::string& message, bool GenerateSignature(const std::string& message,
std::string* signature) OVERRIDE; std::string* signature) override;
private: private:
RsaRequestSigner(const std::string& signer_name, RsaRequestSigner(const std::string& signer_name,

View File

@ -20,7 +20,7 @@ class RsaKeyTest : public ::testing::TestWithParam<RsaTestSet> {
public: public:
RsaKeyTest() : test_set_(GetParam()) {} RsaKeyTest() : test_set_(GetParam()) {}
virtual void SetUp() { void SetUp() override {
// Make OpenSSL RSA deterministic. // Make OpenSSL RSA deterministic.
ASSERT_TRUE(fake_prng::StartFakePrng()); ASSERT_TRUE(fake_prng::StartFakePrng());
@ -29,7 +29,7 @@ class RsaKeyTest : public ::testing::TestWithParam<RsaTestSet> {
public_key_.reset(RsaPublicKey::Create(test_set_.public_key)); public_key_.reset(RsaPublicKey::Create(test_set_.public_key));
ASSERT_TRUE(public_key_ != NULL); ASSERT_TRUE(public_key_ != NULL);
} }
virtual void TearDown() { fake_prng::StopFakePrng(); } void TearDown() override { fake_prng::StopFakePrng(); }
protected: protected:
const RsaTestSet& test_set_; const RsaTestSet& test_set_;

View File

@ -8,7 +8,7 @@
#include <openssl/rand.h> #include <openssl/rand.h>
#include "packager/base/file_util.h" #include "packager/base/files/file_util.h"
#include "packager/base/logging.h" #include "packager/base/logging.h"
#include "packager/media/test/test_data_util.h" #include "packager/media/test/test_data_util.h"

View File

@ -25,7 +25,7 @@ enum TextKind {
class TextTrack { class TextTrack {
public: public:
virtual ~TextTrack() {} ~TextTrack() override {}
virtual void addWebVTTCue(const base::TimeDelta& start, virtual void addWebVTTCue(const base::TimeDelta& start,
const base::TimeDelta& end, const base::TimeDelta& end,
const std::string& id, const std::string& id,

View File

@ -104,7 +104,7 @@ std::string VideoStreamInfo::GetCodecString(VideoCodec codec,
case kCodecH264: { case kCodecH264: {
const uint8_t bytes[] = {profile, compatible_profiles, level}; const uint8_t bytes[] = {profile, compatible_profiles, level};
return "avc1." + return "avc1." +
StringToLowerASCII(base::HexEncode(bytes, arraysize(bytes))); base::StringToLowerASCII(base::HexEncode(bytes, arraysize(bytes)));
} }
default: default:
NOTIMPLEMENTED() << "Unknown Codec: " << codec; NOTIMPLEMENTED() << "Unknown Codec: " << codec;

View File

@ -51,8 +51,8 @@ class VideoStreamInfo : public StreamInfo {
/// @name StreamInfo implementation overrides. /// @name StreamInfo implementation overrides.
/// @{ /// @{
virtual bool IsValidConfig() const OVERRIDE; bool IsValidConfig() const override;
virtual std::string ToString() const OVERRIDE; std::string ToString() const override;
/// @} /// @}
VideoCodec codec() const { return codec_; } VideoCodec codec() const { return codec_; }
@ -80,7 +80,7 @@ class VideoStreamInfo : public StreamInfo {
uint8_t level); uint8_t level);
private: private:
virtual ~VideoStreamInfo(); ~VideoStreamInfo() override;
VideoCodec codec_; VideoCodec codec_;
uint16_t width_; uint16_t width_;

View File

@ -386,7 +386,7 @@ void WidevineKeySource::FillRequest(bool enable_key_rotation,
request_dict_.SetInteger("crypto_period_count", crypto_period_count_); request_dict_.SetInteger("crypto_period_count", crypto_period_count_);
} }
base::JSONWriter::Write(&request_dict_, request); base::JSONWriter::Write(request_dict_, request);
} }
Status WidevineKeySource::GenerateKeyMessage(const std::string& request, Status WidevineKeySource::GenerateKeyMessage(const std::string& request,
@ -412,7 +412,7 @@ Status WidevineKeySource::GenerateKeyMessage(const std::string& request,
request_dict.SetString("signer", signer_->signer_name()); request_dict.SetString("signer", signer_->signer_name());
} }
base::JSONWriter::Write(&request_dict, message); base::JSONWriter::Write(request_dict, message);
return Status::OK; return Status::OK;
} }

View File

@ -28,22 +28,22 @@ class WidevineKeySource : public KeySource {
/// @param server_url is the Widevine common encryption server url. /// @param server_url is the Widevine common encryption server url.
explicit WidevineKeySource(const std::string& server_url); explicit WidevineKeySource(const std::string& server_url);
virtual ~WidevineKeySource(); ~WidevineKeySource() override;
/// @name KeySource implementation overrides. /// @name KeySource implementation overrides.
/// @{ /// @{
virtual Status FetchKeys(const std::vector<uint8_t>& content_id, Status FetchKeys(const std::vector<uint8_t>& content_id,
const std::string& policy) OVERRIDE; const std::string& policy) override;
virtual Status FetchKeys(const std::vector<uint8_t>& pssh_data) OVERRIDE; Status FetchKeys(const std::vector<uint8_t>& pssh_data) override;
virtual Status FetchKeys(uint32_t asset_id) OVERRIDE; Status FetchKeys(uint32_t asset_id) override;
virtual Status GetKey(TrackType track_type, EncryptionKey* key) OVERRIDE; Status GetKey(TrackType track_type, EncryptionKey* key) override;
virtual Status GetKey(const std::vector<uint8_t>& key_id, Status GetKey(const std::vector<uint8_t>& key_id,
EncryptionKey* key) OVERRIDE; EncryptionKey* key) override;
virtual Status GetCryptoPeriodKey(uint32_t crypto_period_index, Status GetCryptoPeriodKey(uint32_t crypto_period_index,
TrackType track_type, TrackType track_type,
EncryptionKey* key) OVERRIDE; EncryptionKey* key) override;
virtual std::string UUID() OVERRIDE; std::string UUID() override;
/// @} /// @}
/// Set signer for the key source. /// Set signer for the key source.

View File

@ -120,7 +120,7 @@ class MockRequestSigner : public RequestSigner {
public: public:
explicit MockRequestSigner(const std::string& signer_name) explicit MockRequestSigner(const std::string& signer_name)
: RequestSigner(signer_name) {} : RequestSigner(signer_name) {}
virtual ~MockRequestSigner() {} ~MockRequestSigner() override {}
MOCK_METHOD2(GenerateSignature, MOCK_METHOD2(GenerateSignature,
bool(const std::string& message, std::string* signature)); bool(const std::string& message, std::string* signature));
@ -132,7 +132,7 @@ class MockRequestSigner : public RequestSigner {
class MockKeyFetcher : public KeyFetcher { class MockKeyFetcher : public KeyFetcher {
public: public:
MockKeyFetcher() : KeyFetcher() {} MockKeyFetcher() : KeyFetcher() {}
virtual ~MockKeyFetcher() {} ~MockKeyFetcher() override {}
MOCK_METHOD3(FetchKeys, MOCK_METHOD3(FetchKeys,
Status(const std::string& service_address, Status(const std::string& service_address,
@ -149,7 +149,7 @@ class WidevineKeySourceTest : public ::testing::Test {
: mock_request_signer_(new MockRequestSigner(kSignerName)), : mock_request_signer_(new MockRequestSigner(kSignerName)),
mock_key_fetcher_(new MockKeyFetcher()) {} mock_key_fetcher_(new MockKeyFetcher()) {}
virtual void SetUp() OVERRIDE { void SetUp() override {
content_id_.assign( content_id_.assign(
reinterpret_cast<const uint8_t*>(kContentId), reinterpret_cast<const uint8_t*>(kContentId),
reinterpret_cast<const uint8_t*>(kContentId) + strlen(kContentId)); reinterpret_cast<const uint8_t*>(kContentId) + strlen(kContentId));
@ -158,8 +158,7 @@ class WidevineKeySourceTest : public ::testing::Test {
protected: protected:
void CreateWidevineKeySource() { void CreateWidevineKeySource() {
widevine_key_source_.reset(new WidevineKeySource(kServerUrl)); widevine_key_source_.reset(new WidevineKeySource(kServerUrl));
widevine_key_source_->set_key_fetcher( widevine_key_source_->set_key_fetcher(mock_key_fetcher_.Pass());
mock_key_fetcher_.PassAs<KeyFetcher>());
} }
void VerifyKeys(bool classic) { void VerifyKeys(bool classic) {
@ -203,8 +202,7 @@ TEST_F(WidevineKeySourceTest, GenerateSignatureFailure) {
.WillOnce(Return(false)); .WillOnce(Return(false));
CreateWidevineKeySource(); CreateWidevineKeySource();
widevine_key_source_->set_signer( widevine_key_source_->set_signer(mock_request_signer_.Pass());
mock_request_signer_.PassAs<RequestSigner>());
ASSERT_EQ(Status(error::INTERNAL_ERROR, "Signature generation failed."), ASSERT_EQ(Status(error::INTERNAL_ERROR, "Signature generation failed."),
widevine_key_source_->FetchKeys(content_id_, kPolicy)); widevine_key_source_->FetchKeys(content_id_, kPolicy));
} }
@ -228,8 +226,7 @@ TEST_F(WidevineKeySourceTest, HttpFetchFailure) {
.WillOnce(Return(kMockStatus)); .WillOnce(Return(kMockStatus));
CreateWidevineKeySource(); CreateWidevineKeySource();
widevine_key_source_->set_signer( widevine_key_source_->set_signer(mock_request_signer_.Pass());
mock_request_signer_.PassAs<RequestSigner>());
ASSERT_EQ(kMockStatus, ASSERT_EQ(kMockStatus,
widevine_key_source_->FetchKeys(content_id_, kPolicy)); widevine_key_source_->FetchKeys(content_id_, kPolicy));
} }
@ -417,8 +414,7 @@ TEST_F(WidevineKeySourceTest, KeyRotationTest) {
} }
CreateWidevineKeySource(); CreateWidevineKeySource();
widevine_key_source_->set_signer( widevine_key_source_->set_signer(mock_request_signer_.Pass());
mock_request_signer_.PassAs<RequestSigner>());
ASSERT_OK(widevine_key_source_->FetchKeys(content_id_, kPolicy)); ASSERT_OK(widevine_key_source_->FetchKeys(content_id_, kPolicy));
EncryptionKey encryption_key; EncryptionKey encryption_key;

View File

@ -29,7 +29,7 @@ class MpdNotifyMuxerListener : public MuxerListener {
/// @param mpd_notifier must be initialized, i.e mpd_notifier->Init() must be /// @param mpd_notifier must be initialized, i.e mpd_notifier->Init() must be
/// called. /// called.
explicit MpdNotifyMuxerListener(MpdNotifier* mpd_notifier); explicit MpdNotifyMuxerListener(MpdNotifier* mpd_notifier);
virtual ~MpdNotifyMuxerListener(); ~MpdNotifyMuxerListener() override;
/// If the stream is encrypted use this as 'schemeIdUri' attribute for /// If the stream is encrypted use this as 'schemeIdUri' attribute for
/// ContentProtection element. /// ContentProtection element.
@ -37,28 +37,27 @@ class MpdNotifyMuxerListener : public MuxerListener {
/// @name MuxerListener implementation overrides. /// @name MuxerListener implementation overrides.
/// @{ /// @{
virtual void OnEncryptionInfoReady( void OnEncryptionInfoReady(bool is_initial_encryption_info,
bool is_initial_encryption_info, const std::string& content_protection_uuid,
const std::string& content_protection_uuid, const std::string& content_protection_name_version,
const std::string& content_protection_name_version, const std::vector<uint8_t>& key_id,
const std::vector<uint8_t>& key_id, const std::vector<uint8_t>& pssh) override;
const std::vector<uint8_t>& pssh) OVERRIDE; void OnMediaStart(const MuxerOptions& muxer_options,
virtual void OnMediaStart(const MuxerOptions& muxer_options, const StreamInfo& stream_info,
const StreamInfo& stream_info, uint32_t time_scale,
uint32_t time_scale, ContainerType container_type) override;
ContainerType container_type) OVERRIDE; void OnSampleDurationReady(uint32_t sample_duration) override;
virtual void OnSampleDurationReady(uint32_t sample_duration) OVERRIDE; void OnMediaEnd(bool has_init_range,
virtual void OnMediaEnd(bool has_init_range, uint64_t init_range_start,
uint64_t init_range_start, uint64_t init_range_end,
uint64_t init_range_end, bool has_index_range,
bool has_index_range, uint64_t index_range_start,
uint64_t index_range_start, uint64_t index_range_end,
uint64_t index_range_end, float duration_seconds,
float duration_seconds, uint64_t file_size) override;
uint64_t file_size) OVERRIDE; void OnNewSegment(uint64_t start_time,
virtual void OnNewSegment(uint64_t start_time, uint64_t duration,
uint64_t duration, uint64_t segment_file_size) override;
uint64_t segment_file_size) OVERRIDE;
/// @} /// @}
private: private:

View File

@ -28,7 +28,7 @@ namespace media {
class VodMediaInfoDumpMuxerListener : public MuxerListener { class VodMediaInfoDumpMuxerListener : public MuxerListener {
public: public:
VodMediaInfoDumpMuxerListener(const std::string& output_file_name); VodMediaInfoDumpMuxerListener(const std::string& output_file_name);
virtual ~VodMediaInfoDumpMuxerListener(); ~VodMediaInfoDumpMuxerListener() override;
/// If the stream is encrypted use this as 'schemeIdUri' attribute for /// If the stream is encrypted use this as 'schemeIdUri' attribute for
/// ContentProtection element. /// ContentProtection element.
@ -36,29 +36,27 @@ class VodMediaInfoDumpMuxerListener : public MuxerListener {
/// @name MuxerListener implementation overrides. /// @name MuxerListener implementation overrides.
/// @{ /// @{
virtual void OnEncryptionInfoReady( void OnEncryptionInfoReady(bool is_initial_encryption_info,
bool is_initial_encryption_info, const std::string& content_protection_uuid,
const std::string& content_protection_uuid, const std::string& content_protection_name_version,
const std::string& content_protection_name_version, const std::vector<uint8_t>& default_key_id,
const std::vector<uint8_t>& default_key_id, const std::vector<uint8_t>& pssh) override;
const std::vector<uint8_t>& pssh) OVERRIDE; void OnMediaStart(const MuxerOptions& muxer_options,
virtual void OnMediaStart( const StreamInfo& stream_info,
const MuxerOptions& muxer_options, uint32_t time_scale,
const StreamInfo& stream_info, ContainerType container_type) override;
uint32_t time_scale, void OnSampleDurationReady(uint32_t sample_duration) override;
ContainerType container_type) OVERRIDE; void OnMediaEnd(bool has_init_range,
virtual void OnSampleDurationReady(uint32_t sample_duration) OVERRIDE; uint64_t init_range_start,
virtual void OnMediaEnd(bool has_init_range, uint64_t init_range_end,
uint64_t init_range_start, bool has_index_range,
uint64_t init_range_end, uint64_t index_range_start,
bool has_index_range, uint64_t index_range_end,
uint64_t index_range_start, float duration_seconds,
uint64_t index_range_end, uint64_t file_size) override;
float duration_seconds, void OnNewSegment(uint64_t start_time,
uint64_t file_size) OVERRIDE; uint64_t duration,
virtual void OnNewSegment(uint64_t start_time, uint64_t segment_file_size) override;
uint64_t duration,
uint64_t segment_file_size) OVERRIDE;
/// @} /// @}
private: private:

View File

@ -9,7 +9,7 @@
#include <vector> #include <vector>
#include "packager/base/file_util.h" #include "packager/base/files/file_util.h"
#include "packager/base/files/file_path.h" #include "packager/base/files/file_path.h"
#include "packager/media/base/muxer_options.h" #include "packager/media/base/muxer_options.h"
#include "packager/media/base/video_stream_info.h" #include "packager/media/base/video_stream_info.h"
@ -61,16 +61,16 @@ void ExpectTextFormatMediaInfoEqual(const std::string& expect,
class VodMediaInfoDumpMuxerListenerTest : public ::testing::Test { class VodMediaInfoDumpMuxerListenerTest : public ::testing::Test {
public: public:
VodMediaInfoDumpMuxerListenerTest() {} VodMediaInfoDumpMuxerListenerTest() {}
virtual ~VodMediaInfoDumpMuxerListenerTest() {} ~VodMediaInfoDumpMuxerListenerTest() override {}
virtual void SetUp() OVERRIDE { void SetUp() override {
ASSERT_TRUE(base::CreateTemporaryFile(&temp_file_path_)); ASSERT_TRUE(base::CreateTemporaryFile(&temp_file_path_));
DLOG(INFO) << "Created temp file: " << temp_file_path_.value(); DLOG(INFO) << "Created temp file: " << temp_file_path_.value();
listener_.reset(new VodMediaInfoDumpMuxerListener(temp_file_path_.value())); listener_.reset(new VodMediaInfoDumpMuxerListener(temp_file_path_.value()));
} }
virtual void TearDown() OVERRIDE { void TearDown() override {
base::DeleteFile(temp_file_path_, false); base::DeleteFile(temp_file_path_, false);
} }

View File

@ -6,7 +6,7 @@
#include <gtest/gtest.h> #include <gtest/gtest.h>
#include "packager/base/file_util.h" #include "packager/base/files/file_util.h"
#include "packager/media/file/file.h" #include "packager/media/file/file.h"
namespace { namespace {
@ -18,7 +18,7 @@ namespace media {
class LocalFileTest : public testing::Test { class LocalFileTest : public testing::Test {
protected: protected:
virtual void SetUp() { void SetUp() override {
data_.resize(kDataSize); data_.resize(kDataSize);
for (int i = 0; i < kDataSize; ++i) for (int i = 0; i < kDataSize; ++i)
data_[i] = i % 256; data_[i] = i % 256;
@ -32,7 +32,7 @@ class LocalFileTest : public testing::Test {
local_file_name_ += local_file_name_no_prefix_; local_file_name_ += local_file_name_no_prefix_;
} }
virtual void TearDown() { void TearDown() override {
// Remove test file if created. // Remove test file if created.
base::DeleteFile(base::FilePath(local_file_name_no_prefix_), false); base::DeleteFile(base::FilePath(local_file_name_no_prefix_), false);
} }
@ -56,7 +56,7 @@ TEST_F(LocalFileTest, ReadNotExist) {
TEST_F(LocalFileTest, Size) { TEST_F(LocalFileTest, Size) {
ASSERT_EQ(kDataSize, ASSERT_EQ(kDataSize,
file_util::WriteFile(test_file_path_, data_.data(), kDataSize)); base::WriteFile(test_file_path_, data_.data(), kDataSize));
ASSERT_EQ(kDataSize, File::GetFileSize(local_file_name_.c_str())); ASSERT_EQ(kDataSize, File::GetFileSize(local_file_name_.c_str()));
} }
@ -80,7 +80,7 @@ TEST_F(LocalFileTest, Write) {
TEST_F(LocalFileTest, Read_And_Eof) { TEST_F(LocalFileTest, Read_And_Eof) {
// Write file using file_util API. // Write file using file_util API.
ASSERT_EQ(kDataSize, ASSERT_EQ(kDataSize,
file_util::WriteFile(test_file_path_, data_.data(), kDataSize)); base::WriteFile(test_file_path_, data_.data(), kDataSize));
// Read file using File API. // Read file using File API.
File* file = File::Open(local_file_name_.c_str(), "r"); File* file = File::Open(local_file_name_.c_str(), "r");

View File

@ -20,7 +20,7 @@ namespace media {
class IoCache { class IoCache {
public: public:
explicit IoCache(uint64_t cache_size); explicit IoCache(uint64_t cache_size);
virtual ~IoCache(); ~IoCache();
/// Read data from the cache. This function may block until there is data in /// Read data from the cache. This function may block until there is data in
/// the cache. /// the cache.

View File

@ -46,14 +46,14 @@ class IoCacheTest : public testing::Test {
} }
protected: protected:
virtual void SetUp() OVERRIDE { void SetUp() override {
for (unsigned int idx = 0; idx < kBlockSize; ++idx) for (unsigned int idx = 0; idx < kBlockSize; ++idx)
reference_block_[idx] = idx; reference_block_[idx] = idx;
cache_.reset(new IoCache(kCacheSize)); cache_.reset(new IoCache(kCacheSize));
cache_closed_ = false; cache_closed_ = false;
} }
virtual void TearDown() OVERRIDE { void TearDown() override {
WaitForWriterThread(); WaitForWriterThread();
} }

View File

@ -8,7 +8,7 @@
#include <stdio.h> #include <stdio.h>
#include "packager/base/file_util.h" #include "packager/base/files/file_util.h"
#include "packager/base/logging.h" #include "packager/base/logging.h"
namespace edash_packager { namespace edash_packager {

View File

@ -27,13 +27,13 @@ class LocalFile : public File {
/// @name File implementation overrides. /// @name File implementation overrides.
/// @{ /// @{
virtual bool Close() OVERRIDE; bool Close() override;
virtual int64_t Read(void* buffer, uint64_t length) OVERRIDE; int64_t Read(void* buffer, uint64_t length) override;
virtual int64_t Write(const void* buffer, uint64_t length) OVERRIDE; int64_t Write(const void* buffer, uint64_t length) override;
virtual int64_t Size() OVERRIDE; int64_t Size() override;
virtual bool Flush() OVERRIDE; bool Flush() override;
virtual bool Seek(uint64_t position) OVERRIDE; bool Seek(uint64_t position) override;
virtual bool Tell(uint64_t* position) OVERRIDE; bool Tell(uint64_t* position) override;
/// @} /// @}
/// Delete a local file. /// Delete a local file.
@ -42,9 +42,9 @@ class LocalFile : public File {
static bool Delete(const char* file_name); static bool Delete(const char* file_name);
protected: protected:
virtual ~LocalFile(); ~LocalFile() override;
virtual bool Open() OVERRIDE; bool Open() override;
private: private:
std::string file_mode_; std::string file_mode_;

View File

@ -33,19 +33,19 @@ class ThreadedIoFile : public File {
/// @name File implementation overrides. /// @name File implementation overrides.
/// @{ /// @{
virtual bool Close() OVERRIDE; bool Close() override;
virtual int64_t Read(void* buffer, uint64_t length) OVERRIDE; int64_t Read(void* buffer, uint64_t length) override;
virtual int64_t Write(const void* buffer, uint64_t length) OVERRIDE; int64_t Write(const void* buffer, uint64_t length) override;
virtual int64_t Size() OVERRIDE; int64_t Size() override;
virtual bool Flush() OVERRIDE; bool Flush() override;
virtual bool Seek(uint64_t position) OVERRIDE; bool Seek(uint64_t position) override;
virtual bool Tell(uint64_t* position) OVERRIDE; bool Tell(uint64_t* position) override;
/// @} /// @}
protected: protected:
virtual ~ThreadedIoFile(); ~ThreadedIoFile() override;
virtual bool Open() OVERRIDE; bool Open() override;
void RunInInputMode(); void RunInInputMode();
void RunInOutputMode(); void RunInOutputMode();

View File

@ -26,19 +26,19 @@ class UdpFile : public File {
/// @name File implementation overrides. /// @name File implementation overrides.
/// @{ /// @{
virtual bool Close() OVERRIDE; bool Close() override;
virtual int64_t Read(void* buffer, uint64_t length) OVERRIDE; int64_t Read(void* buffer, uint64_t length) override;
virtual int64_t Write(const void* buffer, uint64_t length) OVERRIDE; int64_t Write(const void* buffer, uint64_t length) override;
virtual int64_t Size() OVERRIDE; int64_t Size() override;
virtual bool Flush() OVERRIDE; bool Flush() override;
virtual bool Seek(uint64_t position) OVERRIDE; bool Seek(uint64_t position) override;
virtual bool Tell(uint64_t* position) OVERRIDE; bool Tell(uint64_t* position) override;
/// @} /// @}
protected: protected:
virtual ~UdpFile(); ~UdpFile() override;
virtual bool Open() OVERRIDE; bool Open() override;
private: private:
int socket_; int socket_;

View File

@ -41,7 +41,7 @@ namespace mp2t {
class AdtsHeaderTest : public testing::Test { class AdtsHeaderTest : public testing::Test {
public: public:
virtual void SetUp() OVERRIDE { void SetUp() override {
ASSERT_TRUE(base::HexStringToBytes(kValidAdtsFrame, &adts_frame_)); ASSERT_TRUE(base::HexStringToBytes(kValidAdtsFrame, &adts_frame_));
} }

View File

@ -20,8 +20,9 @@ namespace mp2t {
class EsParser { class EsParser {
public: public:
typedef base::Callback<void(scoped_refptr<StreamInfo>&)> NewStreamInfoCB; typedef base::Callback<void(const scoped_refptr<StreamInfo>&)>
typedef base::Callback<void(uint32_t, scoped_refptr<MediaSample>&)> NewStreamInfoCB;
typedef base::Callback<void(uint32_t, const scoped_refptr<MediaSample>&)>
EmitSampleCB; EmitSampleCB;
EsParser(uint32_t pid) : pid_(pid) {} EsParser(uint32_t pid) : pid_(pid) {}

View File

@ -28,15 +28,12 @@ class EsParserAdts : public EsParser {
const NewStreamInfoCB& new_stream_info_cb, const NewStreamInfoCB& new_stream_info_cb,
const EmitSampleCB& emit_sample_cb, const EmitSampleCB& emit_sample_cb,
bool sbr_in_mimetype); bool sbr_in_mimetype);
virtual ~EsParserAdts(); ~EsParserAdts() override;
// EsParser implementation. // EsParser implementation.
virtual bool Parse(const uint8_t* buf, bool Parse(const uint8_t* buf, int size, int64_t pts, int64_t dts) override;
int size, void Flush() override;
int64_t pts, void Reset() override;
int64_t dts) OVERRIDE;
virtual void Flush() OVERRIDE;
virtual void Reset() OVERRIDE;
private: private:
// Used to link a PTS with a byte position in the ES stream. // Used to link a PTS with a byte position in the ES stream.

View File

@ -35,15 +35,12 @@ class EsParserH264 : public EsParser {
EsParserH264(uint32_t pid, EsParserH264(uint32_t pid,
const NewStreamInfoCB& new_stream_info_cb, const NewStreamInfoCB& new_stream_info_cb,
const EmitSampleCB& emit_sample_cb); const EmitSampleCB& emit_sample_cb);
virtual ~EsParserH264(); ~EsParserH264() override;
// EsParser implementation overrides. // EsParser implementation overrides.
virtual bool Parse(const uint8_t* buf, bool Parse(const uint8_t* buf, int size, int64_t pts, int64_t dts) override;
int size, void Flush() override;
int64_t pts, void Reset() override;
int64_t dts) OVERRIDE;
virtual void Flush() OVERRIDE;
virtual void Reset() OVERRIDE;
private: private:
struct TimingDesc { struct TimingDesc {

View File

@ -125,13 +125,13 @@ class EsParserH264Test : public testing::Test {
void LoadStream(const char* filename); void LoadStream(const char* filename);
void ProcessPesPackets(const std::vector<Packet>& pes_packets); void ProcessPesPackets(const std::vector<Packet>& pes_packets);
void EmitSample(uint32_t pid, scoped_refptr<MediaSample>& sample) { void EmitSample(uint32_t pid, const scoped_refptr<MediaSample>& sample) {
sample_count_++; sample_count_++;
if (sample_count_ == 1) if (sample_count_ == 1)
first_frame_is_key_frame_ = sample->is_key_frame(); first_frame_is_key_frame_ = sample->is_key_frame();
} }
void NewVideoConfig(scoped_refptr<StreamInfo>& config) { void NewVideoConfig(const scoped_refptr<StreamInfo>& config) {
DVLOG(1) << config->ToString(); DVLOG(1) << config->ToString();
stream_map_[config->track_id()] = config; stream_map_[config->track_id()] = config;
} }

View File

@ -60,7 +60,7 @@ class PidState {
PidType pid_type() const { return pid_type_; } PidType pid_type() const { return pid_type_; }
scoped_refptr<StreamInfo>& config() { return config_; } scoped_refptr<StreamInfo>& config() { return config_; }
void set_config(scoped_refptr<StreamInfo>& config) { config_ = config; } void set_config(const scoped_refptr<StreamInfo>& config) { config_ = config; }
SampleQueue& sample_queue() { return sample_queue_; } SampleQueue& sample_queue() { return sample_queue_; }
@ -326,7 +326,7 @@ void Mp2tMediaParser::RegisterPes(int pmt_pid,
} }
void Mp2tMediaParser::OnNewStreamInfo( void Mp2tMediaParser::OnNewStreamInfo(
scoped_refptr<StreamInfo>& new_stream_info) { const scoped_refptr<StreamInfo>& new_stream_info) {
DCHECK(new_stream_info); DCHECK(new_stream_info);
DVLOG(1) << "OnVideoConfigChanged for pid=" << new_stream_info->track_id(); DVLOG(1) << "OnVideoConfigChanged for pid=" << new_stream_info->track_id();
@ -374,8 +374,9 @@ bool Mp2tMediaParser::FinishInitializationIfNeeded() {
return true; return true;
} }
void Mp2tMediaParser::OnEmitSample(uint32_t pes_pid, void Mp2tMediaParser::OnEmitSample(
scoped_refptr<MediaSample>& new_sample) { uint32_t pes_pid,
const scoped_refptr<MediaSample>& new_sample) {
DCHECK(new_sample); DCHECK(new_sample);
DVLOG(LOG_LEVEL_ES) DVLOG(LOG_LEVEL_ES)
<< "OnEmitSample: " << "OnEmitSample: "

View File

@ -30,16 +30,16 @@ typedef std::deque<scoped_refptr<MediaSample> > SampleQueue;
class Mp2tMediaParser : public MediaParser { class Mp2tMediaParser : public MediaParser {
public: public:
Mp2tMediaParser(); Mp2tMediaParser();
virtual ~Mp2tMediaParser(); ~Mp2tMediaParser() override;
// MediaParser implementation overrides. // MediaParser implementation overrides.
virtual void Init(const InitCB& init_cb, void Init(const InitCB& init_cb,
const NewSampleCB& new_sample_cb, const NewSampleCB& new_sample_cb,
KeySource* decryption_key_source) OVERRIDE; KeySource* decryption_key_source) override;
virtual void Flush() OVERRIDE; void Flush() override;
virtual bool Parse(const uint8_t* buf, int size) OVERRIDE; bool Parse(const uint8_t* buf, int size) override;
private: private:
typedef std::map<int, PidState*> PidMap; typedef std::map<int, PidState*> PidMap;
@ -56,11 +56,12 @@ class Mp2tMediaParser : public MediaParser {
// Callback invoked each time the audio/video decoder configuration is // Callback invoked each time the audio/video decoder configuration is
// changed. // changed.
void OnNewStreamInfo(scoped_refptr<StreamInfo>& new_stream_info); void OnNewStreamInfo(const scoped_refptr<StreamInfo>& new_stream_info);
// Callback invoked by the ES media parser // Callback invoked by the ES media parser
// to emit a new audio/video access unit. // to emit a new audio/video access unit.
void OnEmitSample(uint32_t pes_pid, scoped_refptr<MediaSample>& new_sample); void OnEmitSample(uint32_t pes_pid,
const scoped_refptr<MediaSample>& new_sample);
// Invoke the initialization callback if needed. // Invoke the initialization callback if needed.
bool FinishInitializationIfNeeded(); bool FinishInitializationIfNeeded();

View File

@ -19,11 +19,11 @@ class TsSectionPat : public TsSectionPsi {
typedef base::Callback<void(int, int)> RegisterPmtCb; typedef base::Callback<void(int, int)> RegisterPmtCb;
explicit TsSectionPat(const RegisterPmtCb& register_pmt_cb); explicit TsSectionPat(const RegisterPmtCb& register_pmt_cb);
virtual ~TsSectionPat(); ~TsSectionPat() override;
// TsSectionPsi implementation. // TsSectionPsi implementation.
virtual bool ParsePsiSection(BitReader* bit_reader) OVERRIDE; bool ParsePsiSection(BitReader* bit_reader) override;
virtual void ResetPsiSection() OVERRIDE; void ResetPsiSection() override;
private: private:
RegisterPmtCb register_pmt_cb_; RegisterPmtCb register_pmt_cb_;

View File

@ -21,14 +21,14 @@ class EsParser;
class TsSectionPes : public TsSection { class TsSectionPes : public TsSection {
public: public:
explicit TsSectionPes(scoped_ptr<EsParser> es_parser); explicit TsSectionPes(scoped_ptr<EsParser> es_parser);
virtual ~TsSectionPes(); ~TsSectionPes() override;
// TsSection implementation. // TsSection implementation.
virtual bool Parse(bool payload_unit_start_indicator, bool Parse(bool payload_unit_start_indicator,
const uint8_t* buf, const uint8_t* buf,
int size) OVERRIDE; int size) override;
virtual void Flush() OVERRIDE; void Flush() override;
virtual void Reset() OVERRIDE; void Reset() override;
private: private:
// Emit a reassembled PES packet. // Emit a reassembled PES packet.

View File

@ -21,11 +21,11 @@ class TsSectionPmt : public TsSectionPsi {
typedef base::Callback<void(int, int)> RegisterPesCb; typedef base::Callback<void(int, int)> RegisterPesCb;
explicit TsSectionPmt(const RegisterPesCb& register_pes_cb); explicit TsSectionPmt(const RegisterPesCb& register_pes_cb);
virtual ~TsSectionPmt(); ~TsSectionPmt() override;
// Mpeg2TsPsiParser implementation. // Mpeg2TsPsiParser implementation.
virtual bool ParsePsiSection(BitReader* bit_reader) OVERRIDE; bool ParsePsiSection(BitReader* bit_reader) override;
virtual void ResetPsiSection() OVERRIDE; void ResetPsiSection() override;
private: private:
RegisterPesCb register_pes_cb_; RegisterPesCb register_pes_cb_;

View File

@ -19,14 +19,14 @@ namespace mp2t {
class TsSectionPsi : public TsSection { class TsSectionPsi : public TsSection {
public: public:
TsSectionPsi(); TsSectionPsi();
virtual ~TsSectionPsi(); ~TsSectionPsi() override;
// TsSection implementation. // TsSection implementation.
virtual bool Parse(bool payload_unit_start_indicator, bool Parse(bool payload_unit_start_indicator,
const uint8_t* buf, const uint8_t* buf,
int size) OVERRIDE; int size) override;
virtual void Flush() OVERRIDE; void Flush() override;
virtual void Reset() OVERRIDE; void Reset() override;
// Parse the content of the PSI section. // Parse the content of the PSI section.
virtual bool ParsePsiSection(BitReader* bit_reader) = 0; virtual bool ParsePsiSection(BitReader* bit_reader) = 0;

View File

@ -58,13 +58,13 @@ struct Box {
struct FullBox : Box { struct FullBox : Box {
public: public:
FullBox(); FullBox();
virtual ~FullBox(); ~FullBox() override;
uint8_t version; uint8_t version;
uint32_t flags; uint32_t flags;
protected: protected:
virtual bool ReadWrite(BoxBuffer* buffer) OVERRIDE; bool ReadWrite(BoxBuffer* buffer) override;
}; };
} // namespace mp4 } // namespace mp4

View File

@ -31,10 +31,10 @@ class BoxBuffer;
#define DECLARE_BOX_METHODS(T) \ #define DECLARE_BOX_METHODS(T) \
T(); \ T(); \
virtual ~T(); \ ~T() override; \
virtual bool ReadWrite(BoxBuffer* buffer) OVERRIDE; \ bool ReadWrite(BoxBuffer* buffer) override; \
virtual FourCC BoxType() const OVERRIDE; \ FourCC BoxType() const override; \
virtual uint32_t ComputeSize() OVERRIDE; uint32_t ComputeSize() override;
struct FileType : Box { struct FileType : Box {
DECLARE_BOX_METHODS(FileType); DECLARE_BOX_METHODS(FileType);

View File

@ -30,22 +30,22 @@ static const uint8_t kSkipBox[] = {
0x00}; 0x00};
struct FreeBox : Box { struct FreeBox : Box {
virtual bool ReadWrite(BoxBuffer* buffer) OVERRIDE { bool ReadWrite(BoxBuffer* buffer) override {
return true; return true;
} }
virtual FourCC BoxType() const OVERRIDE { return FOURCC_FREE; } FourCC BoxType() const override { return FOURCC_FREE; }
virtual uint32_t ComputeSize() OVERRIDE { uint32_t ComputeSize() override {
NOTIMPLEMENTED(); NOTIMPLEMENTED();
return 0; return 0;
} }
}; };
struct PsshBox : Box { struct PsshBox : Box {
virtual bool ReadWrite(BoxBuffer* buffer) OVERRIDE { bool ReadWrite(BoxBuffer* buffer) override {
return buffer->ReadWriteUInt32(&val); return buffer->ReadWriteUInt32(&val);
} }
virtual FourCC BoxType() const OVERRIDE { return FOURCC_PSSH; } FourCC BoxType() const override { return FOURCC_PSSH; }
virtual uint32_t ComputeSize() OVERRIDE { uint32_t ComputeSize() override {
NOTIMPLEMENTED(); NOTIMPLEMENTED();
return 0; return 0;
} }
@ -54,7 +54,7 @@ struct PsshBox : Box {
}; };
struct SkipBox : FullBox { struct SkipBox : FullBox {
virtual bool ReadWrite(BoxBuffer* buffer) OVERRIDE { bool ReadWrite(BoxBuffer* buffer) override {
RCHECK(FullBox::ReadWrite(buffer) && buffer->ReadWriteUInt8(&a) && RCHECK(FullBox::ReadWrite(buffer) && buffer->ReadWriteUInt8(&a) &&
buffer->ReadWriteUInt8(&b) && buffer->ReadWriteUInt16(&c) && buffer->ReadWriteUInt8(&b) && buffer->ReadWriteUInt16(&c) &&
buffer->ReadWriteInt32(&d) && buffer->ReadWriteInt32(&d) &&
@ -68,8 +68,8 @@ struct SkipBox : FullBox {
} }
return buffer->TryReadWriteChild(&empty); return buffer->TryReadWriteChild(&empty);
} }
virtual FourCC BoxType() const OVERRIDE { return FOURCC_SKIP; } FourCC BoxType() const override { return FOURCC_SKIP; }
virtual uint32_t ComputeSize() OVERRIDE { uint32_t ComputeSize() override {
NOTIMPLEMENTED(); NOTIMPLEMENTED();
return 0; return 0;
} }

View File

@ -31,13 +31,13 @@ class EncryptingFragmenter : public Fragmenter {
int64_t clear_time, int64_t clear_time,
uint8_t nalu_length_size); uint8_t nalu_length_size);
virtual ~EncryptingFragmenter(); ~EncryptingFragmenter() override;
/// @name Fragmenter implementation overrides. /// @name Fragmenter implementation overrides.
/// @{ /// @{
virtual Status AddSample(scoped_refptr<MediaSample> sample) OVERRIDE; Status AddSample(scoped_refptr<MediaSample> sample) override;
virtual Status InitializeFragment(int64_t first_sample_dts) OVERRIDE; Status InitializeFragment(int64_t first_sample_dts) override;
virtual void FinalizeFragment() OVERRIDE; void FinalizeFragment() override;
/// @} /// @}
protected: protected:

View File

@ -43,13 +43,13 @@ class KeyRotationFragmenter : public EncryptingFragmenter {
int64_t clear_time, int64_t clear_time,
uint8_t nalu_length_size, uint8_t nalu_length_size,
MuxerListener* muxer_listener); MuxerListener* muxer_listener);
virtual ~KeyRotationFragmenter(); ~KeyRotationFragmenter() override;
protected: protected:
/// @name Fragmenter implementation overrides. /// @name Fragmenter implementation overrides.
/// @{ /// @{
virtual Status PrepareFragmentForEncryption(bool enable_encryption) OVERRIDE; Status PrepareFragmentForEncryption(bool enable_encryption) override;
virtual void FinalizeFragmentForEncryption() OVERRIDE; void FinalizeFragmentForEncryption() override;
/// @} /// @}
private: private:

View File

@ -36,15 +36,15 @@ struct ProtectionSystemSpecificHeader;
class MP4MediaParser : public MediaParser { class MP4MediaParser : public MediaParser {
public: public:
MP4MediaParser(); MP4MediaParser();
virtual ~MP4MediaParser(); ~MP4MediaParser() override;
/// @name MediaParser implementation overrides. /// @name MediaParser implementation overrides.
/// @{ /// @{
virtual void Init(const InitCB& init_cb, void Init(const InitCB& init_cb,
const NewSampleCB& new_sample_cb, const NewSampleCB& new_sample_cb,
KeySource* decryption_key_source) OVERRIDE; KeySource* decryption_key_source) override;
virtual void Flush() OVERRIDE; void Flush() override;
virtual bool Parse(const uint8_t* buf, int size) OVERRIDE; bool Parse(const uint8_t* buf, int size) override;
/// @} /// @}
/// Handles ISO-BMFF containers which have the 'moov' box trailing the /// Handles ISO-BMFF containers which have the 'moov' box trailing the

View File

@ -33,14 +33,14 @@ class MP4Muxer : public Muxer {
public: public:
/// Create a MP4Muxer object from MuxerOptions. /// Create a MP4Muxer object from MuxerOptions.
explicit MP4Muxer(const MuxerOptions& options); explicit MP4Muxer(const MuxerOptions& options);
virtual ~MP4Muxer(); ~MP4Muxer() override;
private: private:
// Muxer implementation overrides. // Muxer implementation overrides.
virtual Status Initialize() OVERRIDE; Status Initialize() override;
virtual Status Finalize() OVERRIDE; Status Finalize() override;
virtual Status DoAddSample(const MediaStream* stream, Status DoAddSample(const MediaStream* stream,
scoped_refptr<MediaSample> sample) OVERRIDE; scoped_refptr<MediaSample> sample) override;
// Generate Audio/Video Track atom. // Generate Audio/Video Track atom.
void InitializeTrak(const StreamInfo* info, Track* trak); void InitializeTrak(const StreamInfo* info, Track* trak);

View File

@ -33,19 +33,19 @@ class MultiSegmentSegmenter : public Segmenter {
MultiSegmentSegmenter(const MuxerOptions& options, MultiSegmentSegmenter(const MuxerOptions& options,
scoped_ptr<FileType> ftyp, scoped_ptr<FileType> ftyp,
scoped_ptr<Movie> moov); scoped_ptr<Movie> moov);
virtual ~MultiSegmentSegmenter(); ~MultiSegmentSegmenter() override;
/// @name Segmenter implementation overrides. /// @name Segmenter implementation overrides.
/// @{ /// @{
virtual bool GetInitRange(size_t* offset, size_t* size) OVERRIDE; bool GetInitRange(size_t* offset, size_t* size) override;
virtual bool GetIndexRange(size_t* offset, size_t* size) OVERRIDE; bool GetIndexRange(size_t* offset, size_t* size) override;
/// @} /// @}
private: private:
// Segmenter implementation overrides. // Segmenter implementation overrides.
virtual Status DoInitialize() OVERRIDE; Status DoInitialize() override;
virtual Status DoFinalize() OVERRIDE; Status DoFinalize() override;
virtual Status DoFinalizeSegment() OVERRIDE; Status DoFinalizeSegment() override;
// Write segment to file. // Write segment to file.
Status WriteSegment(); Status WriteSegment();

View File

@ -10,7 +10,7 @@
#include <openssl/err.h> #include <openssl/err.h>
#include <openssl/rand.h> #include <openssl/rand.h>
#include "packager/base/file_util.h" #include "packager/base/files/file_util.h"
#include "packager/base/strings/stringprintf.h" #include "packager/base/strings/stringprintf.h"
#include "packager/base/threading/platform_thread.h" #include "packager/base/threading/platform_thread.h"
#include "packager/base/time/time.h" #include "packager/base/time/time.h"

View File

@ -30,19 +30,19 @@ class SingleSegmentSegmenter : public Segmenter {
SingleSegmentSegmenter(const MuxerOptions& options, SingleSegmentSegmenter(const MuxerOptions& options,
scoped_ptr<FileType> ftyp, scoped_ptr<FileType> ftyp,
scoped_ptr<Movie> moov); scoped_ptr<Movie> moov);
virtual ~SingleSegmentSegmenter(); ~SingleSegmentSegmenter() override;
/// @name Segmenter implementation overrides. /// @name Segmenter implementation overrides.
/// @{ /// @{
virtual bool GetInitRange(size_t* offset, size_t* size) OVERRIDE; bool GetInitRange(size_t* offset, size_t* size) override;
virtual bool GetIndexRange(size_t* offset, size_t* size) OVERRIDE; bool GetIndexRange(size_t* offset, size_t* size) override;
/// @} /// @}
private: private:
// Segmenter implementation overrides. // Segmenter implementation overrides.
virtual Status DoInitialize() OVERRIDE; Status DoInitialize() override;
virtual Status DoFinalize() OVERRIDE; Status DoFinalize() override;
virtual Status DoFinalizeSegment() OVERRIDE; Status DoFinalizeSegment() override;
scoped_ptr<SegmentIndex> vod_sidx_; scoped_ptr<SegmentIndex> vod_sidx_;
std::string temp_file_name_; std::string temp_file_name_;

View File

@ -50,16 +50,16 @@ struct PrevSampleData {
class WvmMediaParser : public MediaParser { class WvmMediaParser : public MediaParser {
public: public:
WvmMediaParser(); WvmMediaParser();
virtual ~WvmMediaParser(); ~WvmMediaParser() override;
// MediaParser implementation overrides. // MediaParser implementation overrides.
virtual void Init(const InitCB& init_cb, void Init(const InitCB& init_cb,
const NewSampleCB& new_sample_cb, const NewSampleCB& new_sample_cb,
KeySource* decryption_key_source) OVERRIDE; KeySource* decryption_key_source) override;
virtual void Flush() OVERRIDE; void Flush() override;
virtual bool Parse(const uint8_t* buf, int size) OVERRIDE; bool Parse(const uint8_t* buf, int size) override;
private: private:
enum Tag { enum Tag {

View File

@ -52,7 +52,7 @@ namespace media {
class MockKeySource : public KeySource { class MockKeySource : public KeySource {
public: public:
MockKeySource() {} MockKeySource() {}
virtual ~MockKeySource() {} ~MockKeySource() override {}
MOCK_METHOD1(FetchKeys, Status(uint32_t asset_id)); MOCK_METHOD1(FetchKeys, Status(uint32_t asset_id));
MOCK_METHOD2(GetKey, Status(TrackType track_type, MOCK_METHOD2(GetKey, Status(TrackType track_type,

View File

@ -6,7 +6,7 @@
#include <gtest/gtest.h> #include <gtest/gtest.h>
#include "packager/base/file_util.h" #include "packager/base/files/file_util.h"
#include "packager/base/strings/string_number_conversions.h" #include "packager/base/strings/string_number_conversions.h"
#include "packager/base/strings/stringprintf.h" #include "packager/base/strings/stringprintf.h"
#include "packager/base/time/clock.h" #include "packager/base/time/clock.h"
@ -80,14 +80,14 @@ MediaStream* FindFirstAudioStream(const std::vector<MediaStream*>& streams) {
class FakeClock : public base::Clock { class FakeClock : public base::Clock {
public: public:
// Fake the clock to return NULL time. // Fake the clock to return NULL time.
virtual base::Time Now() OVERRIDE { return base::Time(); } base::Time Now() override { return base::Time(); }
}; };
class PackagerTestBasic : public ::testing::TestWithParam<const char*> { class PackagerTestBasic : public ::testing::TestWithParam<const char*> {
public: public:
PackagerTestBasic() {} PackagerTestBasic() {}
virtual void SetUp() OVERRIDE { void SetUp() override {
// Create a test directory for testing, will be deleted after test. // Create a test directory for testing, will be deleted after test.
ASSERT_TRUE(base::CreateNewTempDirectory("packager_", &test_directory_)); ASSERT_TRUE(base::CreateNewTempDirectory("packager_", &test_directory_));
@ -96,7 +96,7 @@ class PackagerTestBasic : public ::testing::TestWithParam<const char*> {
test_directory_.AppendASCII(GetParam()))); test_directory_.AppendASCII(GetParam())));
} }
virtual void TearDown() OVERRIDE { base::DeleteFile(test_directory_, true); } void TearDown() override { base::DeleteFile(test_directory_, true); }
std::string GetFullPath(const std::string& file_name); std::string GetFullPath(const std::string& file_name);
// Check if |file1| and |file2| are the same. // Check if |file1| and |file2| are the same.
@ -271,7 +271,7 @@ TEST_P(PackagerTestBasic, MP4MuxerSingleSegmentEncryptedAudio) {
class PackagerTest : public PackagerTestBasic { class PackagerTest : public PackagerTestBasic {
public: public:
virtual void SetUp() OVERRIDE { void SetUp() override {
PackagerTestBasic::SetUp(); PackagerTestBasic::SetUp();
ASSERT_NO_FATAL_FAILURE(Remux(GetParam(), ASSERT_NO_FATAL_FAILURE(Remux(GetParam(),
@ -347,9 +347,8 @@ TEST_P(PackagerTest, MP4MuxerMultiSegmentsUnencryptedVideo) {
std::string segment_content; std::string segment_content;
ASSERT_TRUE(base::ReadFileToString(segment_path, &segment_content)); ASSERT_TRUE(base::ReadFileToString(segment_path, &segment_content));
int bytes_written = file_util::AppendToFile( EXPECT_TRUE(base::AppendToFile(output_path, segment_content.data(),
output_path, segment_content.data(), segment_content.size()); segment_content.size()));
ASSERT_EQ(segment_content.size(), static_cast<size_t>(bytes_written));
++segment_index; ++segment_index;
} }

View File

@ -14,7 +14,7 @@ int main(int argc, char **argv) {
::testing::InitGoogleTest(&argc, argv); ::testing::InitGoogleTest(&argc, argv);
// Needed to enable VLOG/DVLOG through --vmodule or --v. // Needed to enable VLOG/DVLOG through --vmodule or --v.
CommandLine::Init(argc, argv); base::CommandLine::Init(argc, argv);
CHECK(logging::InitLogging(logging::LoggingSettings())); CHECK(logging::InitLogging(logging::LoggingSettings()));
base::AtExitManager exit; base::AtExitManager exit;

View File

@ -4,7 +4,7 @@
#include "packager/media/test/test_data_util.h" #include "packager/media/test/test_data_util.h"
#include "packager/base/file_util.h" #include "packager/base/files/file_util.h"
#include "packager/base/logging.h" #include "packager/base/logging.h"
#include "packager/base/path_service.h" #include "packager/base/path_service.h"

View File

@ -32,29 +32,27 @@ class DashIopMpdNotifier : public MpdNotifier {
const MpdOptions& mpd_options, const MpdOptions& mpd_options,
const std::vector<std::string>& base_urls, const std::vector<std::string>& base_urls,
const std::string& output_path); const std::string& output_path);
virtual ~DashIopMpdNotifier() OVERRIDE; ~DashIopMpdNotifier() override;
/// None of the methods write out the MPD file until Flush() is called. /// None of the methods write out the MPD file until Flush() is called.
/// @name MpdNotifier implemetation overrides. /// @name MpdNotifier implemetation overrides.
/// @{ /// @{
virtual bool Init() OVERRIDE; bool Init() override;
virtual bool NotifyNewContainer(const MediaInfo& media_info, bool NotifyNewContainer(const MediaInfo& media_info, uint32_t* id) override;
uint32_t* id) OVERRIDE; bool NotifySampleDuration(uint32_t container_id,
virtual bool NotifySampleDuration(uint32_t container_id, uint32_t sample_duration) override;
uint32_t sample_duration) OVERRIDE; bool NotifyNewSegment(uint32_t id,
virtual bool NotifyNewSegment(uint32_t id, uint64_t start_time,
uint64_t start_time, uint64_t duration,
uint64_t duration, uint64_t size) override;
uint64_t size) OVERRIDE; bool NotifyEncryptionUpdate(uint32_t container_id,
virtual bool NotifyEncryptionUpdate( const std::string& drm_uuid,
uint32_t container_id, const std::vector<uint8_t>& new_key_id,
const std::string& drm_uuid, const std::vector<uint8_t>& new_pssh) override;
const std::vector<uint8_t>& new_key_id, bool AddContentProtectionElement(
const std::vector<uint8_t>& new_pssh) OVERRIDE;
virtual bool AddContentProtectionElement(
uint32_t id, uint32_t id,
const ContentProtectionElement& content_protection_element) OVERRIDE; const ContentProtectionElement& content_protection_element) override;
virtual bool Flush() OVERRIDE; bool Flush() override;
/// @} /// @}
private: private:

View File

@ -7,8 +7,8 @@
#include <gmock/gmock.h> #include <gmock/gmock.h>
#include <gtest/gtest.h> #include <gtest/gtest.h>
#include "packager/base/file_util.h"
#include "packager/base/files/file_path.h" #include "packager/base/files/file_path.h"
#include "packager/base/files/file_util.h"
#include "packager/mpd/base/dash_iop_mpd_notifier.h" #include "packager/mpd/base/dash_iop_mpd_notifier.h"
#include "packager/mpd/base/mock_mpd_builder.h" #include "packager/mpd/base/mock_mpd_builder.h"
#include "packager/mpd/base/mpd_builder.h" #include "packager/mpd/base/mpd_builder.h"
@ -101,14 +101,14 @@ class DashIopMpdNotifierTest
default_mock_representation_( default_mock_representation_(
new MockRepresentation(kDefaultRepresentationId)) {} new MockRepresentation(kDefaultRepresentationId)) {}
virtual void SetUp() OVERRIDE { void SetUp() override {
ASSERT_TRUE(base::CreateTemporaryFile(&temp_file_path_)); ASSERT_TRUE(base::CreateTemporaryFile(&temp_file_path_));
output_path_ = temp_file_path_.value(); output_path_ = temp_file_path_.value();
ON_CALL(*default_mock_adaptation_set_, Group()) ON_CALL(*default_mock_adaptation_set_, Group())
.WillByDefault(Return(kDefaultGroupId)); .WillByDefault(Return(kDefaultGroupId));
} }
virtual void TearDown() OVERRIDE { void TearDown() override {
base::DeleteFile(temp_file_path_, false /* non recursive, just 1 file */); base::DeleteFile(temp_file_path_, false /* non recursive, just 1 file */);
} }
@ -175,7 +175,7 @@ TEST_P(DashIopMpdNotifierTest, NotifyNewContainer) {
EXPECT_CALL(*mock_mpd_builder, ToString(_)).WillOnce(Return(true)); EXPECT_CALL(*mock_mpd_builder, ToString(_)).WillOnce(Return(true));
uint32_t unused_container_id; uint32_t unused_container_id;
SetMpdBuilder(&notifier, mock_mpd_builder.PassAs<MpdBuilder>()); SetMpdBuilder(&notifier, mock_mpd_builder.Pass());
EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kValidMediaInfo), EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kValidMediaInfo),
&unused_container_id)); &unused_container_id));
EXPECT_TRUE(notifier.Flush()); EXPECT_TRUE(notifier.Flush());
@ -296,7 +296,7 @@ TEST_P(DashIopMpdNotifierTest,
.WillOnce(Return(hd_representation.get())); .WillOnce(Return(hd_representation.get()));
uint32_t unused_container_id; uint32_t unused_container_id;
SetMpdBuilder(&notifier, mock_mpd_builder.PassAs<MpdBuilder>()); SetMpdBuilder(&notifier, mock_mpd_builder.Pass());
EXPECT_TRUE(notifier.NotifyNewContainer( EXPECT_TRUE(notifier.NotifyNewContainer(
ConvertToMediaInfo(kSdProtectedContent), &unused_container_id)); ConvertToMediaInfo(kSdProtectedContent), &unused_container_id));
EXPECT_TRUE(notifier.NotifyNewContainer( EXPECT_TRUE(notifier.NotifyNewContainer(
@ -399,7 +399,7 @@ TEST_P(DashIopMpdNotifierTest, NotifyNewContainersWithSameProtectedContent) {
.WillOnce(Return(hd_representation.get())); .WillOnce(Return(hd_representation.get()));
uint32_t unused_container_id; uint32_t unused_container_id;
SetMpdBuilder(&notifier, mock_mpd_builder.PassAs<MpdBuilder>()); SetMpdBuilder(&notifier, mock_mpd_builder.Pass());
EXPECT_TRUE(notifier.NotifyNewContainer( EXPECT_TRUE(notifier.NotifyNewContainer(
ConvertToMediaInfo(kSdProtectedContent), &unused_container_id)); ConvertToMediaInfo(kSdProtectedContent), &unused_container_id));
EXPECT_TRUE(notifier.NotifyNewContainer( EXPECT_TRUE(notifier.NotifyNewContainer(
@ -419,7 +419,7 @@ TEST_P(DashIopMpdNotifierTest, AddContentProtection) {
.WillOnce(Return(default_mock_representation_.get())); .WillOnce(Return(default_mock_representation_.get()));
uint32_t container_id; uint32_t container_id;
SetMpdBuilder(&notifier, mock_mpd_builder.PassAs<MpdBuilder>()); SetMpdBuilder(&notifier, mock_mpd_builder.Pass());
EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kValidMediaInfo), EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kValidMediaInfo),
&container_id)); &container_id));
@ -523,7 +523,7 @@ TEST_P(DashIopMpdNotifierTest, SetGroup) {
// This is not very nice but we need it for settings expectations later. // This is not very nice but we need it for settings expectations later.
MockMpdBuilder* mock_mpd_builder_raw = mock_mpd_builder.get(); MockMpdBuilder* mock_mpd_builder_raw = mock_mpd_builder.get();
uint32_t unused_container_id; uint32_t unused_container_id;
SetMpdBuilder(&notifier, mock_mpd_builder.PassAs<MpdBuilder>()); SetMpdBuilder(&notifier, mock_mpd_builder.Pass());
EXPECT_TRUE(notifier.NotifyNewContainer( EXPECT_TRUE(notifier.NotifyNewContainer(
ConvertToMediaInfo(kSdProtectedContent), &unused_container_id)); ConvertToMediaInfo(kSdProtectedContent), &unused_container_id));
EXPECT_TRUE(notifier.NotifyNewContainer( EXPECT_TRUE(notifier.NotifyNewContainer(
@ -664,7 +664,7 @@ TEST_P(DashIopMpdNotifierTest, DoNotSetGroupIfContentTypesDifferent) {
.WillOnce(Return(audio_representation.get())); .WillOnce(Return(audio_representation.get()));
uint32_t unused_container_id; uint32_t unused_container_id;
SetMpdBuilder(&notifier, mock_mpd_builder.PassAs<MpdBuilder>()); SetMpdBuilder(&notifier, mock_mpd_builder.Pass());
EXPECT_TRUE(notifier.NotifyNewContainer( EXPECT_TRUE(notifier.NotifyNewContainer(
ConvertToMediaInfo(kVideoContent), &unused_container_id)); ConvertToMediaInfo(kVideoContent), &unused_container_id));
EXPECT_TRUE(notifier.NotifyNewContainer( EXPECT_TRUE(notifier.NotifyNewContainer(
@ -704,7 +704,7 @@ TEST_P(DashIopMpdNotifierTest, UpdateEncryption) {
.WillOnce(Return(default_mock_representation_.get())); .WillOnce(Return(default_mock_representation_.get()));
uint32_t container_id; uint32_t container_id;
SetMpdBuilder(&notifier, mock_mpd_builder.PassAs<MpdBuilder>()); SetMpdBuilder(&notifier, mock_mpd_builder.Pass());
EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kProtectedContent), EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kProtectedContent),
&container_id)); &container_id));

View File

@ -20,7 +20,7 @@ class MockMpdBuilder : public MpdBuilder {
// |type| indicates whether the MPD should be for VOD or live content (kStatic // |type| indicates whether the MPD should be for VOD or live content (kStatic
// for VOD profile, or kDynamic for live profile). // for VOD profile, or kDynamic for live profile).
explicit MockMpdBuilder(MpdType type); explicit MockMpdBuilder(MpdType type);
virtual ~MockMpdBuilder() OVERRIDE; ~MockMpdBuilder() override;
MOCK_METHOD1(AddAdaptationSet, AdaptationSet*(const std::string& lang)); MOCK_METHOD1(AddAdaptationSet, AdaptationSet*(const std::string& lang));
MOCK_METHOD1(ToString, bool(std::string* output)); MOCK_METHOD1(ToString, bool(std::string* output));
@ -30,7 +30,7 @@ class MockAdaptationSet : public AdaptationSet {
public: public:
// |adaptation_set_id| is the id for the AdaptationSet. // |adaptation_set_id| is the id for the AdaptationSet.
explicit MockAdaptationSet(uint32_t adaptation_set_id); explicit MockAdaptationSet(uint32_t adaptation_set_id);
virtual ~MockAdaptationSet() OVERRIDE; ~MockAdaptationSet() override;
MOCK_METHOD1(AddRepresentation, Representation*(const MediaInfo& media_info)); MOCK_METHOD1(AddRepresentation, Representation*(const MediaInfo& media_info));
MOCK_METHOD1(AddContentProtectionElement, MOCK_METHOD1(AddContentProtectionElement,
@ -51,7 +51,7 @@ class MockRepresentation : public Representation {
public: public:
// |representation_id| is the numeric ID for the <Representation>. // |representation_id| is the numeric ID for the <Representation>.
explicit MockRepresentation(uint32_t representation_id); explicit MockRepresentation(uint32_t representation_id);
virtual ~MockRepresentation() OVERRIDE; ~MockRepresentation() override;
MOCK_METHOD1(AddContentProtectionElement, MOCK_METHOD1(AddContentProtectionElement,
void(const ContentProtectionElement& element)); void(const ContentProtectionElement& element));

View File

@ -353,17 +353,17 @@ class RepresentationStateChangeListenerImpl
: representation_id_(representation_id), adaptation_set_(adaptation_set) { : representation_id_(representation_id), adaptation_set_(adaptation_set) {
DCHECK(adaptation_set_); DCHECK(adaptation_set_);
} }
virtual ~RepresentationStateChangeListenerImpl() OVERRIDE {} ~RepresentationStateChangeListenerImpl() override {}
// RepresentationStateChangeListener implementation. // RepresentationStateChangeListener implementation.
virtual void OnNewSegmentForRepresentation(uint64_t start_time, void OnNewSegmentForRepresentation(uint64_t start_time,
uint64_t duration) OVERRIDE { uint64_t duration) override {
adaptation_set_->OnNewSegmentForRepresentation(representation_id_, adaptation_set_->OnNewSegmentForRepresentation(representation_id_,
start_time, duration); start_time, duration);
} }
virtual void OnSetFrameRateForRepresentation(uint32_t frame_duration, void OnSetFrameRateForRepresentation(uint32_t frame_duration,
uint32_t timescale) OVERRIDE { uint32_t timescale) override {
adaptation_set_->OnSetFrameRateForRepresentation(representation_id_, adaptation_set_->OnSetFrameRateForRepresentation(representation_id_,
frame_duration, timescale); frame_duration, timescale);
} }

View File

@ -9,7 +9,8 @@
#include <inttypes.h> #include <inttypes.h>
#include <libxml/xmlstring.h> #include <libxml/xmlstring.h>
#include "packager/base/file_util.h" #include "packager/base/strings/string_piece.h"
#include "packager/base/files/file_util.h"
#include "packager/base/logging.h" #include "packager/base/logging.h"
#include "packager/base/strings/string_number_conversions.h" #include "packager/base/strings/string_number_conversions.h"
#include "packager/base/strings/string_piece.h" #include "packager/base/strings/string_piece.h"
@ -97,7 +98,7 @@ template <MpdBuilder::MpdType type>
class MpdBuilderTest: public ::testing::Test { class MpdBuilderTest: public ::testing::Test {
public: public:
MpdBuilderTest() : mpd_(type, MpdOptions()), representation_() {} MpdBuilderTest() : mpd_(type, MpdOptions()), representation_() {}
virtual ~MpdBuilderTest() {} ~MpdBuilderTest() override {}
void CheckMpd(const std::string& expected_output_file) { void CheckMpd(const std::string& expected_output_file) {
std::string mpd_doc; std::string mpd_doc;
@ -143,11 +144,11 @@ typedef StaticMpdBuilderTest CommonMpdBuilderTest;
class DynamicMpdBuilderTest : public MpdBuilderTest<MpdBuilder::kDynamic> { class DynamicMpdBuilderTest : public MpdBuilderTest<MpdBuilder::kDynamic> {
public: public:
virtual ~DynamicMpdBuilderTest() {} ~DynamicMpdBuilderTest() override {}
// Anchors availabilityStartTime so that the test result doesn't depend on the // Anchors availabilityStartTime so that the test result doesn't depend on the
// current time. // current time.
virtual void SetUp() { void SetUp() override {
mpd_.availability_start_time_ = "2011-12-25T12:30:00"; mpd_.availability_start_time_ = "2011-12-25T12:30:00";
} }
@ -180,9 +181,9 @@ class SegmentTemplateTest : public DynamicMpdBuilderTest {
public: public:
SegmentTemplateTest() SegmentTemplateTest()
: bandwidth_estimator_(BandwidthEstimator::kUseAllBlocks) {} : bandwidth_estimator_(BandwidthEstimator::kUseAllBlocks) {}
virtual ~SegmentTemplateTest() {} ~SegmentTemplateTest() override {}
virtual void SetUp() { void SetUp() override {
DynamicMpdBuilderTest::SetUp(); DynamicMpdBuilderTest::SetUp();
ASSERT_NO_FATAL_FAILURE(AddRepresentationWithDefaultMediaInfo()); ASSERT_NO_FATAL_FAILURE(AddRepresentationWithDefaultMediaInfo());
} }
@ -270,12 +271,12 @@ class SegmentTemplateTest : public DynamicMpdBuilderTest {
class TimeShiftBufferDepthTest : public SegmentTemplateTest { class TimeShiftBufferDepthTest : public SegmentTemplateTest {
public: public:
TimeShiftBufferDepthTest() {} TimeShiftBufferDepthTest() {}
virtual ~TimeShiftBufferDepthTest() {} ~TimeShiftBufferDepthTest() override {}
// This function is tricky. It does not call SegmentTemplateTest::Setup() so // This function is tricky. It does not call SegmentTemplateTest::Setup() so
// that it does not automatically add a representation, that has $Time$ // that it does not automatically add a representation, that has $Time$
// template. // template.
virtual void SetUp() { void SetUp() override {
DynamicMpdBuilderTest::SetUp(); DynamicMpdBuilderTest::SetUp();
// The only diff with current GetDefaultMediaInfo() is that this uses // The only diff with current GetDefaultMediaInfo() is that this uses
@ -458,9 +459,9 @@ TEST_F(CommonMpdBuilderTest,
new MockRepresentationStateChangeListener()); new MockRepresentationStateChangeListener());
EXPECT_CALL(*listener, EXPECT_CALL(*listener,
OnNewSegmentForRepresentation(kStartTime, kDuration)); OnNewSegmentForRepresentation(kStartTime, kDuration));
Representation representation( Representation representation(ConvertToMediaInfo(kTestMediaInfo),
ConvertToMediaInfo(kTestMediaInfo), MpdOptions(), kAnyRepresentationId, MpdOptions(), kAnyRepresentationId,
listener.PassAs<RepresentationStateChangeListener>()); listener.Pass());
EXPECT_TRUE(representation.Init()); EXPECT_TRUE(representation.Init());
representation.AddNewSegment(kStartTime, kDuration, 10 /* any size */); representation.AddNewSegment(kStartTime, kDuration, 10 /* any size */);
@ -489,9 +490,9 @@ TEST_F(CommonMpdBuilderTest,
new MockRepresentationStateChangeListener()); new MockRepresentationStateChangeListener());
EXPECT_CALL(*listener, EXPECT_CALL(*listener,
OnSetFrameRateForRepresentation(kFrameDuration, kTimeScale)); OnSetFrameRateForRepresentation(kFrameDuration, kTimeScale));
Representation representation( Representation representation(ConvertToMediaInfo(kTestMediaInfo),
ConvertToMediaInfo(kTestMediaInfo), MpdOptions(), kAnyRepresentationId, MpdOptions(), kAnyRepresentationId,
listener.PassAs<RepresentationStateChangeListener>()); listener.Pass());
EXPECT_TRUE(representation.Init()); EXPECT_TRUE(representation.Init());
representation.SetSampleDuration(kFrameDuration); representation.SetSampleDuration(kFrameDuration);

View File

@ -105,7 +105,7 @@ bool HexToUUID(const std::string& data, std::string* uuid_format) {
} }
const std::string hex_encoded = const std::string hex_encoded =
StringToLowerASCII(base::HexEncode(data.data(), data.size())); base::StringToLowerASCII(base::HexEncode(data.data(), data.size()));
DCHECK_EQ(hex_encoded.size(), kExpectedUUIDSize * 2); DCHECK_EQ(hex_encoded.size(), kExpectedUUIDSize * 2);
base::StringPiece all(hex_encoded); base::StringPiece all(hex_encoded);
// Note UUID has 5 parts separated with dashes. // Note UUID has 5 parts separated with dashes.

View File

@ -34,28 +34,26 @@ class SimpleMpdNotifier : public MpdNotifier {
const MpdOptions& mpd_options, const MpdOptions& mpd_options,
const std::vector<std::string>& base_urls, const std::vector<std::string>& base_urls,
const std::string& output_path); const std::string& output_path);
virtual ~SimpleMpdNotifier(); ~SimpleMpdNotifier() override;
/// @name MpdNotifier implemetation overrides. /// @name MpdNotifier implemetation overrides.
/// @{ /// @{
virtual bool Init() OVERRIDE; bool Init() override;
virtual bool NotifyNewContainer(const MediaInfo& media_info, bool NotifyNewContainer(const MediaInfo& media_info, uint32_t* id) override;
uint32_t* id) OVERRIDE; bool NotifySampleDuration(uint32_t container_id,
virtual bool NotifySampleDuration(uint32_t container_id, uint32_t sample_duration) override;
uint32_t sample_duration) OVERRIDE; bool NotifyNewSegment(uint32_t id,
virtual bool NotifyNewSegment(uint32_t id, uint64_t start_time,
uint64_t start_time, uint64_t duration,
uint64_t duration, uint64_t size) override;
uint64_t size) OVERRIDE; bool NotifyEncryptionUpdate(uint32_t container_id,
virtual bool NotifyEncryptionUpdate( const std::string& drm_uuid,
uint32_t container_id, const std::vector<uint8_t>& new_key_id,
const std::string& drm_uuid, const std::vector<uint8_t>& new_pssh) override;
const std::vector<uint8_t>& new_key_id, bool AddContentProtectionElement(
const std::vector<uint8_t>& new_pssh) OVERRIDE;
virtual bool AddContentProtectionElement(
uint32_t id, uint32_t id,
const ContentProtectionElement& content_protection_element) OVERRIDE; const ContentProtectionElement& content_protection_element) override;
virtual bool Flush() OVERRIDE; bool Flush() override;
/// @} /// @}
private: private:

View File

@ -6,8 +6,8 @@
#include <gtest/gtest.h> #include <gtest/gtest.h>
#include "packager/base/file_util.h"
#include "packager/base/files/file_path.h" #include "packager/base/files/file_path.h"
#include "packager/base/files/file_util.h"
#include "packager/mpd/base/mock_mpd_builder.h" #include "packager/mpd/base/mock_mpd_builder.h"
#include "packager/mpd/base/mpd_builder.h" #include "packager/mpd/base/mpd_builder.h"
#include "packager/mpd/base/mpd_options.h" #include "packager/mpd/base/mpd_options.h"
@ -42,12 +42,12 @@ class SimpleMpdNotifierTest
: default_mock_adaptation_set_( : default_mock_adaptation_set_(
new MockAdaptationSet(kDefaultAdaptationSetId)) {} new MockAdaptationSet(kDefaultAdaptationSetId)) {}
virtual void SetUp() OVERRIDE { void SetUp() override {
ASSERT_TRUE(base::CreateTemporaryFile(&temp_file_path_)); ASSERT_TRUE(base::CreateTemporaryFile(&temp_file_path_));
output_path_ = temp_file_path_.value(); output_path_ = temp_file_path_.value();
} }
virtual void TearDown() OVERRIDE { void TearDown() override {
base::DeleteFile(temp_file_path_, false /* non recursive, just 1 file */); base::DeleteFile(temp_file_path_, false /* non recursive, just 1 file */);
} }
@ -116,7 +116,7 @@ TEST_P(SimpleMpdNotifierTest, NotifyNewContainer) {
EXPECT_CALL(*mock_mpd_builder, ToString(_)).WillOnce(Return(true)); EXPECT_CALL(*mock_mpd_builder, ToString(_)).WillOnce(Return(true));
uint32_t unused_container_id; uint32_t unused_container_id;
SetMpdBuilder(&notifier, mock_mpd_builder.PassAs<MpdBuilder>()); SetMpdBuilder(&notifier, mock_mpd_builder.Pass());
EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kValidMediaInfo), EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kValidMediaInfo),
&unused_container_id)); &unused_container_id));
EXPECT_TRUE(notifier.Flush()); EXPECT_TRUE(notifier.Flush());
@ -138,7 +138,7 @@ TEST_F(SimpleMpdNotifierTest, LiveNotifySampleDuration) {
.WillOnce(Return(mock_representation.get())); .WillOnce(Return(mock_representation.get()));
uint32_t container_id; uint32_t container_id;
SetMpdBuilder(&notifier, mock_mpd_builder.PassAs<MpdBuilder>()); SetMpdBuilder(&notifier, mock_mpd_builder.Pass());
EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kValidMediaInfo), EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kValidMediaInfo),
&container_id)); &container_id));
EXPECT_EQ(kRepresentationId, container_id); EXPECT_EQ(kRepresentationId, container_id);
@ -169,7 +169,7 @@ TEST_F(SimpleMpdNotifierTest, OnDemandNotifySampleDuration) {
.WillOnce(Return(mock_representation.get())); .WillOnce(Return(mock_representation.get()));
uint32_t container_id; uint32_t container_id;
SetMpdBuilder(&notifier, mock_mpd_builder.PassAs<MpdBuilder>()); SetMpdBuilder(&notifier, mock_mpd_builder.Pass());
EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kValidMediaInfo), EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kValidMediaInfo),
&container_id)); &container_id));
EXPECT_EQ(kRepresentationId, container_id); EXPECT_EQ(kRepresentationId, container_id);
@ -196,7 +196,7 @@ TEST_F(SimpleMpdNotifierTest, LiveNotifyNewSegment) {
.WillOnce(Return(mock_representation.get())); .WillOnce(Return(mock_representation.get()));
uint32_t container_id; uint32_t container_id;
SetMpdBuilder(&notifier, mock_mpd_builder.PassAs<MpdBuilder>()); SetMpdBuilder(&notifier, mock_mpd_builder.Pass());
EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kValidMediaInfo), EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kValidMediaInfo),
&container_id)); &container_id));
EXPECT_EQ(kRepresentationId, container_id); EXPECT_EQ(kRepresentationId, container_id);
@ -227,7 +227,7 @@ TEST_F(SimpleMpdNotifierTest, AddContentProtectionElement) {
.WillOnce(Return(mock_representation.get())); .WillOnce(Return(mock_representation.get()));
uint32_t container_id; uint32_t container_id;
SetMpdBuilder(&notifier, mock_mpd_builder.PassAs<MpdBuilder>()); SetMpdBuilder(&notifier, mock_mpd_builder.Pass());
EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kValidMediaInfo), EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kValidMediaInfo),
&container_id)); &container_id));
EXPECT_EQ(kRepresentationId, container_id); EXPECT_EQ(kRepresentationId, container_id);
@ -270,7 +270,7 @@ TEST_P(SimpleMpdNotifierTest, UpdateEncryption) {
.WillOnce(Return(mock_representation.get())); .WillOnce(Return(mock_representation.get()));
uint32_t container_id; uint32_t container_id;
SetMpdBuilder(&notifier, mock_mpd_builder.PassAs<MpdBuilder>()); SetMpdBuilder(&notifier, mock_mpd_builder.Pass());
EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kProtectedContent), EXPECT_TRUE(notifier.NotifyNewContainer(ConvertToMediaInfo(kProtectedContent),
&container_id)); &container_id));

View File

@ -95,7 +95,7 @@ class XmlNode {
/// AdaptationSet and Representation are subtypes of this. /// AdaptationSet and Representation are subtypes of this.
class RepresentationBaseXmlNode : public XmlNode { class RepresentationBaseXmlNode : public XmlNode {
public: public:
virtual ~RepresentationBaseXmlNode(); ~RepresentationBaseXmlNode() override;
bool AddContentProtectionElements( bool AddContentProtectionElements(
const std::list<ContentProtectionElement>& content_protection_elements); const std::list<ContentProtectionElement>& content_protection_elements);
@ -113,7 +113,7 @@ class RepresentationBaseXmlNode : public XmlNode {
class AdaptationSetXmlNode : public RepresentationBaseXmlNode { class AdaptationSetXmlNode : public RepresentationBaseXmlNode {
public: public:
AdaptationSetXmlNode(); AdaptationSetXmlNode();
virtual ~AdaptationSetXmlNode(); ~AdaptationSetXmlNode() override;
/// @param scheme_id_uri is content of the schemeIdUri attribute. /// @param scheme_id_uri is content of the schemeIdUri attribute.
/// @param value is the content of value attribute. /// @param value is the content of value attribute.
@ -128,7 +128,7 @@ class AdaptationSetXmlNode : public RepresentationBaseXmlNode {
class RepresentationXmlNode : public RepresentationBaseXmlNode { class RepresentationXmlNode : public RepresentationBaseXmlNode {
public: public:
RepresentationXmlNode(); RepresentationXmlNode();
virtual ~RepresentationXmlNode(); ~RepresentationXmlNode() override;
/// Adds video metadata to the MPD. /// Adds video metadata to the MPD.
/// @param video_info constains the VideoInfo for a Representation. /// @param video_info constains the VideoInfo for a Representation.

View File

@ -55,7 +55,7 @@ ScopedXmlPtr<xmlDoc>::type MakeDoc(ScopedXmlPtr<xmlNode>::type node) {
class RepresentationTest : public ::testing::Test { class RepresentationTest : public ::testing::Test {
public: public:
RepresentationTest() {} RepresentationTest() {}
virtual ~RepresentationTest() {} ~RepresentationTest() override {}
// Ownership transfers, IOW this function will release the resource for // Ownership transfers, IOW this function will release the resource for
// |node|. Returns |node| in string format. // |node|. Returns |node| in string format.

View File

@ -9,7 +9,7 @@
#include <google/protobuf/text_format.h> #include <google/protobuf/text_format.h>
#include <gtest/gtest.h> #include <gtest/gtest.h>
#include "packager/base/file_util.h" #include "packager/base/files/file_util.h"
#include "packager/base/path_service.h" #include "packager/base/path_service.h"
#include "packager/mpd/base/media_info.pb.h" #include "packager/mpd/base/media_info.pb.h"
#include "packager/mpd/base/mpd_builder.h" #include "packager/mpd/base/mpd_builder.h"

View File

@ -10,8 +10,8 @@
#include <google/protobuf/text_format.h> #include <google/protobuf/text_format.h>
#include <stdint.h> #include <stdint.h>
#include "packager/base/file_util.h"
#include "packager/base/files/file_path.h" #include "packager/base/files/file_path.h"
#include "packager/base/files/file_util.h"
#include "packager/media/file/file.h" #include "packager/media/file/file.h"
#include "packager/mpd/base/dash_iop_mpd_notifier.h" #include "packager/mpd/base/dash_iop_mpd_notifier.h"
#include "packager/mpd/base/mpd_builder.h" #include "packager/mpd/base/mpd_builder.h"
@ -35,13 +35,12 @@ namespace {
class DashIopMpdNotifierFactory : public MpdNotifierFactory { class DashIopMpdNotifierFactory : public MpdNotifierFactory {
public: public:
DashIopMpdNotifierFactory() {} DashIopMpdNotifierFactory() {}
virtual ~DashIopMpdNotifierFactory() OVERRIDE {} ~DashIopMpdNotifierFactory() override {}
virtual scoped_ptr<MpdNotifier> Create( scoped_ptr<MpdNotifier> Create(DashProfile dash_profile,
DashProfile dash_profile, const MpdOptions& mpd_options,
const MpdOptions& mpd_options, const std::vector<std::string>& base_urls,
const std::vector<std::string>& base_urls, const std::string& output_path) override {
const std::string& output_path) OVERRIDE {
return scoped_ptr<MpdNotifier>(new DashIopMpdNotifier( return scoped_ptr<MpdNotifier>(new DashIopMpdNotifier(
dash_profile, mpd_options, base_urls, output_path)); dash_profile, mpd_options, base_urls, output_path));
} }
@ -51,13 +50,12 @@ class DashIopMpdNotifierFactory : public MpdNotifierFactory {
class SimpleMpdNotifierFactory : public MpdNotifierFactory { class SimpleMpdNotifierFactory : public MpdNotifierFactory {
public: public:
SimpleMpdNotifierFactory() {} SimpleMpdNotifierFactory() {}
virtual ~SimpleMpdNotifierFactory() OVERRIDE {} ~SimpleMpdNotifierFactory() override {}
virtual scoped_ptr<MpdNotifier> Create( scoped_ptr<MpdNotifier> Create(DashProfile dash_profile,
DashProfile dash_profile, const MpdOptions& mpd_options,
const MpdOptions& mpd_options, const std::vector<std::string>& base_urls,
const std::vector<std::string>& base_urls, const std::string& output_path) override {
const std::string& output_path) OVERRIDE {
return scoped_ptr<MpdNotifier>(new SimpleMpdNotifier( return scoped_ptr<MpdNotifier>(new SimpleMpdNotifier(
dash_profile, mpd_options, base_urls, output_path)); dash_profile, mpd_options, base_urls, output_path));
} }

View File

@ -7,7 +7,7 @@
#include <gmock/gmock.h> #include <gmock/gmock.h>
#include <gtest/gtest.h> #include <gtest/gtest.h>
#include "packager/base/file_util.h" #include "packager/base/files/file_util.h"
#include "packager/base/path_service.h" #include "packager/base/path_service.h"
#include "packager/mpd/base/dash_iop_mpd_notifier.h" #include "packager/mpd/base/dash_iop_mpd_notifier.h"
#include "packager/mpd/base/mock_mpd_notifier.h" #include "packager/mpd/base/mock_mpd_notifier.h"
@ -26,18 +26,17 @@ namespace {
class TestMpdNotifierFactory : public MpdNotifierFactory { class TestMpdNotifierFactory : public MpdNotifierFactory {
public: public:
TestMpdNotifierFactory() {} TestMpdNotifierFactory() {}
virtual ~TestMpdNotifierFactory() OVERRIDE {} ~TestMpdNotifierFactory() override {}
// So sad that this method cannot be mocked (gmock errors at compile time). // So sad that this method cannot be mocked (gmock errors at compile time).
// Also (probably) this version of gmock does not support returning // Also (probably) this version of gmock does not support returning
// scoped_ptr. // scoped_ptr.
// For now we only need to return MockMpdNotifier() with these set of // For now we only need to return MockMpdNotifier() with these set of
// expectations for all the tests. // expectations for all the tests.
virtual scoped_ptr<MpdNotifier> Create( scoped_ptr<MpdNotifier> Create(DashProfile dash_profile,
DashProfile dash_profile, const MpdOptions& mpd_options,
const MpdOptions& mpd_options, const std::vector<std::string>& base_urls,
const std::vector<std::string>& base_urls, const std::string& output_path) override {
const std::string& output_path) OVERRIDE {
EXPECT_EQ(expected_base_urls_, base_urls); EXPECT_EQ(expected_base_urls_, base_urls);
scoped_ptr<MockMpdNotifier> mock_notifier( scoped_ptr<MockMpdNotifier> mock_notifier(
@ -48,7 +47,7 @@ class TestMpdNotifierFactory : public MpdNotifierFactory {
.Times(2) .Times(2)
.WillRepeatedly(Return(true)); .WillRepeatedly(Return(true));
EXPECT_CALL(*mock_notifier, Flush()).WillOnce(Return(true)); EXPECT_CALL(*mock_notifier, Flush()).WillOnce(Return(true));
return mock_notifier.PassAs<MpdNotifier>(); return mock_notifier.Pass();
} }
void SetExpectedBaseUrls(const std::vector<std::string>& base_urls) { void SetExpectedBaseUrls(const std::vector<std::string>& base_urls) {
@ -64,13 +63,12 @@ class MpdWriterTest : public ::testing::Test {
protected: protected:
// Note that MpdWriter::SetMpdNotifierFactoryForTest() is not called in SetUp. // Note that MpdWriter::SetMpdNotifierFactoryForTest() is not called in SetUp.
// Set expectations in the test and call it. // Set expectations in the test and call it.
virtual void SetUp() OVERRIDE { void SetUp() override {
notifier_factory_.reset(new TestMpdNotifierFactory()); notifier_factory_.reset(new TestMpdNotifierFactory());
} }
void SetMpdNotifierFactoryForTest() { void SetMpdNotifierFactoryForTest() {
mpd_writer_.SetMpdNotifierFactoryForTest( mpd_writer_.SetMpdNotifierFactoryForTest(notifier_factory_.Pass());
notifier_factory_.PassAs<MpdNotifierFactory>());
} }
scoped_ptr<TestMpdNotifierFactory> notifier_factory_; scoped_ptr<TestMpdNotifierFactory> notifier_factory_;