Next: SAMPFREQ(1) Up: WFDB Applications Guide Previous: RDSAMP(1)On This Page


rxr - ANSI/AAMI-standard run-by-run annotation comparator


rxr -r record -a reference-annotator test-annotator [ options ... ]


Using options -C, -L, or -S, rxr implements the run-by-run comparison algorithms described in ANSI/AAMI EC38:1998, the American National Standard for Ambulatory ECGs, and in ANSI/AAMI EC57:1998, the American National Standard for Testing and Reporting Performance Results of Cardiac Rhythm and ST Segment Measurement Algorithms. rxr is the reference implementation of these algorithms, and must be used to obtain the run-by-run performance statistics cited in EC38 and EC57 in order to be in compliance with the standards (see EC38, section 5.2.14, and EC57, section 4.2).

Input to this program consists of two annotation files associated with the same record. One of these is designated the reference annotation file, the other the test annotation file (called the ‘algorithm’ annotation file in EC38 and in EC57).

Options include:

-c file
Append condensed reports to file.
-C file
As for -c, but report SVE run statistics also.
-f time
Begin the comparison at the specified time (default: 5 minutes after the beginning of the record).
Print a usage summary.
-l file
Append line-format reports (EC57 Table A.7 format) to file (see below).
-L file file2
As for -l, but report SVE run statistics in file2.
-s file
Append standard reports (EC38 section 5.2.14, EC57 Tables 7, 8 format) to file.
-S file
As for -s, but report SVE run statistics also.
-t time
Stop the comparison at the specified time (default: the end of the record if it is defined, the end of the reference annotation file otherwise; if time is 0, the comparison ends when the end of either annotation file is reached).
Verbose mode (list all discrepancies; see below).
-w time
Set the match window (default: 0.15 seconds; see below).

At most one of -c, -C, -l, -L, -s, and -S can be given as an option. If ‘-’ is given as a file argument, reports are written on the standard output. If no options are specified, rxr writes standard reports on the standard output (equivalent to using the option -s -). The output generated by selecting -l or -L includes column headings only if a file other than ‘-’ is specified, and only if the specified file does not already exist. In this way, rxr can be used repeatedly to build up a line-format table for multiple records, for further processing by sumstats(1) .

The -v option specifies that each mismatch is described on the standard output in a format similar to:

where the first number is the reference run length, the second is the test run length (each of these is between 0 and 6), and the numbers in parentheses indicate the location of the match window in sample intervals.


It may be necessary to set and export the shell variable WFDB (see setwfdb(1) ).


Since rxr performs multiple passes over its input files, it cannot be used at the end of a pipe.

See Also

bxb(1) , ecgeval(1) , epicmp(1) , mxm(1) , setwfdb(1) , sumstats(1)

Evaluating ECG Analyzers (in the WFDB Applications Guide)
Ambulatory Electrocardiographs (ANSI/AAMI EC38:1998)
Testing and Reporting Performance Results of Cardiac Rhythm and ST Segment Measurement Algorithms (ANSI/AAMI EC57:1998)

The last two of these publications are available from AAMI, 1110 N Glebe Road, Suite 220, Arlington, VA 22201 USA (


George B. Moody (


Table of Contents

Up: WFDB Applications Guide

Please e-mail your comments and suggestions to, or post them to:

MIT Room E25-505A
77 Massachusetts Avenue
Cambridge, MA 02139 USA

Updated 8 March 2019