windows mediaplay 为什么不支持 aac
时间: 2023-08-16 09:49:37 浏览: 214
Windows Media Player最初是Microsoft开发的,随着时间的推移,它已经被淘汰了。AAC是一种先进的音频编解码器,它比MP3更高效,更具有压缩率,因此在现代音频应用中被广泛使用。然而,AAC在Windows Media Player中不受支持,可能是由于AAC是一种专有的编解码器,需要支付专利费用。此外,Windows Media Player的开发已经停止,因此不太可能添加新的编解码器支持。如果您需要使用AAC格式的音频文件,您可以考虑使用其他媒体播放器,例如VLC,iTunes等。
相关问题
mediaplay添加证书
要在mediaplayer中添加证书,需要使用SSLContext并将其传递给MediaPlayer对象。以下是添加证书的步骤:
1. 创建一个KeyStore对象并加载证书文件,例如:
```
KeyStore keyStore = KeyStore.getInstance("BKS");
InputStream inputStream = context.getResources().openRawResource(R.raw.cert);
keyStore.load(inputStream, "password".toCharArray());
```
2. 创建一个TrustManagerFactory对象并将其初始化为使用KeyStore对象:
```
TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
trustManagerFactory.init(keyStore);
```
3. 创建一个SSLContext对象并将其初始化为使用TrustManagerFactory对象:
```
SSLContext sslContext = SSLContext.getInstance("TLS");
sslContext.init(null, trustManagerFactory.getTrustManagers(), null);
```
4. 将SSLContext对象传递给MediaPlayer对象:
```
mediaPlayer.setDataSource(url, null, null, sslContext.getSocketFactory());
```
注意,url应该是https协议的url。而且,这个代码只是一个示例,你需要根据你的具体情况进行修改。
mediaplay播放不出来音频地址在浏览器是下载模式
如果您的音频地址在浏览器中是下载模式,可能是因为服务器设置了错误的 MIME 类型。在 HTTP 响应头部中设置了正确的 MIME 类型可以让浏览器正确地识别文件类型。
如果您无法更改服务器设置,可以尝试使用 JavaScript 的 Audio 对象来播放音频,而不是使用 MediaPlayer。您可以使用以下代码来创建一个 Audio 对象并播放音频:
```
var audio = new Audio('your_audio_url');
audio.play();
```
注意,使用 Audio 对象播放音频可能会受到浏览器兼容性的限制。如果您的应用需要在不同的浏览器中运行,请确保在各种浏览器中测试您的代码。
另外,如果您的音频文件位于受保护的目录中,可能需要在服务器端配置正确的身份验证和授权。如果服务器需要身份验证,您可以尝试在音频 URL 中包含用户名和密码,例如:
```
http://username:password@your_audio_url
```
但这种方法并不安全,因为用户名和密码会明文传输。更好的方法是在服务器端设置正确的身份验证和授权。
阅读全文