Make your AirPlay devices as TTS speakers

Overview

Apple AirPlayer

hacs_badge Stable

Home Assistant integration component, make your AirPlay devices as TTS speakers.

Before Use

2021.6.X or earlier

Apple Airplayer component requires pyatv 0.8.1, which is self-contained in the latest version Home Assistant (2021.7.3). You can run pip list | grep pyqatv in your Home Assistant container host to check the version of pyatv. If lower than 0.8.1, you should run commands as below to upgrade pyatv.

apk update
apk add build-base
pip3 install --upgrade pyatv
pip3 install --upgrade attrs

2021.7.X or later

There is a bug in Home Assistant 2021.7.3 ~ 2021.8.2 and it will cause HA core crash. If you are using HA 2021.7.3 ~ 2021.8.2, you need to reinstall miniaudio. Enter the following commands

apk update
apk add build-base
pip3 uninstall --yes miniaudio
pip3 install miniaudio

Notice: If you upgrade HA core to new release, you need to re-install miniaudio.

Installtion

Use HACS and Install as a custom repository, or copy all files in custom_components/apple_airplayer from Latest Release to your /custom_components/apple_airplayer in Home Assistant manually. Restart HomeAssistant.

Configuration

Add Apple AirPlayer component in Home Assistant integrations page, it could auto-discover Airplay devices in network. If component can not found any devices, you can specify the IP address to add the device.

Supported Devices

  • AirPort Express
  • AirPort Express Gen2
  • Apple TV 2
  • Apple TV 3
  • Apple TV 4
  • Apple TV 4K
  • Apple TV 4K Gen2
  • HomePod
  • HomePod Mini
  • Other AirPlay compatible devices
Comments
  • Home assistant restarts when TTS is used

    Home assistant restarts when TTS is used

    Hi, In the last version of HA, OS 6.6, Supervisor 2021.10.8, Core 2021.11.5, HA server restarts if TTS is used. miniaudio is not installed by default in this version. Tried to install it, still same behavior.

    Is there any solution to make the integration work?

    Thanks.

    opened by Fannangir 5
  • It does not work while run tts, no voice

    It does not work while run tts, no voice

    It gets 2 error logs.

    ` This error originated from a custom integration.

    Logger: custom_components.apple_airplayer.device_manager Source: custom_components/apple_airplayer/device_manager.py:105 Integration: Apple AirPlayer (documentation, issues) First occurred: 10:28:32 PM (1 occurrences) Last logged: 10:28:32 PM

    Exception raised in async_stream_file, RTSP/1.0 method SETUP failed with code 500: Internal Server Error `

    ` Logger: gtts.lang Source: /usr/local/lib/python3.9/site-packages/gtts/lang.py:94 First occurred: 10:28:30 PM (1 occurrences) Last logged: 10:28:30 PM

    'zh-tw' has been deprecated, falling back to 'zh-TW'. This fallback will be removed in a future version. System Health

    version: core-2021.8.6 installation_type: Home Assistant OS dev: false hassio: true docker: true user: root virtualenv: false python_version: 3.9.6 os_name: Linux os_version: 5.10.17-v8 arch: aarch64 timezone: Asia/Taipei

    GitHub API: ok Github API Calls Remaining: 4935 Installed Version: 1.13.2 Stage: running Available Repositories: 845 Installed Repositories: 8

    logged_in: false can_reach_cert_server: ok can_reach_cloud_auth: ok can_reach_cloud: ok

    host_os: Home Assistant OS 6.2 update_channel: stable supervisor_version: supervisor-2021.06.8 docker_version: 20.10.6 disk_total: 56.4 GB disk_used: 14.8 GB healthy: true supported: true board: rpi4-64 supervisor_api: ok version_api: ok installed_addons: Home Assistant Google Drive Backup (0.104.3), File editor (5.3.3), Node-RED (10.0.0), Duck DNS (1.12.5), Mosquitto broker (6.0.1), FTP (4.2.0), SSH & Web Terminal (9.0.1), SQLite Web (3.1.0), Samba NAS (9.3.0-nas8)

    dashboards: 1 resources: 1 views: 3 mode: storage

    logged_in: true can_reach_micloud_server: ok accounts_count: 1 account_devices_count: 21 added_devices: 9 `

    opened by tomcheng1111 4
  • TTS language

    TTS language

    Hi George!

    Is there a possibility to somehow set a language for TTS? My HomePod mini is set up for the Russian language but TTS plays only in English.

    opened by alex-berezin 2
  • Cannot install mini audio

    Cannot install mini audio

    pip3 install miniaudio goes into an endles loop with these errors:

                                                                                                                                                                                                                                                             ```
    

    | | | | /\ () | | | |
    | |__| | ___ _ __ ___ ___ / \ ___ ___ _ | | __ _ _ __ | | | __ |/ _ | ' \ _ \ / _ \ / /\ \ / __/ __| / __| __/ \ | ' | __| | | | | (
    ) | | | | | | / / ____ \ __ \ __ \ || (| | | | | | || ||_/|| || |_|_| // __//|__/__,|| ||_|

    Welcome to the Home Assistant command line.

    Waiting for Supervisor to startup... System information IPv4 addresses for eth0: 192.168.1.xxx IPv6 addresses for eth0: xxxx

    OS Version: Home Assistant OS 6.4 Home Assistant Core: 2021.9.6

    Home Assistant URL: http://homeassistant.local:8123 Observer URL: http://homeassistant.local:4357 ➜ ~ pip3 install miniaudio Collecting miniaudio Downloading miniaudio-1.44.tar.gz (524 kB) |████████████████████████████████| 524 kB 1.7 MB/s ERROR: Command errored out with exit status 1: command: /usr/bin/python3 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-hcncdgh5/miniaudio_26d61747b96d42f0bf7748072e099f72/setup.py'"'"'; file='"'"'/tmp/pip-install-hcncdgh5/miniaudio_26d61747b96d42f0bf7748072e099f72/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-pqvo79di cwd: /tmp/pip-install-hcncdgh5/miniaudio_26d61747b96d42f0bf7748072e099f72/ Complete output (77 lines): WARNING: The wheel package is not available. ERROR: Command errored out with exit status 1: command: /usr/bin/python3 -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-wheel-27knk70g/cffi_45bba4897aee4660ae488e9a44c7f809/setup.py'"'"'; file='"'"'/tmp/pip-wheel-27knk70g/cffi_45bba4897aee4660ae488e9a44c7f809/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-_2n4zghx cwd: /tmp/pip-wheel-27knk70g/cffi_45bba4897aee4660ae488e9a44c7f809/ Complete output (39 lines): Package libffi was not found in the pkg-config search path. Perhaps you should add the directory containing libffi.pc' to the PKG_CONFIG_PATH environment variable Package 'libffi', required by 'virtual:world', not found Package libffi was not found in the pkg-config search path. Perhaps you should add the directory containinglibffi.pc' to the PKG_CONFIG_PATH environment variable Package 'libffi', required by 'virtual:world', not found Package libffi was not found in the pkg-config search path. Perhaps you should add the directory containing libffi.pc' to the PKG_CONFIG_PATH environment variable Package 'libffi', required by 'virtual:world', not found Package libffi was not found in the pkg-config search path. Perhaps you should add the directory containinglibffi.pc' to the PKG_CONFIG_PATH environment variable Package 'libffi', required by 'virtual:world', not found Package libffi was not found in the pkg-config search path. Perhaps you should add the directory containing `libffi.pc' to the PKG_CONFIG_PATH environment variable Package 'libffi', required by 'virtual:world', not found

          No working compiler found, or bogus compiler options passed to
          the compiler from Python's standard "distutils" module.  See
          the error messages above.  Likely, the problem is not related
          to CFFI but generic to the setup.py of any Python package that
          tries to compile C code.  (Hints: on OS/X 10.8, for errors about
          -mno-fused-madd see http://stackoverflow.com/questions/22313407/
          Otherwise, see https://wiki.python.org/moin/CompLangPython or
          the IRC channel #python on irc.libera.chat.)
    
          Trying to continue anyway.  If you are trying to install CFFI from
          a build done in a different context, you can ignore this warning.
    
      usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
         or: setup.py --help [cmd1 cmd2 ...]
         or: setup.py --help-commands
         or: setup.py cmd --help
    
      error: invalid command 'bdist_wheel'
      ----------------------------------------
      ERROR: Failed building wheel for cffi
    ERROR: Failed to build one or more wheels
    Traceback (most recent call last):
      File "/usr/lib/python3.9/site-packages/setuptools/installer.py", line 75, in fetch_build_egg
        subprocess.check_call(cmd)
      File "/usr/lib/python3.9/subprocess.py", line 373, in check_call
        raise CalledProcessError(retcode, cmd)
    subprocess.CalledProcessError: Command '['/usr/bin/python3', '-m', 'pip', '--disable-pip-version-check', 'wheel', '--no-deps', '-w', '/tmp/tmpugwfrgoa', '--quiet', 'cffi>=1.12.0']' returned non-zero exit status 1.
    
    The above exception was the direct cause of the following exception:
    
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-hcncdgh5/miniaudio_26d61747b96d42f0bf7748072e099f72/setup.py", line 20, in <module>
        setup(
      File "/usr/lib/python3.9/site-packages/setuptools/__init__.py", line 152, in setup
        _install_setup_requires(attrs)
      File "/usr/lib/python3.9/site-packages/setuptools/__init__.py", line 147, in _install_setup_requires
        dist.fetch_build_eggs(dist.setup_requires)
      File "/usr/lib/python3.9/site-packages/setuptools/dist.py", line 686, in fetch_build_eggs
        resolved_dists = pkg_resources.working_set.resolve(
      File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line 766, in resolve
        dist = best[req.key] = env.best_match(
      File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line 1051, in best_match
        return self.obtain(req, installer)
      File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line 1063, in obtain
        return installer(requirement)
      File "/usr/lib/python3.9/site-packages/setuptools/dist.py", line 745, in fetch_build_egg
        return fetch_build_egg(self, req)
      File "/usr/lib/python3.9/site-packages/setuptools/installer.py", line 77, in fetch_build_egg
        raise DistutilsError(str(e)) from e
    distutils.errors.DistutilsError: Command '['/usr/bin/python3', '-m', 'pip', '--disable-pip-version-check', 'wheel', '--no-deps', '-w', '/tmp/tmpugwfrgoa', '--quiet', 'cffi>=1.12.0']' returned non-zero exit status 1.
    ----------------------------------------
    

    WARNING: Discarding https://files.pythonhosted.org/packages/87/e5/7d8fcaba04f8d7d851f0300a4269da03c084beb7e69bde87520b35069068/miniaudio-1.44.tar.gz#sha256=4edd08a9b5a9ceb570a06cda9844f453cf3f0145bb4a19828df8f04ecfdf9993 (from https://pypi.org/simple/miniaudio/). Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output. Downloading miniaudio-1.43.tar.gz (524 kB) |████████████████████████████████| 524 kB 4.7 MB/s

    How do I fix it?
    Also, what is the repository url for installation via HACS?
    opened by PierreScerri 2
  • How I can contact you by email?

    How I can contact you by email?

    @georgezhao2010: How I can contact you by email?

    Can I have your email address?

    You can remove this ticket after sending the reply ^^

    Thanks in advance.

    opened by Neustradamus 1
  • No TTS call if one entity is not available in a media player group

    No TTS call if one entity is not available in a media player group

    Hello,

    I created a media player group (https://www.home-assistant.io/integrations/media_player.group/) with two homepods. However, if one homepod is not available (for example unplugged), no TTS call can be played with the group as a service entity target and only an exception will be raised. I expect that at least the available homepod will play the TTS call.

    The following exception occurs:


    Logger: custom_components.apple_airplayer.device_manager Source: custom_components/apple_airplayer/device_manager.py:127 Integration: Apple AirPlayer (documentation, issues) First occurred: 11:14:54 (4 occurrences) Last logged: 11:15:33

    Exception raised in async_stream_file, [Errno 113] Connect call failed ('192.168.178.54', 7000)


    • platform: group unique_id: glo_media_homepod_all name: "All Homepod Minis" entities:
      • media_player.media_homepod_01
      • media_player.media_homepod_02
    opened by Gloomyeye 1
  • Stop/Pause a TTS streaming to a media player

    Stop/Pause a TTS streaming to a media player

    Hello,

    it is not possible to stop (media_player.media_stop) or pause (media_player.media_pause) a streaming to the media player entity. Could you add these functionalities? I can not find an execption in my home assistant log. Nothing happens if I use the service call media_player.media_stop.

    For information: I use a apple homepod mini as the streaming target.

    Thank you!

    opened by Gloomyeye 1
  • Exception if the media player is already in use

    Exception if the media player is already in use

    Hello,

    if I try to start the following service twice, an exception occurs which indicates that the second call can not be processed:

    Service:

    service: tts.google_translate_say data: entity_id: media_player.kue_media_homepod_friday message: This is a long text.

    Exception:

    Logger: custom_components.apple_airplayer.device_manager Source: custom_components/apple_airplayer/device_manager.py:127 Integration: Apple AirPlayer (documentation, issues) First occurred: 06:52:35 (1 occurrences) Last logged: 06:52:35

    Exception raised in async_stream_file, already streaming to device

    It is possible to avoid this situation? Can I use a service or state attributes of the media player to know if the media player entity is already in action so that I can wait for the second service call to the media player? Another idea is that the service call can be queued in backgroud, maybe with another additional option.

    opened by Gloomyeye 1
  • Error doing job: Task exception was never retrieved

    Error doing job: Task exception was never retrieved

    This error originated from a custom integration.

    Logger: homeassistant Source: custom_components/apple_airplayer/media_player.py:110 Integration: Apple AirPlayer (documentation, issues) First occurred: 12:43:03 PM (4 occurrences) Last logged: 12:48:16 PM

    Error doing job: Task exception was never retrieved Traceback (most recent call last): File "/config/custom_components/apple_airplayer/media_player.py", line 110, in async_play_stream r = await session.get(url) File "/usr/local/lib/python3.9/site-packages/aiohttp/client.py", line 520, in _request conn = await self._connector.connect( File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line 535, in connect proto = await self._create_connection(req, traces, timeout) File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line 892, in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line 991, in _create_direct_connection assert port is not None AssertionError

    opened by goven 1
  • Exception with airplay speaker password

    Exception with airplay speaker password

    Hello,

    I found out that I cannot use the services for tts or media play with my homepod mini, if I activate airplay settings with a passwort (see picture). I create the following error with the setting activated:

    Logger: custom_components.apple_airplayer.device_manager Source: custom_components/apple_airplayer/device_manager.py:127 Integration: Apple AirPlayer (documentation, issues) First occurred: 19:00:35 (1 occurrences) Last logged: 19:00:35

    Exception raised in async_stream_file, not authenticated

    Homekit AirPlay Settings

    If I deactivate the password for TV and speaker in homekit, I can use tts with my homepod mini. What configuration do I have to make to include the airplay password with TTS as well as media play?

    enhancement 
    opened by Gloomyeye 1
  • The playback of tts is not smooth, and the log appears a lot

    The playback of tts is not smooth, and the log appears a lot

    The playback of tts is not smooth, and the log appears a lot 2021-08-08 00:30:41 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 39971 (0.957823 vs 0.959274 => -0.001451) 2021-08-08 00:30:41 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 39972 (0.965805 vs 0.966809 => -0.001004) 2021-08-08 00:30:46 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 39977 (1.005714 vs 6.091000 => -5.085286) 2021-08-08 00:30:46 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 39981 (1.037642 vs 6.123049 => -5.085407) 2021-08-08 00:30:46 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 39985 (1.069569 vs 6.153714 => -5.084145) 2021-08-08 00:30:46 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 39989 (1.101497 vs 6.176565 => -5.075069) 2021-08-08 00:30:46 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 39993 (1.133424 vs 6.192660 => -5.059236) 2021-08-08 00:30:46 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 39997 (1.165351 vs 6.208388 => -5.043037) 2021-08-08 00:30:46 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 40001 (1.197279 vs 6.224719 => -5.027440) 2021-08-08 00:30:46 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 40005 (1.229206 vs 6.240557 => -5.011350) 2021-08-08 00:30:46 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 40009 (1.261134 vs 6.256408 => -4.995274) 2021-08-08 00:30:46 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 40013 (1.293061 vs 6.272875 => -4.979813) 2021-08-08 00:30:46 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 40017 (1.324989 vs 6.289230 => -4.964241) 2021-08-08 00:30:46 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 40021 (1.356916 vs 6.305423 => -4.948507) 2021-08-08 00:30:46 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 40025 (1.388844 vs 6.321442 => -4.932598) 2021-08-08 00:30:46 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 40029 (1.420771 vs 6.338121 => -4.917350) 2021-08-08 00:30:46 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 40033 (1.452698 vs 6.353921 => -4.901222) 2021-08-08 00:30:46 WARNING (MainThread) [pyatv.raop.raop] Too slow to keep up for seqno 40037 (1.484626 vs 6.369991 => -4.885366)

    opened by bossben8 1
  • No TTS after Home Assistant Core upgrade to v2022-5-0

    No TTS after Home Assistant Core upgrade to v2022-5-0

    I have been unable to play TTS on my HomePod Mini after upgrading my RPi4 to Home Assistant core v2022-5.0.

    My error log message from Home Assistant:

    
    Logger: homeassistant
    Source: custom_components/apple_airplayer/media_player.py:110
    Integration: Apple AirPlayer (documentation, issues)
    First occurred: May 7, 2022, 11:33:18 PM (2 occurrences)
    Last logged: 9:32:11 AM
    
    Error doing job: Task exception was never retrieved
    Traceback (most recent call last):
      File "/config/custom_components/apple_airplayer/media_player.py", line 110, in async_play_stream
        r = await session.get(url)
      File "/usr/local/lib/python3.9/site-packages/aiohttp/client.py", line 535, in _request
        conn = await self._connector.connect(
      File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line 542, in connect
        proto = await self._create_connection(req, traces, timeout)
      File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line 907, in _create_connection
        _, proto = await self._create_direct_connection(req, traces, timeout)
      File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line 1146, in _create_direct_connection
        assert port is not None
    AssertionError
    
    
    opened by nimroddolev 1
  • HomePod Mini not being recognized

    HomePod Mini not being recognized

    Just installed this integration, my other airplay devices show up such as Apple TV and Sonos, but my 2 HomePod Mini's do not show up.

    I do have these errors in my HA Log

    Logger: custom_components.apple_airplayer.device_manager
    Source: custom_components/apple_airplayer/device_manager.py:101
    Integration: Apple AirPlayer ([documentation](https://github.com/georgezhao2010/apple_airplayer), [issues](https://github.com/georgezhao2010/apple_airplayer/issue))
    First occurred: 8:08:28 AM (3 occurrences)
    Last logged: 8:08:38 AM
    
    Exception raised in async_open, expected string or bytes-like object
    Exception raised in async_open,
    
    opened by Stuke00 1
  • Error doing job: Task exception was never retrieved

    Error doing job: Task exception was never retrieved

    I'm getting this error message in the log over a 1000 times a day. Any idea what may be causing this issue?

    Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 735, in _update_entity_states await asyncio.gather(*tasks) File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 526, in async_update_ha_state self._async_write_ha_state() File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 574, in _async_write_ha_state attr.update(self.state_attributes or {}) File "/usr/src/homeassistant/homeassistant/components/media_player/init.py", line 934, in state_attributes if (value := getattr(self, attr)) is not None: File "/config/custom_components/apple_airplayer/media_player.py", line 59, in volume_level return self._player_device.volume_level File "/config/custom_components/apple_airplayer/device_manager.py", line 80, in volume_level return self._atv_interface.audio.volume / 100 File "/usr/local/lib/python3.9/site-packages/pyatv/support/shield.py", line 71, in _guard_method raise BlockedStateError(f"{func.name} is blocked") pyatv.exceptions.BlockedStateError: audio is blocked

    opened by Douganatornz 1
  • Better setup Instructions?

    Better setup Instructions?

    What am I missing here? I installed the custom repository, clicked install, rebooted, went to the integrations section and cannot locate this project.

    opened by taylorlightfoot 2
  • Cannot connect to host

    Cannot connect to host

    Was excited to stumble across this custom integration. I am trying to get this to work. Followed your README documentation, but am still having issues with getting this to function via the tts.cloud_say service. Seems like the TTS side of things is working—I can confirm that my media file is being generated. However, when I presume this component goes to play the MP3 file over my HomePod mini, it logs the following error to my HA logs:

    This error originated from a custom integration.
    
    Logger: homeassistant
    Source: custom_components/apple_airplayer/media_player.py:110
    Integration: Apple AirPlayer (documentation, issues)
    First occurred: 3:16:16 PM (1 occurrences)
    Last logged: 3:16:16 PM
    
    Error doing job: Task exception was never retrieved
    Traceback (most recent call last):
      File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line 999, in _create_direct_connection
        hosts = await asyncio.shield(host_resolved)
      File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line 865, in _resolve_host
        addrs = await self._resolver.resolve(host, port, family=self._family)
      File "/usr/local/lib/python3.9/site-packages/aiohttp/resolver.py", line 31, in resolve
        infos = await self._loop.getaddrinfo(
      File "/usr/local/lib/python3.9/asyncio/base_events.py", line 856, in getaddrinfo
        return await self.run_in_executor(
      File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 52, in run
        result = self.fn(*self.args, **self.kwargs)
      File "/usr/local/lib/python3.9/socket.py", line 954, in getaddrinfo
        for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
    socket.gaierror: [Errno -2] Name does not resolve
    
    The above exception was the direct cause of the following exception:
    
    Traceback (most recent call last):
      File "/config/custom_components/apple_airplayer/media_player.py", line 110, in async_play_stream
        r = await session.get(url)
      File "/usr/local/lib/python3.9/site-packages/aiohttp/client.py", line 520, in _request
        conn = await self._connector.connect(
      File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line 535, in connect
        proto = await self._create_connection(req, traces, timeout)
      File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line 892, in _create_connection
        _, proto = await self._create_direct_connection(req, traces, timeout)
      File "/usr/local/lib/python3.9/site-packages/aiohttp/connector.py", line 1011, in _create_direct_connection
        raise ClientConnectorError(req.connection_key, exc) from exc
    aiohttp.client_exceptions.ClientConnectorError: Cannot connect to host hasspi.local:8123 ssl:default [Name does not resolve]
    

    It seems like the issue is that there is a connection issue between my HomePod mini and HA URL ("hasspi.local:8123")? Could you provide a little more clarity/direction on how to get this integration added to HA? I have tried this from both my internal URL (http://hasspi.local:8123) and also from my public Nabu Casa external URL (https://g4xwh71234567890.ui.nabu.casa/) <- obfuscated for security.

    Thank you so much for your work on this and any help/suggestions you may provide!

    opened by kyleaffolder 3
Releases(v0.0.8)
Owner
George Zhao
George Zhao
Pseudo-mask Matters in Weakly-supervised Semantic Segmentation

Pseudo-mask Matters in Weakly-supervised Semantic Segmentation By Yi Li, Zhanghui Kuang, Liyang Liu, Yimin Chen, Wayne Zhang SenseTime, Tsinghua Unive

33 Oct 14, 2022
The official implementation of NeurIPS 2021 paper: Finding Optimal Tangent Points for Reducing Distortions of Hard-label Attacks

Introduction This repository includes the source code for "Finding Optimal Tangent Points for Reducing Distortions of Hard-label Attacks", which is pu

machen 11 Nov 27, 2022
Predicting Event Memorability from Contextual Visual Semantics

Predicting Event Memorability from Contextual Visual Semantics

0 Oct 06, 2021
Image-to-image regression with uncertainty quantification in PyTorch

Image-to-image regression with uncertainty quantification in PyTorch. Take any dataset and train a model to regress images to images with rigorous, distribution-free uncertainty quantification.

Anastasios Angelopoulos 25 Dec 26, 2022
An implementation of an abstract algebra for music tones (pitches).

nbdev template Use this template to more easily create your nbdev project. If you are using an older version of this template, and want to upgrade to

Open Music Kit 0 Oct 10, 2022
Generate Contextual Directory Wordlist For Target Org

PathPermutor Generate Contextual Directory Wordlist For Target Org This script generates contextual wordlist for any target org based on the set of UR

8 Jun 23, 2021
Official code for "Eigenlanes: Data-Driven Lane Descriptors for Structurally Diverse Lanes", CVPR2022

[CVPR 2022] Eigenlanes: Data-Driven Lane Descriptors for Structurally Diverse Lanes Dongkwon Jin, Wonhui Park, Seong-Gyun Jeong, Heeyeon Kwon, and Cha

Dongkwon Jin 106 Dec 29, 2022
Use your Philips Hue lights as Racing Flags. Works with Assetto Corsa, Assetto Corsa Competizione and iRacing.

phue-racing-flags Use your Philips Hue lights as Racing Flags. Explore the docs » Report Bug · Request Feature Table of Contents About The Project Bui

50 Sep 03, 2022
[NeurIPS'21] Shape As Points: A Differentiable Poisson Solver

Shape As Points (SAP) Paper | Project Page | Short Video (6 min) | Long Video (12 min) This repository contains the implementation of the paper: Shape

394 Dec 30, 2022
A Python framework for developing parallelized Computational Fluid Dynamics software to solve the hyperbolic 2D Euler equations on distributed, multi-block structured grids.

pyHype: Computational Fluid Dynamics in Python pyHype is a Python framework for developing parallelized Computational Fluid Dynamics software to solve

Mohamed Khalil 21 Nov 22, 2022
[CVPR2021] The source code for our paper 《Removing the Background by Adding the Background: Towards Background Robust Self-supervised Video Representation Learning》.

TBE The source code for our paper "Removing the Background by Adding the Background: Towards Background Robust Self-supervised Video Representation Le

Jinpeng Wang 150 Dec 28, 2022
An All-MLP solution for Vision, from Google AI

MLP Mixer - Pytorch An All-MLP solution for Vision, from Google AI, in Pytorch. No convolutions nor attention needed! Yannic Kilcher video Install $ p

Phil Wang 784 Jan 06, 2023
This code provides various models combining dilated convolutions with residual networks

Overview This code provides various models combining dilated convolutions with residual networks. Our models can achieve better performance with less

Fisher Yu 1.1k Dec 30, 2022
CondLaneNet: a Top-to-down Lane Detection Framework Based on Conditional Convolution

CondLaneNet: a Top-to-down Lane Detection Framework Based on Conditional Convolution This is the official implementation code of the paper "CondLaneNe

Alibaba Cloud 311 Dec 30, 2022
PN-Net a neural field-based framework for depth estimation from single-view RGB images.

PN-Net We present a neural field-based framework for depth estimation from single-view RGB images. Rather than representing a 2D depth map as a single

1 Oct 02, 2021
Official repository of the paper Learning to Regress 3D Face Shape and Expression from an Image without 3D Supervision

Official repository of the paper Learning to Regress 3D Face Shape and Expression from an Image without 3D Supervision

Soubhik Sanyal 689 Dec 25, 2022
Official PyTorch implementation of "VITON-HD: High-Resolution Virtual Try-On via Misalignment-Aware Normalization" (CVPR 2021)

VITON-HD — Official PyTorch Implementation VITON-HD: High-Resolution Virtual Try-On via Misalignment-Aware Normalization Seunghwan Choi*1, Sunghyun Pa

Seunghwan Choi 250 Jan 06, 2023
A testcase generation tool for Persistent Memory Programs.

PMFuzz PMFuzz is a testcase generation tool to generate high-value tests cases for PM testing tools (XFDetector, PMDebugger, PMTest and Pmemcheck) If

Systems Research at ShiftLab 14 Jul 24, 2022
[ACM MM 2021] Yes, "Attention is All You Need", for Exemplar based Colorization

Transformer for Image Colorization This is an implemention for Yes, "Attention Is All You Need", for Exemplar based Colorization, and the current soft

Wang Yin 30 Dec 07, 2022
The Empirical Investigation of Representation Learning for Imitation (EIRLI)

The Empirical Investigation of Representation Learning for Imitation (EIRLI)

Center for Human-Compatible AI 31 Nov 06, 2022