コード例 #1
0
 private String startLivePreview(
     final LiveCamera liveCamera, final Integer width, final Integer height) {
   synchronized (mLockObj) {
     if (mServer == null) {
       mServer = new MixedReplaceMediaServer();
       mServer.setServerName("Live Preview Server");
       mServer.start();
     }
     final String segment = SEGMENT_LIVE_PREVIEW;
     if (mLivePreviewTask == null) {
       mLivePreviewTask =
           new LivePreviewTask(liveCamera) {
             @Override
             protected void onFrame(final byte[] frame) {
               byte[] b;
               if (width != null || height != null) {
                 b = resizeFrame(frame, width, height);
               } else {
                 b = frame;
               }
               offerFrame(segment, b);
             }
           };
       mExecutor.execute(mLivePreviewTask);
     }
     return mServer.getUrl() + "/" + segment;
   }
 }