diff --git a/packager/app/test/packager_test.py b/packager/app/test/packager_test.py index f6b71ff714..f8b6d1d647 100755 --- a/packager/app/test/packager_test.py +++ b/packager/app/test/packager_test.py @@ -5,10 +5,8 @@ # Use of this source code is governed by a BSD-style # license that can be found in the LICENSE file or at # https://developers.google.com/open-source/licenses/bsd - """Tests utilizing the sample packager binary.""" - import filecmp import os import re @@ -26,6 +24,10 @@ class PackagerAppTest(unittest.TestCase): def setUp(self): self.packager = packager_app.PackagerApp() self.tmp_dir = tempfile.mkdtemp() + self.test_data_dir = os.path.join(test_env.SRC_DIR, 'packager', 'media', + 'test', 'data') + self.golden_file_dir = os.path.join(test_env.SRC_DIR, 'packager', 'app', + 'test', 'testdata') self.output_prefix = os.path.join(self.tmp_dir, 'output') self.mpd_output = self.output_prefix + '.mpd' self.output = None @@ -37,9 +39,8 @@ class PackagerAppTest(unittest.TestCase): self.assertEqual(0, self.packager.BuildSrc()) def testDumpStreamInfo(self): - input = os.path.join(test_env.SRC_DIR, 'packager', 'media', 'test', 'data', - 'bear-640x360.mp4') - stream_info = self.packager.DumpStreamInfo(input) + test_file = os.path.join(self.test_data_dir, 'bear-640x360.mp4') + stream_info = self.packager.DumpStreamInfo(test_file) expected_stream_info = ('Found 2 stream(s).\n' 'Stream [0] type: Video\n' ' codec_string: avc1.64001e\n' @@ -63,8 +64,8 @@ class PackagerAppTest(unittest.TestCase): ' sampling_frequency: 44100\n' ' language: und\n') self.assertIn(expected_stream_info, stream_info, - "\nExpecting: \n %s\n\nBut seeing: \n%s" % ( - expected_stream_info, stream_info)) + '\nExpecting: \n %s\n\nBut seeing: \n%s' % ( + expected_stream_info, stream_info)) def testPackageFirstStream(self): self.packager.Package(self._GetStreams(['0']), self._GetFlags()) @@ -72,15 +73,17 @@ class PackagerAppTest(unittest.TestCase): self._DiffGold(self.mpd_output, 'bear-640x360-v-golden.mpd') def testPackageText(self): - self.packager.Package(self._GetStreams(['text'], - test_file='subtitle-english.vtt'), - self._GetFlags()) + self.packager.Package( + self._GetStreams(['text'], + test_files=['subtitle-english.vtt']), + self._GetFlags()) self._DiffGold(self.output[0], 'subtitle-english-golden.vtt') self._DiffGold(self.mpd_output, 'subtitle-english-vtt-golden.mpd') # Probably one of the most common scenarios is to package audio and video. def testPackageAudioVideo(self): - self.packager.Package(self._GetStreams(['audio', 'video']), self._GetFlags()) + self.packager.Package( + self._GetStreams(['audio', 'video']), self._GetFlags()) self._DiffGold(self.output[0], 'bear-640x360-a-golden.mp4') self._DiffGold(self.output[1], 'bear-640x360-v-golden.mp4') self._DiffGold(self.mpd_output, 'bear-640x360-av-golden.mpd') @@ -88,7 +91,8 @@ class PackagerAppTest(unittest.TestCase): # Package all video, audio, and text. def testPackageVideoAudioText(self): audio_video_streams = self._GetStreams(['audio', 'video']) - text_stream = self._GetStreams(['text'], test_file='subtitle-english.vtt') + text_stream = self._GetStreams(['text'], + test_files=['subtitle-english.vtt']) self.packager.Package(audio_video_streams + text_stream, self._GetFlags()) self._DiffGold(self.output[0], 'bear-640x360-a-golden.mp4') self._DiffGold(self.output[1], 'bear-640x360-v-golden.mp4') @@ -96,89 +100,129 @@ class PackagerAppTest(unittest.TestCase): self._DiffGold(self.mpd_output, 'bear-640x360-avt-golden.mpd') def testPackageWithEncryption(self): - self.packager.Package(self._GetStreams(['audio', 'video']), - self._GetFlags(encryption=True)) + self.packager.Package( + self._GetStreams(['audio', 'video']), + self._GetFlags(encryption=True)) self._DiffGold(self.output[0], 'bear-640x360-a-cenc-golden.mp4') self._DiffGold(self.output[1], 'bear-640x360-v-cenc-golden.mp4') self._DiffGold(self.mpd_output, 'bear-640x360-av-cenc-golden.mpd') def testPackageHevcWithEncryption(self): - self.packager.Package(self._GetStreams(['video'], - test_file='bear-640x360-hevc.mp4'), - self._GetFlags(encryption=True)) + self.packager.Package( + self._GetStreams(['video'], + test_files=['bear-640x360-hevc.mp4']), + self._GetFlags(encryption=True)) self._DiffGold(self.output[0], 'bear-640x360-hevc-v-cenc-golden.mp4') self._DiffGold(self.mpd_output, 'bear-640x360-hevc-v-cenc-golden.mpd') def testPackageWithEncryptionAndRandomIv(self): - self.packager.Package(self._GetStreams(['audio', 'video']), - self._GetFlags(encryption=True, random_iv=True)) + self.packager.Package( + self._GetStreams(['audio', 'video']), + self._GetFlags(encryption=True, + random_iv=True)) self._AssertStreamInfo(self.output[0], 'is_encrypted: true') self._AssertStreamInfo(self.output[1], 'is_encrypted: true') # The outputs are encrypted with random iv, so they are not the same as # golden files. - self.assertFalse(self._CompareWithGold( - self.output[0], 'bear-640x360-a-cenc-golden.mp4')) - self.assertFalse(self._CompareWithGold( - self.output[1], 'bear-640x360-v-cenc-golden.mp4')) + self.assertFalse(self._CompareWithGold(self.output[0], + 'bear-640x360-a-cenc-golden.mp4')) + self.assertFalse(self._CompareWithGold(self.output[1], + 'bear-640x360-v-cenc-golden.mp4')) self._DiffGold(self.mpd_output, 'bear-640x360-av-cenc-golden.mpd') def testPackageWithEncryptionAndRealClock(self): - self.packager.Package(self._GetStreams(['audio', 'video']), - self._GetFlags(encryption=True, use_fake_clock=False)) + self.packager.Package( + self._GetStreams(['audio', 'video']), + self._GetFlags(encryption=True, + use_fake_clock=False)) self._AssertStreamInfo(self.output[0], 'is_encrypted: true') self._AssertStreamInfo(self.output[1], 'is_encrypted: true') # The outputs are generated with real clock, so they are not the same as # golden files. - self.assertFalse(self._CompareWithGold( - self.output[0], 'bear-640x360-a-cenc-golden.mp4')) - self.assertFalse(self._CompareWithGold( - self.output[1], 'bear-640x360-v-cenc-golden.mp4')) + self.assertFalse(self._CompareWithGold(self.output[0], + 'bear-640x360-a-cenc-golden.mp4')) + self.assertFalse(self._CompareWithGold(self.output[1], + 'bear-640x360-v-cenc-golden.mp4')) self._DiffGold(self.mpd_output, 'bear-640x360-av-cenc-golden.mpd') def testPackageWithEncryptionAndDashIfIop(self): - self.packager.Package(self._GetStreams(['audio', 'video']), - self._GetFlags(encryption=True, dash_if_iop=True)) + self.packager.Package( + self._GetStreams(['audio', 'video']), + self._GetFlags(encryption=True, + dash_if_iop=True)) self._DiffGold(self.output[0], 'bear-640x360-a-cenc-golden.mp4') self._DiffGold(self.output[1], 'bear-640x360-v-cenc-golden.mp4') self._DiffGold(self.mpd_output, 'bear-640x360-av-cenc-iop-golden.mpd') def testPackageWithEncryptionAndOutputMediaInfo(self): - self.packager.Package(self._GetStreams(['audio', 'video']), - self._GetFlags(encryption=True, - output_media_info=True)) + self.packager.Package( + self._GetStreams(['audio', 'video']), + self._GetFlags(encryption=True, + output_media_info=True)) self._DiffGold(self.output[0], 'bear-640x360-a-cenc-golden.mp4') self._DiffGold(self.output[1], 'bear-640x360-v-cenc-golden.mp4') self._DiffMediaInfoGold(self.output[0], 'bear-640x360-a-cenc-golden.mp4') self._DiffMediaInfoGold(self.output[1], 'bear-640x360-v-cenc-golden.mp4') def testPackageWithLiveProfile(self): - self.packager.Package(self._GetStreams(['audio', 'video'], live=True), - self._GetFlags(live=True)) + self.packager.Package( + self._GetStreams( + ['audio', 'video'], + live=True), + self._GetFlags(live=True)) self._DiffLiveGold(self.output[0], 'bear-640x360-a-live-golden') self._DiffLiveGold(self.output[1], 'bear-640x360-v-live-golden') self._DiffLiveMpdGold(self.mpd_output, 'bear-640x360-av-live-golden.mpd') def testPackageWithLiveProfileAndEncryption(self): - self.packager.Package(self._GetStreams(['audio', 'video'], live=True), - self._GetFlags(encryption=True, live=True)) + self.packager.Package( + self._GetStreams( + ['audio', 'video'], + live=True), + self._GetFlags(encryption=True, + live=True)) self._DiffLiveGold(self.output[0], 'bear-640x360-a-live-cenc-golden') self._DiffLiveGold(self.output[1], 'bear-640x360-v-live-cenc-golden') self._DiffLiveMpdGold(self.mpd_output, 'bear-640x360-av-live-cenc-golden.mpd') def testPackageWithLiveProfileAndEncryptionAndDashIfIop(self): - self.packager.Package(self._GetStreams(['audio', 'video'], live=True), - self._GetFlags(encryption=True, live=True, - dash_if_iop=True)) + self.packager.Package( + self._GetStreams( + ['audio', 'video'], + live=True), + self._GetFlags(encryption=True, + live=True, + dash_if_iop=True)) self._DiffLiveGold(self.output[0], 'bear-640x360-a-live-cenc-golden') self._DiffLiveGold(self.output[1], 'bear-640x360-v-live-cenc-golden') self._DiffLiveMpdGold(self.mpd_output, 'bear-640x360-av-live-cenc-iop-golden.mpd') + def testPackageWithLiveProfileAndEncryptionAndDashIfIopWithMultFiles(self): + self.packager.Package( + self._GetStreams( + ['audio', 'video'], + live=True, + test_files=['bear-1280x720.mp4', 'bear-640x360.mp4', + 'bear-320x180.mp4']), + self._GetFlags(encryption=True, + live=True, + dash_if_iop=True)) + self._DiffLiveGold(self.output[2], 'bear-640x360-a-live-cenc-golden') + self._DiffLiveGold(self.output[3], 'bear-640x360-v-live-cenc-golden') + # Mpd cannot be validated right now since we don't generate determinstic + # mpd with multiple inputs due to thread racing. + # TODO(kqyang): Generate determinstic mpd or at least validate mpd schema. + def testPackageWithLiveProfileAndKeyRotation(self): - self.packager.Package(self._GetStreams(['audio', 'video'], live=True), - self._GetFlags(encryption=True, key_rotation=True, - live=True)) + self.packager.Package( + self._GetStreams( + ['audio', 'video'], + live=True), + self._GetFlags(encryption=True, + key_rotation=True, + live=True)) self._DiffLiveGold(self.output[0], 'bear-640x360-a-live-cenc-rotation-golden') self._DiffLiveGold(self.output[1], @@ -187,9 +231,14 @@ class PackagerAppTest(unittest.TestCase): 'bear-640x360-av-live-cenc-rotation-golden.mpd') def testPackageWithLiveProfileAndKeyRotationAndDashIfIop(self): - self.packager.Package(self._GetStreams(['audio', 'video'], live=True), - self._GetFlags(encryption=True, key_rotation=True, - live=True, dash_if_iop=True)) + self.packager.Package( + self._GetStreams( + ['audio', 'video'], + live=True), + self._GetFlags(encryption=True, + key_rotation=True, + live=True, + dash_if_iop=True)) self._DiffLiveGold(self.output[0], 'bear-640x360-a-live-cenc-rotation-golden') self._DiffLiveGold(self.output[1], @@ -223,92 +272,101 @@ class PackagerAppTest(unittest.TestCase): self._AssertStreamInfo(self.output[0], 'is_encrypted: true') self._AssertStreamInfo(self.output[1], 'is_encrypted: true') - def _GetStreams(self, stream_descriptors, live = False, - test_file = 'bear-640x360.mp4'): + def _GetStreams(self, stream_descriptors, live=False, test_files=None): + if test_files is None: + test_files = ['bear-640x360.mp4'] streams = [] if not self.output: self.output = [] - test_data_dir = os.path.join( - test_env.SRC_DIR, 'packager', 'media', 'test', 'data') - input = os.path.join(test_data_dir, test_file) - for stream_descriptor in stream_descriptors: - if live: - # This is still output prefix actually. - output = '%s_%s' % (self.output_prefix, stream_descriptor) - stream = ('input=%s,stream=%s,init_segment=%s-init.mp4,' + - 'segment_template=%s-$Number$.m4s') - streams.append(stream % (input, stream_descriptor, output, output)) + for test_file_index, test_file_name in enumerate(test_files): + test_file = os.path.join(self.test_data_dir, test_file_name) + for stream_descriptor in stream_descriptors: + if len(test_files) == 1: + output_prefix = '%s_%s' % (self.output_prefix, stream_descriptor) else: - output = '%s_%s.%s' % (self.output_prefix, - stream_descriptor, - self._GetExtension(stream_descriptor)) - stream = 'input=%s,stream=%s,output=%s' - streams.append(stream % (input, stream_descriptor, output)) - self.output.append(output) + output_prefix = '%s_%d_%s' % (self.output_prefix, test_file_index, + stream_descriptor) + if live: + stream = ('input=%s,stream=%s,init_segment=%s-init.mp4,' + 'segment_template=%s-$Number$.m4s') + streams.append(stream % (test_file, stream_descriptor, output_prefix, + output_prefix)) + self.output.append(output_prefix) + else: + output = '%s.%s' % (output_prefix, + self._GetExtension(stream_descriptor)) + stream = 'input=%s,stream=%s,output=%s' + streams.append(stream % (test_file, stream_descriptor, output)) + self.output.append(output) return streams def _GetExtension(self, stream_descriptor): # TODO(rkuroiwa): Support ttml. - if stream_descriptor == "text": - return "vtt" - return "mp4" + if stream_descriptor == 'text': + return 'vtt' + return 'mp4' - def _GetFlags(self, encryption = False, random_iv = False, - widevine_encryption = False, key_rotation = False, - live = False, dash_if_iop=False, output_media_info = False, - use_fake_clock = True): + def _GetFlags(self, + encryption=False, + random_iv=False, + widevine_encryption=False, + key_rotation=False, + live=False, + dash_if_iop=False, + output_media_info=False, + use_fake_clock=True): flags = [] if widevine_encryption: - widevine_server_url = ('https://license.uat.widevine.com/cenc' + - '/getcontentkey/widevine_test') - flags += ['--enable_widevine_encryption', - '--key_server_url=' + widevine_server_url, - '--content_id=3031323334353637', - '--signer=widevine_test'] + widevine_server_url = ('https://license.uat.widevine.com/cenc' + '/getcontentkey/widevine_test') + flags += ['--enable_widevine_encryption', + '--key_server_url=' + widevine_server_url, + '--content_id=3031323334353637', '--signer=widevine_test'] elif encryption: - flags += ['--enable_fixed_key_encryption', - '--key_id=31323334353637383930313233343536', - '--key=32333435363738393021323334353637', - '--pssh=31323334353637383930313233343536'] - if not random_iv: - flags.append('--iv=33343536373839303132333435363738') - if key_rotation: flags.append('--crypto_period_duration=1') + flags += ['--enable_fixed_key_encryption', + '--key_id=31323334353637383930313233343536', + '--key=32333435363738393021323334353637', + '--pssh=31323334353637383930313233343536', + '--clear_lead=1'] + if not random_iv: + flags.append('--iv=3334353637383930') + if key_rotation: + flags.append('--crypto_period_duration=1') if live: - flags.append('--profile=live') + flags.append('--profile=live') if dash_if_iop: - flags.append('--generate_dash_if_iop_compliant_mpd') + flags.append('--generate_dash_if_iop_compliant_mpd') if output_media_info: - flags.append('--output_media_info') + flags.append('--output_media_info') else: - flags += ['--mpd_output', self.mpd_output] + flags += ['--mpd_output', self.mpd_output] flags.append('--segment_duration=1') # Use fake clock, so output can be compared. if use_fake_clock: - flags.append("--use_fake_clock_for_muxer") + flags.append('--use_fake_clock_for_muxer') return flags def _CompareWithGold(self, test_output, golden_file_name): - golden_file = os.path.join(test_env.SRC_DIR, 'packager', 'app', 'test', - 'testdata', golden_file_name) + golden_file = os.path.join(self.golden_file_dir, golden_file_name) return filecmp.cmp(test_output, golden_file) def _DiffGold(self, test_output, golden_file_name): - golden_file = os.path.join(test_env.SRC_DIR, 'packager', 'app', 'test', - 'testdata', golden_file_name) + golden_file = os.path.join(self.golden_file_dir, golden_file_name) if test_env.options.test_update_golden_files: - if not filecmp.cmp(test_output, golden_file): - print "Updating golden file: ", golden_file_name - shutil.copyfile(test_output, golden_file) + if not filecmp.cmp(test_output, golden_file): + print 'Updating golden file: ', golden_file_name + shutil.copyfile(test_output, golden_file) else: match = filecmp.cmp(test_output, golden_file) if not match: - p = subprocess.Popen(['git', '--no-pager', 'diff', '--color=auto', - '--no-ext-diff', '--no-index', - golden_file, test_output], - stdout=subprocess.PIPE, stderr=subprocess.PIPE) + p = subprocess.Popen( + ['git', '--no-pager', 'diff', '--color=auto', '--no-ext-diff', + '--no-index', golden_file, test_output], + stdout=subprocess.PIPE, + stderr=subprocess.PIPE) output, error = p.communicate() self.fail(output + error) @@ -318,9 +376,9 @@ class PackagerAppTest(unittest.TestCase): media_info_output = test_output + '.media_info' # Replaces filename, which is changing for every test run. with open(media_info_output, 'r') as f: - content = f.read() + content = f.read() with open(media_info_output, 'w') as f: - f.write(content.replace(test_output, 'place_holder')) + f.write(content.replace(test_output, 'place_holder')) self._DiffGold(media_info_output, golden_file_name + '.media_info') def _DiffLiveGold(self, test_output_prefix, golden_file_name_prefix): @@ -328,21 +386,21 @@ class PackagerAppTest(unittest.TestCase): self._DiffGold(test_output_prefix + '-init.mp4', golden_file_name_prefix + '-init.mp4') for i in range(1, 4): - self._DiffGold(test_output_prefix + '-%d.m4s' % i, - golden_file_name_prefix + '-%d.m4s' % i) + self._DiffGold(test_output_prefix + '-%d.m4s' % i, + golden_file_name_prefix + '-%d.m4s' % i) # Live mpd contains a current availabilityStartTime, which needs to be # replaced for comparison. def _DiffLiveMpdGold(self, test_output, golden_file_name): with open(test_output, 'r') as f: - content = f.read() + content = f.read() # Extract availabilityStartTime m = re.search('(?<=availabilityStartTime=")[^"]+', content) self.assertIsNotNone(m) - availabilityStartTime = m.group(0) - print 'availabilityStartTime: ', availabilityStartTime + availability_start_time = m.group(0) + print 'availabilityStartTime: ', availability_start_time with open(test_output, 'w') as f: - f.write(content.replace(availabilityStartTime, 'place_holder')) + f.write(content.replace(availability_start_time, 'place_holder')) self._DiffGold(test_output, golden_file_name) def _AssertStreamInfo(self, stream, info): diff --git a/packager/app/test/test_env.py b/packager/app/test/test_env.py index 7fe23a5396..c32343ccfb 100644 --- a/packager/app/test/test_env.py +++ b/packager/app/test/test_env.py @@ -39,7 +39,7 @@ parser.add_argument('--test_update_golden_files', default=0, type=int) options, args = parser.parse_known_args() sys.argv[1:] = args has_aes_flags = False -if (options.aes_signing_key and options.aes_signing_iv): +if options.aes_signing_key and options.aes_signing_iv: has_aes_flags = True has_rsa_flags = False if options.rsa_signing_key_path: diff --git a/packager/app/test/testdata/bear-640x360-a-cenc-golden.mp4 b/packager/app/test/testdata/bear-640x360-a-cenc-golden.mp4 index 179acfe40c..9f9ad3b67b 100644 Binary files a/packager/app/test/testdata/bear-640x360-a-cenc-golden.mp4 and b/packager/app/test/testdata/bear-640x360-a-cenc-golden.mp4 differ diff --git a/packager/app/test/testdata/bear-640x360-a-cenc-golden.mp4.media_info b/packager/app/test/testdata/bear-640x360-a-cenc-golden.mp4.media_info index f83ecef6c8..b9f7f55c67 100644 --- a/packager/app/test/testdata/bear-640x360-a-cenc-golden.mp4.media_info +++ b/packager/app/test/testdata/bear-640x360-a-cenc-golden.mp4.media_info @@ -1,4 +1,4 @@ -bandwidth: 126684 +bandwidth: 128635 audio_info { codec: "mp4a.40.2" sampling_frequency: 44100 diff --git a/packager/app/test/testdata/bear-640x360-a-live-cenc-golden-2.m4s b/packager/app/test/testdata/bear-640x360-a-live-cenc-golden-2.m4s index ec62232e80..ad8d064c95 100644 Binary files a/packager/app/test/testdata/bear-640x360-a-live-cenc-golden-2.m4s and b/packager/app/test/testdata/bear-640x360-a-live-cenc-golden-2.m4s differ diff --git a/packager/app/test/testdata/bear-640x360-a-live-cenc-golden-3.m4s b/packager/app/test/testdata/bear-640x360-a-live-cenc-golden-3.m4s index d22a791ff2..3bb7bd1d62 100644 Binary files a/packager/app/test/testdata/bear-640x360-a-live-cenc-golden-3.m4s and b/packager/app/test/testdata/bear-640x360-a-live-cenc-golden-3.m4s differ diff --git a/packager/app/test/testdata/bear-640x360-a-live-cenc-golden-init.mp4 b/packager/app/test/testdata/bear-640x360-a-live-cenc-golden-init.mp4 index 44a9627107..936c0548b4 100644 Binary files a/packager/app/test/testdata/bear-640x360-a-live-cenc-golden-init.mp4 and b/packager/app/test/testdata/bear-640x360-a-live-cenc-golden-init.mp4 differ diff --git a/packager/app/test/testdata/bear-640x360-a-live-cenc-rotation-golden-2.m4s b/packager/app/test/testdata/bear-640x360-a-live-cenc-rotation-golden-2.m4s index 1e74b0126d..9f564a116b 100644 Binary files a/packager/app/test/testdata/bear-640x360-a-live-cenc-rotation-golden-2.m4s and b/packager/app/test/testdata/bear-640x360-a-live-cenc-rotation-golden-2.m4s differ diff --git a/packager/app/test/testdata/bear-640x360-a-live-cenc-rotation-golden-3.m4s b/packager/app/test/testdata/bear-640x360-a-live-cenc-rotation-golden-3.m4s index 7dc7bb3cbf..a12aae8fd1 100644 Binary files a/packager/app/test/testdata/bear-640x360-a-live-cenc-rotation-golden-3.m4s and b/packager/app/test/testdata/bear-640x360-a-live-cenc-rotation-golden-3.m4s differ diff --git a/packager/app/test/testdata/bear-640x360-av-cenc-golden.mpd b/packager/app/test/testdata/bear-640x360-av-cenc-golden.mpd index 375687e537..2314acc835 100644 --- a/packager/app/test/testdata/bear-640x360-av-cenc-golden.mpd +++ b/packager/app/test/testdata/bear-640x360-av-cenc-golden.mpd @@ -2,7 +2,7 @@ - + AAAAMHBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAABAxMjM0NTY3ODkwMTIzNDU2 @@ -14,7 +14,7 @@ - + diff --git a/packager/app/test/testdata/bear-640x360-av-cenc-iop-golden.mpd b/packager/app/test/testdata/bear-640x360-av-cenc-iop-golden.mpd index 202b1c02a6..174270e280 100644 --- a/packager/app/test/testdata/bear-640x360-av-cenc-iop-golden.mpd +++ b/packager/app/test/testdata/bear-640x360-av-cenc-iop-golden.mpd @@ -6,7 +6,7 @@ AAAAMHBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAABAxMjM0NTY3ODkwMTIzNDU2 - + output_video.mp4 @@ -18,7 +18,7 @@ AAAAMHBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAABAxMjM0NTY3ODkwMTIzNDU2 - + output_audio.mp4 diff --git a/packager/app/test/testdata/bear-640x360-av-live-cenc-golden.mpd b/packager/app/test/testdata/bear-640x360-av-live-cenc-golden.mpd index 2ae7153085..fc39f5d58e 100644 --- a/packager/app/test/testdata/bear-640x360-av-live-cenc-golden.mpd +++ b/packager/app/test/testdata/bear-640x360-av-live-cenc-golden.mpd @@ -2,7 +2,7 @@ - + AAAAMHBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAABAxMjM0NTY3ODkwMTIzNDU2 @@ -16,7 +16,7 @@ - + diff --git a/packager/app/test/testdata/bear-640x360-av-live-cenc-iop-golden.mpd b/packager/app/test/testdata/bear-640x360-av-live-cenc-iop-golden.mpd index 194ef3e656..51423a0533 100644 --- a/packager/app/test/testdata/bear-640x360-av-live-cenc-iop-golden.mpd +++ b/packager/app/test/testdata/bear-640x360-av-live-cenc-iop-golden.mpd @@ -6,7 +6,7 @@ AAAAMHBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAABAxMjM0NTY3ODkwMTIzNDU2 - + @@ -20,7 +20,7 @@ AAAAMHBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAABAxMjM0NTY3ODkwMTIzNDU2 - + diff --git a/packager/app/test/testdata/bear-640x360-av-live-cenc-rotation-golden.mpd b/packager/app/test/testdata/bear-640x360-av-live-cenc-rotation-golden.mpd index 8859f6ade8..944a5ed567 100644 --- a/packager/app/test/testdata/bear-640x360-av-live-cenc-rotation-golden.mpd +++ b/packager/app/test/testdata/bear-640x360-av-live-cenc-rotation-golden.mpd @@ -2,7 +2,7 @@ - + @@ -14,7 +14,7 @@ - + diff --git a/packager/app/test/testdata/bear-640x360-av-live-cenc-rotation-iop-golden.mpd b/packager/app/test/testdata/bear-640x360-av-live-cenc-rotation-iop-golden.mpd index 3fe290e1df..2c19c60ee0 100644 --- a/packager/app/test/testdata/bear-640x360-av-live-cenc-rotation-iop-golden.mpd +++ b/packager/app/test/testdata/bear-640x360-av-live-cenc-rotation-iop-golden.mpd @@ -4,7 +4,7 @@ - + @@ -16,7 +16,7 @@ - + diff --git a/packager/app/test/testdata/bear-640x360-hevc-v-cenc-golden.mp4 b/packager/app/test/testdata/bear-640x360-hevc-v-cenc-golden.mp4 index 5213040a3e..db71cd5c83 100644 Binary files a/packager/app/test/testdata/bear-640x360-hevc-v-cenc-golden.mp4 and b/packager/app/test/testdata/bear-640x360-hevc-v-cenc-golden.mp4 differ diff --git a/packager/app/test/testdata/bear-640x360-v-cenc-golden.mp4 b/packager/app/test/testdata/bear-640x360-v-cenc-golden.mp4 index 2ef624da3c..40481ecadc 100644 Binary files a/packager/app/test/testdata/bear-640x360-v-cenc-golden.mp4 and b/packager/app/test/testdata/bear-640x360-v-cenc-golden.mp4 differ diff --git a/packager/app/test/testdata/bear-640x360-v-cenc-golden.mp4.media_info b/packager/app/test/testdata/bear-640x360-v-cenc-golden.mp4.media_info index d9c4301e55..123dc262a2 100644 --- a/packager/app/test/testdata/bear-640x360-v-cenc-golden.mp4.media_info +++ b/packager/app/test/testdata/bear-640x360-v-cenc-golden.mp4.media_info @@ -1,4 +1,4 @@ -bandwidth: 882409 +bandwidth: 885058 video_info { codec: "avc1.64001e" width: 640 diff --git a/packager/app/test/testdata/bear-640x360-v-live-cenc-golden-2.m4s b/packager/app/test/testdata/bear-640x360-v-live-cenc-golden-2.m4s index 82d74ab8e3..12e09835ca 100644 Binary files a/packager/app/test/testdata/bear-640x360-v-live-cenc-golden-2.m4s and b/packager/app/test/testdata/bear-640x360-v-live-cenc-golden-2.m4s differ diff --git a/packager/app/test/testdata/bear-640x360-v-live-cenc-golden-3.m4s b/packager/app/test/testdata/bear-640x360-v-live-cenc-golden-3.m4s index 1334f16097..7532eebbe0 100644 Binary files a/packager/app/test/testdata/bear-640x360-v-live-cenc-golden-3.m4s and b/packager/app/test/testdata/bear-640x360-v-live-cenc-golden-3.m4s differ diff --git a/packager/app/test/testdata/bear-640x360-v-live-cenc-golden-init.mp4 b/packager/app/test/testdata/bear-640x360-v-live-cenc-golden-init.mp4 index 2cbd292e84..8ee13870e3 100644 Binary files a/packager/app/test/testdata/bear-640x360-v-live-cenc-golden-init.mp4 and b/packager/app/test/testdata/bear-640x360-v-live-cenc-golden-init.mp4 differ diff --git a/packager/app/test/testdata/bear-640x360-v-live-cenc-rotation-golden-2.m4s b/packager/app/test/testdata/bear-640x360-v-live-cenc-rotation-golden-2.m4s index c68a1a0035..43a22837e3 100644 Binary files a/packager/app/test/testdata/bear-640x360-v-live-cenc-rotation-golden-2.m4s and b/packager/app/test/testdata/bear-640x360-v-live-cenc-rotation-golden-2.m4s differ diff --git a/packager/app/test/testdata/bear-640x360-v-live-cenc-rotation-golden-3.m4s b/packager/app/test/testdata/bear-640x360-v-live-cenc-rotation-golden-3.m4s index f527060b03..d51db53987 100644 Binary files a/packager/app/test/testdata/bear-640x360-v-live-cenc-rotation-golden-3.m4s and b/packager/app/test/testdata/bear-640x360-v-live-cenc-rotation-golden-3.m4s differ