Closed Bug 1422684 Opened 7 years ago Closed 7 years ago

MP4 video causing error creating audio decoder

Categories

(Core :: Audio/Video: Playback, defect)

59 Branch
x86_64
Windows 10
defect
Not set
normal

Tracking

()

RESOLVED WONTFIX
Tracking Status
firefox59 --- affected

People

(Reporter: sebo, Assigned: ayang)

References

()

Details

The video at http://download.gamestar.de/public/53000/53023/480p_Redaktion10_2500.mp4 isn't played.

The error message in the console says this:

Media resource http://files-gs.cgames.de/public/53000/53023/480p_Redaktion10_2500.mp4 could not be decoded, error: Error Code: NS_ERROR_DOM_MEDIA_FATAL_ERR (0x806e0005)
Details: error creating Audio decoder

Tested it in Firefox 57.0.1 and 59.0a1 (2017-12-03).

Sebastian
It is fine on my OSX.

Can you paste the text of about:support?
I've tried test url on my mac 10.13 with Firefox 59.0a1 (2017-12-03). It could play but I heard some noise on audio.
Flags: needinfo?(ayang)
working well here...

Please provide a copy of about:support.
Flags: needinfo?(sebastianzartner)
wfm with my mac mini OSX 10.11 and Firefox57.0.1
Obviously, the issue only appears on Windows. Workmates tested it now on Mac and Linux and it worked there while the issue could be reproduced on another Windows PC.

Here's my about:support output:


Application Basics
------------------

Name: Firefox
Version: 59.0a1
Build ID: 20171203220339
Update Channel: nightly
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0
OS: Windows_NT 10.0
Multiprocess Windows: 1/1 (Enabled by default)
Web Content Processes: 3/4
Stylo: content = false (disabled by default), chrome = false (disabled by default)
Google Key: Found
Mozilla Location Service Key: Found
Safe Mode: false

Crash Reports for the Last 3 Days
---------------------------------

All Crash Reports

Nightly Features
----------------

Name: Activity Stream
Version: 2017.11.16.1254-39442ee8
ID: activity-stream@mozilla.org

Name: Application Update Service Helper
Version: 2.0
ID: aushelper@mozilla.org

Name: Firefox Screenshots
Version: 25.0.0
ID: screenshots@mozilla.org

Name: Follow-on Search Telemetry
Version: 0.9.6
ID: followonsearch@mozilla.com

Name: Form Autofill
Version: 1.0
ID: formautofill@mozilla.org

Name: Photon onboarding
Version: 1.0
ID: onboarding@mozilla.org

Name: Pocket
Version: 1.0.5
ID: firefox@getpocket.com

Name: Presentation
Version: 1.0.0
ID: presentation@mozilla.org

Name: Shield Recipe Client
Version: 76.1
ID: shield-recipe-client@mozilla.org

Name: Web Compat
Version: 1.1
ID: webcompat@mozilla.org

Name: WebCompat Reporter
Version: 1.0.0
ID: webcompat-reporter@mozilla.org

Extensions
----------

Graphics
--------

Features
Compositing: Direct3D 11 (Advanced Layers)
Asynchronous Pan/Zoom: wheel input enabled; scrollbar drag enabled; keyboard enabled; autoscroll enabled
WebGL 1 Driver WSI Info: EGL_VENDOR: Google Inc. (adapter LUID: 00000000000083d4) EGL_VERSION: 1.4 (ANGLE 2.1.0.db3422764a9b) EGL_EXTENSIONS: EGL_EXT_create_context_robustness EGL_ANGLE_d3d_share_handle_client_buffer EGL_ANGLE_d3d_texture_client_buffer EGL_ANGLE_surface_d3d_texture_2d_share_handle EGL_ANGLE_query_surface_pointer EGL_ANGLE_window_fixed_size EGL_ANGLE_keyed_mutex EGL_ANGLE_surface_orientation EGL_ANGLE_direct_composition EGL_NV_post_sub_buffer EGL_KHR_create_context EGL_EXT_device_query EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_get_all_proc_addresses EGL_KHR_stream EGL_KHR_stream_consumer_gltexture EGL_NV_stream_consumer_gltexture_yuv EGL_ANGLE_flexible_surface_compatibility EGL_ANGLE_stream_producer_d3d_texture_nv12 EGL_ANGLE_create_context_webgl_compatibility EGL_CHROMIUM_create_context_bind_generates_resource EGL_CHROMIUM_sync_control EGL_EXT_pixel_format_float EGL_KHR_surfaceless_context EGL_ANGLE_display_texture_share_group EGL_ANGLE_create_context_client_arrays EGL_ANGLE_program_cache_control EGL_EXTENSIONS(nullptr): EGL_EXT_client_extensions EGL_EXT_platform_base EGL_EXT_platform_device EGL_ANGLE_platform_angle EGL_ANGLE_platform_angle_d3d EGL_ANGLE_device_creation EGL_ANGLE_device_creation_d3d11 EGL_ANGLE_experimental_present_path EGL_KHR_client_get_all_proc_addresses EGL_ANGLE_display_robust_resource_initialization
WebGL 1 Driver Renderer: Google Inc. -- ANGLE (Intel(R) HD Graphics Family Direct3D11 vs_5_0 ps_5_0)
WebGL 1 Driver Version: OpenGL ES 2.0 (ANGLE 2.1.0.db3422764a9b)
WebGL 1 Driver Extensions: GL_ANGLE_client_arrays GL_ANGLE_depth_texture GL_ANGLE_framebuffer_blit GL_ANGLE_framebuffer_multisample GL_ANGLE_instanced_arrays GL_ANGLE_lossy_etc_decode GL_ANGLE_pack_reverse_row_order GL_ANGLE_program_cache_control GL_ANGLE_request_extension GL_ANGLE_robust_client_memory GL_ANGLE_robust_resource_initialization GL_ANGLE_texture_compression_dxt3 GL_ANGLE_texture_compression_dxt5 GL_ANGLE_texture_usage GL_ANGLE_translated_shader_source GL_CHROMIUM_bind_generates_resource GL_CHROMIUM_bind_uniform_location GL_CHROMIUM_color_buffer_float_rgb GL_CHROMIUM_color_buffer_float_rgba GL_CHROMIUM_copy_compressed_texture GL_CHROMIUM_copy_texture GL_CHROMIUM_sync_query GL_EXT_blend_minmax GL_EXT_color_buffer_half_float GL_EXT_debug_marker GL_EXT_discard_framebuffer GL_EXT_disjoint_timer_query GL_EXT_draw_buffers GL_EXT_frag_depth GL_EXT_map_buffer_range GL_EXT_occlusion_query_boolean GL_EXT_read_format_bgra GL_EXT_robustness GL_EXT_sRGB GL_EXT_shader_texture_lod GL_EXT_texture_compression_dxt1 GL_EXT_texture_compression_s3tc_srgb GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 GL_EXT_texture_rg GL_EXT_texture_storage GL_EXT_unpack_subimage GL_KHR_debug GL_NV_EGL_stream_consumer_external GL_NV_fence GL_NV_pack_subimage GL_NV_pixel_buffer_object GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_compressed_ETC1_RGB8_texture GL_OES_depth32 GL_OES_element_index_uint GL_OES_get_program_binary GL_OES_mapbuffer GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_surfaceless_context GL_OES_texture_float GL_OES_texture_float_linear GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_OES_texture_npot GL_OES_vertex_array_object
WebGL 1 Extensions: ANGLE_instanced_arrays EXT_blend_minmax EXT_color_buffer_half_float EXT_frag_depth EXT_sRGB EXT_shader_texture_lod EXT_texture_filter_anisotropic EXT_disjoint_timer_query OES_element_index_uint OES_standard_derivatives OES_texture_float OES_texture_float_linear OES_texture_half_float OES_texture_half_float_linear OES_vertex_array_object WEBGL_color_buffer_float WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_depth_texture WEBGL_draw_buffers WEBGL_lose_context
WebGL 2 Driver WSI Info: EGL_VENDOR: Google Inc. (adapter LUID: 00000000000083d4) EGL_VERSION: 1.4 (ANGLE 2.1.0.db3422764a9b) EGL_EXTENSIONS: EGL_EXT_create_context_robustness EGL_ANGLE_d3d_share_handle_client_buffer EGL_ANGLE_d3d_texture_client_buffer EGL_ANGLE_surface_d3d_texture_2d_share_handle EGL_ANGLE_query_surface_pointer EGL_ANGLE_window_fixed_size EGL_ANGLE_keyed_mutex EGL_ANGLE_surface_orientation EGL_ANGLE_direct_composition EGL_NV_post_sub_buffer EGL_KHR_create_context EGL_EXT_device_query EGL_KHR_image EGL_KHR_image_base EGL_KHR_gl_texture_2D_image EGL_KHR_gl_texture_cubemap_image EGL_KHR_gl_renderbuffer_image EGL_KHR_get_all_proc_addresses EGL_KHR_stream EGL_KHR_stream_consumer_gltexture EGL_NV_stream_consumer_gltexture_yuv EGL_ANGLE_flexible_surface_compatibility EGL_ANGLE_stream_producer_d3d_texture_nv12 EGL_ANGLE_create_context_webgl_compatibility EGL_CHROMIUM_create_context_bind_generates_resource EGL_CHROMIUM_sync_control EGL_EXT_pixel_format_float EGL_KHR_surfaceless_context EGL_ANGLE_display_texture_share_group EGL_ANGLE_create_context_client_arrays EGL_ANGLE_program_cache_control EGL_EXTENSIONS(nullptr): EGL_EXT_client_extensions EGL_EXT_platform_base EGL_EXT_platform_device EGL_ANGLE_platform_angle EGL_ANGLE_platform_angle_d3d EGL_ANGLE_device_creation EGL_ANGLE_device_creation_d3d11 EGL_ANGLE_experimental_present_path EGL_KHR_client_get_all_proc_addresses EGL_ANGLE_display_robust_resource_initialization
WebGL 2 Driver Renderer: Google Inc. -- ANGLE (Intel(R) HD Graphics Family Direct3D11 vs_5_0 ps_5_0)
WebGL 2 Driver Version: OpenGL ES 3.0 (ANGLE 2.1.0.db3422764a9b)
WebGL 2 Driver Extensions: GL_ANGLE_client_arrays GL_ANGLE_depth_texture GL_ANGLE_framebuffer_blit GL_ANGLE_framebuffer_multisample GL_ANGLE_instanced_arrays GL_ANGLE_lossy_etc_decode GL_ANGLE_multiview GL_ANGLE_pack_reverse_row_order GL_ANGLE_program_cache_control GL_ANGLE_request_extension GL_ANGLE_robust_client_memory GL_ANGLE_robust_resource_initialization GL_ANGLE_texture_compression_dxt3 GL_ANGLE_texture_compression_dxt5 GL_ANGLE_texture_usage GL_ANGLE_translated_shader_source GL_CHROMIUM_bind_generates_resource GL_CHROMIUM_bind_uniform_location GL_CHROMIUM_color_buffer_float_rgb GL_CHROMIUM_color_buffer_float_rgba GL_CHROMIUM_copy_compressed_texture GL_CHROMIUM_copy_texture GL_CHROMIUM_sync_query GL_EXT_blend_minmax GL_EXT_color_buffer_float GL_EXT_color_buffer_half_float GL_EXT_debug_marker GL_EXT_discard_framebuffer GL_EXT_disjoint_timer_query GL_EXT_draw_buffers GL_EXT_frag_depth GL_EXT_map_buffer_range GL_EXT_occlusion_query_boolean GL_EXT_read_format_bgra GL_EXT_robustness GL_EXT_sRGB GL_EXT_shader_texture_lod GL_EXT_texture_compression_dxt1 GL_EXT_texture_compression_s3tc_srgb GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 GL_EXT_texture_norm16 GL_EXT_texture_rg GL_EXT_texture_storage GL_EXT_unpack_subimage GL_KHR_debug GL_NV_EGL_stream_consumer_external GL_NV_fence GL_NV_pack_subimage GL_NV_pixel_buffer_object GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_EGL_image_external_essl3 GL_OES_compressed_ETC1_RGB8_texture GL_OES_depth32 GL_OES_element_index_uint GL_OES_get_program_binary GL_OES_mapbuffer GL_OES_packed_depth_stencil GL_OES_rgb8_rgba8 GL_OES_standard_derivatives GL_OES_surfaceless_context GL_OES_texture_float GL_OES_texture_float_linear GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_OES_texture_npot GL_OES_vertex_array_object
WebGL 2 Extensions: EXT_color_buffer_float EXT_texture_filter_anisotropic EXT_disjoint_timer_query OES_texture_float_linear WEBGL_compressed_texture_s3tc WEBGL_compressed_texture_s3tc_srgb WEBGL_debug_renderer_info WEBGL_debug_shaders WEBGL_lose_context
Direct2D: true
Off Main Thread Painting Enabled: true
DirectWrite: true (10.0.16299.15)
GPU #1
Active: Yes
Description: Intel(R) HD Graphics Family
Vendor ID: 0x8086
Device ID: 0x0a16
Driver Version: 20.19.15.4549
Driver Date: 11-10-2016
Drivers: igdumdim64 igd10iumd64 igd10iumd64 igd12umd64 igdumdim32 igd10iumd32 igd10iumd32 igd12umd32
Subsys ID: 13cd1043
RAM: Unknown

Diagnostics
AzureCanvasAccelerated: 0
AzureCanvasBackend: Direct2D 1.1
AzureCanvasBackend (UI Process): skia
AzureContentBackend: Direct2D 1.1
AzureContentBackend (UI Process): skia
AzureFallbackCanvasBackend (UI Process): cairo
GPUProcessPid: 14528
GPUProcess: Terminate GPU Process
Device Reset: Trigger Device Reset
Decision Log
WEBRENDER:
opt-in by default: WebRender is an opt-in feature




Media
-----

Audio Backend: wasapi
Max Channels: 2
Preferred Channel Layout: stereo
Preferred Sample Rate: 48000
Output Devices
Name: Group
PLE2483H (Intel(R) Display-Audio): HDAUDIO\FUNC_01&VEN_8086&DEV_2807&SUBSYS_80860101&REV_1000\4&179d2b3b&0&0001
Speakers (Conexant SmartAudio HD): HDAUDIO\FUNC_01&VEN_14F1&DEV_510F&SUBSYS_104313CD&REV_1001\4&393c8078&0&0001
PLE2483H (Intel(R) Display-Audio): HDAUDIO\FUNC_01&VEN_8086&DEV_2807&SUBSYS_80860101&REV_1000\4&179d2b3b&0&0001
SAMSUNG (Intel(R) Display-Audio): HDAUDIO\FUNC_01&VEN_8086&DEV_2807&SUBSYS_80860101&REV_1000\4&179d2b3b&0&0001
Input Devices
Name: Group
Mikrofon (Conexant SmartAudio HD): HDAUDIO\FUNC_01&VEN_14F1&DEV_510F&SUBSYS_104313CD&REV_1001\4&393c8078&0&0001
Stereo Mix (Conexant SmartAudio HD): HDAUDIO\FUNC_01&VEN_14F1&DEV_510F&SUBSYS_104313CD&REV_1001\4&393c8078&0&0001

Important Modified Preferences
------------------------------

browser.cache.disk.capacity: 1048576
browser.cache.disk.filesystem_reported: 1
browser.cache.disk.smart_size.first_run: false
browser.cache.frecency_experiment: 4
browser.places.smartBookmarksVersion: 8
browser.startup.homepage_override.buildID: 20171203220339
browser.startup.homepage_override.mstone: 59.0a1
browser.urlbar.timesBeforeHidingSuggestionsHint: 1
dom.forms.autocomplete.formautofill: true
extensions.lastAppVersion: 59.0a1
layers.mlgpu.sanity-test-failed: false
media.gmp.storage.version.observed: 1
media.hardware-video-decoding.failed: false
network.cookie.prefsMigrated: true
places.history.expiration.transient_current_max_pages: 104858
plugin.disable_full_page_plugin_for_types: application/pdf
security.sandbox.content.tempDirSuffix: {115df1bc-9886-4216-a794-a62394de19e8}
services.sync.engine.addresses.available: true
services.sync.engine.creditcards.available: true
ui.osk.debug.keyboardDisplayReason: IKPOS: Touch screen not found.

Important Locked Preferences
----------------------------

Places Database
---------------

JavaScript
----------

Incremental GC: true

Accessibility
-------------

Activated: false
Prevent Accessibility: 0
Accessible Handler Used: true
Accessibility Instantiator:

Library Versions
----------------

NSPR
Expected minimum version: 4.18 Beta
Version in use: 4.18 Beta

NSS
Expected minimum version: 3.35 Beta
Version in use: 3.35 Beta

NSSSMIME
Expected minimum version: 3.35 Beta
Version in use: 3.35 Beta

NSSSSL
Expected minimum version: 3.35 Beta
Version in use: 3.35 Beta

NSSUTIL
Expected minimum version: 3.35 Beta
Version in use: 3.35 Beta

Experimental Features
---------------------

Sandbox
-------

Content Process Sandbox Level: 5
Effective Content Process Sandbox Level: 5

Internationalization & Localization
-----------------------------------

Application Settings
Requested Locales: ["en-US"]
Available Locales: ["en-US"]
App Locales: ["en-US"]
Regional Preferences: ["en-US"]
Default Locale: "en-US"
Operating System
System Locales: ["de-DE"]
Regional Preferences: ["de-DE"]
Flags: needinfo?(sebastianzartner)
OS: Unspecified → Windows 10
Hardware: Unspecified → x86_64
A typo in aac frequency table in ds descriptor.
Assignee: nobody → ayang
Flags: needinfo?(ayang)
There are two problems with this bug.
1. incorrect audio sample rate, it should be 88200, it is fixed in comment 7. This is the problem I heard the noise on Mac platform.
2. windows aac decoder doesn't support sample rate higher than 48 kHz [1].

I'll file a separate bug for 1 and update this bug to 'wontfix' unless we enable other PlatformDecoderModule like FFmpeg on windows.

Note: Edge can't play it but Chrome is ok.

[1] https://msdn.microsoft.com/en-us/library/windows/desktop/dd742784(v=vs.85).aspx
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → WONTFIX
See Also: → 1423469
I see. Thank you for the info, Alfredo!

Though, doesn't that mean that at least the video track should be played? At least that's what happens when I download the video and play it using the Windows video player.
Should I file a separate bug for that?

Also, is it already planned to enable FFmpeg on Windows or should I file a bug for that?

Sebastian
Flags: needinfo?(ayang)
(In reply to Sebastian Zartner [:sebo] from comment #9)
> I see. Thank you for the info, Alfredo!
> 
> Though, doesn't that mean that at least the video track should be played? At
> least that's what happens when I download the video and play it using the
> Windows video player.
> Should I file a separate bug for that?
A track decoding error is fatal, as per spec.

> 
> Also, is it already planned to enable FFmpeg on Windows or should I file a
> bug for that?

We can't, AAC is a patent encumbered codec, we can't ship an AAC decoder, we must use the system's one
(In reply to Sebastian Zartner [:sebo] from comment #9)
> I see. Thank you for the info, Alfredo!
> 
> Though, doesn't that mean that at least the video track should be played? At
> least that's what happens when I download the video and play it using the
> Windows video player.
> Should I file a separate bug for that?

Yes, please.

> 
> Also, is it already planned to enable FFmpeg on Windows or should I file a
> bug for that?

It requires FFmpeg preinstalled on the user system, we can't include FFmpeg aac decoder on build due to other issues.
Flags: needinfo?(ayang)
See Also: → 1423533
(In reply to Jean-Yves Avenard [:jya] from comment #10)
> (In reply to Sebastian Zartner [:sebo] from comment #9)
> > Also, is it already planned to enable FFmpeg on Windows or should I file a
> > bug for that?
> 
> We can't, AAC is a patent encumbered codec, we can't ship an AAC decoder, we
> must use the system's one

So, this sounds like Google pays for a license to get it work in Chrome, right?

Sebastian

I'm running into something similar, and these videos play fine in Chrome and other browsers. Here's a sample: https://na.lbryplayer.xyz/content/claims/test-ff-video/d3ebbe3ff393cffa118d48ec164778bccb98d493/stream

How can Chrome play these but FF can't?

During 1698551 I tested removing our 48K limit[0] and found that the file in question played correctly, complete with Audio. It seems possible microsoft have added more sample rates to their decoder without documenting it (at time of writing the docs still read 'Sampling rates above 48 kHz are not supported.').

Seems like we could investigate further.

[0] https://searchfox.org/mozilla-central/rev/a848cde8a73065fcc41902ac58c65821eb9a44ca/dom/media/platforms/wmf/WMFDecoderModule.cpp#330

Bug 1698639 create to track further investigation.

You need to log in before you can comment on or make changes to this bug.