• 파일시티 이벤트
  • LF몰 이벤트
  • 서울좀비 이벤트
  • 탑툰 이벤트
  • 닥터피엘 이벤트
  • 아이템베이 이벤트
  • 아이템매니아 이벤트

매트랩(matlab)을 이용한 wave(audio) 파일의 합성과 분석 실험 [최종결과)

*현*
최초 등록일
2006.09.14
최종 저작일
2006.08
16페이지/워드파일 MS 워드
가격 1,500원 할인쿠폰받기
다운로드
장바구니

소개글

이 실험 레포트는 매트랩을 이용해서 오디오 파일을 합성하는 실험의
최종 결과 레포트 입니다.
오디오 파일을 직접 녹음해서 이 파일을 배경음악과 합성하거나
fade in, fade out을 구현하여 적절하게 합성하는 실험입니다.
fade in, fade out 이 전체에 거쳐서 적용되는 것이 아닌 사람이 말을 안할때만
배경음악이 fade in, fade out을 통해서 나타나는 다소 어려운 코딩이 들어있습니다.
모든 실험의 매트랩 코딩, 매트랩 결과 그래프, 결과 분석이 포함되어 있습니다.

목차

다음의 실험은 제공되는 a) 표준 wave file과 b) 자신이 준비한 wave file 에 대해 각각 행하시오. Sound를 합할 때, overflow가 발생하지 않도록 하는 방법을 서술하고 그 방법대로 하시오

Voice와 Music을 합한 Wave file을 생성하시오.

① Fade-In, Fade-out
Voice의 level은 10 sec 간 계속 일정하게, Music의 level은 처음 5 sec 간은 0부터 원래의 값까지 선형적으로 증가하고, 나중의 5 sec 간은 원래의 값부터 0까지 선형적으로 감소하도록 하는, 간단한 형태의 Fade-in, Fade-out을 구현하고 그 결과를 wave file로 만드시오.

② Voice 위주의 합성
Voice의 activity를 측정하여, voice의 level이 작을 때에는 background music 위주로, voice의 level이 어느 이상인 부분에서는 music은 거의 없이 voice 위주로 들리도록 합성하는 방법을 고안하시오. Threshold level의 값과 voice segment의 길이를 여러 경우로 바꾸어가면서 실험하고 그 중에서 제일 좋은 결과를 wave file로 만드시오.

본문내용

overflow가 발생하지 않도록 하는 방법
wavread로 읽은 사운드 데이터는 최대값이 1이다. 따라서 합한 값이 1이 넘으면 overflow가 발생할 것이다. 이 때 overflow가 발생하지 않도록 하기 위해서 합한 값이 1이 넘을 때 1로 다시 할당해 주는 방법을 통해 overflow를 방지 할 수 있다.
위에서 서술한 방법에 따라, 만약 합한 값이 2에 근접하는데(본래의 데이터가 0.9일 수도 있다) 1로 임의 할당하게 되면, 데이터의 훼손으로 볼 수도 있다.
그 데이터의 훼손을 막기 위해 전체 데이터를 최대 값이 1보다 클 경우 최대값으로 나눠 주는 방법으로 overflow를 방지 할 수도 있다. 혹은 일반적으로 스트레오를 모노화 시키는 방법인 데이터의 합을 데이터의 개수로 나눠주는 방식을 택할 수도 있다.
그러나 우리는 첫 번째 방법이 더 낫다고 판단했는데, 그 이유는 최대치를 한정해 주는 방식이 양자화 에러를 필연적으로 유발하고, 일반적인 소리의 경우 1에 비해 무척 낮은 정도의 수치를 보이기 때문이다.

Matlab Code
[music, SampleFrequency, bits] = wavread(`music_hyunbin.wav`);

dt = 1/SampleFrequency;
t = (0:length(music)-1) * dt;
ChangeFrequency=32000;
dt2=1/ChangeFrequency;
t2=(0:length(music)-1) * dt2;
music=resample(music,1/dt2,1/dt);

[voice, SampleFrequency, bits] = wavread(`hyunbin.wav`);

dt = 1/SampleFrequency;
t = (0:length(voice)-1) * dt;

sum=music+voice;

for i=1:1:320000
if sum(i,1) >1
sum(i,1)=1;
end
end
subplot(2,2,1);plot(t,voice);
subplot(2,2,2);plot(t,music);
subplot(2,2,3);plot(t,sum);
wavwrite(sum,SampleFrequency,`sum_hyunbin.wav`);

참고 자료

없음

자료후기(1)

*현*
판매자 유형Bronze개인

주의사항

저작권 자료의 정보 및 내용의 진실성에 대하여 해피캠퍼스는 보증하지 않으며, 해당 정보 및 게시물 저작권과 기타 법적 책임은 자료 등록자에게 있습니다.
자료 및 게시물 내용의 불법적 이용, 무단 전재∙배포는 금지되어 있습니다.
저작권침해, 명예훼손 등 분쟁 요소 발견 시 고객센터의 저작권침해 신고센터를 이용해 주시기 바랍니다.
환불정책

해피캠퍼스는 구매자와 판매자 모두가 만족하는 서비스가 되도록 노력하고 있으며, 아래의 4가지 자료환불 조건을 꼭 확인해주시기 바랍니다.

파일오류 중복자료 저작권 없음 설명과 실제 내용 불일치
파일의 다운로드가 제대로 되지 않거나 파일형식에 맞는 프로그램으로 정상 작동하지 않는 경우 다른 자료와 70% 이상 내용이 일치하는 경우 (중복임을 확인할 수 있는 근거 필요함) 인터넷의 다른 사이트, 연구기관, 학교, 서적 등의 자료를 도용한 경우 자료의 설명과 실제 자료의 내용이 일치하지 않는 경우

이런 노하우도 있어요!더보기

최근 본 자료더보기
탑툰 이벤트
매트랩(matlab)을 이용한 wave(audio) 파일의 합성과 분석 실험 [최종결과)
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업
AI 챗봇
2024년 05월 20일 월요일
AI 챗봇
안녕하세요. 해피캠퍼스 AI 챗봇입니다. 무엇이 궁금하신가요?
8:43 오후
New

24시간 응대가능한
AI 챗봇이 런칭되었습니다. 닫기