Closed Bug 1165772 Opened 6 years ago Closed 5 years ago

MediaSource incorrectly reporting that mp4 is supported, even when it isn't.


(Core :: Audio/Video, defect)

Not set



Tracking Status
firefox41 --- affected
firefox42 --- fixed


(Reporter: jya, Assigned: jya)


(Blocks 1 open bug)



(3 files, 1 obsolete file)

On Linux, we can only use MediaSource with mp4 if FFmpeg support has been compiled in, and FFmpeg external libraries are present.

However, MediaSource IsTypeSupported only checks if the type is mp4 or webm and if that the HTMLMediaElement can play such file.

With gstreamer installed, we would report that mp4 was supported, even though gstreamer isn't usable with MSE.

MediaSource should only report MP4 as supported if the MP4Reader is usable.
Jean-Yves, does this bug affect Windows XP or only Linux builds with FFmpeg compiled in?
Flags: needinfo?(jyavenard)
OS: Unspecified → Linux
AFAICT, Only Linux.

It affects plain linux build, you don't need ffmpeg built-in.
Flags: needinfo?(jyavenard)
We now have identical results between Windows XP and Linux.
Attachment #8636407 - Flags: review?(karlt)
Assignee: nobody → jyavenard
Blocks: 1105760
Depends on: 1171379
We now have identical results between Windows XP and Linux.

Sorry for that, I had missed two tests.
Attachment #8636487 - Flags: review?(karlt)
Comment on attachment 8636438 [details] [diff] [review]
P1. Refactor DecoderTraits::CanHandleMediaType.

Review of attachment 8636438 [details] [diff] [review]:

Suggestion: We could make this more OO by having a class that contains the codec list that we run queries on. Not sure if that would be better overall.

I'm fine with landing this patch as-is.

::: dom/media/DecoderTraits.cpp
@@ +191,5 @@
>  /* static */ bool
>  DecoderTraits::IsWebMType(const nsACString& aType)
>  {
> +#ifdef MOZ_WEBM

Suggestion: We can probably get rid of the MOZ_WEBM configure flag.
Attachment #8636438 - Flags: review?(ajones) → review+
Comment on attachment 8636439 [details] [diff] [review]
P2. Properly reports if mimetype is support in mediasource.

Review of attachment 8636439 [details] [diff] [review]:

I suspect creating a class that represents the parsed codec information would make the code cleaner. However it is still an improvement over what we've got. I'm OK with landing this patch as is.
Attachment #8636439 - Flags: review?(ajones) → review+
Blocks: 1184867
Attachment #8636407 - Attachment is obsolete: true
Attachment #8636407 - Flags: review?(karlt)
Attachment #8636487 - Flags: review?(karlt) → review+
This landing might be causing bug 1186965 which is a smoke test blocker so we might need this backed out.
Whiteboard: [backout-asap]
Backing it out would be difficult, and I doubt this particular commit is what causes that assert. all that commit does is preventing MSE to report that MP4 is support on Linux.

More likely the new MSE.
Whiteboard: [backout-asap]
No longer depends on: 1186965
Depends on: 1188131
You need to log in before you can comment on or make changes to this bug.