黑马程序员技术交流社区
标题:
SequenceInputStream合并两个视频文件时的问题
[打印本页]
作者:
王自强
时间:
2012-9-14 16:58
标题:
SequenceInputStream合并两个视频文件时的问题
import java.io.*;
import java.util.*;
class Test
{
public static void main(String[] args)throws Exception
{
merge();
}
public static void merge()throws Exception
{
ArrayList<FileInputStream> al = new ArrayList<FileInputStream>();
al.add(new FileInputStream("F:\\疯狂的小梅西1.hlv"));
al.add(new FileInputStream("F:\\疯狂的小梅西2.hlv"));
final Iterator<FileInputStream> it = al.iterator();
Enumeration<FileInputStream> en = new Enumeration<FileInputStream>()
{
public boolean hasMoreElements()
{
return it.hasNext();
}
public FileInputStream nextElement()
{
return it.next();
}
};
SequenceInputStream sis = new SequenceInputStream(en);
FileOutputStream fos = new FileOutputStream("F:\\疯狂的小梅西.hlv");
byte[] buf = new byte[1024*1024];
int len = 0;
while((len=sis.read(buf))!=-1)
{
fos.write(buf,0,len);
}
sis.close();
fos.close();
}
}
复制代码
我从网上下载了足球视频,但是下载下来的时候,是分成两部分的,其实内容是连续的。
于是想用学的SequenceInputStream将两部分视频合并起来。但是,结果不成功,合并后的hlv文件大小是22M,等于前两个文件大小(11.1M和10.9M)的和。
但是播放起来却有很大的问题,只能播放一部分。
很纠结,想问下有没有试过这样做的同学 帮我解答解答疑惑?
我试过合并两个不同的MP3文件,播放起来很成功,视频文件不知道为什么不行?
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2