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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.