Open Bug 1982907 Opened 8 days ago Updated 7 days ago

wpt reftest /css/css-sizing/aspect-ratio/replaced-element-003.html fails on new android 14 emulator

Categories

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

defect

Tracking

()

People

(Reporter: jmaher, Unassigned, NeedInfo)

References

(Blocks 2 open bugs)

Details

Attachments

(3 files)

on this try push:
https://treeherder.mozilla.org/jobs?repo=try&tier=1%2C2%2C3&revision=fdea14904f15d8fe3a01e1277a1ad60054bf5e8e&test_paths=css%2Fcss-sizing%2Faspect-ratio

the test:

  • /css/css-sizing/aspect-ratio/replaced-element-003.html

generates a black square inside a green square, but the reference image doesn't have the black square.

See Also: → 1982937

The black square here is a <video> element which is solid green -- here's the video (note that its dimensions are extremely small, 2px-by-2px -- it's scaled up in the test): https://wpt.live/css/css-sizing/aspect-ratio/support/2x2-green.webm

If it's rendering black, that implies that we're failing to play the video for some reason. --> Reclassifying to Audio/Video: Playback.

Component: Layout → Audio/Video: Playback
Attached file testcase 1

Here's what-might-be a reduced testcase -- just a <video> element pointing at a bugzilla-hosted copy of the 2x2 green webm video file.

Presumably this renders with a black square instead of a green square on an affected Android 14 environment...

(In reply to Daniel Holbert [:dholbert] from comment #3)

Presumably this renders with a black square instead of a green square on an affected Android 14 environment...

Huh -- not exactly what I was expecting, but perhaps the same bug -- this testcase renders as a fully blank page for me in Nightly on my own Pixel phones (with Android 16). In Chrome on the same device -- and Firefox/Chrome on Desktop -- this renders with a green square.

DevTools shows this error when I load the testcase in Nightly on Android:

Media resource https://bug1982907.bmoattachments.org/attachment.cgi?id=9507186 could not be decoded. attachment.cgi
Media resource https://bug1982907.bmoattachments.org/attachment.cgi?id=9507186 could not be decoded, error: Error Code: NS_ERROR_DOM_MEDIA_FATAL_ERR (0x806e0005)
Details: OnError

Not a recent regression; I can repro the issue in Nightly 2022-01-01 (v97) on the same Pixel 6a device.

Reproduces in gve (GeckoView Example App), too -- the testcase is blank.

Loading it in debug gve and checking logcat, I noticed this diagnostic output which might be useful:

08-14 11:59:24.510 10168 10178 E GeckoRemoteCodec: codec creation error
08-14 11:59:24.510 10168 10178 E GeckoRemoteCodec: java.lang.IllegalArgumentException: Fatal error: failed to initialize ResourceManager (err=-1)
08-14 11:59:24.510 10168 10178 E GeckoRemoteCodec: 
08-14 11:59:24.510 10168 10178 E GeckoRemoteCodec: 	at android.media.MediaCodec.native_configure(Native Method)
08-14 11:59:24.510 10168 10178 E GeckoRemoteCodec: 	at android.media.MediaCodec.configure(MediaCodec.java:2562)
08-14 11:59:24.510 10168 10178 E GeckoRemoteCodec: 	at android.media.MediaCodec.configure(MediaCodec.java:2422)
08-14 11:59:24.510 10168 10178 E GeckoRemoteCodec: 	at org.mozilla.gecko.media.LollipopAsyncCodec.configure(LollipopAsyncCodec.java:164)
08-14 11:59:24.510 10168 10178 E GeckoRemoteCodec: 	at org.mozilla.gecko.media.Codec.configureCodec(Codec.java:535)
08-14 11:59:24.510 10168 10178 E GeckoRemoteCodec: 	at org.mozilla.gecko.media.Codec.configure(Codec.java:423)
08-14 11:59:24.510 10168 10178 E GeckoRemoteCodec: 	at org.mozilla.gecko.media.ICodec$Stub.onTransact(ICodec.java:130)
08-14 11:59:24.510 10168 10178 E GeckoRemoteCodec: 	at android.os.Binder.execTransactInternal(Binder.java:1421)
08-14 11:59:24.510 10168 10178 E GeckoRemoteCodec: 	at android.os.Binder.execTransact(Binder.java:1365)
08-14 11:59:24.510 10168 10178 W GeckoRemoteCodec: unable to configure c2.exynos.vp9.decoder. Try next.

and:

08-14 11:59:24.543  1266 10223 E C2SoftVpxDec: img->fmt 262 not supported
08-14 11:59:24.545 10168 10222 D CCodecBufferChannel: [c2.android.vp9.decoder#399] work failed to complete: 14
08-14 11:59:24.545 10168 10221 E MediaCodec: Codec reported err 0xe/14 (Unknown error -14), actionCode 0, while in state 6/STARTED
08-14 11:59:24.546 10168 10221 D SurfaceUtils: disconnecting from surface 0xe07870f8, reason disconnectFromSurface
08-14 11:59:24.547 10168 10168 W System.err: android.media.MediaCodec$CodecException: Error 0xe
08-14 11:59:24.547 10168 10168 W System.err: java.lang.Exception: codec error:0
08-14 11:59:24.548 10168 10168 W System.err: 	at org.mozilla.gecko.media.Codec$Callbacks.onError(Codec.java:49)
08-14 11:59:24.548 10168 10168 W System.err: 	at org.mozilla.gecko.media.LollipopAsyncCodec$CodecCallback$Forwarder.handleMessage(LollipopAsyncCodec.java:59)
08-14 11:59:24.548 10168 10168 W System.err: 	at org.mozilla.gecko.media.LollipopAsyncCodec$CodecCallback$Forwarder.notify(LollipopAsyncCodec.java:72)
08-14 11:59:24.548 10168 10168 W System.err: 	at org.mozilla.gecko.media.LollipopAsyncCodec$CodecCallback$Forwarder.onError(LollipopAsyncCodec.java:90)
08-14 11:59:24.548 10168 10168 W System.err: 	at org.mozilla.gecko.media.LollipopAsyncCodec$CodecCallback$Forwarder.-$$Nest$monError(Unknown Source:0)
08-14 11:59:24.548 10168 10168 W System.err: 	at org.mozilla.gecko.media.LollipopAsyncCodec$CodecCallback.onError(LollipopAsyncCodec.java:133)
08-14 11:59:24.548 10168 10168 W System.err: 	at android.media.MediaCodec$EventHandler.handleCallback(MediaCodec.java:2016)
08-14 11:59:24.548 10168 10168 W System.err: 	at android.media.MediaCodec$EventHandler.handleMessage(MediaCodec.java:1874)
08-14 11:59:24.548 10168 10168 W System.err: 	at android.os.Handler.dispatchMessage(Handler.java:110)
08-14 11:59:24.548 10168 10168 W System.err: 	at android.os.Looper.loopOnce(Looper.java:248)
08-14 11:59:24.548 10168 10168 W System.err: 	at android.os.Looper.loop(Looper.java:338)
08-14 11:59:24.548 10168 10168 W System.err: 	at android.app.ActivityThread.main(ActivityThread.java:9067)
08-14 11:59:24.548 10168 10168 W System.err: 	at java.lang.reflect.Method.invoke(Native Method)
08-14 11:59:24.548 10168 10168 W System.err: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:593)
08-14 11:59:24.549 10168 10168 W System.err: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:932)
08-14 11:59:24.549  9594 10164 I Gecko   : [Child 9594, MediaSupervisor #1] WARNING: NS_ERROR_DOM_MEDIA_FATAL_ERR (0x806e0005) - OnError: file /builds/worker/checkouts/gecko/dom/media/MediaFormatReader.cpp:1867
08-14 11:59:24.550  9594 10163 I Gecko   : [Child 9594, MediaDecoderStateMachine #1] WARNING: Decoder=cfd9c6d0 Decode error: NS_ERROR_DOM_MEDIA_FATAL_ERR (0x806e0005) - OnError: file /builds/worker/checkouts/gecko/dom/media/MediaDecoderStateMachineBase.cpp:168
08-14 11:59:24.550  9594  9637 W Web Content: [JavaScript Warning: "Media resource https://bug1982907.bmoattachments.org/attachment.cgi?id=9507186 could not be decoded." {file: "https://bug1982907.bmoattachments.org/attachment.cgi?id=9507187" line: 0}]

Looks like this LollipopAsyncCodec.java file was added (a long time ago)by jolin in bug 1361679 -- jolin, maybe you could take a look here, or suggest someone who could? Looks like this extremely small webm file is failing to get properly handled there.

Flags: needinfo?(jolin)

Here's a bit more logcat output from when I loaded the testcase on my Pixel 6a.

Aha, elsewhere in the context in the logcat (if I stop filtering for "codec" to look a bit more around) I see this:

08-14 11:59:24.503   952  1039 E VdecCommonParamIntf: [SizeSetter] width(2) is invalid
08-14 11:59:24.503   952  1039 E VdecCommonParamIntf: [SizeSetter] height(2) is invalid

No idea what VdecCommonParamIntf is, but apparently it's treating the 2x2 video size here as being invalid.

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

Attachment

General

Created:
Updated:
Size: