Partition datastore и возврат на секционированный фрагмент
partitions datastore subADS
= partition(ADS
,numPartitions
,index
)ADS
в количество частей, заданное numPartitions
и возвращает раздел, соответствующий index
.
Укажите путь к файлу для выборок аудио, включенных в Audio Toolbox™. Создайте audio datastore, который указывает на указанную папку.
folder = fullfile(matlabroot,'toolbox','audio','samples'); ADS = audioDatastore(folder)
ADS = audioDatastore with properties: Files: { ' .../build/matlab/toolbox/audio/samples/Ambiance-16-44p1-mono-12secs.wav'; ' .../matlab/toolbox/audio/samples/AudioArray-16-16-4channels-20secs.wav'; ' .../toolbox/audio/samples/ChurchImpulseResponse-16-44p1-mono-5secs.wav' ... and 31 more } Folders: { '/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples' } AlternateFileSystemRoots: {} OutputDataType: 'double' Labels: {} SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"
Разделите datastore на три части.
subADS1 = partition(ADS,3,1)
subADS1 = audioDatastore with properties: Files: { ' .../build/matlab/toolbox/audio/samples/Ambiance-16-44p1-mono-12secs.wav'; ' .../matlab/toolbox/audio/samples/AudioArray-16-16-4channels-20secs.wav'; ' .../toolbox/audio/samples/ChurchImpulseResponse-16-44p1-mono-5secs.wav' ... and 9 more } Folders: { '/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples' } AlternateFileSystemRoots: {} OutputDataType: 'double' Labels: {} SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"
subADS2 = partition(ADS,3,2)
subADS2 = audioDatastore with properties: Files: { ' .../matlab/toolbox/audio/samples/JetAirplane-16-11p025-mono-16secs.wav'; ' .../build/matlab/toolbox/audio/samples/Laughter-16-8-mono-4secs.wav'; ' .../matlab/toolbox/audio/samples/MainStreetOne-16-16-mono-12secs.wav' ... and 8 more } Folders: { '/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples' } AlternateFileSystemRoots: {} OutputDataType: 'double' Labels: {} SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"
subADS3 = partition(ADS,3,3)
subADS3 = audioDatastore with properties: Files: { ' .../matlab/toolbox/audio/samples/RockGuitar-16-96-stereo-72secs.flac'; ' .../build/matlab/toolbox/audio/samples/SingingAMajor-16-mono-18secs.ogg'; ' .../build/matlab/toolbox/audio/samples/SoftGuitar-44p1_mono-10mins.ogg' ... and 8 more } Folders: { '/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples' } AlternateFileSystemRoots: {} OutputDataType: 'double' Labels: {} SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"
Укажите путь к файлу для выборок аудио, включенных в Audio Toolbox™. Создайте audio datastore, который указывает на указанную папку.
folder = fullfile(matlabroot,'toolbox','audio','samples'); ADS = audioDatastore(folder);
Получите количество разделов по умолчанию для ADS
.
n = numpartitions(ADS);
Разделите datastore на количество разделов по умолчанию и верните datastore, соответствующий первому разделу.
subADS = partition(ADS,n,1);
Считайте данные в subADS
.
while hasdata(subADS) data = read(subADS); end
Укажите путь к файлу для выборок аудио, включенных в Audio Toolbox™. Создайте audio datastore, который указывает на указанную папку.
folder = fullfile(matlabroot,'toolbox','audio','samples'); ADS = audioDatastore(folder);
Разделите datastore по файлам и верните часть, соответствующую второму файлу. subds
содержит один файл.
subds = partition(ADS,'Files',2)
subds = audioDatastore with properties: Files: { ' .../matlab/toolbox/audio/samples/AudioArray-16-16-4channels-20secs.wav' } Folders: { '/mathworks/devel/bat/BR2021ad/build/matlab/toolbox/audio/samples' } AlternateFileSystemRoots: {} OutputDataType: 'double' Labels: {} SupportedOutputFormats: ["wav" "flac" "ogg" "mp4" "m4a"] DefaultOutputFormat: "wav"
Разделите datastore, чтобы облегчить параллельный доступ к доступному параллельному пулу работников.
Укажите путь к файлу для выборок аудио, включенных в Audio Toolbox™. Создайте audio datastore, который указывает на указанную папку.
folder = fullfile(matlabroot,'toolbox','audio','samples'); ADS = audioDatastore(folder);
Возвращает оценку разумного количества разделов для параллельной обработки, учитывая текущий параллельный пул.
pool = gcp; n = numpartitions(ADS,pool);
Разделите audio datastore и считайте данные в каждой части.
parfor ii = 1:n subds = partition(ADS,n,ii); while hasdata(subds) data = read(subds); end end
ADS
- Audio datastoreaudioDatastore
объектAudio datastore, заданный как audioDatastore
объект.
numPartitions
- Количество перегородокКоличество разбиений, заданное в виде положительного целого числа. Использовать numpartitions
оценить разумное значение для numPartitions
.
Типы данных: double
index
- Индекс sub-datastoreИндекс подdatastore, заданный в виде положительного целого числа в область значений [1,
.numPartitions
]
Типы данных: double
filename
- Имя файлаИмя файла, заданное как вектор символов.
Значение filename
должен точно совпадать с именем файла, содержащимся в Files
свойство datastore.
Типы данных: char
subADS
- Выход аудиоданныхaudioDatastore
объектВыход аудиоданных datastore, возвращенный как audioDatastore
объект.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.