如何从外部目录 android 中的 shoutcast url 录制或下载流缓冲区
How to record or download stream buffer from shoutcast url in external directory android
我正在 Exoplayer 的帮助下播放 shoutcast url,我想将缓冲区保存为 .mp3 文件格式..我正在使用这段代码,但在我录制时保存流非常非常慢流 5 分钟它只记录了大约 15-20 秒的流..请帮助我...提前感谢您的贡献...
outputSource.append( "//samplefile.mp3" );
String os;
os = outputSource.toString();
fileOutputStream = new FileOutputStream( os );
inputStream = new URL( "http://my_url" ).openStream();
while (true)
{
int c;
while((c=inputStream.read())!= -1)
{
Log.d(LOG_TAG,"bytesRead="+bytesRead);
fileOutputStream.write(c);
bytesRead++;
}
}
i am recording stream for 5 min it is only recording stream of about 15-20 sec
那是因为你是一个字节一个字节的读。
您需要使用缓冲区:
int l;
byte[] buffer = new byte[1024];
while ((l = inputStream.read(buffer)) != -1) {
fileOutputStream.write(buffer, 0, l);
}
还有你的while(true)
循环没用
我正在 Exoplayer 的帮助下播放 shoutcast url,我想将缓冲区保存为 .mp3 文件格式..我正在使用这段代码,但在我录制时保存流非常非常慢流 5 分钟它只记录了大约 15-20 秒的流..请帮助我...提前感谢您的贡献...
outputSource.append( "//samplefile.mp3" );
String os;
os = outputSource.toString();
fileOutputStream = new FileOutputStream( os );
inputStream = new URL( "http://my_url" ).openStream();
while (true)
{
int c;
while((c=inputStream.read())!= -1)
{
Log.d(LOG_TAG,"bytesRead="+bytesRead);
fileOutputStream.write(c);
bytesRead++;
}
}
i am recording stream for 5 min it is only recording stream of about 15-20 sec
那是因为你是一个字节一个字节的读。
您需要使用缓冲区:
int l;
byte[] buffer = new byte[1024];
while ((l = inputStream.read(buffer)) != -1) {
fileOutputStream.write(buffer, 0, l);
}
还有你的while(true)
循环没用