Some MP4 videos don't play because they can't be decoded.

VERIFIED FIXED in Firefox 37

Status

()

--
major
VERIFIED FIXED
4 years ago
2 years ago

People

(Reporter: bottleofstevens, Assigned: jya)

Tracking

({regression, verifyme})

34 Branch
mozilla38
x86_64
Windows 8.1
regression, verifyme
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox35 wontfix, firefox36- wontfix, firefox37 verified, firefox38 verified, firefox-esr31 unaffected, firefox-esr38 verified)

Details

Attachments

(6 attachments)

(Reporter)

Description

4 years ago
Created attachment 8560530 [details]
Detailed info of the example video

User Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.94 Safari/537.36

Steps to reproduce:

Uploaded MP4 videos to the server that play fine on desktop, IE, and Chrome. 

Tried to play them inside Firefox through direct URL link and also a customized HTML5 video player.

Example of a video that doesn't play:
http://intranet.ipims.com/scorm/app/features/video-demo/test.mp4


Actual results:

The error "Video can't be played because the file is corrupt displays."

The JS console displays "Media resource http://intranet.ipims.com/scorm/app/features/video-demo/test.mp4 could not be decoded."


Expected results:

The video should play inside the browser without any errors like on desktop, IE, and Chrome.
(Reporter)

Comment 1

4 years ago
Video information (same as attachment):

General
Complete name                            : W:\ipims_intra_V22\scorm\app\features\video-demo\test.mp4
Format                                   : MPEG-4
Format profile                           : Base Media / Version 2
Codec ID                                 : mp42
File size                                : 3.69 MiB
Duration                                 : 1mn 19s
Overall bit rate mode                    : Variable
Overall bit rate                         : 392 Kbps
Encoded date                             : UTC 2014-09-19 08:04:00
Tagged date                              : UTC 2014-09-19 08:04:00

Video
ID                                       : 1
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format profile                           : Baseline@L1.2
Format settings, CABAC                   : No
Format settings, ReFrames                : 3 frames
Codec ID                                 : avc1
Codec ID/Info                            : Advanced Video Coding
Duration                                 : 1mn 19s
Bit rate mode                            : Variable
Bit rate                                 : 300 Kbps
Width                                    : 320 pixels
Height                                   : 240 pixels
Display aspect ratio                     : 4:3
Frame rate mode                          : Constant
Frame rate                               : 15.000 fps
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Bits/(Pixel*Frame)                       : 0.260
Stream size                              : 2.72 MiB (74%)
Writing library                          : x264 core 129
Encoding settings                        : cabac=0 / ref=3 / deblock=1:0:0 / analyse=0x1:0x111 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=0 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=6 / lookahead_threads=1 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=0 / weightp=0 / keyint=250 / keyint_min=15 / scenecut=40 / intra_refresh=0 / rc_lookahead=60 / rc=cbr / mbtree=1 / bitrate=300 / ratetol=1.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / vbv_maxrate=300 / vbv_bufsize=200 / nal_hrd=vbr / ip_ratio=1.40 / aq=1:1.00
Language                                 : English
Encoded date                             : UTC 2014-09-19 08:04:00
Tagged date                              : UTC 2014-09-19 08:04:00

Audio
ID                                       : 2
Format                                   : AAC
Format/Info                              : Advanced Audio Codec
Format profile                           : LC
Codec ID                                 : 40
Duration                                 : 1mn 18s
Bit rate mode                            : Constant
Bit rate                                 : 93.6 Kbps
Nominal bit rate                         : 128 Kbps
Channel(s)                               : 2 channels
Channel positions                        : Front: L R
Sampling rate                            : 44.1 KHz
Compression mode                         : Lossy
Stream size                              : 902 KiB (24%)
Encoded date                             : UTC 2014-09-19 08:04:00
Tagged date                              : UTC 2014-09-19 08:04:00
Severity: normal → critical
Keywords: html5
Severity: critical → major
Component: Untriaged → Video/Audio
Product: Firefox → Core

Updated

4 years ago
Status: UNCONFIRMED → NEW
status-firefox35: --- → affected
status-firefox36: --- → affected
status-firefox37: --- → affected
status-firefox38: --- → affected
status-firefox-esr31: --- → unaffected
status-firefox-esr38: --- → affected
Ever confirmed: true
(Reporter)

Comment 2

4 years ago
This issue does not apply to OS X Firefox.

Comment 3

4 years ago
Reporter, could you attach the MP4 video directly to the bug, please. (you link doesn't work anymore)
Flags: needinfo?(bottleofstevens)

Comment 4

4 years ago
Created attachment 8564759 [details]
test.mp4

Comment 5

4 years ago
The MP4 attached to the bug stopped working after:
good=2014-08-26
bad=2014-08-27
http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=dc352a7bf234&tochange=0753f7b93ab7

Maybe due to:
Chris Pearce — Bug 1057879 - Enable MP4Reader on Windows. r=kentuckyfriedtakahe
Flags: needinfo?(bottleofstevens) → needinfo?(cpearce)
Keywords: html5 → regression
Version: 35 Branch → 34 Branch

Updated

4 years ago
Blocks: 1057879

Updated

4 years ago
Blocks: 1133504
(Assignee)

Comment 6

4 years ago
Our MP4 demuxer (libstagefright) doesn't properly handle mp4 with Apple Qt extension (version 1 and version 2).

Previously MP4s would have been played with the QuickTime extension and not natively using the HTML5 player.
Flags: needinfo?(cpearce)
(Assignee)

Updated

4 years ago
Duplicate of this bug: 1133504

Comment 8

4 years ago
(In reply to Jean-Yves Avenard [:jya] from comment #6)
> Our MP4 demuxer (libstagefright) doesn't properly handle mp4 with Apple Qt
> extension (version 1 and version 2).
> 
> Previously MP4s would have been played with the QuickTime extension and not
> natively using the HTML5 player.

I don't have the QT extension installed on my machine and these MP4s were playable natively in FF. You can try a build before 2014-08-26.

Updated

4 years ago
No longer blocks: 1133504
(Assignee)

Comment 9

4 years ago
Sorry, on windows it would have used the WMF demuxer
Does this video play in other browsers?
(Assignee)

Comment 11

4 years ago
It plays in Chrome and Safari on OS X.
Plays in IE (Windows 8.1), but there it opens a Windows Media Player window
(Assignee)

Comment 12

4 years ago
Created attachment 8565675 [details] [diff] [review]
Properly handle MP4 with Apple QT extension

Add proper handling of file with QT extension (v1 and v2). Handle specific case I've seen with those two files (empty mp4a atom, and padding within the avc1 atom). If I understand the spec of MP4 and what the mp4a atom is supposed to contain, that we play any mp4s is nothing short of a miracle (the original code skipped by 10 bytes which luckily contained an atom whose content make it jump back to the previous atom and then proper skip can occur).
Attachment #8565675 - Flags: review?(ajones)
(Assignee)

Updated

4 years ago
Assignee: nobody → jyavenard
Status: NEW → ASSIGNED
(Assignee)

Comment 13

4 years ago
FFmpeg demuxer completely ignore the QT V2 StructSize field and assumes it's empty. I'm not sure what the proper way is, I have no sample to test with.

Comment 14

4 years ago
Created attachment 8565686 [details]
1130450.html (testcase)

I tested in IE11 (Win 7), both MP4s are played.

Comment 15

4 years ago
In IE11, it works natively if the videos are embedded. (like in my testcase)
Attachment #8565675 - Flags: review?(ajones) → review+
https://hg.mozilla.org/mozilla-central/rev/d88e65d32c53
Status: ASSIGNED → RESOLVED
Last Resolved: 4 years ago
status-firefox38: affected → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla38
(Assignee)

Comment 18

4 years ago
Ralph, would be good to uplift this...
Flags: needinfo?(giles)
Flags: needinfo?(giles)
Keywords: verifyme
Comment on attachment 8565675 [details] [diff] [review]
Properly handle MP4 with Apple QT extension

Approval Request Comment
[Feature/regressing bug #]: mp4 playback
[User impact if declined]: Some mp4 files will fail to play.
[Describe test coverage new/current, TreeHerder]: Landed on m-c.
[Risks and why]: This just adds parser support for additional data found in some files which we previously rejected. Risk is minimal.
[String/UUID change made/needed]: None.
Attachment #8565675 - Flags: approval-mozilla-release?
Attachment #8565675 - Flags: approval-mozilla-aurora?
Pushed to aurora with pre-approval from lmandel.
https://hg.mozilla.org/releases/mozilla-aurora/rev/269ea0da72c3
status-firefox37: affected → fixed
Comment on attachment 8565675 [details] [diff] [review]
Properly handle MP4 with Apple QT extension

As noted, pre-approval was granted for a collection of MSE changes on Aurora. Adding approval to the bug.

Ralph - I'm going to assume that you accidentally requested release. I've cleared the release request but please renom if I'm mistaken.
Flags: needinfo?(giles)
Attachment #8565675 - Flags: approval-mozilla-release?
Attachment #8565675 - Flags: approval-mozilla-aurora?
Attachment #8565675 - Flags: approval-mozilla-aurora+
Comment on attachment 8565675 [details] [diff] [review]
Properly handle MP4 with Apple QT extension

I did mean to request release as well. This is a regression also affecting non-MSE playback in 35 and 36. No one noticed in the 35 timeframe, so perhaps it's not affecting many users, but I wanted to suggest it for consideration.

Approval Request Comment
[Feature/regressing bug #]: mp4 playback
[User impact if declined]: Some mp4 files will fail to play.
[Describe test coverage new/current, TreeHerder]: Landed on m-c.
[Risks and why]: This just adds parser support for additional data found in some files which we previously rejected. Risk is minimal.
[String/UUID change made/needed]: None.
Flags: needinfo?(giles)
Attachment #8565675 - Flags: approval-mozilla-release?
OK. I've marked 35 as wontfix as 35 will be EOL tomorrow. I have nommed for tracking 36 so that Sylvestre can decide whether he wants to add this to his potential point release ride along list.
status-firefox35: affected → wontfix
tracking-firefox36: --- → ?
Sounds good, thanks.
Comment on attachment 8565675 [details] [diff] [review]
Properly handle MP4 with Apple QT extension

I don't think it deserves a dot release as it was already in 35 and we didn't receive too much complains.
Attachment #8565675 - Flags: approval-mozilla-release? → approval-mozilla-release-
tracking-firefox36: ? → -

Comment 26

4 years ago
Reproduced with Nightly 2015-02-11 under Windows 7 64-bit and with test.mp4 file: "Video can't be played because the file is corrupt.” message is displayed in the video area and "Media resource https://bug1133504.bugzilla.mozilla.org/attachment.cgi?id=8565030 could not be decoded." is thrown by attachment.cgi via Browser Console.

Verified as fixed on Fx 37 beta 4 (Build ID: 20150309191715) and latest DevEd 38.0a2 (Build ID: 20150309004203) with both attached testcases (the one from comment 0 and comment 14) under Windows 7 64-bit and Windows 8.1 64-bit. 

Although, while seeking through 1130450.html testcase the cursor maintains it's position, does not change accordingly. This issue doesn't happen with Nightly from 2014-08-26, before this issue here regressed. Any ideas?
Status: RESOLVED → VERIFIED
status-firefox37: fixed → verified
status-firefox38: fixed → verified
Flags: needinfo?(jyavenard)
(Assignee)

Comment 27

4 years ago
I'm not sure I understand. Nightly 2015-02-11 didn't contain the fix.

Also, the file didn't play before, so how could any playback behaviour be considered as having regressed?

And what do you mean by "the cursor maintains its position"?
Flags: needinfo?(jyavenard)

Comment 28

4 years ago
(In reply to Jean-Yves Avenard [:jya] from comment #27)
> I'm not sure I understand. Nightly 2015-02-11 didn't contain the fix.
Indeed, Nightly 2015-02-11 has the bug. In order for us (the QA) to properly verify a fix, we first need to try *to reproduce* the bug on a build that is known to be broken - in this case, Nightly 2015-02-11.

> Also, the file didn't play before, so how could any playback behaviour be
> considered as having regressed?
Based on comment 5, the regression range highlights that with last good=2014-08-26 build, the video(s) worked. With the same build, the issue visible in the screencast [1] below is NOT reproducible.
 
> And what do you mean by "the cursor maintains its position"?
Please take a look at this screencast [1]: http://goo.gl/ZshWuu
status-firefox36: affected → wontfix
status-firefox-esr38: affected → fixed

Updated

4 years ago
Depends on: 1144191

Comment 29

4 years ago
Issue remains on Firefox 37 beta version (37.0b7) and 38 dev version (38.0a2) as well
(Assignee)

Comment 30

4 years ago
certainly works for me ! what platform are you on?

Comment 31

4 years ago
I am on windows 7 64 bit.

Comment 32

4 years ago
WFM with FF37 on Win 7 x64. Are your Firefox versions up-to-date?

Comment 33

4 years ago
Initially it was latest released version, i.e. 36.0.4. After googling for this defect, I upgraded it to 37 beta version (37.0b7) followed by an upgrade to 38 dev version (38.0a2) - none of them work. All of them give the same old error -  "Media resource <some mp4 over internet> could not be decoded". Though it works fine on Chrome latest version on the same platform.
(In reply to Anindya Mishra from comment #33)
> Initially it was latest released version, i.e. 36.0.4. After googling for
> this defect, I upgraded it to 37 beta version (37.0b7) followed by an
> upgrade to 38 dev version (38.0a2) - none of them work. All of them give the
> same old error -  "Media resource <some mp4 over internet> could not be
> decoded". Though it works fine on Chrome latest version on the same platform.

What does it say for H.264 on https://www.youtube.com/html5 ?

Do you have Server or Enterprise edition of Windows?

Comment 35

3 years ago
I'm using Firefox with 4 profiles. One of them had problem to work mp4.  When I open mp4 http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4 it says "Video can't be played because the file is corrupted.".

After I compare prefs.js files of both profiles I saw that "media.windows-media-foundation.enabled" was false. I opened about:config and reset "media.windows-media-foundation.enabled". After restarting Firefox http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4 has been working perfectly.

Comment 36

3 years ago
Also verified as fixed with ESR 38.0 (Build ID: 20150505103531) under Windows 8.1 64-bit.
status-firefox-esr38: fixed → verified

Comment 37

3 years ago
I'm running FF 38.0.5 and still see this issue with mp4 videos.

Comment 38

3 years ago
(In reply to ayesha from comment #37)
> I'm running FF 38.0.5 and still see this issue with mp4 videos.

Could you provide mp4 videos, please.
Flags: needinfo?(ayesha)

Comment 39

3 years ago
I'm also experiencing issues thie FF 38.0.5 under Windows (no matter what version, even tried Win10) with big_buck_bunny.mp4. This is a partially reproducible scenario for me:
1. Clear cache
2. Hit: http://demo.openeclass.org/modules/video/file.php?course=DEMO-A602&id=131
3. Hit: http://demo.openeclass.org/modules/video/file.php?course=DEMO-A602&id=131&test=1 (extra GET arg does nothing on the server)
4. Hit: http://demo.openeclass.org/modules/video/file.php?course=DEMO-A602&id=131&test=2
5. Now: try a combination of going fast backs/forwards among these 3 urls with or without clearing cache in between. At some point, you'll get the "file corrupt" thing with the "Media resource blah cannot be decoded" in the js console.

However, I've got something else to notice here. For some reason which I do not understand, Firefox does not use byte-range fetching for above URLs. IE and Chrome do use byte-range. The server-side code, if it matters: http://paste2.org/pthEOGd9 it should be working with partial requests.

Comment 40

3 years ago
Sorry I can't share the video file. But I can share the error message I get:

"Media resource [movie_name.mp4] could not be decoded."
Flags: needinfo?(ayesha)

Comment 41

3 years ago
(In reply to ayesha from comment #40)
> Sorry I can't share the video file. But I can share the error message I get:
> 
> "Media resource [movie_name.mp4] could not be decoded."

It will not really help if we cannot test the video showing up the issue. Maybe split the video in a 3 or 4 sec piece if it's private.
(In reply to ayesha from comment #40)
> Sorry I can't share the video file. But I can share the error message I get:

This should be separated out into a new bug because the patches have landed. The error message isn't useful for resolving the issue. You'll need to provide the video itself, or at least the beginning of it (e.g. first 1MB) and you can send it to me directly and I will delete it after use.

Comment 43

3 years ago
Created attachment 8632936 [details]
mp4-ff-video-corrupt

Ran into this issue with the attached file. The file was generated using the MediaStream Recorder API(http://www.w3.org/TR/mediastream-recording). Reproduced on FF 39, Win7-64 Desktop. Works on Chrome 42. In FF does not work with the url in the addrress bar, but it works when I refer to the file from a vided tag:
	<video width="320" height="240" controls>
	  <source src="/myappcontext/files/360f87e0-ea0d-4cbe-98ee-4e13705489a6.mp4">
	</video>
I will see if I can figure out how to attach the source used to generate and upload the file to the server.

Comment 44

3 years ago
Created attachment 8632943 [details]
html+javascript+mediaStreamReacorder

 html+ javascript used to generate the mp4 file in the previous comment

Comment 45

3 years ago
(In reply to boyko11 from comment #43)
> Created attachment 8632936 [details]
> mp4-ff-video-corrupt
> 
> Ran into this issue with the attached file. The file was generated using the
> MediaStream Recorder API(http://www.w3.org/TR/mediastream-recording).

It's not related to this bug.
Your video file is a WebM video served as MP4: container is WebM, video codec is VP8 and audio codec is Vorbis but the extension is MP4.
If you rename the extension from .mp4 to .webm, Firefox is able to read directly the video.
I'm testing MP4 streaming (ie., essentially presenting an infinitely large file over HTTP) through <video>. It works fine in Firefox for Windows, but does not work in Firefox for Linux; after downloading about a megabyte, I get the same “Media resource [url] could not be decoded.” error others are reporting. It plays in Chrome on Linux, Chrome on Android, and IE11. Furthermore, I can stream just fine to VLC and to MPlayer.

An excerpt of a file can be found at http://storage.sesse.net/srf1.mp4; it should play fine but doesn't. I can play other MP4 files in <video>, so it's not my local installation; there's some incompatibility between Firefox (GStreamer?) and this specific type of muxing.

FWIW, it's generated from VLC, using the parameters

--sout '#transcode{vcodec=h264,vb=3000,acodec=mp4a,ab=256,channels=2,fps=50}:std{access=http{mime=video/mp4},mux=ffmpeg{mux=mp4},dst=:9094}' --sout-avformat-options '{movflags=empty_moov+frag_keyframe+default_base_moof}'
(In reply to Steinar H. Gunderson from comment #46)
> I'm testing MP4 streaming (ie., essentially presenting an infinitely large
> file over HTTP) through <video>. It works fine in Firefox for Windows, but
> does not work in Firefox for Linux; after downloading about a megabyte, I
> get the same “Media resource [url] could not be decoded.” error others are
> reporting. It plays in Chrome on Linux, Chrome on Android, and IE11.
> Furthermore, I can stream just fine to VLC and to MPlayer.

Not playing on Linux would be a problem with the demuxer in GStreamer, assuming you're not using the ffmpeg/libav backend. We use a built in MP4 demuxer everywhere else.

> An excerpt of a file can be found at http://storage.sesse.net/srf1.mp4; it
> should play fine but doesn't. I can play other MP4 files in <video>, so it's
> not my local installation; there's some incompatibility between Firefox
> (GStreamer?) and this specific type of muxing.

Are you using the gstreamer-0.10 backend?
As far as I can see from what .so files Firefox has opened, I'm using a gstreamer 1.0 backend. (I never really set this up myself.) I've filed https://bugzilla.gnome.org/show_bug.cgi?id=752603 on the GSteamer side, since I could reproduce the issue with gst-play-1.0.

Updated

3 years ago
Depends on: 1254311
(Assignee)

Updated

3 years ago
No longer depends on: 1254311

Comment 49

2 years ago
Same problem here !
Using Iceweasel 38.7.1

Here is the video : http://185.120.34.240/ZmxvcmlhbkBvcGVuY2FwLmZy-8826.mp4
I transcoded it myself using ffmpeg, and an other video is working though I used the same ffmpeg params !

Why this one isn't working ? What params should I use in ffmpeg to be sure the videos I transcode will work on most browsers/OS ?
Here are mye experiences. Note first of all that all of this is about live streaming, not static files, so YMMV:

The flags I've found to me the most compatible by far, is using a recent ffmpeg, H264+AAC and then -movflags empty_moov+frag_keyframe+default_base_moof. This works in Chrome (broke recently in mobile Chrome, but works again if you enable the unified media path, which will soon be default), Firefox/Windows, and Firefox/Linux (assuming you have a fixed gstreamer; see the linked bug). VLC and MPlayer will also play them fine. iOS will not work with anything else than HLS.

It used to also work great in IE and Edge, but those regressed, so I've switched back to HLS for Edge.

Comment 51

2 years ago
Thanks for this quick and complete reply !

Oh, didn't think about iOS. Will have to check out that HLS protocol...

I tried with the movflags you said, still not working. I guess it's because of that gstreamer bug, will look for it later, anyway my aim is for videos to be viewable by anybody without any difficulty.. So I can't ask people using FF on Linux to patch their gstreamer ;)
If so, you don't have much alternative except WebM, I think (and that won't play everywhere either).
(Assignee)

Comment 53

2 years ago
(In reply to florian.messmer.1 from comment #49)
> Same problem here !
> Using Iceweasel 38.7.1
> 
> Here is the video : http://185.120.34.240/ZmxvcmlhbkBvcGVuY2FwLmZy-8826.mp4
> I transcoded it myself using ffmpeg, and an other video is working though I
> used the same ffmpeg params !

this is a yuv422p frame.
Neither the Apple VideoToolbox decoder nor Windows WMF will support those. I can't think of any hardware decoder that would be able to decode those.

  Duration: 00:00:30.32, start: 0.000000, bitrate: 178 kb/s
    Stream #0:0(eng): Video: h264 (High 4:2:2) (avc1 / 0x31637661), yuv422p, 480x720 [SAR 1:1 DAR 2:3], 175 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
    Metadata:
      handler_name    : VideoHandler

whatever parameters you used to encode those videos, they are bad. The only decoder that would play it back would be ffmpeg based player really (that includes Chrome)

Safari won't play them either (as they use Apple VT too)

> 
> Why this one isn't working ? What params should I use in ffmpeg to be sure
> the videos I transcode will work on most browsers/OS ?

Dont encode using profile high10, high422 or high444. Use baseline, main or high (-profile:blah)
(Assignee)

Comment 54

2 years ago
(In reply to Steinar H. Gunderson from comment #50)
> Here are mye experiences. Note first of all that all of this is about live
> streaming, not static files, so YMMV:

really, almost totally irrelevant to the problem at hand. You're talking about fragmented mp4 and mediasource/dash.

Progressive mp4 are just fine, and played by every browsers on almost every platforms (exception with windows XP but there are work around).

Only make sure to pass the flags to ffmpeg to ensure the moov box is located at the beginning of your file rather than the end (and the file that was linked to, as the moov at the end. So the player must seek to the end of the file, and then go back at the beginning. This is very ineficient, and worse: with http server not supporting range-request it means that you must download the entire file before you can start playback.
(Assignee)

Comment 55

2 years ago
(In reply to Steinar H. Gunderson from comment #52)
> If so, you don't have much alternative except WebM, I think (and that won't
> play everywhere either).

use mp4, with h264 with the right profile, aac or mp3 audio. 

And pass to ffmpeg the option: -movflags faststart

Comment 56

2 years ago
(In reply to Jean-Yves Avenard [:jya] from comment #53)
> (In reply to florian.messmer.1 from comment #49)
> > Same problem here !
> > Using Iceweasel 38.7.1
> > 
> > Here is the video : http://185.120.34.240/ZmxvcmlhbkBvcGVuY2FwLmZy-8826.mp4
> > I transcoded it myself using ffmpeg, and an other video is working though I
> > used the same ffmpeg params !
> 
> this is a yuv422p frame.
> Neither the Apple VideoToolbox decoder nor Windows WMF will support those. I
> can't think of any hardware decoder that would be able to decode those.
> 
>   Duration: 00:00:30.32, start: 0.000000, bitrate: 178 kb/s
>     Stream #0:0(eng): Video: h264 (High 4:2:2) (avc1 / 0x31637661), yuv422p,
> 480x720 [SAR 1:1 DAR 2:3], 175 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc
> (default)
>     Metadata:
>       handler_name    : VideoHandler
> 
> whatever parameters you used to encode those videos, they are bad. The only
> decoder that would play it back would be ffmpeg based player really (that
> includes Chrome)
> 
> Safari won't play them either (as they use Apple VT too)
> 
> > 
> > Why this one isn't working ? What params should I use in ffmpeg to be sure
> > the videos I transcode will work on most browsers/OS ?
> 
> Dont encode using profile high10, high422 or high444. Use baseline, main or
> high (-profile:blah)

Thanks ! But...
Wait, what ?
I don't use any weird param or those high profiles, here is my ffmpeg command :

/usr/bin/ffmpeg -y -i input.mov -vcodec libx264 -acodec libfdk_aac -preset slow -b:v 174.18469656992085k -b:a 96k -ac 1 -threads 0 -s 480x720 -movflags empty_moov+frag_keyframe+default_base_moof -aspect 0.6666666666666666 output.mp4

I don't understand !
(In reply to Jean-Yves Avenard [:jya] from comment #54)
> really, almost totally irrelevant to the problem at hand. You're talking
> about fragmented mp4 and mediasource/dash.

I'm talking about fragmented MP4 but not MSE/DASH.
(Assignee)

Comment 58

2 years ago
(In reply to Bonswouar from comment #56)
> Wait, what ?
> I don't use any weird param or those high profiles, here is my ffmpeg
> command :
> 
> /usr/bin/ffmpeg -y -i input.mov -vcodec libx264 -acodec libfdk_aac -preset
> slow -b:v 174.18469656992085k -b:a 96k -ac 1 -threads 0 -s 480x720 -movflags
> empty_moov+frag_keyframe+default_base_moof -aspect 0.6666666666666666
> output.mp4
> 
> I don't understand !

1- Don't use fragmented MP4. It's use is really only defined as an extension for MSE (part of ISOBMFF) and isn't widely supported.
2- use -movflags faststart and -profile:v high 

a quick search yield lots of results on the best param for encoding:
https://forums.plex.tv/discussion/92837/perfect-video-format-encoding

in any case this is irrelevant to this bug; please don't hijack an existing, closed bug and open a new bug if you're seeing a problem. 
I suggest you join the ffmpeg user mailing list, you will find lots of good advices there.

Comment 59

2 years ago
(In reply to Jean-Yves Avenard [:jya] from comment #58)
> (In reply to Bonswouar from comment #56)
> > Wait, what ?
> > I don't use any weird param or those high profiles, here is my ffmpeg
> > command :
> > 
> > /usr/bin/ffmpeg -y -i input.mov -vcodec libx264 -acodec libfdk_aac -preset
> > slow -b:v 174.18469656992085k -b:a 96k -ac 1 -threads 0 -s 480x720 -movflags
> > empty_moov+frag_keyframe+default_base_moof -aspect 0.6666666666666666
> > output.mp4
> > 
> > I don't understand !
> 
> 1- Don't use fragmented MP4. It's use is really only defined as an extension
> for MSE (part of ISOBMFF) and isn't widely supported.
> 2- use -movflags faststart and -profile:v high 
> 
> a quick search yield lots of results on the best param for encoding:
> https://forums.plex.tv/discussion/92837/perfect-video-format-encoding
> 
> in any case this is irrelevant to this bug; please don't hijack an existing,
> closed bug and open a new bug if you're seeing a problem. 
> I suggest you join the ffmpeg user mailing list, you will find lots of good
> advices there.

Ok, got it ! Sorry I didn't suspect my ffmpeg params to be wrong.
It's now working using the flags : -profile:v high -pix_fmt yuv420p -movflags faststart
You need to log in before you can comment on or make changes to this bug.