exponenta event banner

информация

Получить совокупный перерасход и недозапуск

Описание

пример

S = info(asyncBuff) возвращает структуру, S, содержащий кумулятивную информацию о превышении и недоработке dsp.AsyncBuffer object™ системы, asyncBuff.

Примеры

свернуть все

dsp.AsyncBuffer Системная object™ поддерживает считывание переменных размеров кадров из буфера.

Создать dsp.AsyncBuffer Системный объект. Входной сигнал представляет собой белый гауссов шум со средним значением 0, стандартным отклонением 1 и размером кадра 512 выборок. Запишите входные данные в буфер с помощью write способ.

asyncBuff = dsp.AsyncBuffer;
input = randn(512,1);
write(asyncBuff,input);
plot(input)
hold on

Figure contains an axes. The axes contains an object of type line.

Сохранить данные, считанные из буфера в outTotal.

Постройте график входного сигнала и данных, считываемых из буфера на том же графике. Считывайте данные из буфера до тех пор, пока не будут считаны все образцы. В каждой итерации цикла randi определяет количество считываемых выборок. Поэтому сигнал считывается как сигнал переменного размера. prevIndex переменная отслеживает предыдущее значение индекса, содержащее данные.

outTotal = zeros(size(input));
prevIndex = 0;
while asyncBuff.NumUnreadSamples ~= 0
    numToRead = randi([1,64]);
    out = read(asyncBuff,numToRead);
    outTotal(prevIndex+1:prevIndex+numToRead) = out;
    prevIndex = prevIndex+numToRead;
end
plot(outTotal,'r')
hold off

Figure contains an axes. The axes contains 2 objects of type line.

Убедитесь, что входные данные и данные, считанные из буфера (за исключением недозаполненных выборок, если таковые имеются), совпадают. Совокупное количество выборок с превышением и с превышением в буфере определяется info функция.

S = info(asyncBuff)
S = struct with fields:
     CumulativeOverrun: 0
    CumulativeUnderrun: 28

CumulativeUnderrun В поле отображается количество недоиспользуемых выборок на канал. Занижение выполняется при попытке прочитать больше образцов, чем доступно.

Входные аргументы

свернуть все

Асинхронный буфер, указанный как dsp.AsyncBuffer Системный объект.

Выходные аргументы

свернуть все

Кумулятивная информация о превышении и недоработке, возвращенная в виде структуры. Поля для S описаны в таблице.

ОбластьСтоимость
CumulativeOverrun

Число переполнений выборок на канал с момента последнего вызова reset. Число перезаписанных выборок - это число перезаписанных непрочитанных выборок.

CumulativeUnderrun

Количество недозаходов выборок на канал с момента последнего вызова reset. Занижение выполняется при попытке прочитать больше образцов, чем доступно.

CumulativeOverrun и CumulativeUnderrun свойства являются типом данных int32.

См. также

Функции

Объекты

Представлен в R2017a