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
QQ Browser 2021 AI Algorithm Competition Track 1 1st Place Program

QQ Browser 2021 AI Algorithm Competition Track 1 1st Place Program

249 Jan 03, 2023
HiFT: Hierarchical Feature Transformer for Aerial Tracking (ICCV2021)

HiFT: Hierarchical Feature Transformer for Aerial Tracking Ziang Cao, Changhong Fu, Junjie Ye, Bowen Li, and Yiming Li Our paper is Accepted by ICCV 2

Intelligent Vision for Robotics in Complex Environment 55 Nov 23, 2022
Time should be taken seer-iously

TimeSeers seers - (Noun) plural form of seer - A person who foretells future events by or as if by supernatural means TimeSeers is an hierarchical Bay

279 Dec 26, 2022
You Only Hypothesize Once: Point Cloud Registration with Rotation-equivariant Descriptors

You Only Hypothesize Once: Point Cloud Registration with Rotation-equivariant Descriptors In this paper, we propose a novel local descriptor-based fra

Haiping Wang 80 Dec 15, 2022
Official code for paper "Demystifying Local Vision Transformer: Sparse Connectivity, Weight Sharing, and Dynamic Weight"

Demysitifing Local Vision Transformer, arxiv This is the official PyTorch implementation of our paper. We simply replace local self attention by (dyna

138 Dec 28, 2022
Code for Active Learning at The ImageNet Scale.

Code for Active Learning at The ImageNet Scale. This repository implements many popular active learning algorithms and allows training with torch's DDP.

Zeyad Emam 47 Dec 12, 2022
Official code for "Towards An End-to-End Framework for Flow-Guided Video Inpainting" (CVPR2022)

E2FGVI (CVPR 2022) English | 简体中文 This repository contains the official implementation of the following paper: Towards An End-to-End Framework for Flo

Media Computing Group @ Nankai University 537 Jan 07, 2023
This project aims to explore the deployment of Swin-Transformer based on TensorRT, including the test results of FP16 and INT8.

Swin Transformer This project aims to explore the deployment of SwinTransformer based on TensorRT, including the test results of FP16 and INT8. Introd

maggiez 87 Dec 21, 2022
Optimizing DR with hard negatives and achieving SOTA first-stage retrieval performance on TREC DL Track (SIGIR 2021 Full Paper).

Optimizing Dense Retrieval Model Training with Hard Negatives Jingtao Zhan, Jiaxin Mao, Yiqun Liu, Jiafeng Guo, Min Zhang, Shaoping Ma This repo provi

Jingtao Zhan 99 Dec 27, 2022
Task Transformer Network for Joint MRI Reconstruction and Super-Resolution (MICCAI 2021)

T2Net Task Transformer Network for Joint MRI Reconstruction and Super-Resolution (MICCAI 2021) [Paper][Code] Dependencies numpy==1.18.5 scikit_image==

64 Nov 23, 2022
Source code for GNN-LSPE (Graph Neural Networks with Learnable Structural and Positional Representations)

Graph Neural Networks with Learnable Structural and Positional Representations Source code for the paper "Graph Neural Networks with Learnable Structu

Vijay Prakash Dwivedi 180 Dec 22, 2022
Finding Donors for CharityML

Finding-Donors-for-CharityML - Investigated factors that affect the likelihood of charity donations being made based on real census data.

Moamen Abdelkawy 1 Dec 30, 2021
Density-aware Single Image De-raining using a Multi-stream Dense Network (CVPR 2018)

DID-MDN Density-aware Single Image De-raining using a Multi-stream Dense Network He Zhang, Vishal M. Patel [Paper Link] (CVPR'18) We present a novel d

He Zhang 224 Dec 12, 2022
Improving Object Detection by Label Assignment Distillation

Improving Object Detection by Label Assignment Distillation This is the official implementation of the WACV 2022 paper Improving Object Detection by L

Cybercore Co. Ltd 51 Dec 08, 2022
Deep Learning Interviews book: Hundreds of fully solved job interview questions from a wide range of key topics in AI.

This book was written for you: an aspiring data scientist with a quantitative background, facing down the gauntlet of the interview process in an increasingly competitive field. For most of you, the

4.1k Dec 28, 2022
A library for optimization on Riemannian manifolds

TensorFlow RiemOpt A library for manifold-constrained optimization in TensorFlow. Installation To install the latest development version from GitHub:

Oleg Smirnov 83 Dec 27, 2022
Fashion Landmark Estimation with HRNet

HRNet for Fashion Landmark Estimation (Modified from deep-high-resolution-net.pytorch) Introduction This code applies the HRNet (Deep High-Resolution

SVIP Lab 91 Dec 26, 2022
Image Super-Resolution by Neural Texture Transfer

SRNTT: Image Super-Resolution by Neural Texture Transfer Tensorflow implementation of the paper Image Super-Resolution by Neural Texture Transfer acce

Zhifei Zhang 413 Nov 30, 2022
A PyTorch Toolbox for Face Recognition

FaceX-Zoo FaceX-Zoo is a PyTorch toolbox for face recognition. It provides a training module with various supervisory heads and backbones towards stat

JDAI-CV 1.6k Jan 06, 2023
Image-Scaling Attacks and Defenses

Image-Scaling Attacks & Defenses This repository belongs to our publication: Erwin Quiring, David Klein, Daniel Arp, Martin Johns and Konrad Rieck. Ad

Erwin Quiring 163 Nov 21, 2022