dosdude1 / macos-catalina-patcher

macOS Catalina Patcher (http://dosdude1.com/catalina)
GNU General Public License v3.0
425 stars 60 forks source link

Airplay not working #25

Open mdacunha90 opened 4 years ago

mdacunha90 commented 4 years ago

Hello, I'm on a MacBookPro8,1 and after installing macos catalina patcher the first time airplay worked for a few days and then stopped working.

trineu commented 4 years ago

Same problem for me. The icon in the top bar is gone, although the button is still transparent, but it doesn't find any AirPlay devices.

karlic commented 4 years ago

I have the same problem on MacBookPro8,1. Airplay was working before installing Catalina with Catalina Patcher.

I installed once and had the same problem as @trineu. I installed a second time and now the icon is completely missing (not just transparent).

@dosdude1 Does this help?

 % sudo /System/Library/CoreServices/AirPlayUIAgent.app/Contents/MacOS/AirPlayUIAgent
zsh: illegal hardware instruction  sudo ./AirPlayUIAgent

Also this seems to appear in dmesg when running the above:

apfs_spec_read_wrapper:11004: apfs_spec_read_wrapper : f_info->fsr_offset 49152  f_info->fsr_length 49152 filesize 94672
AMFI: SIP is off, allowing core dump for pid 773
AMFI: SIP is off, allowing core dump for pid 772

and there is a crash report in console.

Let me know if you need any more info.

jtauke commented 4 years ago

I'm getting the same illegal hardware instruction error on a MacbookPro8,1 as @karlic is.

Happy to provide any info that may be relevant.

STMROB commented 4 years ago

I have the same issue with Airplay being not recognized and no Airplay icon in the menu bar. Airplay1 Airplay2

Fyobl commented 4 years ago

Same issue here. Have tried everything everyone suggests online with no luck. MacBook Pro 8,1

TeslaHacks commented 4 years ago

I have same issue on iMac9,1. スクリーンショット 2020-08-24 14 05 35

mrcbax commented 4 years ago

Is everyone here who is having this problem using a language other than english on their system. Seems like an odd locales based issue just from the screenshots. @TeslaHacks @STMROB

TeslaHacks commented 4 years ago

@LogoiLab Hmm... Now i turned Mac's language to English but i couldn't find AirPlay logo on status bar. Screen Shot 2020-08-25 at 11 27 06

graanco commented 4 years ago

last I knew you need a compatible airplay CPU for that to work....

dqkk commented 4 years ago

Is everyone here who is having this problem using a language other than english on their system. Seems like an odd locales based issue just from the screenshots. @TeslaHacks @STMROB

This could be a related issue: I just had problems installing Catalina on a MacBookPro5,3 that was set up in pt-br. The patcher would throw an error when applying the wifi patch. After several tries I reformatted and retried (in english) with success. One guess at the problem is that in pt-br the APFS data partition is labeled "Dados" instead of "Data".

JosJos85 commented 4 years ago

Same on my side with an Imac 10,1 (late 2009) and a MacBookPro 7,1 (mid 2010). I reformatted with language in English but the airplay logo in status bar remain invisible. However when playing a video on youtube.com I do have the opportunity from both computers to stream to my SmartTV but not between each other.

ldcarpediem commented 3 years ago

Hi, does anyone find something new to repair Airplay issue on Catalina Patcher ? I have MBP late 2011 (MacBookPro8,1)... I can use airplay by sharing the song when I click on the volume icon in the bar and choose my LG webOS output... But only the song, and cannot share the screen. So airplay seems to work...

wastrox commented 3 years ago

MacBook Pro 8,1 (late 2011), Sandy Bridge CPU, Same problem, followed by solution for Intel HD3000

Screen Shot 2021-03-14 at 10 19 50 PM Screen Shot 2021-03-14 at 10 17 49 PM

Symptoms: no AirPlay logo on status bar, no AirPlay Display drop-down menu in Display Preferences, but AirPlay devices are listed in Sound Preferences as possible options for sound output:

Screen Shot 2021-03-14 at 10 21 42 PM

When playing a YouTube video in Safari, AirPlay mirroring option appears and actually WORKS:

Screen Shot 2021-03-14 at 10 23 21 PM

After investing a lot of time to research the possible reason, I finally found a solution.

The reason why this happening is actually because AirPlay mirroring requires hardware acceleration to be correctly detected by operating system.

It happens that after clean Catalina install using macos-catalina-patcher, though Intel HD3000 hardware acceleration works perfectly, VDA H.264 hardware decoding/encoding is not working (or at least it is not correctly identified by operating system).

To check this, you can use tools like VDADecoderCheck, VideoProc's Hardware Info, but I would suggest latest release of Hackintool - https://github.com/headkaze/Hackintool/releases/tag/3.5.3

Hackintool will report that "VDA Decoder failed", "Hardware acceleration is not available", same as VDADecoderCheck. VideoProc will also report that both H264 and HEVC hardware decoder/encoder and video processing acceleration are not available.

To fix the problem, you can download and install latest release versions of two well-known kexts: Lilu.kext and WhateverGreen.kext - just put them to /Library/Extensions and follow regular kext install procedure.

For those who could find this post using Google: if you are unfamiliar with installing kexts manually, fixing kext permissions, rebuilding kext caches etc. and just need simple instructions to make it work, here they are:

  1. Create a folder AirPlayFix in your Downloads folder.
  2. Download Lilu.kext
  3. Download WhateverGreen.kext
  4. unzip Lilu-1.5.1-RELEASE.zip and WhateverGreen-1.4.8-RELEASE.zip
  5. Copy or move Lilu.kext and WhateverGreen.kext from their respected unzipped folders to AirPlayFix folder:

Screen Shot 2021-03-14 at 10 47 48 PM Screen Shot 2021-03-14 at 10 51 54 PM

  1. Download, install and launch Hackintool, go to Utilities tab and use Install kext(s) button:

Screen Shot 2021-03-14 at 10 54 38 PM

  1. Select Lilu.kext and WhateverGreen.kext:

Screen Shot 2021-03-14 at 10 58 19 PM

  1. When prompted for destination, select /Library/Extensions, wait for the process to finish, then reboot.

    Result should be like this:

Screen Shot 2021-03-14 at 11 05 07 PM

Screen Shot 2021-03-14 at 11 07 39 PM

(It's ok in my particular situation for HEVC to be unavailable since my CPU/GPU don't support HEVC acceleration)

And finally what we were fighting for:

Screen Shot 2021-03-14 at 11 13 42 PM

@dosdude1 @LogoiLab FYI @mdacunha90 @trineu @karlic @jtauke @STMROB @Fyobl @TeslaHacks @graanco @dqkk @JosJos85 @ldcarpediem I hope this post was worth the effort and it will help you guys.

ldcarpediem commented 3 years ago

Amazing @wastrox ! That works perfectly in only 5 minutes thanks to your help. The Airplay logo appeared and Airplay works on my LG TV. Thank you !

PS : I had to wait 3 minutes when installing kext and some red lines appeared at the end, looks like there is an issue. But it wasn't. I rebooted my Mac and the install had worked perfectly.

STMROB commented 3 years ago

@wastrox, I confirm, the fix works perfectly well, and is quite simple to apply. Thanks a lot!

JosJos85 commented 3 years ago

@wastrox Thanks for the work you have done that seems to work in various situation

Unfortunately, on my side it doesn't work for both my computers. After installing both Lilu.kext and WhateverGreen.kext VDA Decoder remains in value "Decoder Failed".

I guess there is something about the GPU. My Imac 10,1 (late 2009) has a Geforce 9400M. And my MacBookPro 7,1 (mid 2010) has a Geforce 320M.

wastrox commented 3 years ago

@wastrox Thanks for the work you have done that seems to work in various situation

Unfortunately, on my side it doesn't work for both my computers. After installing both Lilu.kext and WhateverGreen.kext VDA Decoder remains in value "Decoder Failed".

I guess there is something about the GPU. My Imac 10,1 (late 2009) has a Geforce 9400M. And my MacBookPro 7,1 (mid 2010) has a Geforce 320M.

@JosJos85 Could not be that easy for GeForce as it appeared for my Intel HD 3000 😞 . Please check https://github.com/acidanthera/WhateverGreen/blob/master/Manual/FAQ.GeForce.en.md, maybe installing https://www.nvidia.com/download/driverResults.aspx/125379/en-us could help in your situation

robinkaty commented 3 years ago

Thanks, this worked for me. my 2011 doesn't have the AMD Gpu, it was neutered by dosdude1, not sure the reason, but this fixed it. Thanks!

whitecatcafe commented 3 years ago

I really can't thank you enough @wastrox! Working perfectly on my 2011 MBP running Catalina 10.15.7 :)

KJHoney-cutt commented 3 years ago

I recently had this exact same issue and the solution @wastrox provided was great. I am having an issue when selecting "Use as Separate Display" from the AirPlay icon. The display connected to my AppleTV just shows a green screen. Any advice?

ubilight0066 commented 3 years ago

thanks for sharing your findings! however for my case it shows 'fully supported' but no icon on the top somehow. please shed some light? @wastrox

crisisarea commented 3 years ago

Thank you very much, @wastrox! That's workly perfectly on late 2011 MBP with Catalina 15.6 patched! A few red validation lines appear at the end of the installation of the kexts but this is not a problem.

Your tutorial is crystal clear and has FINALLY solved this problem that had been blocking me for months! My Mac and I thank you from the bottom of our hearts!

wastrox commented 3 years ago

thanks for sharing your findings! however for my case it shows 'fully supported' but no icon on the top somehow. please shed some light? @wastrox

Please check regular Apple advice on fixing AirPlay issues; if it says fully supported, then probably your problem is out of the scope of this small guide. Unfortunately, I don't have an old mac anymore and can't check anything myself to help you on the matter 😕

Daking28 commented 2 years ago

I’m having the same issue. I have an GeForce 320m even with both kexts or trying with the default Catalina patches it doesn’t work I get a black screen also when mirroring to my iPad. On my MacBook Air mid 2010.

robertotrevisan commented 2 years ago

It works perfectly as a mirror. When I switch to extended mode, the AppleTV has a green screen. Could anyone help? Thank you very much. My Macbook Pro 8.3 (2011 Late 17')

arkygeek commented 2 years ago

It works perfectly as a mirror. When I switch to extended mode, the AppleTV has a green screen. Could anyone help? Thank you very much. My Macbook Pro 8.3 (2011 Late 17')

Exactly the same issue with me! Late 2011 MBP 15"

joseterra commented 10 months ago

it happens also in my MB air 11'' 2011 with OCLP for Catalina installation. However, the above procedure makes the Mac unbootable. Is there a solution for those who have installed OCLP?

EDIT: Actually, by following exactly the procedure indicated by wastrox (very thanks to him for the solution), I was able to activate Airplay correctly. There is a problem that can be worked around: the Mac no longer boots from the opencore legacy picker (stacks on apple booting). But, to resolve such trouble, just press "alt" at startup and select the Mac OS disk. Once started, from "system preferences", select "startup disk" and choose the usual Mac disk and restart. From that moment, it will boot from the MacOS disk and no longer from the legacy opencore boot picker... easy!

SirJDingens commented 8 months ago

Regarding seperate display support, as far as i know secondary display rendering is exclusively handled by the dGPU, therefore only giving a green screen because no renderer is available. I don't think there is a way to force iGPU rendering for this (if so please let me know). This should only affect 15" and 17" models, as the 13" is not equipped with a dGPU. An option for external displays without mirroring would probably be something like a USB adapter with an integrated renderer, but given the USB 2 IO limitation i don't think results will be that great, also only wired.