function display_raw( eval_detloc_filename )
  
  if nargin < 1
    error( [ mfilename ' needs 1 input argument.' ] );
  end
  
  % Load GT

  load( eval_detloc_filename, 'eval_result' );
  disp( ' ' );
  disp( [ mfilename ' loaded "' eval_detloc_filename '".' ] );
  
  n_rec = numel( eval_result.list );

  for i_rec = 1:n_rec 

    figure; hold on;

    % Load result

    load( eval_result.list( i_rec ).classify_cluster_filename, 'result' );
    disp( ' ' );
    disp( [ mfilename ' loaded "' eval_result.list( i_rec ).classify_cluster_filename '".' ] );
    
    if numel( result.list ) ~= 1
      error( [ mfilename ': sorry, I cannot handle more than one "result.list".' ] );
    end
    
    % Display result on the current figure

    fl_sec = result.list.framelength_sec;
    fs_sec = result.list.frameshift_sec;

    plot( fl_sec / 2 + fs_sec * ( result.list.sphloc_mat( 1, : ) - 1 ), ( -pi + mod( pi + result.list.sphloc_mat( 3, : ), 2 * pi ) ) / pi * 180, 'r.', 'markersize', 12 );
    
    % Display GT on the current figure
    
    all_gt = cat( 2, eval_result.list( i_rec ).gt.person.audio_array1_sph_mat );
    
    % Find out the video frame duration in seconds
    
    tmp = diff( sort( all_gt( 1, : ) ) );
    vfd_sec = min( tmp( find( tmp > 0 ) ) );
    if isempty( vfd_sec )
      error( [ mfilename ' could not determine video frame duration.' ] );
    end

    % Display each GT speech segment in space-time plane

    while ~isempty( all_gt )

      tmp = diff( all_gt( 1, : ) );

      ind = find( ( tmp < 0 ) | ( tmp > vfd_sec * 1.5 ) );

      if isempty( ind ), ind = size( all_gt, 2 ); end;

      plot( all_gt( 1, 1:ind ), ( -pi + mod( pi + all_gt( 3, 1:ind ), 2 * pi ) ) / pi * 180, 'k', 'linewidth', 1 );

      all_gt = all_gt( :, ind+1:end );

    end

    set( gca, 'fontsize', 12 );
    
    xlabel( 'time (seconds)' );
    ylabel( 'azimuth (degrees)' );

    legend( 'result', 'ground-truth' );

    % Expand the view slightly
    axis tight;
    v = axis;
    mx = mean( v( 1:2 ) );
    my = mean( v( 3:4 ) );
    mv = [ mx mx my my ];
    v = mv + ( v - mv ) * 1.05;

    % Show from the start
    % this highlights that we manage silences properly
    v( 1 ) = 0;
    axis( v );
    

    a_str = '(unkown implementation)';
    
    if ~isempty( strfind( eval_detloc_filename, 'FASTTDE' ) )
      a_str = '(FASTTDE)';
    elseif ( ~isempty( strfind( eval_detloc_filename, 'FAST' ) ) ) & ( ~isempty( strfind( eval_detloc_filename, 'nomfcc' ) ) )
      a_str = '(FAST, no MFCC)';
    elseif ~isempty( strfind( eval_detloc_filename, 'FAST' ) )
      a_str = '(FAST)';
    elseif ~isempty( strfind( eval_detloc_filename, 'FULL' ) )
      a_str = '(FULL)';
    end
    
    title( [ strrep( eval_result.list( i_rec ).name, '_', '\_' ) ' ' a_str ] );

  end
  