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

Unified Diff: content/browser/renderer_host/media/audio_debug_file_writer.cc

Issue 2582703003: Audio output debug recording. (Closed)
Patch Set: Code review. Created 3 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: content/browser/renderer_host/media/audio_debug_file_writer.cc
diff --git a/content/browser/renderer_host/media/audio_debug_file_writer.cc b/content/browser/renderer_host/media/audio_debug_file_writer.cc
index 1656a1cca232a2d020da4a5df59f96eb597bafdf..87ea02ce931cd2a211338fe1ad1d987846395e90 100644
--- a/content/browser/renderer_host/media/audio_debug_file_writer.cc
+++ b/content/browser/renderer_host/media/audio_debug_file_writer.cc
@@ -13,6 +13,7 @@
#include "base/sys_byteorder.h"
#include "content/public/browser/browser_thread.h"
#include "media/base/audio_bus.h"
+#include "media/base/audio_sample_types.h"
namespace content {
@@ -63,7 +64,9 @@ class CharBufferWriter {
size_ += data_size;
}
- void Write(const char(&data)[4]) { Write(static_cast<const char*>(data), 4); }
+ void Write(const char (&data)[4]) {
+ Write(static_cast<const char*>(data), 4);
+ }
void WriteLE16(uint16_t data) {
uint16_t val = base::ByteSwapToLE16(data);
@@ -186,9 +189,7 @@ AudioDebugFileWriter::AudioFileWriter::Create(
AudioDebugFileWriter::AudioFileWriter::AudioFileWriter(
const media::AudioParameters& params)
- : samples_(0), params_(params), interleaved_data_size_(0) {
- DCHECK_EQ(params.bits_per_sample(), kBytesPerSample * 8);
-}
+ : samples_(0), params_(params), interleaved_data_size_(0) {}
AudioDebugFileWriter::AudioFileWriter::~AudioFileWriter() {
DCHECK_CURRENTLY_ON(BrowserThread::FILE);
@@ -196,8 +197,7 @@ AudioDebugFileWriter::AudioFileWriter::~AudioFileWriter() {
WriteHeader();
}
-void AudioDebugFileWriter::AudioFileWriter::Write(
- const media::AudioBus* data) {
+void AudioDebugFileWriter::AudioFileWriter::Write(const media::AudioBus* data) {
DCHECK_CURRENTLY_ON(BrowserThread::FILE);
if (!file_.IsValid())
return;
@@ -209,8 +209,8 @@ void AudioDebugFileWriter::AudioFileWriter::Write(
interleaved_data_size_ = data_size;
}
samples_ += data_size;
- data->ToInterleaved(data->frames(), sizeof(interleaved_data_[0]),
- interleaved_data_.get());
+ data->ToInterleaved<media::SignedInt16SampleTypeTraits>(
+ data->frames(), interleaved_data_.get());
#ifndef ARCH_CPU_LITTLE_ENDIAN
static_assert(sizeof(interleaved_data_[0]) == sizeof(uint16_t),
@@ -260,8 +260,7 @@ void AudioDebugFileWriter::AudioFileWriter::CreateRecordingFile(
<< file_.error_details();
}
-AudioDebugFileWriter::AudioDebugFileWriter(
- const media::AudioParameters& params)
+AudioDebugFileWriter::AudioDebugFileWriter(const media::AudioParameters& params)
: params_(params) {
client_sequence_checker_.DetachFromSequence();
}
@@ -270,6 +269,12 @@ AudioDebugFileWriter::~AudioDebugFileWriter() {
// |file_writer_| will be deleted on FILE thread.
}
+// static
+std::unique_ptr<media::AudioFileWriter> AudioDebugFileWriter::Create(
+ const media::AudioParameters& params) {
+ return base::MakeUnique<AudioDebugFileWriter>(params);
+}
+
void AudioDebugFileWriter::Start(const base::FilePath& file_name) {
DCHECK(client_sequence_checker_.CalledOnValidSequence());
DCHECK(!file_writer_);

Powered by Google App Engine
This is Rietveld 408576698