Question Redmi Note 11 Does Not Support Hardware 10bit HEVC Decoding?

Search This thread

magman2

Member
Jun 21, 2022
18
3
I just got a Redmi Note 11. When trying to play a 10bit 265 (HEVC) encoded video the playback was choppy and not smooth. MX Player claims "HW decoding is unsupported" for that format. Trying to force it through the settings did not help. Other video players such as VLC did not fare any better. I found this really strange as my old Redmi Note 4 from 2017 played these videos without a problem.

Digging into it a looked up the Snapdragon 680 that powers the device, and according to what I found the CPU has support for 10bit h265 (source: https://www.cpu-monkey.com/en/cpu-qualcomm_snapdragon_680_4g). So what is going on here? Am I doing something wrong or did Xiaomi somehow cheap out on the phone? I am really disappointed by my purchase at the moment as 10bit video is something I use a lot, so any ideas for solving this will be much appreciated.

(Note: I posted a similar question over here: https://xdaforums.com/t/sticky-mx-p...hevc-discussion.2725241/page-42#post-87053885 but since I got no answer I thought I'd try to get help here, and if not at least warn people of buying the phone as the lack of support is not listed anywhere. If my double post is against the rules I apologize)
 

Oifan

Member
Dec 2, 2018
28
13
I just got a Redmi Note 11. When trying to play a 10bit 265 (HEVC) encoded video the playback was choppy and not smooth. MX Player claims "HW decoding is unsupported" for that format. Trying to force it through the settings did not help. Other video players such as VLC did not fare any better. I found this really strange as my old Redmi Note 4 from 2017 played these videos without a problem.

Digging into it a looked up the Snapdragon 680 that powers the device, and according to what I found the CPU has support for 10bit h265 (source: https://www.cpu-monkey.com/en/cpu-qualcomm_snapdragon_680_4g). So what is going on here? Am I doing something wrong or did Xiaomi somehow cheap out on the phone? I am really disappointed by my purchase at the moment as 10bit video is something I use a lot, so any ideas for solving this will be much appreciated.

(Note: I posted a similar question over here: https://xdaforums.com/t/sticky-mx-p...hevc-discussion.2725241/page-42#post-87053885 but since I got no answer I thought I'd try to get help here, and if not at least warn people of buying the phone as the lack of support is not listed anywhere. If my double post is against the rules I apologize)
Try using mpv for Android (also built for Windows & Linux) -- it also supports multiple audio and subtitle tracks:
 

magman2

Member
Jun 21, 2022
18
3
Try using mpv for Android (also built for Windows & Linux) -- it also supports multiple audio and subtitle tracks:
Thanks for the reply. I just tried the app you suggested, and it too won't let me set it to hardware decoding. Pressing the SW button does nothing. So it seems no app is able to use hardware acceleration on 10bit 265 videos. Whether that is due to some driver issues (?) or a physical lack of support in the CPU is still unclear.
Am I the only one with this issue?
 

Oifan

Member
Dec 2, 2018
28
13
Thanks for the reply. I just tried the app you suggested, and it too won't let me set it to hardware decoding. Pressing the SW button does nothing. So it seems no app is able to use hardware acceleration on 10bit 265 videos. Whether that is due to some driver issues (?) or a physical lack of support in the CPU is still unclear.
Am I the only one with this issue?
I think this is a problem of your Android OS -- I have just tested the x265 – Tears Of Steel 1080P @ 400kbps sample HEVC video (top left here: https://x265.com/hevc-video-files/) in mpv player (on my Xiaomi spesn) -- and I could toggle the [HW] button without problems.
I am running Android 12L - SuperiorOS, download links here:
 

magman2

Member
Jun 21, 2022
18
3
I think this is a problem of your Android OS -- I have just tested the x265 – Tears Of Steel 1080P @ 400kbps sample HEVC video (top left here: https://x265.com/hevc-video-files/) in mpv player (on my Xiaomi spesn) -- and I could toggle the [HW] button without problems.
I am running Android 12L - SuperiorOS, download links here:
That file my phone can play as well, but that file is an 8 bit file. It's the 10 bit encodes that the phone won't play with hardware acceleration. Can you try this file and say if you have hardware acceleration? I tested this file on my old Redmi Note 4 and it played back smoothly. My new Note 11 can't handle it:

Also, for the record, I am using the stock MIUI 13.
 

Oifan

Member
Dec 2, 2018
28
13
That file my phone can play as well, but that file is an 8 bit file. It's the 10 bit encodes that the phone won't play with hardware acceleration. Can you try this file and say if you have hardware acceleration? I tested this file on my old Redmi Note 4 and it played back smoothly. My new Note 11 can't handle it:

Also, for the record, I am using the stock MIUI 13.
You are right about the bpp -- my sample MP4 has bitdepth=8 in the header, while your sample MKV has bitdepth=10 in the header.

I have just tried your sample on my SuperiorOS (build 20220613-0631), and:
  • mpv starts in SW-render mode and cannot switch to HW-render mode,
  • X-plore will just show black screen with message: Internal codec error
I guess that means that:
  • either the underlying hardware does not have the required decoder,
  • or the driver for that hardware does not support this video format.
 

magman2

Member
Jun 21, 2022
18
3
You are right about the bpp -- my sample MP4 has bitdepth=8 in the header, while your sample MKV has bitdepth=10 in the header.

I have just tried your sample on my SuperiorOS (build 20220613-0631), and:
  • mpv starts in SW-render mode and cannot switch to HW-render mode,
  • X-plore will just show black screen with message: Internal codec error
I guess that means that:
  • either the underlying hardware does not have the required decoder,
  • or the driver for that hardware does not support this video format.
Thank you again for taking time to test and respond.

I find the lack of hardware support (if that is indeed the issue) to be very surprising. The 680 is a 2022 chip. not supporting a popular encoding format these days just seems so unlikely and strange. It's also not something I thought I have to check before I buy a phone, and even if i would look it up I would find that it does support it.

If it is a driver issue, than who is responsible? Qualcomm or Xiaomi? And is there any way of fixing it? (i.e. some sort of custom driver or official update)
 

Oifan

Member
Dec 2, 2018
28
13
Thank you again for taking time to test and respond.

I find the lack of hardware support (if that is indeed the issue) to be very surprising. The 680 is a 2022 chip. not supporting a popular encoding format these days just seems so unlikely and strange. It's also not something I thought I have to check before I buy a phone, and even if i would look it up I would find that it does support it.

If it is a driver issue, than who is responsible? Qualcomm or Xiaomi? And is there any way of fixing it? (i.e. some sort of custom driver or official update)
I strongly believe it's just an issue of the Adreno 610 driver (so it will be fixed in a couple of days / weeks) -- check these 3 relevant info-pages:
Regarding who will fix it -- I believe it should be Google with the help of Xiaomi / Qualcomm.
 

magman2

Member
Jun 21, 2022
18
3
I strongly believe it's just an issue of the Adreno 610 driver (so it will be fixed in a couple of days / weeks) -- check these 3 relevant info-pages:
Regarding who will fix it -- I believe it should be Google with the help of Xiaomi / Qualcomm.
I really hope you are right, although I am assuming this issue was present since the phone launched and it still has not been fixed after a few months. At least I now have hope that it can be fixed.
 

lovinamn

New member
Jun 24, 2022
2
0
There are other phones that equipped with Snapdragon 680 4G, I wonder if they can play HEVC 10bit videos with hardware acceleration. Hope it can be fixed too.
 

magman2

Member
Jun 21, 2022
18
3
There are other phones that equipped with Snapdragon 680 4G, I wonder if they can play HEVC 10bit videos with hardware acceleration. Hope it can be fixed too.
Going by the list here: https://www.notebookcheck.net/Qualc...-Processor-Benchmarks-and-Specs.611368.0.html there seems to be several phones using that chip, and I could not find a mention of anyone with an issue online. That does not mean that there is no issue, after all I couldn't find any mention of the problem on the Redmi Note 11 until I posted it here, and that phone has been out for several months already. If, as the poster above suggested, the video decoder is part of the GPU and not the CPU, then the list of devices with an Adreno 610 is even larger (https://www.notebookcheck.net/Qualcomm-Adreno-610-GPU-Benchmarks-and-Specs.434054.0.html), and I can't find any mention of an issue with those devices either.
Basically what I am trying to say is that the problem seems to be a Note 11 problem, but for some reason nobody posted anything anywhere until now. So we need people with any of the similar devices to report if by them hardware decoding is present. Meanwhile I contacted Xiaomi and so far they told me to use a third party video player if the built in app does not play my desired format. I'll report back if/when they start being more helpful.
 

N0b0dyy

Member
Jun 12, 2022
7
1
That file my phone can play as well, but that file is an 8 bit file. It's the 10 bit encodes that the phone won't play with hardware acceleration. Can you try this file and say if you have hardware acceleration? I tested this file on my old Redmi Note 4 and it played back smoothly. My new Note 11 can't handle it:

Also, for the record, I am using the stock MIUI 13.
Hello. I downloaded and played the video on my Note 11 in VLC. I didn't have any problems playing it.

1656147016661.png
 

N0b0dyy

Member
Jun 12, 2022
7
1
Yes it plays totally smoothly in VLC. I have tried MX player and there it stutters sometimes. And I tried selecting HW decoding and it showed that its not supported.

I am currently not on MIUI but on a custom rom.
 

magman2

Member
Jun 21, 2022
18
3
Yes it plays totally smoothly in VLC. I have tried MX player and there it stutters sometimes. And I tried selecting HW decoding and it showed that its not supported.

I am currently not on MIUI but on a custom rom.
Interesting. In other files I tried - all of which had a lower bitrate than the jellyfish file - VLC was able to hit mostly smooth playback, while MX Player still stuttered a bit.
So my conclusion: VLC has better software decoding than MX Player. Meanwhile, whatever rom you are using is more performant than MIUI, which allows the video players to squeeze more out of the CPU in software decoding compared to my phone which is running MIUI. Still, even by you, the underlying problem remains: hardware decoding is unavailable, which is unacceptable.


As a side note, update on my attempts to get some sort of acknowledgement from Xiaomi about the issue: I sent several emails to their support address. Somewhat surprisingly they responded to all of them, but in none of their responses did they admit there is a problem. They mostly deflected and gave me uncommitted generic answers (i.e. "try a third party video player" or "the Xiaomi devices supports MPEG4, H.264/AVC, H.263/3GP and RMVB and other video formats. With the development of technology, the usage of some uncommon video formats has declined, and most mobile phones on the market support common formats such as MP4"). I also reported the issue on the built-in feedback option. Not too hopeful about that either, but at least that one should reach an actual developer.

Anyway, if anyone has an idea of something else to try, or some sort of fix for the problem I'd be happy to hear.
 

Oifan

Member
Dec 2, 2018
28
13
Interesting. In other files I tried - all of which had a lower bitrate than the jellyfish file - VLC was able to hit mostly smooth playback, while MX Player still stuttered a bit.
So my conclusion: VLC has better software decoding than MX Player. Meanwhile, whatever rom you are using is more performant than MIUI, which allows the video players to squeeze more out of the CPU in software decoding compared to my phone which is running MIUI. Still, even by you, the underlying problem remains: hardware decoding is unavailable, which is unacceptable.


As a side note, update on my attempts to get some sort of acknowledgement from Xiaomi about the issue: I sent several emails to their support address. Somewhat surprisingly they responded to all of them, but in none of their responses did they admit there is a problem. They mostly deflected and gave me uncommitted generic answers (i.e. "try a third party video player" or "the Xiaomi devices supports MPEG4, H.264/AVC, H.263/3GP and RMVB and other video formats. With the development of technology, the usage of some uncommon video formats has declined, and most mobile phones on the market support common formats such as MP4"). I also reported the issue on the built-in feedback option. Not too hopeful about that either, but at least that one should reach an actual developer.

Anyway, if anyone has an idea of something else to try, or some sort of fix for the problem I'd be happy to hear.
I would recommend you to try to play several 10-bit videos + several 8-bit videos in mpv player (https://apkpure.com/mpv-android/is.xyz.mpv) and make screenshots of the bottom control panel when playing them -- see my screenshots below.
Then you can explain that for the 10-bit videos it's impossible to toggle the HW/SW rendering button and claim that you believe it's because of the present Adreno 610 driver is only supporting h265/HEVC(8-bit) and not 10-bit video streams (although the GPU supports it --> https://www.cpu-monkey.com/en/igpu-qualcomm_adreno_610-231).
 

Attachments

  • mpv_HEVC-x265-10bit.jpg
    mpv_HEVC-x265-10bit.jpg
    42.9 KB · Views: 106
  • mpv_HEVC-x265-8bit.jpg
    mpv_HEVC-x265-8bit.jpg
    34.6 KB · Views: 107

magman2

Member
Jun 21, 2022
18
3
I would recommend you to try to play several 10-bit videos + several 8-bit videos in mpv player (https://apkpure.com/mpv-android/is.xyz.mpv) and make screenshots of the bottom control panel when playing them -- see my screenshots below.
Then you can explain that for the 10-bit videos it's impossible to toggle the HW/SW rendering button and claim that you believe it's because of the present Adreno 610 driver is only supporting h265/HEVC(8-bit) and not 10-bit video streams (although the GPU supports it --> https://www.cpu-monkey.com/en/igpu-qualcomm_adreno_610-231).
Thanks for the suggestion. I actually attempted something similar. I sent them a screen recording of the issue, including the stuttering video and the error message it shows every time I try to set it to HW. Unfortunately, they refuse to acknowledge the issue at all, and keep giving me those vague answers. I also sent the video as part of my report in the feedback app, but I have no way of knowing if anyone will look at it.

Meanwhile, I decided to try a slightly different tactic. Using a new email address I sent their support an email saying I want to buy a Note 11, but I was wondering if it has hardware decoding for 10 bit hevc. Their response: "we regret to inform you that as of now we don't have any official information regarding this. Generally speaking, Redmi series phones will support common video decoding methods in the market, but lesser used decoding methods are not included for the time being." It seems they just will not commit to any answer no matter how you ask it. You'd think a company would know what their product can do.
 

Oifan

Member
Dec 2, 2018
28
13
Thanks for the suggestion. I actually attempted something similar. I sent them a screen recording of the issue, including the stuttering video and the error message it shows every time I try to set it to HW. Unfortunately, they refuse to acknowledge the issue at all, and keep giving me those vague answers. I also sent the video as part of my report in the feedback app, but I have no way of knowing if anyone will look at it.

Meanwhile, I decided to try a slightly different tactic. Using a new email address I sent their support an email saying I want to buy a Note 11, but I was wondering if it has hardware decoding for 10 bit hevc. Their response: "we regret to inform you that as of now we don't have any official information regarding this. Generally speaking, Redmi series phones will support common video decoding methods in the market, but lesser used decoding methods are not included for the time being." It seems they just will not commit to any answer no matter how you ask it. You'd think a company would know what their product can do.
Wow, you are quite resourceful I must say -- nice move... 👍
To me it looks like the development team (in Xiaomi / Google) is either behind schedule or can't keep up with the latest video formats -- so they are just bouncing emails like yours with a standard "not included for the time being" response.
Hopefully there will be more displeased (potential) customers complaining about this, creating sufficient pressure on these corporations so that they will be sufficiently motivated to add the missing codec support to the current graphics driver -- I guess this issue isn't only with Adreno 610, but with some other GPUs as well.
However, adding features to a graphics driver on any OS is a tricky thing -- they need to test the new driver thoroughly so that these additions won't cause any crashes... Meaning it will take some weeks or even months from the moment they decide to add this feature.
 
  • Like
Reactions: mi-saan

tsdq512

Member
Jan 11, 2013
33
3
Official Firmware of RN11 had this problem for me, I installed Custom ROMS and Problem was solved for most part. Movies from PSArips run smoothly on Mi Video especially. Some 10 bit videos higher bitrate struggle sometime when trying to fast forward.
 

magman2

Member
Jun 21, 2022
18
3
Official Firmware of RN11 had this problem for me, I installed Custom ROMS and Problem was solved for most part. Movies from PSArips run smoothly on Mi Video especially. Some 10 bit videos higher bitrate struggle sometime when trying to fast forward.
That does not really sound like you solved the problem. Instead you are mostly brute forcing your way through with software decoding. Struggling when trying to fast forward is not something I find acceptable in a modern phone, especially one that has the hardware to play it properly, and in no place did the manufacturer communicate the issues on the RN11. Meaning there is no reason to assume the phone will not support it. I tested hardware decoding on the Redmi Note 4, 8, 9 and 10 and they all play it with no problem.
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 2
    Yes it plays totally smoothly in VLC. I have tried MX player and there it stutters sometimes. And I tried selecting HW decoding and it showed that its not supported.

    I am currently not on MIUI but on a custom rom.
    Interesting. In other files I tried - all of which had a lower bitrate than the jellyfish file - VLC was able to hit mostly smooth playback, while MX Player still stuttered a bit.
    So my conclusion: VLC has better software decoding than MX Player. Meanwhile, whatever rom you are using is more performant than MIUI, which allows the video players to squeeze more out of the CPU in software decoding compared to my phone which is running MIUI. Still, even by you, the underlying problem remains: hardware decoding is unavailable, which is unacceptable.


    As a side note, update on my attempts to get some sort of acknowledgement from Xiaomi about the issue: I sent several emails to their support address. Somewhat surprisingly they responded to all of them, but in none of their responses did they admit there is a problem. They mostly deflected and gave me uncommitted generic answers (i.e. "try a third party video player" or "the Xiaomi devices supports MPEG4, H.264/AVC, H.263/3GP and RMVB and other video formats. With the development of technology, the usage of some uncommon video formats has declined, and most mobile phones on the market support common formats such as MP4"). I also reported the issue on the built-in feedback option. Not too hopeful about that either, but at least that one should reach an actual developer.

    Anyway, if anyone has an idea of something else to try, or some sort of fix for the problem I'd be happy to hear.
    2
    I think SD680 might not have support for decoding H.265 10-bit in hardware. Usually in case of Qualcomm SoCs 4k video recording pretty much implies H.265 10-bit support. SD680 is limited to just 1080p and only 30fps at that. It seems to be a rebrand of SD662/665 which unlike SD660 didn't support H.265 10-bit decode. The ISP hasn't been upgraded at all so probably the video encode/decode block hasn't been as well. After all the CPU cores date back to 2017.
    Best way to determine hardware decode support is to try a higher bitrate file, like 40Mbps or higher. My old Redmi Note 3 (only H.265 8-bit support in HW) could play upto 3-4Mbps files in SW mode with active cooling. My father's Redmi Note 10 Pro has no issue in playing 4k H.265 10-bit 120Mbps videos in HW.
    Although GSM Arena review mentions recording in H.265 to be available as an option. Maybe it's 8-bit only?

    Seconding this, basically this summarizes what I posted in the main discussion about 10-bit h265 decoding https://xdaforums.com/t/sticky-mx-player-10-bit-video-and-hevc-discussion.2725241/post-87398347
    The 680 is a cut down chipset in this regard, as it lacks 4K video recording, it isn't surprising it lacks 10-bit h265 HW decoding support. The h265 HW support is definitely 8-bit.

    Just a note, the 665 did support 4K and 10-bit h265 decoding. That's the chipset on the Redmi Note 8, which I had for a while and I could play everything smoothly as butter.
    1
    Thanks for the suggestion. I actually attempted something similar. I sent them a screen recording of the issue, including the stuttering video and the error message it shows every time I try to set it to HW. Unfortunately, they refuse to acknowledge the issue at all, and keep giving me those vague answers. I also sent the video as part of my report in the feedback app, but I have no way of knowing if anyone will look at it.

    Meanwhile, I decided to try a slightly different tactic. Using a new email address I sent their support an email saying I want to buy a Note 11, but I was wondering if it has hardware decoding for 10 bit hevc. Their response: "we regret to inform you that as of now we don't have any official information regarding this. Generally speaking, Redmi series phones will support common video decoding methods in the market, but lesser used decoding methods are not included for the time being." It seems they just will not commit to any answer no matter how you ask it. You'd think a company would know what their product can do.
    Wow, you are quite resourceful I must say -- nice move... 👍
    To me it looks like the development team (in Xiaomi / Google) is either behind schedule or can't keep up with the latest video formats -- so they are just bouncing emails like yours with a standard "not included for the time being" response.
    Hopefully there will be more displeased (potential) customers complaining about this, creating sufficient pressure on these corporations so that they will be sufficiently motivated to add the missing codec support to the current graphics driver -- I guess this issue isn't only with Adreno 610, but with some other GPUs as well.
    However, adding features to a graphics driver on any OS is a tricky thing -- they need to test the new driver thoroughly so that these additions won't cause any crashes... Meaning it will take some weeks or even months from the moment they decide to add this feature.
    1
    My phone is still showing there is no update so I can't test it yet, but that sounds promising. Can you test it on MX Player or mpv and see if hardware acceleration works now?
    No HW only SW.
    1
    I think SD680 might not have support for decoding H.265 10-bit in hardware. Usually in case of Qualcomm SoCs 4k video recording pretty much implies H.265 10-bit support. SD680 is limited to just 1080p and only 30fps at that. It seems to be a rebrand of SD662/665 which unlike SD660 didn't support H.265 10-bit decode. The ISP hasn't been upgraded at all so probably the video encode/decode block hasn't been as well. After all the CPU cores date back to 2017.
    Best way to determine hardware decode support is to try a higher bitrate file, like 40Mbps or higher. My old Redmi Note 3 (only H.265 8-bit support in HW) could play upto 3-4Mbps files in SW mode with active cooling. My father's Redmi Note 10 Pro has no issue in playing 4k H.265 10-bit 120Mbps videos in HW.
    Although GSM Arena review mentions recording in H.265 to be available as an option. Maybe it's 8-bit only?