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

Unified Diff: media/cast/transport/transport_video_sender.cc

Issue 138843011: Cast: Adding helper crypto classes (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix compile issues Created 6 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: media/cast/transport/transport_video_sender.cc
diff --git a/media/cast/transport/transport_video_sender.cc b/media/cast/transport/transport_video_sender.cc
index a557b83fdfe8933a79902dd6662b38e03c9595c5..9b9ea2e3b24aafdd652087857df607f03fac7ae9 100644
--- a/media/cast/transport/transport_video_sender.cc
+++ b/media/cast/transport/transport_video_sender.cc
@@ -9,8 +9,6 @@
#include "base/bind.h"
#include "base/logging.h"
#include "base/message_loop/message_loop.h"
-#include "crypto/encryptor.h"
-#include "crypto/symmetric_key.h"
#include "media/base/video_frame.h"
#include "media/cast/transport/pacing/paced_sender.h"
@@ -24,23 +22,9 @@ TransportVideoSender::TransportVideoSender(
PacedSender* const paced_packet_sender)
: rtp_max_delay_(base::TimeDelta::FromMilliseconds(
config.video_rtp_config.max_delay_ms)),
- rtp_sender_(clock, config, false, paced_packet_sender),
- initialized_(true) {
- if (config.aes_iv_mask.size() == kAesKeySize &&
- config.aes_key.size() == kAesKeySize) {
- iv_mask_ = config.aes_iv_mask;
- key_.reset(crypto::SymmetricKey::Import(
- crypto::SymmetricKey::AES, config.aes_key));
- encryptor_.reset(new crypto::Encryptor());
- encryptor_->Init(key_.get(), crypto::Encryptor::CTR, std::string());
- } else if (config.aes_iv_mask.size() != 0 ||
- config.aes_key.size() != 0) {
- initialized_ = false;
- DCHECK_EQ(config.aes_iv_mask.size(), 0u)
- << "Invalid Crypto configuration: aes_iv_mask.size" ;
- DCHECK_EQ(config.aes_key.size(), 0u)
- << "Invalid Crypto configuration: aes_key.size";
- }
+ encryptor_(),
+ rtp_sender_(clock, config, false, paced_packet_sender) {
+ initialized_ = encryptor_.Initialize(config.aes_key, config.aes_iv_mask);
}
TransportVideoSender::~TransportVideoSender() {}
@@ -48,7 +32,7 @@ TransportVideoSender::~TransportVideoSender() {}
void TransportVideoSender::InsertCodedVideoFrame(
const EncodedVideoFrame* coded_frame,
const base::TimeTicks& capture_time) {
- if (encryptor_) {
+ if (encryptor_.initialized()) {
EncodedVideoFrame encrypted_video_frame;
if (!EncryptVideoFrame(*coded_frame, &encrypted_video_frame))
@@ -64,19 +48,13 @@ void TransportVideoSender::InsertCodedVideoFrame(
}
}
-
bool TransportVideoSender::EncryptVideoFrame(
const EncodedVideoFrame& video_frame,
EncodedVideoFrame* encrypted_frame) {
- if (!encryptor_->SetCounter(GetAesNonce(video_frame.frame_id, iv_mask_))) {
- NOTREACHED() << "Failed to set counter";
+ if (!encryptor_.Encrypt(
+ video_frame.frame_id, video_frame.data, &(encrypted_frame->data)))
return false;
- }
- if (!encryptor_->Encrypt(video_frame.data, &encrypted_frame->data)) {
- NOTREACHED() << "Encrypt error";
- return false;
- }
encrypted_frame->codec = video_frame.codec;
encrypted_frame->key_frame = video_frame.key_frame;
encrypted_frame->frame_id = video_frame.frame_id;
« no previous file with comments | « media/cast/transport/transport_video_sender.h ('k') | media/cast/transport/utility/transport_encryption_handler.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698