길이가 5 초에서 7 초인 약 40 개의 파일로 구성된 작은 데이터베이스에서 비슷한 wav 파일을 찾아야합니다.작은 wav에서 C# 오디오 지문
이 wav 파일은 전화 서비스 제공 업체가 전화를 걸었을 때 제공하는 레코드입니다.
예 :
이내 바늘이 1 ~ 2 초 길이입니다.
모든 웨이브는 pcm이며 8000hz 모노로 인코딩 된입니다.
나는 내 방식 잘못 무엇 성공
https://github.com/protyposis/Aurio
// Setup the sources
var audioTrack1 = new AudioTrack(new FileInfo("Full5secs.wav"));
var audioTrack2 = new AudioTrack(new FileInfo("Part2Secs.wav"));
// Setup the fingerprint generator
var defaultProfile = FingerprintGenerator.GetProfiles()[0];
var generator = new FingerprintGenerator(defaultProfile);
// Create a fingerprint store
var store = new FingerprintStore(defaultProfile);
// Setup the generator event listener (a subfingerprint is a hash with its temporal index)
generator.SubFingerprintsGenerated += (sender, e) => {
var progress = (double)e.Index/e.Indices;
var hashes = e.SubFingerprints.Select(sfp => sfp.Hash);
store.Add(e);
};
// Generate fingerprints for both tracks
generator.Generate(audioTrack1);
generator.Generate(audioTrack2);
// Check if tracks match
if (store.FindAllMatches().Count > 0) {
Console.WriteLine("overlap detected!");
}
없이 Aurio.AudioFingerPrint를 사용하여 시도?
작은 wav에 대해 누락 된 구성을 아는 사람이 있습니까?
그런데 '다른 도서관'을 묻는 것은 일반적으로 오프 주제로 간주되어 질문을 보류하거나 닫게합니다. 나는 그것에 대해 생각했지만,이 포스트의 경우 요점은 제시된 코드 조각이 일치하는 것을 찾지 못하는 이유입니다. 그래서 완벽하게 주제가 있습니다. 도서관에 묻는 것만으로도 조심하십시오. 시간이 지남에 따라 라이브러리는 변화하고 진화하며 죽습니다. 그렇기 때문에 그러한 질문이 "훌륭하게"만들어지지 않는 이유입니다. 도서관에 대한 질문에 "완전히 대답 할"수있는 방법이 없습니다. 새로운 도서관이나 다른 도서관이 더 좋다고 믿는 사람이 항상 있습니다. – quetzalcoatl
핑거 프린터로 이상적인 사건을 찾을 수 있는지 확인 했습니까? 40 개의 오디오 파일 중 하나를 가져 와서 그 파일을 바늘로 사용하여 프로그램을 실행하십시오. 완벽한 입력으로 모든 (작동중인) 지문 서비스는 적어도 하나의 일치를 반환해야합니다. 그것이 완벽한 바늘에서 작동하지만 실제 입력에 영향을 미치지 않는다면 구성의 문제 일 수도 있고 코드 자체가 아닙니다 (예 : 너무 낮은/높은 시간 등). – quetzalcoatl
"다른 도서관"질문을 삭제 해 주셔서 감사합니다. – Fraga