Jump to content

Shiki — protected video playback support on recent hardware


vit9696
211 posts in this topic

Recommended Posts

Any clue on Azul GPUs ?

Azul GPUs (e.g. HD 4400, HD 4600) when used with a connector-full platform-id without a discrete GPU cause a system freeze due to not working HDCP playback. The issue is unrelated to Shiki, and happens regardless of iTunes and QuickTime

Because on macOS 10.12, freezes happen much more often (with Safari for instance)

 

By the way can you explain this "a connector-full platform-id" ? I use a platform-id with 2 connectors, only one is plugged to my HDMI screen ...

Link to comment
Share on other sites

sebinouse, no, did not look at it, and will unlikely do that in the future.

"Connector-full" platform-id may be an inaccurate term but I used it to distinguish from the platform-id without any connectors (i.e. the one used with discrete gpus). So basically it means any platform-id that has connectors.

 

Actually, does anybody know whether Skylake GPUs are freezing or not?

  • Like 1
Link to comment
Share on other sites

Hi vit9696, I just discovered this kext and for the first time can see video in iTunes trailers and not just audio  :thumbsup_anim:

 

Can I ask if I should be able to view the trailers in HD as they seem to be shown in SD and after around 40 seconds they start to break up and pixelate, is this something to be expected?

 

EDIT: I RTFM and ran the following which seemed to cure the breaking up etc but they trailers still look to be in SD? Perhaps they always are, I have never seen them before  :hysterical:

 

 

  • How do I reset my DRM configuration (may be needed to fix the crashes)?
    Run the following commands in terminal:
    defaults delete com.apple.coremedia
    defaults delete com.apple.AppleGVA
    sudo rm -rf /Users/Shared/SC\ Info
    sudo defaults delete com.apple.coremedia
    sudo defaults delete com.apple.AppleGVA
    Afterwards make sure AppleGVA sigature is valid (the command should output nothing):
    codesign --no-strict --verify /System/Library/PrivateFrameworks/AppleGVA.framework
    If it is not, restore AppleGVA.framework from a newly installed system with the correct permissions.
    Reboot twice.

Link to comment
Share on other sites

Did you check the FAQ? Particularly the IMEI entry. I *think* this might be related.

If it still does not work I'd suggest you making sure that HDCP works in other programs, there certainly are some. If it does not it is very likely that you are out of luck just like HD 4400/4600 owner because their gpus are not natively supported in macOS.

Link to comment
Share on other sites

Uploaded 1.8.1:

  • Added fps.1_0 livestream playback to Safari via -shikifps boot argument
  • Added version print to the kernel log
  • Improved performance on 10.12, should be equal to 10.11 now
  • Enabled SSSE3 intrinsics to slightly improve the performance
  • Fixed a rare kernel panic on initialisation failure
  • Fixed a rare page fault during initialisation
  • Fixed page patcher failing to apply some modifications

Please note that the FAQ was seriously updated and now includes more details regarding Azul GPU freezes including a temporary workaround.

  • Like 3
Link to comment
Share on other sites

Did you check the FAQ? Particularly the IMEI entry. I *think* this might be related.

If it still does not work I'd suggest you making sure that HDCP works in other programs, there certainly are some. If it does not it is very likely that you are out of luck just like HD 4400/4600 owner because their gpus are not natively supported in macOS.

Yes, I did check that list and everything seems satisfied (IMEI etc).....

 

After I enable AppleGVA debug, when I play purchased movie in iTunes, console will output

GVA info: plugin is INTEL BDW, online.

The movie does play a few seconds with sound, and suddenly blacked and error message pops out saying HDCP problem......So it does play correctly for very short time........No problem for trailer in iTunes......

Link to comment
Share on other sites

Yes, I did check that list and everything seems satisfied (IMEI etc).....

 

After I enable AppleGVA debug, when I play purchased movie in iTunes, console will output

GVA info: plugin is INTEL BDW, online.

The movie does play a few seconds with sound, and suddenly blacked and error message pops out saying HDCP problem......So it does play correctly for very short time........No problem for trailer in iTunes......

This sounds like HDCP seems to fail to initialise on Broadwell. You have your screen connected with HDMI and your display supports HDCP, right? If that's the case the issue might be incompatible Intel drivers. Since HD 4000 or Nvidia work fine and HD 4400, HD 4600, HD 5500 are not officially supported by macOS I find it possible.

Try experimenting maybe you could find something.

 

Disabling HDCP entirely to enable movie playback regardless of the driver support can be done in theory but I haven't looked at it. And it is going to be problematic, especially with the amounts of time I posses at the moment. Perhaps some other dev could look at it.

 

How do i patch framebuffer for PAVP/HDCP disable?

 

Check the FAQ.

Link to comment
Share on other sites

This sounds like HDCP seems to fail to initialise on Broadwell. You have your screen connected with HDMI and your display supports HDCP, right? If that's the case the issue might be incompatible Intel drivers. Since HD 4000 or Nvidia work fine and HD 4400, HD 4600, HD 5500 are not officially supported by macOS I find it possible.

Try experimenting maybe you could find something.

 

Disabling HDCP entirely to enable movie playback regardless of the driver support can be done in theory but I haven't looked at it. And it is going to be problematic, especially with the amounts of time I posses at the moment. Perhaps some other dev could look at it.

 

Check the FAQ.

I tried both internal display only and with HDMI connected, both will have HDCP error. The above console message is generated with internal display only. Thanks for the info, I will continue searching for possible solutions if any......

Link to comment
Share on other sites

  • 2 weeks later...

Hi vit9696

I check this configuration list on my computer

  • Shiki-based solution for non-freezing Intel and/or any discrete GPU:

    • IGPU device is enabled, and present with a connector-less AAPL,ig-platform-id prop (e.g. <04 00 12 04>, <07 00 62 01>), use connector-full framebuffers in solo mode;
      -IGPU enabled,HD4600 with AAPL,ig-platform-id set to 0x04, 0x00, 0x12, 0x04
    • Discrete GPU is properly configured with IOVARendererID present in IOReg;
      -GTX960 confirmed, IOVARendererID present in nvAccelerator, <08 00 04 01>
    • VDADecoderChecker confirms Intel Offline (Online) VDA decoder working;
      GVA info: Successfully connected to the Intel plugin, offline Gen75
      Hardware acceleration is fully supported
    • IMEI device is present in IOReg;
      -yes
    • No override preferences are used;
      -yes
    • Mac model set to the one supporting hardware acceleration.
      -set to iMac14,2 

and Mac OS version is 10.11.6, Shiki version is 1.8.1

I can replay those SD DRM videos, but no luck with HD videos,

Screen is just black and  stop to play.

 

What's wrong in my configuration?

Thanks.

Link to comment
Share on other sites

ganxiao, you likely have to reset drm configuration as explained in FAQ. Also make sure you use DVI or HDMI and a screen with HDCP support.

 

@vit9696

Thanks very much, this do resolve my problem, HD video can be played after reauthorized this computer.

Maybe authorize database has broken.

Link to comment
Share on other sites

From what I know it differs depending on device capabilities. If a user continuously uses Shiki right from the os installation, like I did, he won't ever need to reset the db. But if he boots without it, a reset will be necessary otherwise at the visual least artifacts will appear.

Link to comment
Share on other sites

  • 2 weeks later...

Seems like shiki isn´t compatible with Apple latest Beta (macOS 10.12.1 beta 4). If I try to playback an already purchased movie all i´ll get is a Black Screen with kick in Sound sooner or later. After a While I´ll been thrown back to the login Window....

 

 

Link to comment
Share on other sites

Hit Vit,

thank you for your reply.

I tried to reset DRM and hat do authorize my computer with iTunes afterwards. I also checked whether my Hardware Decoding is working or not by running VdaDecoderChecker and everything looks normal so far.

GVA error: Not detecting IGPU in IORegistry!
GVA error: Not detecting valid offline codec!
GVA info: Successfully connected to the Intel plugin, offline Gen6 
Hardware acceleration is fully supported
logout

Videoplayback worked until Apple pushed out 10.12.1 Beta 4 yesterday I mean it worked with Beta 3 and instantly stopped working after the update was installed. When I start video playback in iTunes I get a Black screen and the whole System becomes unresponsive for about 30 seconds after that Sound playback start for a few seconds but still no video and no movement in players progress bar. a few seconds after sound playback started the complete GUI crashes to the login window.

Link to comment
Share on other sites

griven, how is that output normal? I assume it is from your second system.

It clearly tells you that you have no IGPU in ioreg, and furthermore it connects to Gen6 GVA, which means no GVA actually, i.e. Sandy.

On Ivy the output must be like this according to my memories:

GVA info: Successfully connected to the Intel plugin, online Gen7 
Hardware acceleration is fully supported
logout
Gen7 and online (that much I do not remember well, but it should be online, because offline is for cases when Intel GPU works in background with a discrete GPU).

 

Even if Apple changed something, your configuration is not following the FAQ guidelines. Fix this up, and recheck.

If it still fails, then probably best is to wait until 10.12.1 arrives, so that I could see if it breaks for me.

Link to comment
Share on other sites

Hi Vit,

 

nope it was the first System in my Signature and it´s working again :D

Prior to 10.12.1 Beta 4 the only thing I had to do besides loadings shiki of course was to set forceATI true but in the 4th Beta it´s not enough anymore. Besides setting ForceATI I also hat to edit /System/Library/PrivateFrameworks/AppleGVA.framework/Resources/Info.plist and set the force OfflineDecoder Setting to false which I never needed before. Anyway it works now as before thank you :D

Link to comment
Share on other sites

Why would one need forceATI. Its decoders do not work most of the time.

But I guess you are somewhat right if you have iMac15.1 model set with the Xeon CPU. forceATI could let you bypass the check.

I think in these cases you are expected to use MacPro though. But I do not know the details much.

Link to comment
Share on other sites

Using the Info.plist edit I don´t need to forceATI anymore works without it as well.

The only thing which does not work is to watch AppleMusicFestivals Shows through Apple Music but this never worked before so I think it´s not an Issue related to Beta4.

Link to comment
Share on other sites

×
×
  • Create New...