- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
这样的问题:我有一个用两个声道录制的视频文件。我试图通过此代码关闭左声道:
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/
这样的问题:我有一个用两个声道录制的视频文件。我试图通过此代码关闭左声道: MediaPlayer mp; .... mp.setVolume(0.f, 1f); ... 在平板电脑上效果很好(右音量
我正在使用: SystemSoundID soundID; AudioServicesCreateSystemSoundID((CFURLRef)filePath, &soundID); AudioS
是否可以使用代码更改 Mac 的音量? 最佳答案 如果您使用 C++ 进行编码,则可以使用 Carbon API http://developer.apple.com/carbon/您能更具体地说明您
我正在使用 HTML 5、jQuery 和 Amplitude.js 从头开始创建响应式音频播放器,用于实时流式传输。 播放器右侧是一个“扬声器图标”,单击该图标可静音,但只需悬停鼠标即可显示垂直
我在Flash Professional CC库中添加了声音,并让程序将其转换为MP3。如果我创建一个图层并将声音拖放到舞台上,则声音可以很好地播放(即使在通过Swiffy传递之后),但是到目前为止,
我正在尝试播放媒体类型为 STREAM_ALARM 的 radio 流,并使用硬件按钮更改其音量。 它需要是 STREAM_ALARM,因为它实际上是一个闹钟:即使插入耳机和/或手机设置为静音,它也应
我有 2 个媒体播放器播放不同的声音。我想使用 ProgressBar 来控制 MediaPlayer 的声音。 我知道如何使用进度条控制系统声音,但它会将两个媒体播放器的音量设置为相同,这就是我想要
我正在创建一个带有播放、暂停和音量 slider 的广播流媒体应用。 我已经使用 MPVolumeView 实现了音量 slider ,但遗憾的是它无法正常工作。 任何人都可以告诉我正确的代码,以便音
我到处搜索,但找不到问题的答案。 我在我的应用程序上播放多种声音,并让用户通过按钮调节音量。所以如果用户愿意的话,他可以用0.5的音量来播放。所以我有这个代码: NSString *path = [[
在我的应用程序中,我必须在点击按钮时播放警报声,当铃声音量设置为某个值时我可以播放它,但我的问题是当用户将铃声音量设置为零时,我该如何播放声音最大吗? 最佳答案 按照官方规定,你不能这样做。作为一名智
我好像找不到解决办法。请帮助我。 我想做的是有一个简单的音量 slider 。 所以,如您所见,橙色部分是我的音量 slider 。 这是我的 jQuery: var mouseDown = fals
Ubuntu 的启动/登录声音可能非常响亮,但我确实喜欢这样。我写了一个脚本,使用 amixer 将音量设置为 25%。这是我喜欢的音量,但当我使用电视输出或耳机时,我必须调高音量。我似乎无法让脚本在
我在 Android 上使用 APPRTCdemo 应用程序。我试图让它播放来自其他对等方的声音,与 Android 设置中设置的音量一样大。因此,如果用户将设备静音,则不会听到音频。我几乎尝试了每个
我正在为 ios7 编写一个应用程序,它需要控制内置音乐播放器的音量或一般的主音量级别。我试过使用 MediaPlayer.framework 但不确定是否正确。我想知道解决这个问题的最佳方法是什么。
我们的软件应该播放声音(不仅仅是小的噪音,还有语音等)。我想知道音量控制怎么样。 Windows Vista 风格指南说要在 Windows 混音器中定义应用程序特定的音量控制。 但是 Windows
我的应用程序的一部分有一个媒体组件,我正在寻找一个我可以使用的不错的音量 slider ,而不是为此目的看起来有点丑陋的 JSlider(或者具体来说,具有自定义视觉效果的扩展 JSlider 会很好
你好,我试着改变我的 SKAudioNode 的音量,有人知道怎么做吗?我试图找到解决方案,但没有找到......AudioNode 类对我来说似乎很薄。我也无法访问嵌套的 Audio 类以从那里尝试
基本上,如果我更改 slider 级别,它只会影响单击而不影响 keydown,即使它们调用相同的 playSound 函数也是如此。不知道我搞砸了什么 function App() { cons
我在 txt 中有一个文件列表,我需要连接(文件是相同的编解码器和大小并且有声音),而不是我需要添加一个音量为 50% 的音轨。谢谢 这是我用来连接的命令,但这用新的音轨替换了音频,相反我需要与文件中
我正在寻找在我的 .NET 2.0 WinForms 应用程序中使用的类似轨迹栏的用户/自定义控件。 注意:我不是在问如何控制 WinForms 应用程序中的音量。 任何人都知道可以在我的应用程序中使
我是一名优秀的程序员,十分优秀!