summaryrefslogtreecommitdiffstats
path: root/media/cast/test/sender.cc
diff options
context:
space:
mode:
authorimcheng@chromium.org <imcheng@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-04-25 23:39:48 +0000
committerimcheng@chromium.org <imcheng@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-04-25 23:39:48 +0000
commit0107bccbfcc8eecf0a205fef8b09dd91d0d2b1a0 (patch)
tree15f40bf56e12397561b23740bc8e4d87e2877c1c /media/cast/test/sender.cc
parent0f79ff6fbb52a33e73ca56246b64db39b59d3dbe (diff)
downloadchromium_src-0107bccbfcc8eecf0a205fef8b09dd91d0d2b1a0.zip
chromium_src-0107bccbfcc8eecf0a205fef8b09dd91d0d2b1a0.tar.gz
chromium_src-0107bccbfcc8eecf0a205fef8b09dd91d0d2b1a0.tar.bz2
Cast: Limit number of events/packets in EncodingEventSubscriber protos.
There is now a limit on number of events per proto (AggregatedFrameEvent and BasePacketEvent). There is also a limit on number of packets per frame (i.e. number of BasePacketEvent in AggregatedPacketEvent). If either limit is exceeded, a new proto will be created for that frame. The underlying implementation of EncodingEventSubscriber is also changed. When the internal map reaches a certain size, its old entries will be transferred to a vector for storage. This is done to keep the map small and lookup fast. A proto will also be transferred to storage if adding an event to it would result in exceeding the limit stated above. The scheme is not perfect, but such situation rarely happens in practice. Also changed deserialization to be able to merge protos of the same frame. This is done to keep protos size in check. Also, LogSerializer will now fail DCHECK if the protos exceed the maximum size 2^16 - 1. (Because we encode size as 16 bits). BUG= Review URL: https://codereview.chromium.org/241833002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@266289 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/cast/test/sender.cc')
-rw-r--r--media/cast/test/sender.cc8
1 files changed, 4 insertions, 4 deletions
diff --git a/media/cast/test/sender.cc b/media/cast/test/sender.cc
index 48daf8b..628f6b7 100644
--- a/media/cast/test/sender.cc
+++ b/media/cast/test/sender.cc
@@ -775,8 +775,8 @@ net::IPEndPoint CreateUDPAddress(std::string ip_str, int port) {
}
void DumpLoggingData(const media::cast::proto::LogMetadata& log_metadata,
- const media::cast::FrameEventMap& frame_events,
- const media::cast::PacketEventMap& packet_events,
+ const media::cast::FrameEventList& frame_events,
+ const media::cast::PacketEventList& packet_events,
base::ScopedFILE log_file) {
VLOG(0) << "Frame map size: " << frame_events.size();
VLOG(0) << "Packet map size: " << packet_events.size();
@@ -814,8 +814,8 @@ void WriteLogsToFileAndStopSubscribing(
VLOG(0) << "Dumping logging data for video stream.";
media::cast::proto::LogMetadata log_metadata;
- media::cast::FrameEventMap frame_events;
- media::cast::PacketEventMap packet_events;
+ media::cast::FrameEventList frame_events;
+ media::cast::PacketEventList packet_events;
video_event_subscriber->GetEventsAndReset(
&log_metadata, &frame_events, &packet_events);