From 80684c0e5ad40ec1ec02c162023aa30f07827772 Mon Sep 17 00:00:00 2001 From: Paul Adenot Date: Thu, 21 Oct 2021 16:18:19 +0000 Subject: [PATCH] Bug 1694085 - Add a test that verifies that HE-AAC plays back correctly including higher frequency content both with MSE and HTTP playback. r=bryce Depends on D128895 Differential Revision: https://phabricator.services.mozilla.com/D128907 --- dom/media/mediasource/test/mochitest.ini | 2 + .../test/test_HEAAC_extradata.html | 89 ++++++++++++++++++ .../mediasource/test/whitenoise-he-aac-5s.mp4 | Bin 0 -> 27078 bytes 3 files changed, 91 insertions(+) create mode 100644 dom/media/mediasource/test/test_HEAAC_extradata.html create mode 100644 dom/media/mediasource/test/whitenoise-he-aac-5s.mp4 diff --git a/dom/media/mediasource/test/mochitest.ini b/dom/media/mediasource/test/mochitest.ini index ed43ac8376a2..7549c3c7d971 100644 --- a/dom/media/mediasource/test/mochitest.ini +++ b/dom/media/mediasource/test/mochitest.ini @@ -55,6 +55,7 @@ support-files = wmf_mismatchedaudiotime.mp4 bug1718709_low_res.mp4 bug1718709_high_res.mp4 + whitenoise-he-aac-5s.mp4 [test_AbortAfterPartialMediaSegment.html] [test_AppendPartialInitSegment.html] @@ -85,6 +86,7 @@ skip-if = os == 'win' # bug 1487973, (os == 'mac') # mac due to bug 1487973 [test_HaveMetadataUnbufferedSeek.html] [test_HaveMetadataUnbufferedSeek_mp4.html] +[test_HEAAC_extradata.html] [test_LiveSeekable.html] [test_LoadedDataFired_mp4.html] [test_LoadedMetadataFired.html] diff --git a/dom/media/mediasource/test/test_HEAAC_extradata.html b/dom/media/mediasource/test/test_HEAAC_extradata.html new file mode 100644 index 000000000000..9fbbec8d72ff --- /dev/null +++ b/dom/media/mediasource/test/test_HEAAC_extradata.html @@ -0,0 +1,89 @@ + + + + HE-AAC decoding test + + + + + +
+
+
+ + diff --git a/dom/media/mediasource/test/whitenoise-he-aac-5s.mp4 b/dom/media/mediasource/test/whitenoise-he-aac-5s.mp4 new file mode 100644 index 0000000000000000000000000000000000000000..db648b82294f4b257af22566f77c031174c7dc77 GIT binary patch literal 27078 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 H56%AptX&|a literal 0 HcmV?d00001