diff --git a/core/modules/file/src/Plugin/Field/FieldFormatter/FileMediaFormatterBase.php b/core/modules/file/src/Plugin/Field/FieldFormatter/FileMediaFormatterBase.php
index f55d95e65e04d33641dac0d1ede9f3b2a04f0b5a..7b749cfbce44e7ddbcc29de17e042142a000b445 100644
--- a/core/modules/file/src/Plugin/Field/FieldFormatter/FileMediaFormatterBase.php
+++ b/core/modules/file/src/Plugin/Field/FieldFormatter/FileMediaFormatterBase.php
@@ -81,7 +81,7 @@ public static function isApplicable(FieldDefinitionInterface $field_definition)
 
     foreach ($extension_list as $extension) {
       $mime_type = $extension_mime_type_guesser->guessMimeType('fakedFile.' . $extension);
-      if (static::mimeTypeApplies($mime_type)) {
+      if ($mime_type !== NULL && static::mimeTypeApplies($mime_type)) {
         return TRUE;
       }
     }
@@ -192,11 +192,12 @@ protected function getSourceFiles(EntityReferenceFieldItemListInterface $items,
     // grouping in case the multiple file behavior is not 'tags'.
     /** @var \Drupal\file\Entity\File $file */
     foreach ($this->getEntitiesToView($items, $langcode) as $file) {
-      if (static::mimeTypeApplies($file->getMimeType())) {
+      $mime_type = $file->getMimeType();
+      if ($mime_type !== NULL && static::mimeTypeApplies($mime_type)) {
         $source_attributes = new Attribute();
         $source_attributes
           ->setAttribute('src', $file->createFileUrl())
-          ->setAttribute('type', $file->getMimeType());
+          ->setAttribute('type', $mime_type);
         if ($this->getSetting('multiple_file_display_type') === 'tags') {
           $source_files[] = [
             [
diff --git a/core/modules/file/tests/src/Functional/Formatter/FileAudioFormatterTest.php b/core/modules/file/tests/src/Functional/Formatter/FileAudioFormatterTest.php
index a4591ed353c94cea5e9e199506552bacf7ac37f6..316860c84e2d339249e30aa707606b37db4aa2ef 100644
--- a/core/modules/file/tests/src/Functional/Formatter/FileAudioFormatterTest.php
+++ b/core/modules/file/tests/src/Functional/Formatter/FileAudioFormatterTest.php
@@ -24,7 +24,8 @@ class FileAudioFormatterTest extends FileMediaFormatterTestBase {
    * @dataProvider dataProvider
    */
   public function testRender($tag_count, $formatter_settings): void {
-    $field_config = $this->createMediaField('file_audio', 'mp3', $formatter_settings);
+    // Create a file field that accepts .mp3 and an unknown file extension.
+    $field_config = $this->createMediaField('file_audio', 'unknown-extension, mp3', $formatter_settings);
 
     file_put_contents('public://file.mp3', str_repeat('t', 10));
     $file1 = File::create([