diff --git a/src/main.rs b/src/main.rs
index b0ab6c0..28b3811 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -29,10 +29,9 @@
// along with this program. If not, see .
#![cfg_attr(test, feature(test))]
-#![feature(alloc, box_syntax, conservative_impl_trait, plugin, proc_macro)]
+#![feature(conservative_impl_trait, plugin, proc_macro)]
#![plugin(clippy)]
-extern crate alloc;
extern crate byteorder;
extern crate core;
#[macro_use] extern crate chan;
diff --git a/src/mp4.rs b/src/mp4.rs
index 0058a0c..60fa38b 100644
--- a/src/mp4.rs
+++ b/src/mp4.rs
@@ -79,7 +79,6 @@
extern crate byteorder;
extern crate time;
-use alloc::raw_vec::RawVec;
use byteorder::{BigEndian, ByteOrder, WriteBytesExt};
use db;
use dir;
@@ -366,7 +365,11 @@ impl Mp4Segment {
let stsz_len = mem::size_of::() * s.frames as usize;
let stss_len = mem::size_of::() * s.key_frames as usize;
let len = stts_len + stsz_len + stss_len;
- let mut buf = unsafe { RawVec::with_capacity(len).into_box() };
+ let mut buf = unsafe {
+ let mut v = Vec::with_capacity(len);
+ v.set_len(len);
+ v.into_boxed_slice()
+ };
{
let (stts, mut rest) = buf.split_at_mut(stts_len);
let (stsz, stss) = rest.split_at_mut(stsz_len);