我正在为 PIC 18F45K42 编写代码,以从 HCSD 卡读取 .wav 文件。我正在使用 MPLAB X IDE v5.20 和 XC v2.05。我正在使用 FATF 库从卡上读取数据。
我可以从卡上读取数据并获得良好的结果,直到组合代表 .wav 文件大小的 4 个字节。
#define BYTE_TO_BINARY_PATTERN "%c%c%c%c%c%c%c%c"
#define BYTE_TO_BINARY(byte) \
(byte & 0x80 ? '1' : '0'), \
(byte & 0x40 ? '1' : '0'), \
(byte & 0x20 ? '1' : '0'), \
(byte & 0x10 ? '1' : '0'), \
(byte & 0x08 ? '1' : '0'), \
(byte & 0x04 ? '1' : '0'), \
(byte & 0x02 ? …Run Code Online (Sandbox Code Playgroud) 如何将从 url 加载的两个 audio.wav 合并或组合成一个新的 .wav 并在网络浏览器中播放并下载?
我有一个 .wav 文件,是我录制自己的声音并讲话了几分钟。假设我想找到我在音频中说“Mike”的确切时间。我研究了语音识别并使用 Google Speech API 进行了一些测试,但我得到的时间戳远不准确。
作为替代方案,我录制了一个非常短的 .wav 文件,我只是说“Mike”。我试图比较这两个 .wav 文件,并找到较长 .wav 文件中所说的“Mike”的每个时间戳。我发现了SleuthEye 的惊人答案
这段代码非常适合查找一个时间戳,但我不知道如何查找多个开始/结束时间:
import numpy as np
import sys
from scipy.io import wavfile
from scipy import signal
snippet = sys.argv[1]
source = sys.argv[2]
# read the sample to look for
rate_snippet, snippet = wavfile.read(snippet);
snippet = np.array(snippet, dtype='float')
# read the source
rate, source = wavfile.read(source);
source = np.array(source, dtype='float')
# resample such that both signals are at the same sampling rate (if required) …Run Code Online (Sandbox Code Playgroud) 如何在wav文件中跟踪没有声音的部分?我想开发的一个小软件是一个wav文件,它认为没有卷区域作为一个重点.程序怎么知道wav文件的音量很低?我将使用Java或MFC.
如何将wav文件的内容转换为数组,以便切割所需的段并使用python将其转换回wav格式?我的概率类似于"ROMANs"概率,我在此站点的帖子中已经看到了..
基本上,我想将不同wav文件的各个部分组合成一个wav文件?如果有其他apporach将内容分成一个阵列并切割部分并合并并再次转换bac?请建议......
编辑:
我更喜欢将波形文件的内容解压缩成数组并通过从wav文件中剪切所需的声音片段进行编辑,因为我正在处理语音处理,并且猜测这种方式以后很容易提高声音的质量. .
可以提出一个方法吗?Plz帮助..
提前致谢.
是否有允许以下内容的组件或代码:录制一个或多个单词并将其保存到可以播放的文件中.该文件必须能够在XP,Vista和Windows 7上播放.该文件可以单独使用,也可以保存到数据源中.
[使用Delphi 7在XP上创建应用程序并使用绝对数据库.]
嗨,我需要从.wave文件中读取SampleRate,SignalFrequency和Amplitude.我怎么能用JavaSound做到这一点?
我想通过使用C++(库libsndfile)获取WAV文件的最高音量级别的值?有关如何做的任何建议?
我已在440Hz音频文件上运行此FFT算法.但我得到一个意想不到的声音频率:510Hz.
byteArray含有的.wav正确地转化为2-双阵列(重新&林份)?虚数组只包含0.xRe阵列的最大值:请看run()功能的最后一部分?也许这是我的错误:是平均还是类似的?那有什么问题呢?
更新:最大和Re + Im在索引= 0,所以我得到频率= 0;
整个项目:包含.wav - >只需打开并运行.
using System;
using System.Net;
using System.IO;
namespace FFT {
/**
* Performs an in-place complex FFT.
*
* Released under the MIT License
*
* Copyright (c) 2010 Gerald T. Beauregard
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), …Run Code Online (Sandbox Code Playgroud) 我正在寻找创建一个WAV fileC,并在这里看到了一个例子.
这看起来不错,但我有兴趣添加两个缓冲区来制作音频立体声(每个耳朵可能有不同的声音).如果我将通道数设置为2,则音频仅从左通道播放(显然是正确的,因为左声道是第一个通道).我已经阅读过我必须将它与正确的频道交错.
不幸的是,我没有找到很多在线帮助创建立体声WAV.
write_little_endian((unsigned int)(data[i]),bytes_per_sample, wav_file);
Run Code Online (Sandbox Code Playgroud)
我试图创建第二个缓冲区,振幅的一半,看看我是否可以交错.
for (j=0; i<BUF_SIZE; i++) {
phase +=freq_radians_per_sample;
buffertwo[i] = (int)((amplitude/2) * sin(phase));;
}
write_wav("test.wav", BUF_SIZE, buffer, buffertwo, S_RATE);
Run Code Online (Sandbox Code Playgroud)
(更改函数以获取两个短整数缓冲区)
而且只是做
write_little_endian((unsigned int)(data[i]),bytes_per_sample, wav_file);
write_little_endian((unsigned int)(datatwo[i]),bytes_per_sample, wav_file);
Run Code Online (Sandbox Code Playgroud)
但这不起作用.理论上这应该是交错的.