package com.laifeng.sopcastsdk.stream.sender.local; import android.os.Environment; import com.laifeng.sopcastsdk.stream.sender.Sender; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; /** * @Title: LocalSender * @Package com.laifeng.sopcastsdk.stream.sender.local * @Description: * @Author Jim * @Date 16/9/18 * @Time 下午5:10 * @Version */ public class LocalSender implements Sender{ private File mTestFile; private FileOutputStream mOutStream; private static BufferedOutputStream mBuffer; @Override public void start() { String sdcardPath = Environment.getExternalStorageDirectory().toString(); mTestFile = new File(sdcardPath+"/SopCast.flv"); if(mTestFile.exists()){ mTestFile.delete(); } try { mTestFile.createNewFile(); mOutStream = new FileOutputStream(mTestFile); mBuffer = new BufferedOutputStream(mOutStream); } catch (Exception e) { e.printStackTrace(); } } @Override public void onData(byte[] data, int type) { if (mBuffer != null){ try { mBuffer.write(data); mBuffer.flush(); } catch (IOException e) { e.printStackTrace(); } } } @Override public void stop() { if(mBuffer != null) { try { mBuffer.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } mBuffer = null; } if(mOutStream != null) { try { mOutStream.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } mBuffer = null; mOutStream = null; } } }