diff --git a/src/utils/FileRecordTools/FileReaders/InputStreamMgr.cpp b/src/utils/FileRecordTools/FileReaders/InputStreamMgr.cpp
index 3139026505e4ad997ee58dd12c24892a36098b6b..9711a292100dfb87cf4ec9ce6961915370dbd659 100644
--- a/src/utils/FileRecordTools/FileReaders/InputStreamMgr.cpp
+++ b/src/utils/FileRecordTools/FileReaders/InputStreamMgr.cpp
@@ -10,6 +10,8 @@
 #include "gzstream.h"
 #include "CompressionTools.h"
 
+const char *InputStreamMgr::FIFO_STRING_LITERAL = "/dev/fd";
+
 InputStreamMgr::InputStreamMgr(const QuickString &filename, bool buildScanBuffer)
 :
  _filename(filename),
@@ -55,6 +57,9 @@ bool InputStreamMgr::init()
 		}
 		_pushBackStreamBuf = new PushBackStreamBuf(cin.rdbuf());
 	} else {
+		if (strncmp(_filename.c_str(), FIFO_STRING_LITERAL, strlen(FIFO_STRING_LITERAL)) == 0) {
+			_isStdin = true;
+		}
 		_inputFileStream = new ifstream(_filename.c_str());
 		if (_inputFileStream->fail()) {
 			cerr << "Error: Unable to open file " << _filename << ". Exiting." << endl;
diff --git a/src/utils/FileRecordTools/FileReaders/InputStreamMgr.h b/src/utils/FileRecordTools/FileReaders/InputStreamMgr.h
index 4e22c31ed19a01bf9f3edc8316c9faebd56f782e..df21ce34c2388a1906f644f8e63b95f76ade4e32 100644
--- a/src/utils/FileRecordTools/FileReaders/InputStreamMgr.h
+++ b/src/utils/FileRecordTools/FileReaders/InputStreamMgr.h
@@ -52,6 +52,8 @@ private:
 	static const int SCAN_BUFFER_SIZE = 4096; // 4 K buffer
 	static const int MIN_SCAN_BUFFER_SIZE = 2048;
 	int _numBytesInBuffer; //this will hold the length of the buffer after the scan.
+
+	static const char *FIFO_STRING_LITERAL;
 	bool bamDetected(int numChars, int currChar);
 	void decompressBuffer();