Comments (6)
I noticed the same issue when working on DIHARD challenge. I would argue that this is bad practice from DIHARD organizers to use the same name for different files... but now the harm is done :)
The solution based on the additional split
field should work.
I don't foresee any issue with the rest of pyannote
ecosystem (though I might be wrong because I haven't had my morning coffee yet...)
An alternative is to use /path/to/dihard_data/{uri}.flac
as matching pattern and use dev/data/single_channel/flac/DHxxxx
as actual uri
. This might cause an issue with pyannote-metrics.py
evaluation script. In particular, get_hypothesis
should probably be updated to support this kind of uri
mismatch: https://github.com/pyannote/pyannote-metrics/blob/efa42b99f420210e4eb0225a1be972718b0a6bc2/scripts/pyannote-metrics.py#L142-L181
from pyannote-database.
Well, i'm going to try the 'split' method out and see how it goes.
Regarding the alternative method, I gazed intensely at the code but couldn't see anything that would be disturbed by having subpaths as uri's.
from pyannote-database.
In our case at least, I haven't seen the benefit of having the automatic FileFinder
over using fixed paths within a dataset. As a downside, it seems to take some time to find all files for a bigger dataset, slowing startup time.
from pyannote-database.
Just so you know, we decided (someone else from CoML) to just remodel the dataset with a script and use a good ol' "Generic speaker diarization protocols" to save us the hassle of having to implement an actual DB module.
from pyannote-database.
FYI, I am currently working on v2 of pyannote.audio
where you will be able to use your own piece of code in place of FileFinder
, by overriding the "audio" preprocessors.
I am also playing with lazy loading in pyannote.database
so that training starts as soon as possible (without looking for all files first). If you want to try it (and provide me with feedback), simply checkout and install lazy_preprocessors
branch of pyannote.database
.
from pyannote-database.
Closing in preparation of pyannote.database
4.0 which comes with a complete rewrite of custom protocols. See custom branch for details.
from pyannote-database.
Related Issues (20)
- Add support for Python 3.12
- No loader for file with '.rttm' suffix HOT 5
- problem with pyannote HOT 3
- Training the overlap detection : AttributeError: 'PosixPath' object has no attribute 'format' HOT 2
- pyannote-audio sad train fails HOT 3
- Wrapper around various audio dataset libraries HOT 1
- AttributeError: 'PosixPath' object has no attribute 'format' HOT 3
- Bug on database.yml HOT 1
- Error in dataloader : 'PosixPath' object has no attribute 'format' HOT 5
- Multiple preprocessor for same field HOT 5
- Training on Jamendo Corpus HOT 4
- Deprecated plugin system HOT 7
- AttributeError: 'NoneType' object has no attribute 'items' HOT 6
- Add support for SPKR-INFO lines in load_rttm HOT 3
- LABLoader import error HOT 1
- ImportError: cannot import name 'registry' from 'pyannote.database' HOT 3
- Faster RTTMLoader HOT 2
- Speaker tag across rttm files
- Cannot combine several protocols from different databases into one HOT 1
- `LABLoader` raise ValueError("`path` must contain the {uri} placeholder.") even if the placeholder is configured correctly HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pyannote-database.