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

Unified Diff: webrtc/logging/rtc_event_log/rtc_event_log2rtp_dump.cc

Issue 2855143002: Removed RtcEventLog deps to call:call_interfaces. (Closed)
Patch Set: Made GetSend/ReceiveConfig private. Created 3 years, 7 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: webrtc/logging/rtc_event_log/rtc_event_log2rtp_dump.cc
diff --git a/webrtc/logging/rtc_event_log/rtc_event_log2rtp_dump.cc b/webrtc/logging/rtc_event_log/rtc_event_log2rtp_dump.cc
index 2336caa284435afcc91df10bdddd952f8f8b9d9d..e22f1f31a8255ee7823cbbd14b73d767acd36908 100644
--- a/webrtc/logging/rtc_event_log/rtc_event_log2rtp_dump.cc
+++ b/webrtc/logging/rtc_event_log/rtc_event_log2rtp_dump.cc
@@ -15,14 +15,16 @@
#include "gflags/gflags.h"
#include "webrtc/base/checks.h"
-#include "webrtc/call/call.h"
#include "webrtc/logging/rtc_event_log/rtc_event_log.h"
#include "webrtc/logging/rtc_event_log/rtc_event_log_parser.h"
#include "webrtc/modules/rtp_rtcp/source/byte_io.h"
+#include "webrtc/modules/rtp_rtcp/source/rtp_utility.h"
#include "webrtc/test/rtp_file_writer.h"
namespace {
+using MediaType = webrtc::ParsedRtcEventLog::MediaType;
+
DEFINE_bool(noaudio,
false,
"Excludes audio packets from the converted RTPdump file.");
@@ -118,21 +120,28 @@ int main(int argc, char* argv[]) {
parsed_stream.GetEventType(i) == webrtc::ParsedRtcEventLog::RTP_EVENT) {
webrtc::test::RtpPacket packet;
webrtc::PacketDirection direction;
- webrtc::MediaType media_type;
- parsed_stream.GetRtpHeader(i, &direction, &media_type, packet.data,
- &packet.length, &packet.original_length);
+ parsed_stream.GetRtpHeader(i, &direction, packet.data, &packet.length,
+ &packet.original_length);
if (packet.original_length > packet.length)
header_only = true;
packet.time_ms = parsed_stream.GetTimestamp(i) / 1000;
+ webrtc::RtpUtility::RtpHeaderParser rtp_parser(packet.data,
+ packet.length);
+
// TODO(terelius): Maybe add a flag to dump outgoing traffic instead?
if (direction == webrtc::kOutgoingPacket)
continue;
- if (FLAGS_noaudio && media_type == webrtc::MediaType::AUDIO)
+
+ webrtc::RTPHeader parsed_header;
+ rtp_parser.Parse(&parsed_header);
+ MediaType media_type =
+ parsed_stream.GetMediaType(parsed_header.ssrc, direction);
+ if (FLAGS_noaudio && media_type == MediaType::AUDIO)
continue;
- if (FLAGS_novideo && media_type == webrtc::MediaType::VIDEO)
+ if (FLAGS_novideo && media_type == MediaType::VIDEO)
continue;
- if (FLAGS_nodata && media_type == webrtc::MediaType::DATA)
+ if (FLAGS_nodata && media_type == MediaType::DATA)
continue;
if (!FLAGS_ssrc.empty()) {
const uint32_t packet_ssrc =
@@ -150,9 +159,7 @@ int main(int argc, char* argv[]) {
webrtc::ParsedRtcEventLog::RTCP_EVENT) {
webrtc::test::RtpPacket packet;
webrtc::PacketDirection direction;
- webrtc::MediaType media_type;
- parsed_stream.GetRtcpPacket(i, &direction, &media_type, packet.data,
- &packet.length);
+ parsed_stream.GetRtcpPacket(i, &direction, packet.data, &packet.length);
// For RTCP packets the original_length should be set to 0 in the
// RTPdump format.
packet.original_length = 0;
@@ -161,16 +168,20 @@ int main(int argc, char* argv[]) {
// TODO(terelius): Maybe add a flag to dump outgoing traffic instead?
if (direction == webrtc::kOutgoingPacket)
continue;
- if (FLAGS_noaudio && media_type == webrtc::MediaType::AUDIO)
+
+ // Note that |packet_ssrc| is the sender SSRC. An RTCP message may contain
+ // report blocks for many streams, thus several SSRCs and they doen't
+ // necessarily have to be of the same media type.
+ const uint32_t packet_ssrc = webrtc::ByteReader<uint32_t>::ReadBigEndian(
+ reinterpret_cast<const uint8_t*>(packet.data + 4));
+ MediaType media_type = parsed_stream.GetMediaType(packet_ssrc, direction);
+ if (FLAGS_noaudio && media_type == MediaType::AUDIO)
continue;
- if (FLAGS_novideo && media_type == webrtc::MediaType::VIDEO)
+ if (FLAGS_novideo && media_type == MediaType::VIDEO)
continue;
- if (FLAGS_nodata && media_type == webrtc::MediaType::DATA)
+ if (FLAGS_nodata && media_type == MediaType::DATA)
continue;
if (!FLAGS_ssrc.empty()) {
- const uint32_t packet_ssrc =
- webrtc::ByteReader<uint32_t>::ReadBigEndian(
- reinterpret_cast<const uint8_t*>(packet.data + 4));
if (packet_ssrc != ssrc_filter)
continue;
}
« no previous file with comments | « webrtc/logging/rtc_event_log/rtc_event_log.proto ('k') | webrtc/logging/rtc_event_log/rtc_event_log2text.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698