亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? readsph.m

?? voice box tool box for matlab
?? M
字號:
function [y,fs,ffx]=readsph(filename,mode,nmax,nskip)
%READSPH  Read a SPHERE/TIMIT format sound file [Y,FS,FFX]=(FILENAME,MODE,NMAX,NSKIP)
%
% Input Parameters:
%
%	FILENAME gives the name of the file (with optional .SPH extension) or alternatively
%                 can be the FFX output from a previous call to READSPH having the 'f' mode option
%	MODE		specifies the following (*=default):
%
%    Scaling: 's'    Auto scale to make data peak = +-1 (use with caution if reading in chunks)
%             'r'    Raw unscaled data (integer values)
%             'p' *	Scaled to make +-1 equal full scale
%             'o'    Scale to bin centre rather than bin edge (e.g. 127 rather than 127.5 for 8 bit values)
%                     (can be combined with n+p,r,s modes)
%             'n'    Scale to negative peak rather than positive peak (e.g. 128.5 rather than 127.5 for 8 bit values)
%                     (can be combined with o+p,r,s modes)
%   Format    'l'    Little endian data (Intel,DEC) (overrides indication in file)
%             'b'    Big endian data (non Intel/DEC) (overrides indication in file)
%   File I/O: 'f'    Do not close file on exit
%             'd'    Look in data directory: voicebox('dir_data')
%
%	NMAX     maximum number of samples to read (or -1 for unlimited [default])
%	NSKIP    number of samples to skip from start of file
%               (or -1 to continue from previous read when FFX is given instead of FILENAME [default])
%
% Output Parameters:
%
%	Y        data matrix of dimension (samples,channels)
%	FS       sample frequency in Hz
%	FFX      Cell array containing
%
%     {1}     filename
%     {2}     header information
%        {1}  first header field name
%        {2}  first header field value
%     {3}     format string (e.g. NIST_1A)
%     {4}(1)  file id
%        (2)  current position in file
%        (3)  dataoff	byte offset in file to start of data
%        (4)  order  byte order (l or b)
%        (5)  nsamp	number of samples
%        (6)  number of channels
%        (7)  nbytes	bytes per data value
%        (8)  bits	number of bits of precision
%        (9)  fs	sample frequency
%		 (10) min value
%        (11) max value
%        (12) coding: 0=PCM,1=uLAW + 0=no compression,10=shorten,20=wavpack,30=shortpack
%        (13) file not yet decompressed
%     {5}     temporary filename
%
%   If no output parameters are specified, header information will be printed.
%   To decode shorten-encoded files, the program shorten.exe must be in th same directory as this m-file 
%

%	   Copyright (C) Mike Brookes 1998
%      Version: $Id: readsph.m,v 1.6 2008/03/26 09:18:05 dmb Exp $
%
%   VOICEBOX is a MATLAB toolbox for speech processing.
%   Home page: http://www.ee.ic.ac.uk/hp/staff/dmb/voicebox/voicebox.html
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%   This program is free software; you can redistribute it and/or modify
%   it under the terms of the GNU General Public License as published by
%   the Free Software Foundation; either version 2 of the License, or
%   (at your option) any later version.
%
%   This program is distributed in the hope that it will be useful,
%   but WITHOUT ANY WARRANTY; without even the implied warranty of
%   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
%   GNU General Public License for more details.
%
%   You can obtain a copy of the GNU General Public License from
%   http://www.gnu.org/copyleft/gpl.html or by writing to
%   Free Software Foundation, Inc.,675 Mass Ave, Cambridge, MA 02139, USA.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

persistent BYTEORDER
codes={'sample_count'; 'channel_count';  'sample_n_bytes';'sample_sig_bits'; 'sample_rate'; 'sample_min'; 'sample_max'};
codings={'pcm'; 'ulaw'};
compressions={',embedded-shorten-';',embedded-wavpack-'; ',embedded-shortpack-'};
if isempty(BYTEORDER) BYTEORDER='l'; end
if nargin<1 error('Usage: [y,fs,hdr,fidx]=READSPH(filename,mode,nmax,nskip)'); end
if nargin<2 mode='p';
else mode = [mode(:).' 'p'];
end
k=find((mode>='p') & (mode<='s'));
mno=all(mode~='o');                      % scale to input limits not output limits
sc=mode(k(1)); 
if any(mode=='l') BYTEORDER='l';
elseif any(mode=='b') BYTEORDER='b';
end
if nargout
    ffx=cell(5,1);
    if ischar(filename)
        if any(mode=='d')
        filename=fullfile(voicebox('dir_data'),filename);
    end
        fid=fopen(filename,'rb',BYTEORDER);
        if fid == -1
            fn=[filename,'.sph'];
            fid=fopen(fn,'rb',BYTEORDER);
            if fid ~= -1 filename=fn; end
        end
        if fid == -1 
            error(sprintf('Can''t open %s for input',filename)); 
        end
        ffx{1}=filename;
    else
        if iscell(filename)
            ffx=filename;
        else
            fid=filename;
        end
    end
    
    if isempty(ffx{4});
        fseek(fid,0,-1);					
        str=char(fread(fid,16)');
        if str(8) ~= 10 | str(16) ~= 10 fclose(fid); error(sprintf('File does not begin with a SPHERE header')); end
        ffx{3}=str(1:7);
        hlen=str2num(str(9:15));
        hdr={};
        while 1
            str=fgetl(fid);
            if str(1) ~= ';'
                [tok,str]=strtok(str);
                if strcmp(tok,'end_head') break; end
                hdr(end+1,1)={tok};
                [tok,str]=strtok(str);
                if tok(1) ~= '-' error('Missing ''-'' in SPHERE header'); end
                if tok(2)=='s'
                    hdr(end,2)={str(2:str2num(tok(3:end))+1)};
                elseif tok(2)=='i'
                    hdr(end,2)={sscanf(str,'%d',1)};
                else
                    hdr(end,2)={sscanf(str,'%f',1)};
                end
            end
        end
        i=find(strcmp(hdr(:,1),'sample_byte_format'));
        if ~isempty(i)
            bord=char('b'+('l'-'b')*(hdr{i,2}(1)=='0'));
            if bord ~= BYTEORDER & mode~='b' & mode ~='l'
                BYTEORDER=bord;
                fclose(fid);
                fid=fopen(filename,'rb',BYTEORDER);
            end
        end
        i=find(strcmp(hdr(:,1),'sample_coding'));
        icode=0;                % initialize to PCM coding
        if ~isempty(i)
            icode=-1;                   % unknown code
            scode=hdr{i,2};
            nscode=length(scode);
            for j=1:length(codings)
                lenj=length(codings{j});
                if strcmp(scode(1:min(nscode,lenj)),codings{j})
                    if nscode>lenj
                        for k=1:length(compressions)
                            lenk=length(compressions{k});
                            if strcmp(scode(lenj+1:min(lenj+lenk,nscode)),compressions{k})
                                icode=10*k+j-1;
                                break;
                            end
                        end
                    else
                        icode=j-1;
                    end
                    break;
                end
            end
        end
        
        info=[fid; 0; hlen; double(BYTEORDER); 0; 1; 2; 16; 1 ; 1; -1; icode];
        for j=1:7
            i=find(strcmp(hdr(:,1),codes{j}));
            if ~isempty(i)
                info(j+4)=hdr{i,2};
            end
        end
        if ~info(5)
            fseek(fid,0,1);
            info(5)=floor((ftell(fid)-info(3))/(info(6)*info(7)));
        end
        ffx{2}=hdr;
        ffx{4}=info;
    end
    info=ffx{4};
    if nargin<4 nskip=info(2);
    elseif nskip<0 nskip=info(2);
    end
    
    ksamples=info(5)-nskip;
    if nargin>2
        if nmax>=0
            ksamples=min(nmax,ksamples);
        end
    end
    
    if ksamples>0
        fid=info(1);
        if icode>=10 & ~length(ffx{5})
            fclose(fid);
            dirt=voicebox('dir_temp');
            [fnp,fnn,fne,fnv]=fileparts(filename);
            filetemp=fullfile(dirt,[fnn fne fnv]);
            if exist(filetemp)                          % need to explicitly delete old file since shorten makes read-only
                doscom=['del /f ' filetemp];
                if dos(doscom) % run the program
                    error(sprintf('Error running DOS command: %s',doscom));
                end
            end
            if floor(icode/10)==1               % shorten
                doscom=['"' voicebox('shorten') '"' ' -x -a ' num2str(info(3)) ' "' filename '" "' filetemp '"'];
                %                     fprintf(1,'Executing: %s\n',doscom);
                if dos(doscom) % run the program
                    error(sprintf('Error running DOS command: %s',doscom));
                end
            else
                error('unknown compression format');
            end
            ffx{5}=filetemp;
            fid=fopen(filetemp,'r',BYTEORDER);
            if fid<0 error(sprintf('Cannot open decompressed file %s',filetemp)); end
            info(1)=fid;                            % update fid
        end
        info(2)=nskip+ksamples;
        pk=pow2(0.5,8*info(7))*(1+(mno/2-all(mode~='n'))/pow2(0.5,info(8)));  % use modes o and n to determine effective peak
        fseek(fid,info(3)+info(6)*info(7)*nskip,-1);
        nsamples=info(6)*ksamples;
        if info(7)<3
            if info(7)<2
                y=fread(fid,nsamples,'uchar');
                y=y-128;
            else
                y=fread(fid,nsamples,'short');
            end
        else
            if info(7)<4
                y=fread(fid,3*nsamples,'uchar');
                y=reshape(y,3,nsamples);
                y=[1 256 65536]*y-pow2(fix(pow2(y(3,:),-7)),24);
            else
                y=fread(fid,nsamples,'long');
            end
        end
        if sc ~= 'r'
            if sc=='s' 
                if info(10)>info(11)
                    info(10)=min(y);
                    info(11)=max(y);
                end
                sf=1/max(max(abs(info(10:11))),1);
            else sf=1/pk;
            end
            y=sf*y;
        end
        if info(6)>1 y = reshape(y,info(6),ksamples).'; end
    else
        y=[];
    end
    
    if mode~='f' 
        fclose(fid); 
        info(1)=-1;
        if length(ffx{5})
            doscom=['del /f ' ffx{5}];
            if dos(doscom) % run the program
                error(sprintf('Error running DOS command: %s',doscom));
            end
            ffx{5}=[];
        end
    end
    ffx{4}=info;
    fs=info(9);
else
    [y1,fs,ffx]=readsph(filename,mode,0);
    info=ffx{4};
    if ~isempty(ffx{1}) fprintf(1,'Filename: %s\n',ffx{1}); end
    fprintf(1,'Sphere file type: %s\n',ffx{3});
    fprintf(1,'Duration = %ss: %d channel * %d samples @ %sHz\n',sprintsi(info(5)/info(9)),info(6),info(5),sprintsi(info(9)));
end




?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧洲综合另类| 国产成人av自拍| 国产一区二区三区免费观看| 色又黄又爽网站www久久| 精品国产乱码久久久久久1区2区 | 亚洲国产三级在线| 国产精品一区免费在线观看| 欧美精品三级在线观看| 国产精品免费视频网站| 久草中文综合在线| 欧美日韩高清不卡| 亚洲精品视频在线| 国产成人av自拍| 欧美精品一区二区三区蜜桃视频| 天堂成人国产精品一区| 一本色道综合亚洲| 国产精品福利在线播放| 国产一区二区0| 精品免费一区二区三区| 麻豆91在线看| 日韩午夜激情视频| 免费观看久久久4p| 91精品国产91久久久久久一区二区| 亚洲精品视频免费看| 国产精品护士白丝一区av| 91丨九色丨尤物| 色噜噜夜夜夜综合网| 国产精品天天摸av网| 国产精品456| 久久久影视传媒| 国产精品77777| 国产精品女同互慰在线看| 国产乱码精品一区二区三区五月婷 | 97国产一区二区| 久久久久88色偷偷免费| 国产成人丝袜美腿| 欧美国产一区二区| 99精品欧美一区二区蜜桃免费| 国产精品久久久久久久岛一牛影视| 成人少妇影院yyyy| 亚洲欧洲成人自拍| 欧美性xxxxx极品少妇| 亚洲sss视频在线视频| 在线播放国产精品二区一二区四区| 午夜伦理一区二区| 日韩一级免费一区| 国产一区日韩二区欧美三区| 亚洲国产精品v| 91亚洲午夜精品久久久久久| 一区二区三区在线视频观看58| 欧美亚洲国产一区在线观看网站 | 亚洲免费大片在线观看| 欧美午夜精品久久久久久孕妇 | 一区二区三区av电影| 在线欧美一区二区| 日本不卡123| 中文字幕第一页久久| 在线视频国产一区| 美女网站在线免费欧美精品| 国产日韩亚洲欧美综合| 欧美视频中文字幕| 精品无码三级在线观看视频| 国产精品国产三级国产普通话99 | 免费的国产精品| 欧美激情在线观看视频免费| 在线影视一区二区三区| 蜜桃av一区二区三区电影| 久久久久久久久久美女| 在线观看国产日韩| 黄色小说综合网站| 一区二区理论电影在线观看| 91久久精品一区二区二区| 性做久久久久久免费观看| 欧美激情在线一区二区| 在线不卡免费av| av网站一区二区三区| 精品中文字幕一区二区小辣椒| 亚洲青青青在线视频| 久久亚洲精品小早川怜子| 在线视频一区二区免费| 国产精品一区不卡| 免费人成网站在线观看欧美高清| 亚洲人成网站影音先锋播放| 久久久国产精品不卡| 欧美美女直播网站| 99九九99九九九视频精品| 美日韩一级片在线观看| 亚洲国产乱码最新视频| 国产精品毛片大码女人| 久久亚洲一区二区三区四区| 欧美一级精品在线| 欧美日韩在线播| 成人av网址在线观看| 国模娜娜一区二区三区| 喷水一区二区三区| 亚洲成人在线免费| 一二三区精品福利视频| 国产精品久久久久9999吃药| 久久精品综合网| 欧美xxxxxxxx| 精品久久久久久最新网址| 欧美一卡2卡三卡4卡5免费| 色噜噜狠狠一区二区三区果冻| 成人a区在线观看| 成人激情小说网站| 国产成人自拍网| 国产在线不卡一卡二卡三卡四卡| 日韩精品乱码免费| 五月婷婷久久丁香| 亚洲国产日韩综合久久精品| 亚洲一区在线观看视频| 亚洲午夜久久久久久久久电影网| 一区二区三区欧美视频| 亚洲一区中文在线| 天天综合色天天综合色h| 天涯成人国产亚洲精品一区av| 五月天激情综合| 水野朝阳av一区二区三区| 日韩成人av影视| 久久69国产一区二区蜜臀| 国产乱人伦精品一区二区在线观看 | 久久精品人人做人人爽人人 | 日韩一区二区在线看| 欧美第一区第二区| 久久久99免费| 国产精品久久久久久久久免费相片| 国产精品少妇自拍| 亚洲欧美日韩电影| 亚洲高清不卡在线| 久久99日本精品| 北条麻妃一区二区三区| 91香蕉视频黄| 欧美日韩一区三区四区| 日韩欧美一区中文| 中文字幕 久热精品 视频在线 | 欧美一区午夜视频在线观看| 精品欧美一区二区久久| 中文字幕一区二区三区不卡在线| 亚洲美女一区二区三区| 日日夜夜精品免费视频| 国产xxx精品视频大全| 在线观看亚洲一区| 精品国产乱码久久久久久图片 | 国产欧美精品国产国产专区| 亚洲视频中文字幕| 男人的天堂亚洲一区| 处破女av一区二区| 欧美日韩国产高清一区二区三区| 欧美精品一区二区三区高清aⅴ| 中文字幕在线一区免费| 午夜久久久久久电影| 国产.精品.日韩.另类.中文.在线.播放| 91蜜桃在线免费视频| 精品国产一区二区三区四区四| 1000部国产精品成人观看| 日本视频中文字幕一区二区三区| 成人晚上爱看视频| 欧美一区二区女人| 亚洲黄一区二区三区| 国产高清不卡二三区| 欧美电影一区二区三区| 国产精品理伦片| 国内久久精品视频| 欧美酷刑日本凌虐凌虐| 成人欧美一区二区三区白人| 精品亚洲国内自在自线福利| 欧美视频一区二区三区四区| 亚洲国产成人一区二区三区| 日精品一区二区| 色猫猫国产区一区二在线视频| 久久久精品人体av艺术| 蜜臀久久99精品久久久画质超高清 | 色综合天天做天天爱| 久久免费视频一区| 美女mm1313爽爽久久久蜜臀| 日本伦理一区二区| 国产精品久久毛片a| 国产精品一区二区不卡| 日韩欧美亚洲国产另类| 天天综合天天综合色| 欧美亚洲自拍偷拍| 亚洲日本乱码在线观看| 不卡一区二区在线| 国产精品区一区二区三| 国产精品一区专区| 欧美精品一区男女天堂| 久久丁香综合五月国产三级网站| 欧美日韩精品三区| 午夜精品久久久| 6080日韩午夜伦伦午夜伦| 亚洲线精品一区二区三区| 91蜜桃在线观看| 又紧又大又爽精品一区二区| 波多野结衣视频一区| 国产日韩精品一区二区三区| 国产麻豆精品在线观看| 精品久久久久香蕉网| 美女在线一区二区| 精品国产免费久久| 国产精品伊人色|