| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
| 5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
| 6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
| 7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
| 8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
| 9 */ | 9 */ |
| 10 | 10 |
| (...skipping 717 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 728 int percent_loss) { | 728 int percent_loss) { |
| 729 AudioFrame audio_frame; | 729 AudioFrame audio_frame; |
| 730 | 730 |
| 731 int32_t out_freq_hz_b = out_file_.SamplingFrequency(); | 731 int32_t out_freq_hz_b = out_file_.SamplingFrequency(); |
| 732 uint16_t rec_size; | 732 uint16_t rec_size; |
| 733 uint32_t time_stamp_diff; | 733 uint32_t time_stamp_diff; |
| 734 channel->reset_payload_size(); | 734 channel->reset_payload_size(); |
| 735 int error_count = 0; | 735 int error_count = 0; |
| 736 int variable_bytes = 0; | 736 int variable_bytes = 0; |
| 737 int variable_packets = 0; | 737 int variable_packets = 0; |
| 738 // Set test length to 500 ms (50 blocks of 10 ms each). |
| 739 in_file_mono_->SetNum10MsBlocksToRead(50); |
| 740 in_file_stereo_->SetNum10MsBlocksToRead(50); |
| 741 // Fast-forward 1 second (100 blocks) since the files start with silence. |
| 742 in_file_stereo_->FastForward(100); |
| 743 in_file_mono_->FastForward(100); |
| 738 | 744 |
| 739 while (1) { | 745 while (1) { |
| 740 // Simulate packet loss by setting |packet_loss_| to "true" in | 746 // Simulate packet loss by setting |packet_loss_| to "true" in |
| 741 // |percent_loss| percent of the loops. | 747 // |percent_loss| percent of the loops. |
| 742 if (percent_loss > 0) { | 748 if (percent_loss > 0) { |
| 743 if (counter_ == floor((100 / percent_loss) + 0.5)) { | 749 if (counter_ == floor((100 / percent_loss) + 0.5)) { |
| 744 counter_ = 0; | 750 counter_ = 0; |
| 745 channel->set_lost_packet(true); | 751 channel->set_lost_packet(true); |
| 746 } else { | 752 } else { |
| 747 channel->set_lost_packet(false); | 753 channel->set_lost_packet(false); |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 793 audio_frame.data_, | 799 audio_frame.data_, |
| 794 audio_frame.samples_per_channel_ * audio_frame.num_channels_); | 800 audio_frame.samples_per_channel_ * audio_frame.num_channels_); |
| 795 } | 801 } |
| 796 | 802 |
| 797 EXPECT_EQ(0, error_count); | 803 EXPECT_EQ(0, error_count); |
| 798 | 804 |
| 799 // Check that packet size is in the right range for variable rate codecs, | 805 // Check that packet size is in the right range for variable rate codecs, |
| 800 // such as Opus. | 806 // such as Opus. |
| 801 if (variable_packets > 0) { | 807 if (variable_packets > 0) { |
| 802 variable_bytes /= variable_packets; | 808 variable_bytes /= variable_packets; |
| 803 EXPECT_NEAR(variable_bytes, pack_size_bytes_, 3); | 809 EXPECT_NEAR(variable_bytes, pack_size_bytes_, 18); |
| 804 } | 810 } |
| 805 | 811 |
| 806 if (in_file_mono_->EndOfFile()) { | 812 if (in_file_mono_->EndOfFile()) { |
| 807 in_file_mono_->Rewind(); | 813 in_file_mono_->Rewind(); |
| 808 } | 814 } |
| 809 if (in_file_stereo_->EndOfFile()) { | 815 if (in_file_stereo_->EndOfFile()) { |
| 810 in_file_stereo_->Rewind(); | 816 in_file_stereo_->Rewind(); |
| 811 } | 817 } |
| 812 // Reset in case we ended with a lost packet | 818 // Reset in case we ended with a lost packet |
| 813 channel->set_lost_packet(false); | 819 channel->set_lost_packet(false); |
| (...skipping 15 matching lines...) Expand all Loading... |
| 829 printf("%s -> ", send_codec->plname); | 835 printf("%s -> ", send_codec->plname); |
| 830 } | 836 } |
| 831 CodecInst receive_codec; | 837 CodecInst receive_codec; |
| 832 acm_b_->ReceiveCodec(&receive_codec); | 838 acm_b_->ReceiveCodec(&receive_codec); |
| 833 if (test_mode_ != 0) { | 839 if (test_mode_ != 0) { |
| 834 printf("%s\n", receive_codec.plname); | 840 printf("%s\n", receive_codec.plname); |
| 835 } | 841 } |
| 836 } | 842 } |
| 837 | 843 |
| 838 } // namespace webrtc | 844 } // namespace webrtc |
| OLD | NEW |