Skip to content
Snippets Groups Projects
Commit 4d4e5bb3 authored by Philippe Gorley's avatar Philippe Gorley Committed by Sébastien Blin
Browse files

recorder: log input streams


Overloads << operator to more easily stringify a MediaStream.

Change-Id: I701b85fb7b98a43d336f4cb9a3fe1ab419e04827
Reviewed-by: default avatarSebastien Blin <sebastien.blin@savoirfairelinux.com>
parent 93846bfa
No related branches found
No related tags found
Loading
...@@ -200,6 +200,8 @@ MediaRecorder::addStream(bool isVideo, bool fromPeer, MediaStream ms) ...@@ -200,6 +200,8 @@ MediaRecorder::addStream(bool isVideo, bool fromPeer, MediaStream ms)
ms.name = (fromPeer ? "a:1" : "a:2"); ms.name = (fromPeer ? "a:1" : "a:2");
++nbReceivedAudioStreams_; ++nbReceivedAudioStreams_;
} }
// print index instead of count
RING_DBG() << "Recorder input #" << (nbReceivedAudioStreams_ + nbReceivedVideoStreams_ - 1) << ": " << ms;
streams_[isVideo][fromPeer] = ms; streams_[isVideo][fromPeer] = ms;
// wait until all streams are ready before writing to the file // wait until all streams are ready before writing to the file
...@@ -365,12 +367,7 @@ MediaRecorder::setupVideoOutput() ...@@ -365,12 +367,7 @@ MediaRecorder::setupVideoOutput()
if (encoderStream.format < 0) if (encoderStream.format < 0)
return encoderStream; return encoderStream;
RING_DBG() << "Video recorder '" RING_DBG() << "Recorder output: " << encoderStream;
<< (encoderStream.name.empty() ? "(null)" : encoderStream.name)
<< "' properties: "
<< av_get_pix_fmt_name(static_cast<AVPixelFormat>(encoderStream.format)) << ", "
<< encoderStream.width << "x" << encoderStream.height << ", "
<< encoderStream.frameRate << " fps";
return encoderStream; return encoderStream;
} }
...@@ -437,12 +434,7 @@ MediaRecorder::setupAudioOutput() ...@@ -437,12 +434,7 @@ MediaRecorder::setupAudioOutput()
if (encoderStream.format < 0) if (encoderStream.format < 0)
return encoderStream; return encoderStream;
RING_DBG() << "Audio recorder '" RING_DBG() << "Recorder output: " << encoderStream;
<< (encoderStream.name.empty() ? "(null)" : encoderStream.name)
<< "' properties: "
<< av_get_sample_fmt_name(static_cast<AVSampleFormat>(encoderStream.format)) << ", "
<< encoderStream.sampleRate << " Hz, "
<< encoderStream.nbChannels << " channels";
return encoderStream; return encoderStream;
} }
......
...@@ -96,4 +96,22 @@ struct MediaStream { ...@@ -96,4 +96,22 @@ struct MediaStream {
} }
}; };
inline std::ostream& operator<<(std::ostream& os, const MediaStream& ms)
{
if (ms.isVideo) {
os << (ms.name.empty() ? "(null)" : ms.name) << ": "
<< av_get_pix_fmt_name(static_cast<AVPixelFormat>(ms.format)) << " video, "
<< ms.width << "x" << ms.height << ", "
<< ms.frameRate << " fps (" << ms.timeBase << ")";
} else {
os << (ms.name.empty() ? "(null)" : ms.name) << ": "
<< av_get_sample_fmt_name(static_cast<AVSampleFormat>(ms.format)) << " audio, "
<< ms.nbChannels << " channel(s), "
<< ms.sampleRate << " Hz (" << ms.timeBase << ")";
}
if (ms.firstTimestamp > 0)
os << ", start: " << ms.firstTimestamp;
return os;
}
}; // namespace ring }; // namespace ring
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment