new_modify.m

来自「这是一个用于语音信号处理的工具箱」· M 代码 · 共 608 行 · 第 1/2 页

M
608
字号
%Callback function that chooses figures according to
%the voicetype of the segment involved
%Author : Karthik
%Used some functions written by Albert Hsiao
%Modified by D. G. Childers 2/25/98; removed time varying features, etc.

PV = [37 100 404 464];
s2 = 'Source Modification Window';
if exist ('Nframe1')
   Nframe = Nframe1;
end

% Open analysis window
while exist('src_modify_fig')==1
   try1 = 'get(src_modify_fig,''position'');';
   eval(try1,catch2);
   if check ==0
      clear src_modify_fig;
      check = 1;
      break;
   end
   s1 = get(src_modify_fig,'Name');
   if ~strcmp(s1,s2)
      clear src_modify_fig;
      break;
   end
   figure(src_modify_fig);
   break;
end;

if exist('src_modify_fig')~=1;
   src_modify_fig= figure('Position',PV,...
      'Resize','on',...
      'Numbertitle','off',...
      'Color',[0.5 0.5 0.5],...
      'Name',s2);
end

clf;

% Start of the time invariant section; time varying section removed

uicontrol('Style','frame', ...
   'Units','Normalized',...

   'Position',[0.02 0.88 0.96 0.10],...
   'BackGroundColor','white');

   %uicontrol('Style','text',...
   %   'Units','Normalized',...
   %   'Position',[0.03 .90 .6 .04],...
   %   'BackgroundColor','white',...
   %   'ForeGroundColor','blue',...
   %   'String','Time Invariant Excitation Waveform ');

   uicontrol('Style','text',...
      'Units','Normalized',...
      'Position',[0.03 0.91 0.2 0.04],...
      'String','Total Frames',...
      'HorizontalAlignment','left',...
      'BackgroundColor','white',...
      'ForegroundColor','blue');

   source_Nframe_edit = uicontrol('Style','Edit',...
      'Units','Normalized',...
      'Position',[0.3 0.91 0.11 0.04],...
      'BackgroundColor','white',...
      'String',Nframe);
      
   uicontrol('Style','frame',...
      'Units','Normalized',...
      'Position',[0.02 0.30 0.46 0.55],...
      'BackGroundColor','white');
   
   uicontrol('Style','Text',...
      'Units','Normalized',...
      'Position',[0.03 0.79 .12 .04], ...
      'String','Voiced',...
      'BackGroundColor',[0.9 0.9 0.9],...
      'HorizontalAlignment','Center',...
   'ForeGroundColor','blue');

src_UV_radio1 = uicontrol('Style','Checkbox',...
   'Units','Normalized',...
   'Position',[0.15 0.79 0.05 .04], ...
   'BackGroundColor',[0.9 0.9 0.9],...
   'ForeGroundColor','blue',...
   'Value',uvindicate(segment_no),...
   'Callback','UVswitch');



%Bottom left frame with cancel and apply buttons
uicontrol('Style','frame',...
   'Units','Normalized',...
   'Position',[0.02 0.02 0.46 0.25],...
   'BackGroundColor',[0.8 0.8 0.8]);

uicontrol('Style','Pushbutton',...
   'Units','Normalized',...
   'Position',[0.07 0.20 0.35 0.06],...
   'String','Apply to all frames',...
   'Callback','source_apply');

uicontrol('Style','Pushbutton',...
   'Units','Normalized',...
   'Position',[0.07 0.12 0.35 0.06],...
   'String','Reset',...
   'Callback','source_reset');

uicontrol('Style','Pushbutton',...
   'Units','Normalized',...
   'Position',[0.07 0.04 0.35 0.06],...
   'String','Done',...
   'Callback','source_modify_quit');


if uvindicate(segment_no) == 1            %Segment is voiced
   
   uicontrol('Style','text',...
      'Units','Normalized',...
      'Position',[0.04 .74 .15 .04],...
      'BackGroundColor','white',...
      'ForegroundColor','black',...
      'HorizontalAlignment','Left',...
      'String','Pitch Period');
   
  src_pp_edit= uicontrol('Style','edit',...
      'Units','Normalized',...
      'Position',[0.2 .74 .1 .04], ...
      'String',num2str(Pitch(segment_no)),...
      'BackGroundColor','white',...
      'Callback','pp_edit');
          
   src_pp_slider=uicontrol('Style','Slider',...
      'Units','Normalized',... 
      'Position',[.31 .74 .15 .04], ...
      'Value',Pitch(segment_no),...
      'Min',10,...
      'Max',200,...
      'Callback', 'pp_slider');
   
   uicontrol('Style','text',...
      'Units','Normalized',...
      'Position',[0.04 0.68 .15 .04],...
      'BackGroundColor','white',...
      'String','Voicing Gain');
   
   src_gain_edit = uicontrol('Style','edit',...
      'Units','Normalized',...
      'Position',[0.2 .68 .1 .04], ...
      'String',num2str(Vgain(segment_no)),...
      'BackGroundColor','white',...
      'Callback','gain_edit');
   
   src_gain_slider =uicontrol('Style','Slider',...
      'Units','Normalized',...
      'Position',[.31 .68 .15 .04], ...
      'Value',Vgain(segment_no),...
      'Min',0,...
      'Max',20,...
      'Callback', 'gain_slider');
   
   uicontrol('Style','text',...
      'Units','Normalized',...
      'Position',[0.02 0.62 .4 .055],...
      'BackGroundColor','white',...
      'ForeGroundColor','blue',...
      'String','LF Model Coefficients: 0<Tp<Te<Tc; Ta>0');

   
    uicontrol('Style','text',...
      'Units','Normalized',...
      'Position',[0.04 .55 .15 .04],...
      'BackGroundColor','white',...
      'String','Tp  ');

   src_tp_edit=uicontrol('Style','edit',...
      'Units','Normalized',...
      'Position',[0.2 .56 .1 .04], ...
      'String',num2str(Lcof1(segment_no,2)),...
      'BackGroundColor','white',...
      'Callback','tp_edit');
   
   src_tp_slider =uicontrol('Style','Slider',...
      'Units','Normalized',...
      'Position',[.31 .56 .15 .04], ...
      'Value',Lcof1(segment_no,2),...
      'Min',0,...
      'Max',1,...
      'Callback', 'tp_slider');
   
    uicontrol('Style','text',...
      'Units','Normalized',...
      'Position',[0.04 .50 .15 .04],...
      'BackGroundColor','white',...
      'String','Te  ');

   src_te_edit=uicontrol('Style','edit',...
      'Units','Normalized',...
      'Position',[0.2 .50 .1 .04], ...
      'String',num2str(Lcof1(segment_no,3)),...
      'BackGroundColor','white',...
      'Callback','te_edit');
   
   src_te_slider =uicontrol('Style','Slider',...
      'Units','Normalized',...
      'Position',[.31 .50 .15 .04], ...
      'Value',Lcof1(segment_no,3),...
      'Min',0,...
      'Max',1,...
      'Callback', 'te_slider');
   
      uicontrol('Style','text',...
      'Units','Normalized',...
      'Position',[0.04 .44 .15 .04],...
      'BackGroundColor','white',...
      'String', 'Tc');

   src_tc_edit=uicontrol('Style','edit',...
      'Units','Normalized',...
      'Position',[0.2 .44 .1 .04], ...
      'String',num2str(Lcof1(segment_no,5)),...
      'BackGroundColor','white',...
      'Callback','tc_edit');
   
   src_tc_slider =uicontrol('Style','Slider',...
      'Units','Normalized',...
      'Position',[.31 .44 .15 .04], ...
      'Value',Lcof1(segment_no,5),...
      'Min',0,...
      'Max',1,...
      'Callback', 'tc_slider');
   
   
   uicontrol('Style','text',...
      'Units','Normalized',...
      'Position',[0.04 .38 .15 .04],...
      'BackGroundColor','white',...
      'String','Ta');

   src_ta_edit=uicontrol('Style','edit',...
      'Units','Normalized',...
      'Position',[0.2 .38 .1 .04], ...
      'String',num2str(Lcof1(segment_no,4)),...
      'BackGroundColor','white',...
      'Callback','ta_edit');
   
   src_ta_slider =uicontrol('Style','Slider',...
      'Units','Normalized',...
      'Position',[.31 .38 .15 .04], ...
      'Value',Lcof1(segment_no,4),...
      'Min',0.001,...
      'Max',1,...
      'Callback', 'ta_slider');
   
      uicontrol('Style','text',...
      'Units','Normalized',...
      'Position',[0.04 .31 .15 .04],...
      'BackGroundColor','white',...
      'String','Ee');

   src_ee_edit=uicontrol('Style','edit',...
      'Units','Normalized',...
      'Position',[0.2 .31 .1 .04], ...
      'String',num2str(Lcof1(segment_no,1)/1000),...
      'BackGroundColor','white',...
      'Callback','ee_edit');
   
   src_ee_slider =uicontrol('Style','Slider',...
      'Units','Normalized',...
      'Position',[.31 .31 .15 .04], ...
      'Value',Lcof1(segment_no,1)/1000,...
      'Min',0,...
      'Max',10,...
      'Callback', 'ee_slider');
   

   
   %Right frame with noise parameters
   uicontrol('Style','frame',...
      'Units','Normalized',...
      'Position',[0.52 0.02 0.46 0.83],...
      'BackGroundColor','white');

   uicontrol('Style','text',...
      'Units','Normalized',...
      'Position',[0.55 .80 .25 .04],...
      'BackGroundColor','white',...
      'ForeGroundColor','red',...
      'HorizontalAlignment','Left',...
      'String','Add Noise:');
   
   src_noise_checkbox = uicontrol('Style','checkbox',...
      'Units','Normalized',...
      'Position',[0.81 0.80 0.05 0.04],...
      'BackGroundColor','white',...
      'ForeGroundColor','red',...
      'Value',0);
   
   uicontrol('Style','text',...
      'Units','Normalized',...
      'Position',[0.55 .75 .3 .04],...
      'BackGroundColor','white',...
      'HorizontalAlignment','Left',...

⌨️ 快捷键说明

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