2013-08-02 2 views
0

У меня есть код в формате MATLAB, который загружает звуковой файл wav и воспроизводит какую-то специальную его часть. он использовал для воспроизведения звука на моем компьютере, но теперь звука нет. алгоритм работает правильно и показывает результаты, но молча, т. е. не воспроизводит звук. Я рассматриваю его на своем ноутбуке, и он работает правильно и играет звук. я не знаю, что делать?
Единственное, что я сделал, и что может быть вызвано проблемой: у меня были две версии matlab на моем компьютере: matlab 7.1 и matlab r2013a (8.1), я удалил matlab 7.1, действительно ли это вызвало проблема?
i переустановить matlab 7.1, но это не помогло.
MATLAB не может воспроизводить звук на всех, например, я попробовать этот код, но он не будет играть звук:
matlab не воспроизводит звук

[y,Fs] = audioread('1.wav'); 
sound(y,Fs); 

и код, который я работал с является: silence removal

+0

Вы построили 'y' как чек? –

+0

Каков результат daqhwinfo ('winsound')? – nkjt

+0

@ Мендо, да, я заговорю, никаких проблем. – samdean

ответ

0

Как выход daqhwinfo («winsound») показывает:

InstalledBoardIds: {'0' '1'}

Это означает, что Matlab видит больше, чем одна звуковая карта/возможный аудиовыход. Я полагаю, он по умолчанию будет считаться «0». Посмотрите содержимое «BoardNames» и «ObjectConstructorName», чтобы определить, что происходит. Вы можете попробовать (для каждого BoardID):

load handel; 
% last input for audioplayer can be 1 or 0 to choose which audio output 
player = audioplayer(y, Fs, 16, 1); 
play(player); 

Другим способом проверить:

ao = analogoutput('winsound',0); %should be default device 
ao2 = analogoutput('winsound',1); 

out = daqhwinfo(ao) 
out2 = daqhwinfo(ao2) 

Сравните это со значениями вы получаете от вашего ноутбука, где звук делает работу.

+0

Ошибка при использовании аудиоплеера (строка 223) Не удалось найти указанное устройство – samdean

+0

Я проверил все, кроме имени устройства, то же самое. На моем ноутбуке есть только одно звуковое устройство, но два на моем компьютере. «0», который по умолчанию является правильным аудиоустройством моего компьютера, а «1» - «Модем № 0 Линейное воспроизведение» , который, я думаю, я использую его для своей ТВ-карты. – samdean

+0

, как вы сказали, я проверил все аудиовыходы моего компьютера, и звук исходил от одного из его 6 адаптеров, но не основного выхода моего компьютера. Я подключаю динамик к этому адаптеру, но теперь у меня нет звука с моего компьютера.как я могу сделать matlab, чтобы сделать основной выходной звук pc его выходным устройством (и спасибо за вашу помощь) – samdean

1

Я долгое время боролся с этой проблемой. Мой ноутбук играл звук просто отлично, но

info = audiodevinfo 

возвратил пустую структуру.

Оказалось, что это проблема с файловым пути.

Я сохранил свой путь пользовательского файла, а затем восстановлен путь файла по умолчанию:

restoredefaultpath 
rehash toolboxcache 

Я медленно добавляемые вложенные папки обратно в FilePath и он работал отлично.

Смежные вопросы