2013-07-10 27 views
0

我已经从字面上尝试了一切,但我无法让我的SubRip字幕在Vitamio中工作。是否可能是因为流式视频不支持字幕?我想知道。英文Vitamio支持很糟糕。如何在Vitamio中启用字幕(SRT)支持?

下面是我想出:

public class StreamVideoActivity extends FragmentActivity implements OnSubtitleUpdateListener { 
     //Variables 
     VideoView streamingVideo; 
     TextView subtitleText; 

     @Override 
     protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_stream_video); 

      subtitleText = (TextView) findViewById(R.id.subText); 
      streamingVideo = (VideoView) findViewById(R.id.videoView); 

      //BLABLABLABLA 

      streamingVideo.setVideoPath(fileUrl); 
      streamingVideo.setVideoQuality(MediaPlayer.VIDEOQUALITY_HIGH); 
      streamingVideo.setMediaController(mediaController); 
      streamingVideo.setBufferSize(512); 
      streamingVideo.setOnPreparedListener(new OnPreparedListener(){ 

       @Override 
       public void onPrepared(MediaPlayer arg0) { 
        streamingVideo.setSubPath(subtitleFile.getPath()); 
        streamingVideo.setSubShown(true); 
        streamingVideo.setSubEncoding(null); 
        streamingVideo.setSubTrack(MediaPlayer.SUBTITLE_EXTERNAL); 
        streamingVideo.setOnSubtitleUpdateListener(this); 
        streamingVideo.start(); 
       } 
      } 
     } 
     @Override 
     public void onSubtitleUpdate(final String arg0) { 
      if (arg0 != null) { 
       handler.post(new Runnable() { 
        @Override 
        public void run() { 
         subtitleText.setText(arg0); 
        } 
       }); 
      } 
     } 

     @Override 
     public void onSubtitleUpdate(byte[] arg0, int arg1, int arg2) { 
      // TODO Auto-generated method stub 

     } 
    } 
+0

如果你真的尝试了一切,我不知道如何提供答案...... – njzk2

+0

嗯,我从字面上试图想到的一切。 –

+0

有什么症状?你在'onSubtitleUpdate'上得到了什么?在另一个'onSubtitleUpdate'上?因为你没有指定编码,所以调用'byte []'的方法而不是带有字符串的方法是有意义的。我会测试:A /把编码放在'setSubEncoding'中。 B/Log在'onSubtitleUpdate(byte [] ...')中发生了什么? – njzk2

回答