New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 888962 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Oct 29
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug-Regression



Sign in to add a comment

Regression: Video preview icon is seen missing in Files app

Project Member Reported by rkalavakuntla@chromium.org, Sep 25

Issue description

Chrome Version: 71.0.3558.0/ 11097.0.0 dev channel Peppy,Candy,Celes
OS: Chrome OS

What steps will reproduce the problem?
Sample URL : http://www.sample-videos.com/

What steps will reproduce the problem?
(1)Sign in to user ->Now go to above URL -> download any video file 
(2)Now go to Files App -> Observe Video preview icons is seen missing(Please refer video and Screenshot)

Expected: Video preview icon should be seen 
Actual: Instead video preview icon is seen missing 

This is Regression Issue as same is working fine in 70.0.3555.0 dev


 
Actual.jpg
4.2 MB View Download
Expected.jpg
5.6 MB View Download
Actual.mp4
11.3 MB View Download
Expected.mp4
9.7 MB View Download
Summary: Regression: Video preview icon is seen missing in Files app (was: Regression: Instead video preview icon is seen missing in Files app)
Labels: CrOSFilesCategory-UI
No repro on 71.0.3558.0 (Official Build) dev (64-bit) eve.
Same, no reproduction eve 71.0.3558.0
rkalavakuntla@ Official release chrome-os devices should be able to play an MP4 video.  Can you confirm that your device can play MP4 video?

C#5 >Yes,able to play MP4 videos on the priority chrome-os devices.
Repro'd on eve 71.0.3558.0.

The image loader had this error:

Video thumbnail error:  Error: Seeking video failed.
    at Promise.race.Promise.then (background_scripts.js:2815)
(anonymous) @ background_scripts.js:2770
Promise.catch (async)
ImageRequest.downloadOriginal_ @ background_scripts.js:2769
ImageRequest.downloadAndProcess @ background_scripts.js:2631
(anonymous) @ background_scripts.js:3245
(anonymous) @ background_scripts.js:1408
dataRequest.onsuccess @ background_scripts.js:1433
IndexedDB (async)
ImageCache.loadImage @ background_scripts.js:1386
ImageRequest.loadFromCache_ @ background_scripts.js:2665
ImageRequest.loadFromCacheAndProcess @ background_scripts.js:2614
Scheduler.continue_ @ background_scripts.js:3242
Scheduler.add @ background_scripts.js:3178
ImageLoader.onMessage_ @ background_scripts.js:1879
ImageLoader.onIncomingRequest_ @ background_scripts.js:1854
Status: Available (was: Untriaged)
Cc: sa...@chromium.org
Components: Blink>Media
And the culprit seems to be data saver causing preload = 'auto' to be ignored: https://cs.chromium.org/chromium/src/third_party/blink/renderer/core/html/media/html_media_element.cc?l=2353&rcl=dc14201567f60c97163c61df182601df636d2a03 if the right experiment is enabled. I guess no one remembered filesystem URLs exist.

For extra fun, it looks like it forces preload = 'auto' to preload = 'metadata' when on cellular, even for blob, data and file URLs.
Cc: hbengali@chromium.org joelhockey@chromium.org chcunningham@chromium.org amistry@chromium.org
This issue is marked RBB, beta is coming soon. CC'ing a few people to help find an owner. Thanks
Cc: tbansal@chromium.org mlamouri@chromium.org
+tbansal@, +mlamouri@, 

The most recent change to that code looks to be this by tbansal@
https://chromium-review.googlesource.com/c/chromium/src/+/1046145

But that would have shipped in M68?
https://chromiumdash.appspot.com/commit/333819e9e8ebff5f4d62842accbcbe97e43f160e

I agree we shouldn't override 'auto' for blob/data/file URLS, so thats good to fix either way.

Separately, I don't think this feature should rely on preload='auto' - auto is up to the UA and the UA decided not to :). If you need the first frame reliably it makes sense to explicitly load() the media. 

I don't the file browser code at all, not sure where to implement that last suggestion.
Can this be repro'ed in M-70 or earlier? Data saver has ignored auto preload for a long time. Also, does the repro works if data saver is disabled by the user?
 This issue is marked RBB, beta is coming soon. Can you please provide a status update? Thanks
I verified that this behavior is observed when the user has installed the data saver extension. However, it's not a recent change. I was able to repro it on M-69 stable, and it has probably been there since a long time (likely M-53: See  Issue 607551 ). 

The CL referenced in c#11 is for an experiment that changes this behavior. i.e., when the experiment is enabled, it decouples the media stack preload logic from data saver state.
Cc: kaznacheev@chromium.org
Labels: -ReleaseBlock-Beta
> I was able to repro it on M-69 stable, and it has probably been there since a long time ...

Removing RBB

> I agree we shouldn't override 'auto' for blob/data/file URLS, so thats good to fix either way.

tbansal@ can implement this change?

Also adding kaznacheev@ - looking for someone more familiar with the ChromeOS UI code. As mentioned above, relying on preload auto is a bit fragile. 
Labels: -M-71 M-72
Let's move this to M72 given we are past branch for M71.
Owner: tbansal@chromium.org
> I agree we shouldn't override 'auto' for blob/data/file URLS, so thats good to fix either way.

Assigning to tbansal@. 
I don't think I can help here, this is not really my area. 
Owner: robertogden@chromium.org
Status: Assigned (was: Available)
Project Member

Comment 20 by bugdroid1@chromium.org, Oct 26

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/145b9f4d95dc1afc73835c8877b24d0a8c631d9d

commit 145b9f4d95dc1afc73835c8877b24d0a8c631d9d
Author: Sam McNally <sammc@chromium.org>
Date: Fri Oct 26 07:02:05 2018

Explicitly call load() on video elements when generating thumbnails.

The image loader used by the Files App relies on setting the preload
attribute on a video element to trigger it loading some content to use
as a thumbnail. In some circumstances (e.g. data saver), preload is
ignored for video elements.

Invoke load() on the video element explicitly to ensure it loads the
video.

Bug:  888962 
Change-Id: I2114bbb36feac3eafbb90cae2babd67d93247a25
Reviewed-on: https://chromium-review.googlesource.com/c/1301053
Reviewed-by: Luciano Pacheco <lucmult@chromium.org>
Commit-Queue: Sam McNally <sammc@chromium.org>
Cr-Commit-Position: refs/heads/master@{#603012}
[modify] https://crrev.com/145b9f4d95dc1afc73835c8877b24d0a8c631d9d/ui/file_manager/image_loader/request.js

Owner: sa...@chromium.org
Is this fixed now?
Status: Fixed (was: Assigned)

Sign in to add a comment