2014-12-24 4 views
-2

오디오 파일 (.wav/.mp3)을 C#과 같은 바이트 배열로 변환하고 싶습니다. 내 코드는 다음과 같습니다오디오 파일을 matlab의 바이트 배열로 변환하십시오.

string imageName = Guid.NewGuid().ToString() + ".mp3"; 
byte[] file = System.Convert.FromBase64String(Filep); 
File.WriteAllBytes(Server.MapPath("FILE/" + imageName), file); 
return imageName; 
+0

실제로이 작업 중입니다. matlab에서 동일한 프로세스를 수행하고 싶습니다. – dinoos

+0

원시 오디오 데이터를 원하십니까? 아니면 단순히 파일을 열고 데이터에 액세스하기를 원하십니까? – rayryeng

+0

원시 데이터를 원합니다 (오디오를 매트릭스에 저장하십시오) – dinoos

답변

2

원시 오디오 데이터를 읽으려면 audioread을 사용하십시오. 당신은 너무과 같이 호출 :

[y,Fs] = audioread(filename); 

filename이 파일 (.MP3/.wav)을 어떤 반환의 파일 이름 것은 y에 저장된 값의 행렬과 Fs에서 파일의 샘플링 주파수 . y은 행 수가 오디오에 포함 된 샘플 수를 알려주는 행렬이되고 열 수는 오디오의 채널 수를 알려줍니다. 예를 들어 모노 오디오는 단일 열 벡터이며 스테레오 오디오는 2 열 매트릭스입니다. 첫 번째 열은 왼쪽 채널이고 두 번째 열은 오른쪽 채널입니다.

자세한 내용은 위에 링크 된 MathWorks 문서를 확인하십시오.

+0

나는 오디오 파일의 특정 특성 (예 : 주파수 또는 진폭)을 추가로 분석하려고합니다. 샘플링 속도와 샘플링 빈도는 내가 찾고있는 것이 아닙니다. 두 개의 오디오 클립을 일치시키고 싶습니다. 첫 번째는 원본 오디오 클립이고 두 번째는 해당 오디오 클립의 스 니펫입니다. – dinoos

+0

@dinoos - 원래 게시물이 요구하는 것과 비교하여 여기에서 요구하는 것은 ** 동일하지 않습니다 **. 기본적으로 찾고있는 것은 [Shazam] (http://www.shazam.com)과 [SoundHound] (http://www.soundhound.com/)가 이미 수행했습니다. 두 신호의 주파수 분해를 통해 오디오 클립을 함께 맞 춥니 다. FWIW, Shazam 알고리즘은 이미 공개되어 있으며 MATLAB 코드는 http://labrosa.ee.columbia.edu/matlab/fingerprint/에서 볼 수 있습니다. - BTW, 당신이 요구하는 것은 너무 광범위합니다. 우리 중 누구 에게서도 답을 얻지 못할 것입니다. 죄송합니다. 행운을 빕니다! – rayryeng

관련 문제