Ошибка "Uncaught (in promise) DOMException: У элемента отсутствуют поддерживаемые источники" возникает, когда браузер не может найти или распознать подходящий источник звука или видео для элемента мультимедиа (например, аудио или видео файл). Это может происходить по следующим причинам:
1. Неверно указан путь к файлу или URL ресурса. Убедитесь, что вы правильно указали путь к файлу или URL ресурса и он доступен для загрузки.
2. Формат файла не поддерживается браузером. Разные браузеры поддерживают разные форматы аудио и видео файлов. Убедитесь, что файл имеет поддерживаемый формат для вашего целевого браузера. Можно использовать HTML5 теги аудио и видео для проверки поддерживаемых форматов с помощью свойств canPlayType().
3. Ошибка загрузки файла. Если файл поврежден или не полностью загружен, возникает ошибка при попытке его воспроизведения. Проверьте, что файл был загружен полностью и нет никаких проблем с его содержимым.
Для проверки является ли файл поврежденным, можно выполнить следующие шаги:
1. Проверьте, что файл полностью загружен, проверив значение свойства readyState у элемента мультимедиа. Если значение равно 4 (`HTMLMediaElement.HAVE_ENOUGH_DATA`), значит файл был полностью загружен.
2. Если файл был успешно загружен, но не воспроизводится, возможно есть проблема с его содержимым. Можно проверить загруженные данные, чтобы убедиться, что они соответствуют ожидаемому формату или структуре файла.
3. Попробуйте воспроизвести файл в других браузерах или мультимедийных проигрывателях, чтобы убедиться, что проблема не связана с конкретным браузером или плеером.
Если оба файла были успешно загружены, но только один из них воспроизводится, возможные причины могут быть следующими:
1. Формат файла не поддерживается браузером. Убедитесь, что оба файла имеют поддерживаемый формат для вашего целевого браузера.
2. Проблема с содержимым файла. Один файл может быть поврежден или содержать ошибки, что приводит к его неправильному воспроизведению.
3. Проблема с кодеком или настройками воспроизведения. Разные кодеки и настройки воспроизведения могут влиять на возможность воспроизведения файла.
4. Проблемы с кодировкой или символами в имени файла или пути к файлу. Убедитесь, что файл и его путь имеют правильную кодировку и не содержат недопустимых символов.
5. Внешние факторы. Некоторые браузеры могут блокировать автоматическое воспроизведение звука или видео на странице по умолчанию из соображений безопасности или пользовательского опыта.
Для более точной диагностики и решения проблемы реком