这篇博客中,所描述的功能并没有实现。大家可以忽略。
------------------------------------------------
最近做的小程序,有一个需求:仿照朋友圈预览视频,视频无声音。
一开始使用的VideoView,查了查,不能设置默认声音为无。
又查了查,因为无法通过VideoView获取其调用的MediaPlayer,所以无发设置视频的声音大小,只能通过设置系统音量,改变音量大小。
很显然这不合要求。
所以我打算采用VideoView的超类SurfaceView来显示无声视频。
通过一系列常规代码之后,关键代码是这一句:
mediaPlayer.setAudioStreamType(AudioManager.STREAM_VOICE_CALL);
设置音轨流类型为STREAM_VOICE_CALL
STREAM_VOICE_CALL是什么东西?
查了查,原来android系统提供了15级音量。
0级为静音,这个STREAM_VOICE_CALL其实就是 int类型的0值。
和此功能相关的全部代码如下:
holder.getVideoSV().getHolder().addCallback(new SurfaceHolder.Callback() {
MediaPlayer mediaPlayer = null;
@Override