Flutter 如何在dart中捕获无止境的网络流并过滤出元数据?
我正在为德国的一家电台编写一个应用程序,我想从他们的Icecast服务器获取音频流标题信息。我如何在flatter/Dart中接收音频流并过滤出音频元数据以显示歌曲名称 我已经有了获取Flutter 如何在dart中捕获无止境的网络流并过滤出元数据?,flutter,dart,icecast,shoutcast,Flutter,Dart,Icecast,Shoutcast,我正在为德国的一家电台编写一个应用程序,我想从他们的Icecast服务器获取音频流标题信息。我如何在flatter/Dart中接收音频流并过滤出音频元数据以显示歌曲名称 我已经有了获取ice metaint数字的代码,需要将字节(mp3音频数据)计数到显示元数据字符串长度的字节。(就我而言,是16000) 获取ice metaint整数的代码: Future<Map> getInfoDataFromIceCastStream(String url) async { var r
ice metaint
数字的代码,需要将字节(mp3音频数据)计数到显示元数据字符串长度的字节。(就我而言,是16000)
获取ice metaint
整数的代码:
Future<Map> getInfoDataFromIceCastStream(String url) async {
var request = http.Request('GET', Uri.parse(url));
request.headers['Icy-MetaData'] = '1';
var response = await request.send();
var headers = response.headers;
return headers;
}
Future<int> getIcyMetaInt(String url) async {
Map metaData = await getInfoDataFromIceCastStream(url);
print(metaData['icy-metaint']);
return int.parse(metaData['icy-metaint']);
}
Future getInfoDataFromIceCastStream(字符串url)异步{
var request=http.request('GET',Uri.parse(url));
request.headers['ice-MetaData']='1';
var response=wait request.send();
var headers=response.headers;
返回标题;
}
未来的getIcyMetaInt(字符串url)异步{
映射元数据=等待getInfoDataFromIceCastStream(url);
打印(元数据['icy-metaint']);
返回int.parse(元数据['ice-metaint']);
}
最后,我希望得到如下字符串:
StreamTitle='Gong 96.3-markforster-Chöre';StreamUrl=''代码>您是否找到了解决方案,我也遇到了获取流标题、url。。。飘飘然?