gpt4 book ai didi

android - 音量 channel

转载 作者:搜寻专家 更新时间:2023-11-01 09:03:16 29 4
gpt4 key购买 nike

这样的问题:我有一个用两个声道录制的视频文件。我试图通过此代码关闭左声道:

MediaPlayer mp; 

....

mp.setVolume(0.f, 1f);

... 在平板电脑上效果很好(右音量 channel 听起来不错)。但后来我在连接到三星 UE46ES6307U 的 googleTv 上尝试了它,但这段代码不起作用,声音关闭。也许它与 Dolby Digital Plus/Dolby Pulse 音频有关?我能否以某种方式以编程方式发现设备的声道以及每个声道中设置的音量?

更新:在本论坛http://www.googletvforum.org/forum/logitech-revue/375-audio-problems-logitech-revue.html在一条这样的回复中:“罗技还没有想出如何通过 hdmi 传输多声道音频。你必须使用光纤输出。没关系。”

“您如何构建 MediaPlayer?”

Videoview vv;
...............

vv.setOnPreparedListener(new OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
mp.setVolume(0.f, 1f);
}
});

更新:

public class MainActivity extends Activity {
MediaPlayer mp = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (mp != null) {
mp.reset();
mp.release();
}

mp = MediaPlayer.create(this, R.raw.test);
mp.start();

}

public void onTurnOffLeft(View v){
mp.setVolume(0.f, 1.f);
}

public void onTurnOffRight(View v){
mp.setVolume(1.f, 0.f);
}
}

onTurnOffLeft 方法关闭所有声音,onTurnOffRight 方法无效。

更新2

我尝试播放使用 Vorbis 编解码器编码的 .ogg 音频文件 - channel 关闭良好。但我尝试播放用 mp3、ac3、pcm、aac 编码的视频文件 - 关闭 channel 的问题仍然存在......我需要关闭视频中的音频 channel ,但我不知道如何解决这个问题还没有。

最佳答案

MediaPlayer 对象由跨设备的不同库支持(平板电脑和 Google TV 之间不同)。您如何构建 MediaPlayer?

您可能想尝试的一件事是在构建 MediaPlayer 后立即调用 #reset()。默认情况下,当您使用“new”运算符构造 MediaPlayer 实例时,它处于 IDLE 状态(至少在 Google TV 上是这样)。通过调用 reset,您可以调用自己的 OnErrorListener.onError() 处理程序。这将让您查看是否存在一些在其他情况下不可见的潜在错误。

您可能还想查看 AudioManager#setStreamVolume(int, int, int),它设置特定类型的所有流的音量。

编辑 1:由于您只是从布局中获取 VideoView(我猜是因为省略了该代码),因此在设置监听器后您应该在视频 View 上调用 reset。

关于android - 音量 channel ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13684352/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com