Closed Bug 1821326 Opened 2 years ago Closed 2 years ago

VA-API: Intel: VP8 decoding not working

Categories

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

Firefox 112
defect

Tracking

()

RESOLVED DUPLICATE of bug 1820416

People

(Reporter: pmenzel+bugzilla.mozilla.org, Unassigned)

Details

Attachments

(1 file)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/112.0

Steps to reproduce:

On Debian sid/unstable with Nightly 20230309093044, watch VP8 video 1.

Actual results:

The video engine of the graphics unit is not used according to intel_gpu_top.

$ MOZ_LOG="PlatformDecoderModule:1 Dmabuf:1" nightly
[…]
libva info: VA-API version 1.17.0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_17
libva info: va_openDriver() returns 0
ATTENTION: default value of option mesa_glthread overridden by environment.
ATTENTION: default value of option mesa_glthread overridden by environment.
Unsupported modifier, resource creation failed.
Unsupported modifier, resource creation failed.
[AVHWDeviceContext @ 0x7fb8fc18f1c0] VAAPI driver: Intel iHD driver for Intel(R) Gen Graphics - 23.1.2 ().
[AVHWDeviceContext @ 0x7fb8fc18f1c0] Driver not found in known nonstandard list, using standard behaviour.
[h264 @ 0x7fb925067000] nal_unit_type: 7(SPS), nal_ref_idc: 3
[h264 @ 0x7fb925067000] nal_unit_type: 8(PPS), nal_ref_idc: 3
[h264 @ 0x7fb925063800] Slice 0 data buffer (9100 bytes) is 0.
[h264 @ 0x7fb925063800] Decode to surface 0x16.
[RDD 112308: MediaPDecoder #1]: D/PlatformDecoderModule FFMPEG:   VA-API FFmpeg init successful
[RDD 112308: MediaPDecoder #3]: D/PlatformDecoderModule FFMPEG: Frame decode finished, time 1.41 ms averange decode time 1.41 ms decoded 1 frames
[RDD 112308: MediaPDecoder #3]: D/PlatformDecoderModule FFMPEG: VA-API Got one frame output with pts=0 dts=0 duration=40000 opaque=-9223372036854775808
Unsupported modifier, resource creation failed.
Unsupported modifier, resource creation failed.
[Child 112552: MediaPDecoder #4]: V/PlatformDecoderModule AudioTrimmer[7f1c7a460ec0] ::PrepareTrimmers: sample[23219,46439] no trimming information

Log level MOZ_LOG="PlatformDecoderModule:1:

$ [Child 112837: Main Thread]: D/PlatformDecoderModule PDMInitializer, Init PDMs in Content process
[Child 112837: MediaSupervisor #1]: D/PlatformDecoderModule Sandbox RDD decoder supports requested type video/vp8
[Child 112837: MediaSupervisor #1]: D/PlatformDecoderModule Sandbox RDD decoder supports requested type video/vp8
[Child 112837: MediaSupervisor #1]: D/PlatformDecoderModule Sandbox RDD decoder supports requested type video/vp8
[Child 112837: MediaSupervisor #1]: D/PlatformDecoderModule Sandbox RDD decoder supports requested type video/vp8
[RDD 112308: MediaSupervisor #4]: D/PlatformDecoderModule FFmpeg decoder supports requested type 'video/vp8'
[RDD 112308: MediaSupervisor #4]: D/PlatformDecoderModule FFmpeg decoder supports requested type 'video/vp8'
[RDD 112308: MediaSupervisor #4]: D/PlatformDecoderModule FFVPX: FFmpegVideoDecoder::FFmpegVideoDecoder MIME video/vp8 Codec ID 139
[RDD 112308: MediaPDecoder #1]: D/PlatformDecoderModule FFVPX: Initialising VA-API FFmpeg decoder
[RDD 112308: MediaPDecoder #1]: D/PlatformDecoderModule FFVPX:   Format vp8 is accelerated
[RDD 112308: MediaPDecoder #1]: D/PlatformDecoderModule FFVPX:   codec vp8 : On2 VP8
libva info: VA-API version 1.17.0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_17
libva info: va_openDriver() returns 0
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x41524742 -> bgra.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x42475241 -> argb.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x41424752 -> rgba.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x52474241 -> abgr.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x58524742 -> bgr0.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x42475258 -> 0rgb.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x58424752 -> rgb0.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x52474258 -> 0bgr.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x36314752 -> unknown.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x3231564e -> nv12.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x3132564e -> unknown.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x32595559 -> yuyv422.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x59565955 -> uyvy422.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x32315659 -> yuv420p.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x30323449 -> yuv420p.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x48323234 -> yuv422p.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x56323234 -> yuv440p.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x50343434 -> yuv444p.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Format 0x33434d49 -> unknown.
[AVHWDeviceContext @ 0x7fb8fc18f3c0] VAAPI driver: Intel iHD driver for Intel(R) Gen Graphics - 23.1.2 ().
[AVHWDeviceContext @ 0x7fb8fc18f3c0] Driver not found in known nonstandard list, using standard behaviour.
[RDD 112308: MediaPDecoder #1]: D/PlatformDecoderModule FFVPX:   VA-API FFmpeg init successful
[RDD 112308: MediaPDecoder #1]: V/PlatformDecoderModule ProcessDecode: mDuration=33000µs ; mTime=0µs ; mTimecode=0µs
[RDD 112308: MediaPDecoder #1]: D/PlatformDecoderModule FFVPX: Choosing FFmpeg pixel format for VA-API video decoding.
[RDD 112308: MediaPDecoder #1]: D/PlatformDecoderModule FFVPX: Requesting pixel format VAAPI_VLD
[vp8 @ 0x7fb925068000] Format vaapi chosen by get_format().
[vp8 @ 0x7fb925068000] Format vaapi requires hwaccel initialisation.
[vp8 @ 0x7fb925068000] A hardware frames or device context is required for hardware accelerated decoding.
[vp8 @ 0x7fb925068000] Failed setup for format vaapi: hwaccel initialisation returned error.
[vp8 @ 0x7fb925068000] Format vaapi not usable, retrying get_format() without it.
[RDD 112308: MediaPDecoder #1]: D/PlatformDecoderModule FFVPX: Choosing FFmpeg pixel format for VA-API video decoding.
[RDD 112308: MediaPDecoder #1]: D/PlatformDecoderModule FFVPX: avcodec_send_packet error: Invalid argument
[RDD 112308: MediaPDecoder #2]: D/PlatformDecoderModule FFVPX: ProcessFlush()
[Child 112837: MediaSupervisor #1]: D/PlatformDecoderModule Sandbox RDD decoder supports requested type video/vp8
[Child 112837: MediaSupervisor #1]: D/PlatformDecoderModule Sandbox RDD decoder supports requested type video/vp8
[RDD 112308: MediaSupervisor #4]: D/PlatformDecoderModule FFmpeg decoder supports requested type 'video/vp8'
[RDD 112308: MediaSupervisor #4]: D/PlatformDecoderModule FFmpeg decoder supports requested type 'video/vp8'
[RDD 112308: MediaSupervisor #4]: D/PlatformDecoderModule FFVPX: FFmpegVideoDecoder::FFmpegVideoDecoder MIME video/vp8 Codec ID 139
[RDD 112308: MediaSupervisor #4]: D/PlatformDecoderModule FFVPX: VAAPI is disabled by parent decoder module.
[RDD 112308: MediaPDecoder #1]: D/PlatformDecoderModule FFVPX: Initialising FFmpeg decoder
[RDD 112308: MediaPDecoder #1]: D/PlatformDecoderModule FFVPX:   codec vp8 : On2 VP8
[RDD 112308: MediaPDecoder #1]: D/PlatformDecoderModule FFVPX: Set get_buffer2 for customized buffer allocation
[RDD 112308: MediaPDecoder #1]: D/PlatformDecoderModule FFVPX:   FFmpeg decoder init successful.
[RDD 112308: MediaPDecoder #1]: V/PlatformDecoderModule ProcessDecode: mDuration=33000µs ; mTime=0µs ; mTimecode=0µs
[RDD 112308: Unnamed thread 7fb8fc1c6dc0]: D/PlatformDecoderModule FFVPX: Choosing FFmpeg pixel format for video decoding.
[RDD 112308: Unnamed thread 7fb8fc1c6dc0]: D/PlatformDecoderModule FFVPX: Requesting pixel format YUV420P.
[vp8 @ 0x7fb925068000] Format yuv420p chosen by get_format().
[RDD 112308: Unnamed thread 7fb8fc1c6dc0]: V/PlatformDecoderModule GetVideoBuffer: aCodecContext=7fb925068000 aFrame=7fb90a52c400
[RDD 112308: Unnamed thread 7fb8fc1c6dc0]: V/PlatformDecoderModule Created plane data, YSize=(1280, 736), CbCrSize=(640, 384), CroppedYSize=(1280, 720), CroppedCbCrSize=(640, 360), ColorDepth=0
[RDD 112308: Unnamed thread 7fb8fc1c6dc0]: D/PlatformDecoderModule FFVPX: Created av buffer, buf=7fb917d7a080, data=7fb8f989e000, image=7fb8fc074fc0, sz=1382400

The line below is in the output:

[RDD 112308: MediaSupervisor #4]: D/PlatformDecoderModule FFVPX: VAAPI is disabled by parent decoder module.

Expected results:

The video engine should be used, as it’s done with H264 and playing the same VP8 file with mpv on commend line.

Attached file Output of `about:support` (deleted) —

VP8 decoding still works with firefox 110.0.1-1.

The Bugbug bot thinks this bug should belong to the 'Core::Audio/Video: Playback' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → Audio/Video: Playback
Product: Firefox → Core

If this issue is on Nightly, it will be fixed in bug 1820416.

Status: UNCONFIRMED → RESOLVED
Closed: 2 years ago
Duplicate of bug: 1820416
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: