| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "base/memory/ref_counted.h" | 5 #include "base/memory/ref_counted.h" |
| 6 #include "base/memory/scoped_ptr.h" | 6 #include "base/memory/scoped_ptr.h" |
| 7 #include "base/test/simple_test_tick_clock.h" | 7 #include "base/test/simple_test_tick_clock.h" |
| 8 #include "base/time/tick_clock.h" | 8 #include "base/time/tick_clock.h" |
| 9 #include "media/cast/cast_environment.h" | 9 #include "media/cast/cast_environment.h" |
| 10 #include "media/cast/logging/encoding_event_subscriber.h" | 10 #include "media/cast/logging/encoding_event_subscriber.h" |
| (...skipping 325 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 336 EXPECT_TRUE(packet_events_.empty()); | 336 EXPECT_TRUE(packet_events_.empty()); |
| 337 } | 337 } |
| 338 | 338 |
| 339 TEST_F(EncodingEventSubscriberTest, MultiplePacketEventsForPacket) { | 339 TEST_F(EncodingEventSubscriberTest, MultiplePacketEventsForPacket) { |
| 340 Init(VIDEO_EVENT); | 340 Init(VIDEO_EVENT); |
| 341 base::TimeTicks now1(testing_clock_->NowTicks()); | 341 base::TimeTicks now1(testing_clock_->NowTicks()); |
| 342 RtpTimestamp rtp_timestamp = 100; | 342 RtpTimestamp rtp_timestamp = 100; |
| 343 int packet_id = 2; | 343 int packet_id = 2; |
| 344 int size = 100; | 344 int size = 100; |
| 345 cast_environment_->Logging()->InsertPacketEvent(now1, | 345 cast_environment_->Logging()->InsertPacketEvent(now1, |
| 346 kVideoPacketSentToPacer, | 346 kVideoPacketSentToNetwork, |
| 347 rtp_timestamp, | 347 rtp_timestamp, |
| 348 /*frame_id*/ 0, | 348 /*frame_id*/ 0, |
| 349 packet_id, | 349 packet_id, |
| 350 /*max_packet_id*/ 10, | 350 /*max_packet_id*/ 10, |
| 351 size); | 351 size); |
| 352 | 352 |
| 353 testing_clock_->Advance(base::TimeDelta::FromMilliseconds(20)); | 353 testing_clock_->Advance(base::TimeDelta::FromMilliseconds(20)); |
| 354 base::TimeTicks now2(testing_clock_->NowTicks()); | 354 base::TimeTicks now2(testing_clock_->NowTicks()); |
| 355 cast_environment_->Logging()->InsertPacketEvent(now2, | 355 cast_environment_->Logging()->InsertPacketEvent(now2, |
| 356 kVideoPacketSentToNetwork, | 356 kVideoPacketRetransmitted, |
| 357 rtp_timestamp, | 357 rtp_timestamp, |
| 358 /*frame_id*/ 0, | 358 /*frame_id*/ 0, |
| 359 packet_id, | 359 packet_id, |
| 360 /*max_packet_id*/ 10, | 360 /*max_packet_id*/ 10, |
| 361 size); | 361 size); |
| 362 | 362 |
| 363 GetEventsAndReset(); | 363 GetEventsAndReset(); |
| 364 | 364 |
| 365 ASSERT_EQ(1u, packet_events_.size()); | 365 ASSERT_EQ(1u, packet_events_.size()); |
| 366 | 366 |
| 367 RtpTimestamp relative_rtp_timestamp = rtp_timestamp - first_rtp_timestamp_; | 367 RtpTimestamp relative_rtp_timestamp = rtp_timestamp - first_rtp_timestamp_; |
| 368 PacketEventList::iterator it = packet_events_.begin(); | 368 PacketEventList::iterator it = packet_events_.begin(); |
| 369 | 369 |
| 370 linked_ptr<AggregatedPacketEvent> event = *it; | 370 linked_ptr<AggregatedPacketEvent> event = *it; |
| 371 | 371 |
| 372 EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp()); | 372 EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp()); |
| 373 | 373 |
| 374 ASSERT_EQ(1, event->base_packet_event_size()); | 374 ASSERT_EQ(1, event->base_packet_event_size()); |
| 375 const BasePacketEvent& base_event = event->base_packet_event(0); | 375 const BasePacketEvent& base_event = event->base_packet_event(0); |
| 376 EXPECT_EQ(packet_id, base_event.packet_id()); | 376 EXPECT_EQ(packet_id, base_event.packet_id()); |
| 377 ASSERT_EQ(2, base_event.event_type_size()); | 377 ASSERT_EQ(2, base_event.event_type_size()); |
| 378 EXPECT_EQ(media::cast::proto::VIDEO_PACKET_SENT_TO_PACER, | 378 EXPECT_EQ(media::cast::proto::VIDEO_PACKET_SENT_TO_NETWORK, |
| 379 base_event.event_type(0)); | 379 base_event.event_type(0)); |
| 380 EXPECT_EQ(media::cast::proto::VIDEO_PACKET_SENT_TO_NETWORK, | 380 EXPECT_EQ(media::cast::proto::VIDEO_PACKET_RETRANSMITTED, |
| 381 base_event.event_type(1)); | 381 base_event.event_type(1)); |
| 382 ASSERT_EQ(2, base_event.event_timestamp_ms_size()); | 382 ASSERT_EQ(2, base_event.event_timestamp_ms_size()); |
| 383 EXPECT_EQ(InMilliseconds(now1), base_event.event_timestamp_ms(0)); | 383 EXPECT_EQ(InMilliseconds(now1), base_event.event_timestamp_ms(0)); |
| 384 EXPECT_EQ(InMilliseconds(now2), base_event.event_timestamp_ms(1)); | 384 EXPECT_EQ(InMilliseconds(now2), base_event.event_timestamp_ms(1)); |
| 385 } | 385 } |
| 386 | 386 |
| 387 TEST_F(EncodingEventSubscriberTest, MultiplePacketEventsForFrame) { | 387 TEST_F(EncodingEventSubscriberTest, MultiplePacketEventsForFrame) { |
| 388 Init(VIDEO_EVENT); | 388 Init(VIDEO_EVENT); |
| 389 base::TimeTicks now1(testing_clock_->NowTicks()); | 389 base::TimeTicks now1(testing_clock_->NowTicks()); |
| 390 RtpTimestamp rtp_timestamp = 100; | 390 RtpTimestamp rtp_timestamp = 100; |
| 391 int packet_id_1 = 2; | 391 int packet_id_1 = 2; |
| 392 int packet_id_2 = 3; | 392 int packet_id_2 = 3; |
| 393 int size = 100; | 393 int size = 100; |
| 394 cast_environment_->Logging()->InsertPacketEvent(now1, | 394 cast_environment_->Logging()->InsertPacketEvent(now1, |
| 395 kVideoPacketSentToPacer, | 395 kVideoPacketSentToNetwork, |
| 396 rtp_timestamp, | 396 rtp_timestamp, |
| 397 /*frame_id*/ 0, | 397 /*frame_id*/ 0, |
| 398 packet_id_1, | 398 packet_id_1, |
| 399 /*max_packet_id*/ 10, | 399 /*max_packet_id*/ 10, |
| 400 size); | 400 size); |
| 401 | 401 |
| 402 testing_clock_->Advance(base::TimeDelta::FromMilliseconds(20)); | 402 testing_clock_->Advance(base::TimeDelta::FromMilliseconds(20)); |
| 403 base::TimeTicks now2(testing_clock_->NowTicks()); | 403 base::TimeTicks now2(testing_clock_->NowTicks()); |
| 404 cast_environment_->Logging()->InsertPacketEvent(now2, | 404 cast_environment_->Logging()->InsertPacketEvent(now2, |
| 405 kVideoPacketRetransmitted, | 405 kVideoPacketRetransmitted, |
| (...skipping 11 matching lines...) Expand all Loading... |
| 417 PacketEventList::iterator it = packet_events_.begin(); | 417 PacketEventList::iterator it = packet_events_.begin(); |
| 418 | 418 |
| 419 linked_ptr<AggregatedPacketEvent> event = *it; | 419 linked_ptr<AggregatedPacketEvent> event = *it; |
| 420 | 420 |
| 421 EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp()); | 421 EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp()); |
| 422 | 422 |
| 423 ASSERT_EQ(2, event->base_packet_event_size()); | 423 ASSERT_EQ(2, event->base_packet_event_size()); |
| 424 const BasePacketEvent& base_event = event->base_packet_event(0); | 424 const BasePacketEvent& base_event = event->base_packet_event(0); |
| 425 EXPECT_EQ(packet_id_1, base_event.packet_id()); | 425 EXPECT_EQ(packet_id_1, base_event.packet_id()); |
| 426 ASSERT_EQ(1, base_event.event_type_size()); | 426 ASSERT_EQ(1, base_event.event_type_size()); |
| 427 EXPECT_EQ(media::cast::proto::VIDEO_PACKET_SENT_TO_PACER, | 427 EXPECT_EQ(media::cast::proto::VIDEO_PACKET_SENT_TO_NETWORK, |
| 428 base_event.event_type(0)); | 428 base_event.event_type(0)); |
| 429 ASSERT_EQ(1, base_event.event_timestamp_ms_size()); | 429 ASSERT_EQ(1, base_event.event_timestamp_ms_size()); |
| 430 EXPECT_EQ(InMilliseconds(now1), base_event.event_timestamp_ms(0)); | 430 EXPECT_EQ(InMilliseconds(now1), base_event.event_timestamp_ms(0)); |
| 431 | 431 |
| 432 const BasePacketEvent& base_event_2 = event->base_packet_event(1); | 432 const BasePacketEvent& base_event_2 = event->base_packet_event(1); |
| 433 EXPECT_EQ(packet_id_2, base_event_2.packet_id()); | 433 EXPECT_EQ(packet_id_2, base_event_2.packet_id()); |
| 434 ASSERT_EQ(1, base_event_2.event_type_size()); | 434 ASSERT_EQ(1, base_event_2.event_type_size()); |
| 435 EXPECT_EQ(media::cast::proto::VIDEO_PACKET_RETRANSMITTED, | 435 EXPECT_EQ(media::cast::proto::VIDEO_PACKET_RETRANSMITTED, |
| 436 base_event_2.event_type(0)); | 436 base_event_2.event_type(0)); |
| 437 ASSERT_EQ(1, base_event_2.event_timestamp_ms_size()); | 437 ASSERT_EQ(1, base_event_2.event_timestamp_ms_size()); |
| 438 EXPECT_EQ(InMilliseconds(now2), base_event_2.event_timestamp_ms(0)); | 438 EXPECT_EQ(InMilliseconds(now2), base_event_2.event_timestamp_ms(0)); |
| 439 } | 439 } |
| 440 | 440 |
| 441 TEST_F(EncodingEventSubscriberTest, MultiplePacketEvents) { | 441 TEST_F(EncodingEventSubscriberTest, MultiplePacketEvents) { |
| 442 Init(VIDEO_EVENT); | 442 Init(VIDEO_EVENT); |
| 443 base::TimeTicks now1(testing_clock_->NowTicks()); | 443 base::TimeTicks now1(testing_clock_->NowTicks()); |
| 444 RtpTimestamp rtp_timestamp_1 = 100; | 444 RtpTimestamp rtp_timestamp_1 = 100; |
| 445 RtpTimestamp rtp_timestamp_2 = 200; | 445 RtpTimestamp rtp_timestamp_2 = 200; |
| 446 int packet_id_1 = 2; | 446 int packet_id_1 = 2; |
| 447 int packet_id_2 = 3; | 447 int packet_id_2 = 3; |
| 448 int size = 100; | 448 int size = 100; |
| 449 cast_environment_->Logging()->InsertPacketEvent(now1, | 449 cast_environment_->Logging()->InsertPacketEvent(now1, |
| 450 kVideoPacketSentToPacer, | 450 kVideoPacketSentToNetwork, |
| 451 rtp_timestamp_1, | 451 rtp_timestamp_1, |
| 452 /*frame_id*/ 0, | 452 /*frame_id*/ 0, |
| 453 packet_id_1, | 453 packet_id_1, |
| 454 /*max_packet_id*/ 10, | 454 /*max_packet_id*/ 10, |
| 455 size); | 455 size); |
| 456 | 456 |
| 457 testing_clock_->Advance(base::TimeDelta::FromMilliseconds(20)); | 457 testing_clock_->Advance(base::TimeDelta::FromMilliseconds(20)); |
| 458 base::TimeTicks now2(testing_clock_->NowTicks()); | 458 base::TimeTicks now2(testing_clock_->NowTicks()); |
| 459 cast_environment_->Logging()->InsertPacketEvent(now2, | 459 cast_environment_->Logging()->InsertPacketEvent(now2, |
| 460 kVideoPacketRetransmitted, | 460 kVideoPacketRetransmitted, |
| (...skipping 11 matching lines...) Expand all Loading... |
| 472 PacketEventList::iterator it = packet_events_.begin(); | 472 PacketEventList::iterator it = packet_events_.begin(); |
| 473 | 473 |
| 474 linked_ptr<AggregatedPacketEvent> event = *it; | 474 linked_ptr<AggregatedPacketEvent> event = *it; |
| 475 | 475 |
| 476 EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp()); | 476 EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp()); |
| 477 | 477 |
| 478 ASSERT_EQ(1, event->base_packet_event_size()); | 478 ASSERT_EQ(1, event->base_packet_event_size()); |
| 479 const BasePacketEvent& base_event = event->base_packet_event(0); | 479 const BasePacketEvent& base_event = event->base_packet_event(0); |
| 480 EXPECT_EQ(packet_id_1, base_event.packet_id()); | 480 EXPECT_EQ(packet_id_1, base_event.packet_id()); |
| 481 ASSERT_EQ(1, base_event.event_type_size()); | 481 ASSERT_EQ(1, base_event.event_type_size()); |
| 482 EXPECT_EQ(media::cast::proto::VIDEO_PACKET_SENT_TO_PACER, | 482 EXPECT_EQ(media::cast::proto::VIDEO_PACKET_SENT_TO_NETWORK, |
| 483 base_event.event_type(0)); | 483 base_event.event_type(0)); |
| 484 ASSERT_EQ(1, base_event.event_timestamp_ms_size()); | 484 ASSERT_EQ(1, base_event.event_timestamp_ms_size()); |
| 485 EXPECT_EQ(InMilliseconds(now1), base_event.event_timestamp_ms(0)); | 485 EXPECT_EQ(InMilliseconds(now1), base_event.event_timestamp_ms(0)); |
| 486 | 486 |
| 487 relative_rtp_timestamp = rtp_timestamp_2 - first_rtp_timestamp_; | 487 relative_rtp_timestamp = rtp_timestamp_2 - first_rtp_timestamp_; |
| 488 ++it; | 488 ++it; |
| 489 ASSERT_TRUE(it != packet_events_.end()); | 489 ASSERT_TRUE(it != packet_events_.end()); |
| 490 | 490 |
| 491 event = *it; | 491 event = *it; |
| 492 EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp()); | 492 EXPECT_EQ(relative_rtp_timestamp, event->relative_rtp_timestamp()); |
| (...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 637 EXPECT_EQ(kMaxEventsPerProto, | 637 EXPECT_EQ(kMaxEventsPerProto, |
| 638 packet_event->base_packet_event(0).event_type_size()); | 638 packet_event->base_packet_event(0).event_type_size()); |
| 639 | 639 |
| 640 ++packet_it; | 640 ++packet_it; |
| 641 packet_event = *packet_it; | 641 packet_event = *packet_it; |
| 642 EXPECT_EQ(1, packet_event->base_packet_event(0).event_type_size()); | 642 EXPECT_EQ(1, packet_event->base_packet_event(0).event_type_size()); |
| 643 } | 643 } |
| 644 | 644 |
| 645 } // namespace cast | 645 } // namespace cast |
| 646 } // namespace media | 646 } // namespace media |
| OLD | NEW |