我有一个iOS应用程序,将音频记录为wav文件,并将文件发送到服务器进行音频识别。iOS应用程序使用以下配置将音频录制为wav文件
let settings = [
AVFormatIDKey: Int(kAudioFormatLinearPCM),
AVSampleRateKey: 16000,
AVNumberOfChannelsKey: 1,
AVLinearPCMBitDepthKey: 16,
AVEncoderAudioQualityKey:AVAudioQuality.max.rawValue
] as [String : Any]
这些文件正在用任何媒体播放器播放。但是当我尝试在服务器上用tensorflow ops读取文件时,我得到了以下错误
InvalidArgumentError: Header mismatch: Expected fmt but found JUNK
[[node DecodeWav_3 (defined at <ipython-input-5-36afd53919f4>:4) ]]
Errors may have originated from an input operation.
Input Source operations connected to node DecodeWav_3:
ReadFile_3 (defined at <ipython-input-5-36afd53919f4>:3)
Original stack trace for 'DecodeWav_3':
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/ipykernel_launcher.py", line 16, in <module>
app.launch_new_instance()
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/traitlets/config/application.py", line 658, in launch_instance
app.start()
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/ipykernel/kernelapp.py", line 505, in start
self.io_loop.start()
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/tornado/platform/asyncio.py", line 148, in start
self.asyncio_loop.run_forever()
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/asyncio/base_events.py", line 438, in run_forever
self._run_once()
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/asyncio/base_events.py", line 1451, in _run_once
handle._run()
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/asyncio/events.py", line 145, in _run
self._callback(*self._args)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/tornado/ioloop.py", line 690, in <lambda>
lambda f: self._run_callback(functools.partial(callback, future))
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/tornado/ioloop.py", line 743, in _run_callback
ret = callback()
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/tornado/gen.py", line 787, in inner
self.run()
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/tornado/gen.py", line 748, in run
yielded = self.gen.send(value)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/ipykernel/kernelbase.py", line 365, in process_one
yield gen.maybe_future(dispatch(*args))
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/tornado/gen.py", line 209, in wrapper
yielded = next(result)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/ipykernel/kernelbase.py", line 272, in dispatch_shell
yield gen.maybe_future(handler(stream, idents, msg))
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/tornado/gen.py", line 209, in wrapper
yielded = next(result)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/ipykernel/kernelbase.py", line 542, in execute_request
user_expressions, allow_stdin,
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/tornado/gen.py", line 209, in wrapper
yielded = next(result)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/ipykernel/ipkernel.py", line 294, in do_execute
res = shell.run_cell(code, store_history=store_history, silent=silent)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/ipykernel/zmqshell.py", line 536, in run_cell
return super(ZMQInteractiveShell, self).run_cell(*args, **kwargs)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/IPython/core/interactiveshell.py", line 2855, in run_cell
raw_cell, store_history, silent, shell_futures)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/IPython/core/interactiveshell.py", line 2881, in _run_cell
return runner(coro)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/IPython/core/async_helpers.py", line 68, in _pseudo_sync_runner
coro.send(None)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/IPython/core/interactiveshell.py", line 3058, in run_cell_async
interactivity=interactivity, compiler=compiler, result=result)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/IPython/core/interactiveshell.py", line 3249, in run_ast_nodes
if (await self.run_code(code, result, async_=asy)):
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/IPython/core/interactiveshell.py", line 3326, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "<ipython-input-5-36afd53919f4>", line 4, in <module>
data = audio_ops.decode_wav(audio_binary, desired_channels=1)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/tensorflow/python/ops/gen_audio_ops.py", line 227, in decode_wav
desired_samples=desired_samples, name=name)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/tensorflow/python/framework/op_def_library.py", line 788, in _apply_op_helper
op_def=op_def)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/tensorflow/python/util/deprecation.py", line 507, in new_func
return func(*args, **kwargs)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/tensorflow/python/framework/ops.py", line 3616, in create_op
op_def=op_def)
File "/Users/minimaci73/anaconda3/envs/Samples/lib/python3.6/site-packages/tensorflow/python/framework/ops.py", line 2005, in __init__
self._traceback = tf_stack.extract_stack()
我找不到坠机的原因。我的tensorflow读取文件的代码如下
import tensorflow as tf
from tensorflow.contrib.framework.python.ops import audio_ops
file = "/Users/minimaci73/Downloads/1567690231185.wav" #wav file path
audio_binary = tf.read_file(file)
data = audio_ops.decode_wav(audio_binary, desired_channels=1)
pcm16_data = tf.Session().run(data)
pcm16_data = pcm16_data[0]
print(pcm16_data)
目前没有回答
相关问题 更多 >
编程相关推荐