<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>311593</bug_id>
          
          <creation_ts>2026-04-06 14:09:39 -0700</creation_ts>
          <short_desc>WebRTC Media capabilities do not report power efficient AV1 decode</short_desc>
          <delta_ts>2026-05-19 00:37:49 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>Safari 26</version>
          <rep_platform>Mac (Apple Silicon)</rep_platform>
          <op_sys>macOS 26</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>jbedwell</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>eric.carlson</cc>
    
    <cc>jer.noble</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2197380</commentid>
    <comment_count>0</comment_count>
    <who name="">jbedwell</who>
    <bug_when>2026-04-06 14:09:39 -0700</bug_when>
    <thetext>Overview

On iOS and Mac the Safari media capabilities decoding info API (https://developer.mozilla.org/en-US/docs/Web/API/MediaCapabilities/decodingInfo) underreports AV1 capabilities. When queried for WebRTC it reports &quot;supported&quot; for AV1 on M3+ and A18+, but it returns false for &quot;smooth&quot; and &quot;powerEfficient&quot;. Generally the &quot;smooth&quot; and &quot;powerEfficient&quot; fields should be true when hardware decode is available, and it is.

This can be an issue for web applications that attempt to select a codec that the client has hardware decode support for. 

Steps to Reproduce

await navigator.mediaCapabilities.decodingInfo({type: &apos;webrtc&apos;, video: {contentType: &apos;video/AV1&apos;, width: 1920, height: 1080, bitrate: 10_000, framerate: 60}})

Actual Results

On M3+ and A18+ devices (which have hardware AV1 decode support) AV1 is reported as &quot;supported&quot; but not &quot;smooth&quot; or &quot;powerEfficient&quot;.

Queries for other types than &apos;webrtc&apos; (ex. &apos;media-source&apos;) seem to also underreport AV1 capabilities. 

Expected Results

On M3+ and A18+ devices AV1 should be reported as &quot;supported&quot; as well as &quot;smooth&quot; and &quot;powerEfficient&quot;.

Build Date &amp; Hardware

Tested on iPhone 15 Pro + iOS 26.4 and M4 MacBook Pro + MacOS 26.4.

Additional Builds and Platforms

On M4 MacBook Pro + MacOS 26.4, Chrome 146 reports AV1 decode as &quot;smooth&quot; and &quot;powerEfficient&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2199880</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2026-04-13 14:10:12 -0700</bug_when>
    <thetext>&lt;rdar://problem/174686183&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2206305</commentid>
    <comment_count>2</comment_count>
    <who name="">jbedwell</who>
    <bug_when>2026-04-30 10:30:37 -0700</bug_when>
    <thetext>Enabling the &quot;WebRTC AV1 codec&quot; feature flag does not fix this issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2211959</commentid>
    <comment_count>3</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2026-05-19 00:25:33 -0700</bug_when>
    <thetext>AV1 for regular playback (mse here) seems to work for me:
const configuration = {
    type: &apos;media-source&apos;,
    video: {
        contentType: &apos;video/mp4; codecs=&quot;av01.0.05M.08&quot;&apos;,
        width: 1080,
        height: 720,
        bitrate: 3000000,
        framerate: 30
    }
};</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2211960</commentid>
    <comment_count>4</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2026-05-19 00:25:46 -0700</bug_when>
    <thetext>https://github.com/WebKit/WebKit/pull/65110</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2211963</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2026-05-19 00:37:47 -0700</bug_when>
    <thetext>Committed 313468@main (6b68426e27af): &lt;https://commits.webkit.org/313468@main&gt;

Reviewed commits have been landed. Closing PR #65110 and removing active labels.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>