Closed Bug 1645672 Opened 1 year ago Closed 11 months ago

[Linux/EGL] Hardware decoding into dmabuf results in errors

Categories

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

x86_64
Linux
defect

Tracking

()

RESOLVED DUPLICATE of bug 1656436
Tracking Status
firefox-esr68 --- unaffected
firefox-esr78 --- unaffected
firefox77 --- unaffected
firefox78 --- unaffected
firefox79 --- disabled
firefox80 --- disabled
firefox81 --- fixed

People

(Reporter: kubrick, Assigned: stransky)

References

(Blocks 2 open bugs, Regression)

Details

(Keywords: regression)

Attachments

(3 files)

Trying to play YT videos with then new widget.wayland-dmabuf-video-textures.enabled pref set to true (default), results to stuttering, green frames and eventually errors.

[vp9 @ 0x7fa6aabda000] get_buffer() failed
[vp9 @ 0x7fa6aabda000] thread_get_buffer() failed

Config:
widget.wayland-dmabuf-vaapi.enabled=true
widget.wayland-dmabuf-video-textures.enabled=true
media.ffvpx.enabled

Regressed by: 1629788

Duplicate of bug 1645671 and bug 1645673

Status: UNCONFIRMED → RESOLVED
Closed: 1 year ago
Resolution: --- → DUPLICATE
Duplicate of bug: 1645673

Can you try to check if Bug 1629788 makes any difference here (i.e. test some former nightly)?
Thanks.

Status: RESOLVED → REOPENED
Ever confirmed: true
Flags: needinfo?(kubrick)
Resolution: DUPLICATE → ---
Summary: [Wayland] [DMABUF] Sforware decoding into dmabuf results in errors → [Wayland] [DMABUF] Software decoding into dmabuf results in errors

@stransky, I'm not sure what revision you want me to test but I had no issue with commit 1ed52478a3599f41ff05d2fc57eb5586aae622e5 (I don't use nightly because of bug 1430775, so I patch and build my own version, sigh)

Set release status flags based on info from the regressing bug 1629788

Severity: -- → S3
Priority: -- → P5

VAAPI depends on dmabuf-video-textures - which is not finished yet (bug 1629788 comment 27). Without this patch you had to enable both prefs to use VAAPI. (Brief regressions are expected to happen on Nightly. Other patches still await review.)

This should be a dupe of Bug 1645671.

Status: REOPENED → RESOLVED
Closed: 1 year ago11 months ago
Resolution: --- → DUPLICATE
Duplicate of bug: 1645671

I have tried D85152, which fixes Bug #1645671, but apart from the green frames, the other errors reported here are still not fixed:
Playing VP9 videos on youtube results in poor plaback quality, youtube swithing to lower quality, and eventually displaying an error message "An error occurred. Please try again later"

Status: RESOLVED → REOPENED
Resolution: DUPLICATE → ---

(In reply to Francois Guerraz from comment #9)

I have tried D85152, which fixes Bug #1645671, but apart from the green frames, the other errors reported here are still not fixed:
Playing VP9 videos on youtube results in poor plaback quality, youtube swithing to lower quality, and eventually displaying an error message "An error occurred. Please try again later"

Please attach MOZ_LOG="PlatformDecoderModule:5" log from your build where Bug 1645671 is fixed.
Thanks.

Flags: needinfo?(kubrick)

I could retest bug 1643855 comment 9 if you could you trigger a try build of bug 1645671. Otherwise I'll wait for autoland.

See Also: → 1643855
Attached file Error even with D85152

D85152, fresh profile, with:
media.ffmpeg.vaapi-drm-display.enabled=true
media.ffmpeg.vaapi.enabled=true
media.ffvpx.enabled=false
security.sandbox.content.level=0

https://www.youtube.com/watch?v=LXb3EKWsInQ

Flags: needinfo?(kubrick)
Attached file vaapi_h264_1080p.txt

Indeed, bug 1645671 comment 23 fixed green frames, but YouTube decoding errors persist with (U)HD VP9 and HD H264.

MOZ_LOG="PlatformDecoderModule:5" MOZ_ENABLE_WAYLAND=1 mozregression --repo autoland --launch bacacb384008 --pref media.ffvpx.enabled:false media.ffmpeg.vaapi.enabled:true -a https://addons.mozilla.org/en-US/firefox/addon/enhanced-h264ify/ -a https://addons.mozilla.org/en-US/firefox/addon/ublock-origin/ -a https://www.youtube.com/watch?v=Yds5jgqmYpE -P stdout

1:15.02 INFO: b'[h264 @ 0x7fc56bdc5800] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2'
1:15.02 INFO: b'[h264 @ 0x7fc56bdc5800] get_buffer() failed'
1:15.02 INFO: b'[h264 @ 0x7fc56bdc5800] thread_get_buffer() failed'
1:15.02 INFO: b'[h264 @ 0x7fc56bdc5800] decode_slice_header error'
1:15.02 INFO: b'[h264 @ 0x7fc56bdc5800] no frame!'

OS: Unspecified → Linux
Hardware: Unspecified → x86_64
See Also: → 1656436
See Also: 1656436
Duplicate of this bug: 1656436

It's the same error I saw in bug 1643855 comment 9.

0:28.57 INFO: b'[h264 @ 0x7fdd5e5cc000] get_buffer() failed'
0:28.57 INFO: b'[h264 @ 0x7fdd5e5cc000] thread_get_buffer() failed'
0:28.57 INFO: b'[h264 @ 0x7fdd5e5cc000] decode_slice_header error'

Summary: [Wayland] [DMABUF] Software decoding into dmabuf results in errors → [Linux/EGL] Software and hardware decoding into dmabuf results in errors
Assignee: nobody → stransky

From a short test, software decoding with media.ffmpeg.dmabuf-textures.enabled seems to work fine. So much thanks as always!

comment 0 and comment 12 anyway have VAAPI enabled:
(Francois Guerraz from comment #0)

Config:
widget.wayland-dmabuf-vaapi.enabled=true
widget.wayland-dmabuf-video-textures.enabled=true
media.ffvpx.enabled

Summary: [Linux/EGL] Software and hardware decoding into dmabuf results in errors → [Linux/EGL] Hardware decoding into dmabuf results in errors

Please re-test when Bug 1656436 lands.
Thanks.

Flags: needinfo?(kubrick)
Status: REOPENED → ASSIGNED

Now this is working incredibly well!
Thank you ♥

Status: ASSIGNED → RESOLVED
Closed: 11 months ago11 months ago
Flags: needinfo?(kubrick)
Resolution: --- → DUPLICATE
Duplicate of bug: 1656436
You need to log in before you can comment on or make changes to this bug.