tensorflow / io

Dataset, streaming, and file system extensions maintained by TensorFlow SIG-IO
Apache License 2.0
702 stars 281 forks source link

tfio M1 0.34.0 arm64: AudioIOTensor has no attribute 'io_audio_readable_init' #1859

Open yingding opened 1 year ago

yingding commented 1 year ago

I got an error no attribute io_audio_readable_init on M1 Max MBP with Python 3.10.

pip install tensorflow-io==0.34.0 tensorflow==2.13.0 tensorflow-metal==1.0.1

Run the tfio example code:

import tensorflow_io as tfio
audio = tfio.audio.AudioIOTensor('gs://cloud-samples-tests/speech/brooklyn.flac')

Then got the error no attribute 'io_audio_readable_init' for AudioIOTensor:

File [~/VENV/tfio3.10/lib/python3.10/site-packages/tensorflow_io/python/ops/audio_ops.py:671](https://file+.vscode-resource.vscode-cdn.net/Users/yingding/VCS/github/ml/tf-every-day/08Audio/~/VENV/tfio3.10/lib/python3.10/site-packages/tensorflow_io/python/ops/audio_ops.py:671), in AudioIOTensor.__init__(self, filename, dtype)
    669 if not tf.executing_eagerly():
    670     assert dtype is not None, "dtype must be provided in graph mode"
--> 671 resource = core_ops.io_audio_readable_init(filename)
    672 if tf.executing_eagerly():
    673     shape, dtype, rate = core_ops.io_audio_readable_spec(resource)

File [~/VENV/tfio3.10/lib/python3.10/site-packages/tensorflow_io/python/ops/__init__.py:88](https://file+.vscode-resource.vscode-cdn.net/Users/yingding/VCS/github/ml/tf-every-day/08Audio/~/VENV/tfio3.10/lib/python3.10/site-packages/tensorflow_io/python/ops/__init__.py:88), in LazyLoader.__getattr__(self, attrb)
     87 def __getattr__(self, attrb):
---> 88     return getattr(self._load(), attrb)

AttributeError: module '56c055b4afaba95af0256db7c72edd0d967e1981' has no attribute 'io_audio_readable_init'

The root cause might be the same, which also is causing https://github.com/tensorflow/io/issues/1855

AndrewKovalenko commented 1 year ago

I have the same problem using same tf, tf-io and tf-metal versions as @yingding MacOS: 13.4 Proc: M2 Pro

kayleeliyx commented 10 months ago

same issue. can not use Tensorflow.io on Mac M1

newstate commented 9 months ago

I have the same issue. Same tf and tfio versions and M1 system.

graysonstorer commented 9 months ago

same issue on mbp with m1 pro using python 3.9, tfio 0.34.0, and tf 2.13.0

fatheaddrummer commented 8 months ago

Same issue for me.

asserules commented 5 months ago

Any updates on this?, have tried installing tensorflow io from pypi and downloading from source following this guide, i get same issue, look at source code and i can see the audio ops there, but not working.

recent setup attempt was: python 3.11 tf: 2.15 tfio:0.36

as suggested here

MoussaLoop commented 5 months ago

same issue on m3 with tf 2.15.0 and tfio 0.36.0 any workaround ?

inf17101 commented 5 months ago

same issue on m3 with tf 2.15.0 and tfio 0.36.0 any workaround ?

I have similar issues with the same versions and also with tfio 0.34.0. I use Mac M1. I would be happy about a quick workaround.

Error AttributeError: module '77ab628d7ad4acaa62f6bde524b9d631895821c9' has no attribute 'io_audio_resample'

mattusi commented 5 months ago

Same here with tfio 0.34.0, Tensorflow 2.13 and tensorflow-metal 1.0.0

AndrewKovalenko commented 4 months ago

Folks at Google also use MacBooks for dev... I'm wondering how come they don't have this problem?

THEDANIIEL commented 4 months ago

i have this issue too usign tfio.audio.resample with m1Max as im reading this i got that this issue just happend on apple silicon that means this library works on regular windows systems??

jiayihoffman commented 4 months ago

I got the same error on the Apple M3 chip when using the audio module. It looks like the culprit is libtensorflow_io.so that is missing some functions. My environment: python 3.10.14 tensorflow 2.15.0 tensorflow-io 0.36.0

The core_ops tries to access the io_audio_resample function, which is backed by the libtensorflow_io.so. Here is the initialization code in tensorflow io package: core_ops = LazyLoader("core_ops", "libtensorflow_io.so"). The core_ops did not load as many functions as the one from the Apple Intel chip. I compared the two runtimes side by side.

File "[.../venv/lib/python3.10/site-packages/tensorflow_io/python/ops/audio_ops.py", line 465] in f
        return core_ops.io_audio_resample(
File "[.../venv/lib/python3.10/site-packages/tensorflow_io/python/ops/__init__.py", line 88] in __getattr__
        return getattr(self._load(), attrb)

AttributeError: module '77ab628d7ad4acaa62f6bde524b9d631895821c9' has no attribute 'io_audio_resample'
tjpeter commented 3 months ago

same here with Tensorflow 2.16.1, Tensorflow-io 0.37.0 on Apple M1

climberjase commented 1 month ago

Me as well - doesn't work on M1 Max MBP 16" here.

adetunjii commented 1 week ago

Is there still no fix on this even till now? Or has anybody found a fix/workaround, please?

yackermann commented 1 week ago

Same here MacBook Air M2