我想在我的Android应用程序中静音播放Video by VideoView.我在VideoView Class中找不到任何方法.知道怎么做吗?
我在MediaPlayer类中找到了一个方法"setVolume",但我无法找到任何工作代码来播放MediaPlayer类的视频.所以我相信我可以通过这种方法设置第0卷.
因此,我正在寻找使用MediaPlayer Class播放视频的任何工作代码或如何使用VideoView Class控制音量.
下面是使用VideoView播放视频的代码,我正在使用它.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_video);
VideoView videoView = (VideoView)this.findViewById(R.id.VVSimpleVideo);
MediaController mc = new MediaController(this);
mc.setAnchorView(videoView);
mc.setMediaPlayer(videoView);
videoView.setMediaController(mc);
String _path = "/mnt/sdcard/Movies/video5.mp4";
videoView.setVideoPath(_path);
videoView.requestFocus();
videoView.start();
}
Run Code Online (Sandbox Code Playgroud)
Leo*_*ena 28
如果你想进入MediaPlayer
的VideoView
你要调用MediaPlayer.OnPreparedListener
和MediaPlayer.OnCompletionListener
,那么你可以调用MediaPlayer.setVolume(0f, 0f);
函数的音量设置为0.
做这个:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_video);
VideoView videoView = (VideoView)this.findViewById(R.id.VVSimpleVideo);
MediaController mc = new MediaController(this);
mc.setAnchorView(videoView);
mc.setMediaPlayer(videoView);
videoView.setMediaController(mc);
String _path = "/mnt/sdcard/Movies/video5.mp4";
videoView.setVideoPath(_path);
videoView.setOnPreparedListener(PreparedListener);
videoView.requestFocus();
//Dont start your video here
//videoView.start();
}
MediaPlayer.OnPreparedListener PreparedListener = new MediaPlayer.OnPreparedListener(){
@Override
public void onPrepared(MediaPlayer m) {
try {
if (m.isPlaying()) {
m.stop();
m.release();
m = new MediaPlayer();
}
m.setVolume(0f, 0f);
m.setLooping(false);
m.start();
} catch (Exception e) {
e.printStackTrace();
}
}
};
Run Code Online (Sandbox Code Playgroud)
Ahm*_*lan 20
videoview.setOnPreparedListener(new OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
mp.setVolume(0, 0);
}
});
Run Code Online (Sandbox Code Playgroud)
我已经使用 MediaPlayer 类完成了此操作。我已经使用MediaPlayer类的setVolume函数将音量设置为0。我还意识到不要使用AudioManager类,因为使用AudioManager如果将音量设置为0,那么它会将MediaPlayer和VideoView的所有实例的音量设置为0。但如果您使用 MediaPlayer 的 setVolume() 方法,那么它只会将该实例的音量静音。
使用 VideoView 将音量设置为 0 也很容易,因为 VideoView 是 MediaPlayer 类的包装器,只允许访问 MediaPlayer 的少数功能。我还在一些博客上读到,虽然您可以使用 VideoView 实例引用 MediaPlayer 实例,但它非常复杂,不建议这样做。希望这对其他新读者如何尝试做类似的事情有所帮助。
归档时间: |
|
查看次数: |
25965 次 |
最近记录: |