NAME - Split a BAM file by strands

SYNOPSIS [--bam FILE] [options]


Split a BAM file by strands and create two new BAM file: One containing all reads that map to the positive strand and another one with all reads mapped to the negative strand. Optionally filter unique alignments by inspecting NH:i SAM attribute.

Optionally create bedGraph and (stranded |normalized) bigWig coverage for UCSC visualization



Input file in BAM format


Create a BED6 file for each split BAM file


Create BedGraph and bigWig coverage files for e.g. genome browser visualization.


Directory name for resulting bigWig files. This directory is created as subdirectory of the output directory. Default is 'vis'.


Chromosome sizes file (required if --bw is given).


Normalize resulting bigWig files

--out -o

Output directory

--reverse -r

Reverse the +/- strand mapping. This is required to achieve proper strand assignments for certain RNA-seq library preparation protocol.


If --bw is given, scale bigWig files to this number. Default is 1000000.


Filter uniquely mapped reads by inspecting the NH:i: SAM attribute. See also the utility, which extracts both uniquely and multiply mapped reads from BAM files without strand-splitting.

--log -l

Log file extension. Default is ".bam_split.log". The log file is created in the directory given via -o and its name is constructed from the base name of the input BAM file and the log filename extension.

--help -h

Print short help


Prints the manual page and exits


Michael T. Wolfinger <>