jieshou2.m

来自「这是一段G.729A的编码和解码仿真程序」· M 代码 · 共 51 行

M
51
字号
flushinput(t);
flushinput(u);
ao=analogoutput('winsound');
chans=addchannel(ao,1);
set(ao,'SampleRate',8000);
set(ao,'TriggerType','Manual');
out=zeros(5,800);
%DATA=[];
QuanJuValuedecode();
i=1;
while(1)
    if get(t,'BytesAvailable')>=800
        if i<=5
            data=fread(t,800,'float');
            %data=mod(data,2);
            data=data/(2^15);
            %DATA=[DATA,data'];
            out(i,:)=data';
            i=i+1;        
        else
            i=1;
            %speechout=decoding_main([out(1,:),out(2,:),out(3,:),out(4,:),out(5,:)]);
            while(strcmp(get(ao,'Running'),'On'))
            end
            %putdata(ao,speechout');
            putdata(ao,[out(1,:),out(2,:),out(3,:),out(4,:),out(5,:)]');
            start(ao);
            trigger(ao);
        end      
    end
    if get(u,'BytesAvailable')>0
        if get(t,'BytesAvailable')>=800
            data=fread(t,800,'float');
            %data=mod(data,2);
            data=data/(2^15);
            %DATA=[DATA,data'];
            %speechout=decoding_main(data');
            while(strcmp(get(ao,'Running'),'On'))
            end
            %putdata(ao,speechout');
            putdata(ao,data');
            start(ao);
            trigger(ao); 
        end
        break;
    end
end      
wait(ao,2)
delete(ao);
clear ao;
clear global;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?