Closed Bug 987894 Opened 10 years ago Closed 8 years ago

(Linux) «Video can't be played because the file is corrupt» on some valid video files

Categories

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

38 Branch
All
Linux
defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: aria, Assigned: jya, Mentored)

References

Details

Attachments

(4 files)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:28.0) Gecko/20100101 Firefox/28.0 (Beta/Release)
Build ID: 20140319034003

Steps to reproduce:

I can only reproduce the problem when trying to plays this file on GNU/Linux:
http://www.metroid2002.com/fusion/speed_tricks_main_deck.mp4

The problem exists since Gstreamer is used to plays video files and is still here.


Actual results:

Firefox says «Video can't be played because the file is corrupt», when it is online and offline (downloaded and opened with file:// URL). In Chromium, only music plays (with a dark background).

But the file plays perfectly fine in VLC, Totem and Dragon Player (the two latter use Gstreamer so the problem seems not to be in Gstreamer directly). And other mp4 videos plays perfectly fine.


Expected results:

Firefox should have played the video.
I can reproduce this issue with latest Nightly on Ubuntu 13.10 x86.
Component: Untriaged → Video/Audio
Product: Firefox → Core
Hardware: x86_64 → All
Status: UNCONFIRMED → NEW
Ever confirmed: true
I get the exact same behavior with mp3 files. Will that be covered by this ticket or should I create another.

There seems to be no obvious workaround...

Fedora 20, Firefox 29
The problem is still present with Firefox 30 on Arch Linux.
I can confirm this bug for FF 30 Android. Nearly no video is played any more (I think since the last update), e.g.:
- the video link above
- http://people.mozilla.org/~atrain/mobile/tests/media.html
  only the first video is playing, not the 5 other media types.
- http://people.mozilla.com/~kbrosnan/tmp/829454/829454.mp4

links taken from Bug 829454
Same problem with <https://www.apple.com/media/us/macbook-air/2014/tv-spots/macbookair-stickers-cc-us-20140716_r848-9dwc.mov>, so the issue is not only related to mp4 files.
Summary: «Video can't be played because the file is corrupt» on a valid mp4 file → «Video can't be played because the file is corrupt» on some valid video files
Mentor: ajones
See Also: → 1046549
(In reply to fish4FF from comment #4)
> I can confirm this bug for FF 30 Android. Nearly no video is played any more
> (I think since the last update), e.g.:
> - the video link above
> - http://people.mozilla.org/~atrain/mobile/tests/media.html
>   only the first video is playing, not the 5 other media types.
> - http://people.mozilla.com/~kbrosnan/tmp/829454/829454.mp4
> 
> links taken from Bug 829454

All those mp4 files play with Bug 1046549 applied
The file <http://www.metroid2002.com/fusion/speed_tricks_main_deck.mp4> still can’t be played in Firefox .
Version: 31 Branch → 33 Branch
It seems that since Firefox 38, the video is played as a sound file. Same behavior on Chromium, so it might be a problem with the underlying library/ies.
Version: 33 Branch → 38 Branch
Assignee: nobody → jyavenard
OpenSuse 13.1 KDE 4.11.5
Any movement on this?
I just ran into this on Firefox 38.0.1 when trying to play a local-from-disk mp4 video. It plays fine using ffplay, kaffeine and mplayer but not in firefox. I tried disabling all plugins and restarting firefox but it didnt make any difference. I have a dozen other mp4's that play fine in firefox but not this particular one.
Does the sample above plays for you?
Can you provide a sample of your file not playing?
VP9/WEBM (1st video clip) works
all other video shows "No video with supported format and MIME type found."

MP3 (1st audio) works
MP4/AAC (2nd audio) doesn't start


Web Console:

Blocked loading mixed active content "http://fonts.googleapis.com/css?family=Droid+Sans"[Learn More] media.html
Use of getPreventDefault() is deprecated.  Use defaultPrevented instead. videoblock.xml:93:0
HTTP "Content-Type" of "video/mp4" is not supported. Load of media resource https://people.mozilla.org/~atrain/mobile/tests/wat.mp4 failed. media.html
All candidate resources failed to load. Media load paused. media.html
HTTP "Content-Type" of "video/mp4" is not supported. Load of media resource https://people.mozilla.org/~atrain/mobile/tests/test.mp4 failed. media.html
All candidate resources failed to load. Media load paused. media.html
HTTP "Content-Type" of "video/mp4" is not supported. Load of media resource https://people.mozilla.org/~atrain/mobile/tests/big-buck-high.mp4 failed. media.html
All candidate resources failed to load. Media load paused. media.html
HTTP "Content-Type" of "video/mp4" is not supported. Load of media resource https://people.mozilla.org/~atrain/mobile/tests/test2.mp4 failed. media.html
All candidate resources failed to load. Media load paused. media.html
HTTP "Content-Type" of "video/mp4" is not supported. Load of media resource https://people.mozilla.org/~atrain/mobile/tests/big-buck-baseline.mp4 failed. media.html
All candidate resources failed to load. Media load paused.
(In reply to Jean-Yves Avenard [:jya] from comment #12)
> Does the sample above plays for you?
> Can you provide a sample of your file not playing?

The file I have is too large to upload, can you use the first X number of bytes? If that would help I can do that, let me know how much to extract and I will attach it here, or if you have a transfer place i can put the whole file there for you. The above file, speed_tricks_main_deck.mp4 plays but audio only, no video
Attached image Not working in Linux
Not working in Linux
Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:40.0) Gecko/20100101 Firefox/40.0
GNU/Linux (Arch Linux): original video and every video at <https://people.mozilla.org/~atrain/mobile/tests/media.html> works with Firefox 40.0.3.

Android (Cyanogenmod 12.1/Android 5.1.1): only the last video still doesn’t work with Firefox 40.0.
(In reply to Konstantin Svist from comment #16)
> Created attachment 8654324 [details]
> Not working in Linux
> 
> Not working in Linux
> Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:40.0) Gecko/20100101 Firefox/40.0

you must have gstreamer installed with a plugin enabled supporting aac or h264.
(In reply to Jean-Yves Avenard [:jya] from comment #18)
> (In reply to Konstantin Svist from comment #16)
> > Created attachment 8654324 [details]
> > Not working in Linux
> > 
> > Not working in Linux
> > Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:40.0) Gecko/20100101 Firefox/40.0
> 
> you must have gstreamer installed with a plugin enabled supporting aac or
> h264.

# yum install gstreamer*-plugins*
...
Package gstreamer1-plugins-good-1.4.5-2.fc21.x86_64 already installed and latest version
Package gstreamer-plugins-good-0.10.31-13.fc21.x86_64 already installed and latest version
Package gstreamer1-plugins-ugly-1.4.5-1.fc21.x86_64 already installed and latest version
Package gstreamer-plugins-ugly-0.10.19-18.fc21.x86_64 already installed and latest version
Package gstreamer1-plugins-bad-freeworld-1.4.5-2.fc21.x86_64 already installed and latest version
Package gstreamer-plugins-bad-free-0.10.23-24.fc21.x86_64 already installed and latest version
...
Nothing to do

Think I installed pretty much all of them now (and even some i686 for skype) -- so far, no difference
If you know what I'm missing, let me know!
Component: Audio/Video → Audio/Video: Playback
Summary: «Video can't be played because the file is corrupt» on some valid video files → (Linux) «Video can't be played because the file is corrupt» on some valid video files
Update: can now play everything on test page & can watch youtube above 360p

The change was enabling some Firefox config options listed here: https://superuser.com/questions/903676/only-360p-on-youtube-with-html5#tab-top

All these were set to False by default:

media.mediasource.enabled
media.mediasource.webm.enabled
media.fragmented-mp4.exposed
media.fragmented-mp4.ffmpeg.enabled


The only one I didn't enable was media.mediasource.youtubeonly -- just because it doesn't exist by default...


Please explain why they are not turned on by default. Is there a security issue? Licensing issue? Etc.?
Media source and webm is now enabled by default in 43. 

Ffmpeg will be enabled in 44 if available which would allow to use MP4 with media source (what YouTube uses)
On my Debian Testing FF 42.0 does NOT play 

* all videos except the first one here https://people.mozilla.org/~atrain/mobile/tests/media.html
* https://people.mozilla.org/~kbrosnan/tmp/829454/829454.mp4
* youtube mp4 videos

Strangely, Iceweasel 38.2.1 is able to play all these files. about:config is identical for my Iceweasel and FF42.0 (same settings as Comment 21). 

Can I provide any further information to nail the source of this bug down?
Can you try with 43 beta?
All videos play with FF 43.0b2. Thanks.
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → WORKSFORME
I still have this problem.

The following yuv422p VP9 file gives the error "video can't be played because the file is corrupt": https://thuejk.dk/output_10Mbs_quality_good.webm

It works after I transcoded it to yuv420p, after a suggestion from #ffmpeg on IRC: https://thuejk.dk/output_10Mbs_quality_good_yuv420p_3.webm
FWIW, 1st one doesn't give me an error, but the colors are in the wrong locations
I am using Firefox 45 on an updated Arch Linux. What Firefox version and OS are you using?
45 on Fedora 23
See Comment 21 maybe it'll help
The first two of those were already enabled in my installation. The last two (media.fragmented-mp4.exposed and media.fragmented-mp4.ffmpeg.enabled) did not exist, but should be irrelevant anyway for my VP9 webm file, since webm uses the Matroska and not the MP4 container. So I don't think Comment 21 is relevant.
Attached video 20100818_001.mp4
As of Firefox 49 running on Fedora 24 x86_64, the file I attached just now (https://bugzilla.mozilla.org/attachment.cgi?id=8799190) still says it is corrupted.

$ rpm -qa | grep gstreamer
gstreamer-plugins-bad-0.10.23-7.fc24.x86_64
gstreamer-ffmpeg-0.10.13-15.fc24.x86_64
gstreamer-0.10.36-14.fc24.x86_64
gstreamer-plugins-good-0.10.31-16.fc24.x86_64
gstreamer1-plugins-bad-nonfree-1.8.2-1.fc24.x86_64
gstreamer1-plugins-good-1.8.3-1.fc24.x86_64
gstreamer-tools-0.10.36-14.fc24.x86_64
gstreamer-plugins-base-0.10.36-14.fc24.x86_64
gstreamer-python-0.10.22-10.fc24.x86_64
gstreamer1-1.8.3-1.fc24.x86_64
gstreamer1-plugins-ugly-1.8.2-1.fc24.x86_64
gstreamer-plugins-bad-nonfree-0.10.23-3.fc24.x86_64
libnice-gstreamer1-0.1.13-4.fc24.x86_64
gstreamer1-libav-1.8.2-1.fc24.x86_64
PackageKit-gstreamer-plugin-1.1.3-2.fc24.x86_64
gstreamer1-plugins-bad-free-1.8.3-1.fc24.x86_64
gstreamer-plugins-bad-free-0.10.23-32.fc24.x86_64
gstreamer-plugins-ugly-0.10.19-19.fc24.x86_64
gstreamer1-plugins-base-1.8.3-1.fc24.x86_64
phonon-backend-gstreamer-4.9.0-1.fc24.x86_64

If you need any more information, please let me know!
Same on Firefox 49.0.1 x86_64 on Arch Linux, with gst-libav, gst-plugins-bad, gst-plugins-base, gst-plugins-good and gst-plugins-ugly 1.8.3. File plays perfectly fine in VLC.
Please, if you believe you've found an issue, open a new bug. No need to hijack an old bug.

gstreamer is no longer used. As such, whatever gstreamer package you have installed won't help playing this file.

Your video has a mpeg4 part 2 (aka divx) video track that we do not support. Only H264, Theora, VP8 and VP9 video codecs are supported.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: