diff --git a/js/package.json b/js/package.json
index 2f579a7..d7cd5c9 100644
--- a/js/package.json
+++ b/js/package.json
@@ -8,6 +8,7 @@
   "dependencies": {
     "domready": "~1.0.8",
     "format": "~0.2.1",
+    "readable-blob-stream": "0.0.0",
     "inherits": "~2.0.1"
   },
   "devDependencies": {
diff --git a/js/src/file-emitter.js b/js/src/file-emitter.js
index b31d522..c66df5d 100644
--- a/js/src/file-emitter.js
+++ b/js/src/file-emitter.js
@@ -5,6 +5,7 @@
 var EE = require('events').EventEmitter;
 var format = require('format');
 var inherits = require('inherits');
+var ReadableBlobStream = require('readable-blob-stream');
 
 module.exports = FileEmitter;
 
@@ -13,7 +14,6 @@
 
   // TODO(nlacasse): Consider making these an argument to FileEmitter;
   this._allowedTypes = ['audio', 'image', 'video'];
-  this._maxSize = 10 * 1000 * 1000; // 10MB
 
   input.addEventListener('change', this._onFileChange.bind(this), false);
 }
@@ -46,27 +46,10 @@
     return;
   }
 
-  // TODO(nlacasse): Consider removing the file size limit.
-  if (file.size > this._maxSize) {
-    this.emit('error', format('File too large.'));
-    return;
-  }
-
-  var reader = new FileReader();
-
-  var self = this;
-  reader.addEventListener('error', function(ev) {
-    self.emit('error', ev);
+  this.emit('file', {
+    name: file.name,
+    size: file.size,
+    type: file.type,
+    stream: new ReadableBlobStream(file)
   });
-
-  reader.addEventListener('load', function() {
-    self.emit('file', {
-      name: file.name,
-      type: file.type,
-      size: file.size,
-      bytes: new Uint8Array(reader.result)
-    });
-  });
-
-  reader.readAsArrayBuffer(file);
 };
diff --git a/js/src/index.js b/js/src/index.js
index 61c3f44..062c73f 100644
--- a/js/src/index.js
+++ b/js/src/index.js
@@ -57,10 +57,8 @@
     var promise = s.displayBytes(ctx, file.type);
     promise.catch(cb);
     promise.stream.on('error', cb);
-    promise.stream.on('finish', function() { cb(null); });
+    promise.stream.on('finish', cb);
 
-    // TODO(nlacasse): Chunk these bytes! Currently we send the file in one big
-    // chunk.
-    promise.stream.end(file.bytes);
+    file.stream.pipe(promise.stream);
   });
 }
