我正在制作一个项目,单个目标是在一个文件中转换2个.mp4文件。为此,我将文件转换为2字节[]并将其转换为单个文件,但是当我在其上创建BufferedOutputStream
时,它只保留一个文件的内容,同时在内存中占用相同的空间。两者相结合。我正在使用的代码是:
public byte[] whole(){
Array<byte[]> fs = filme();
Array<Byte> bb = new Array<Byte>();
for(byte[] b : fs){
for(int i = 0; i<b.length; i++){
bb.add(b[i]);
}
}
byte[] whl = new byte[bb.size];
for(int i = 0; i<whl.length; i++){
whl[i] = bb.get(i);
}
return whl;
}
这部分代码将字节数组列表转换为单字节数组。如果你测试并将字节数组拆分成两个文件,其长度与两个初始文件的长度相同,那么它就会生成相同的两个开始文件,就像以前一样。
public FilmFile transform(byte[] go, String path) throws IOException{
FileOutputStream out = new FileOutputStream(path);
bos = new BufferedOutputStream(out);
bos.write(go);
FilmFile f = new FilmFile(path);
return f;
}
此代码将前面提到的将两个文件组合在一起的字节数组转换为单个mp4文件,但它占用了两个文件的空间而只显示了onde视频。 一些信息,以获取有关我正在使用JCODEC和该项目的电影的信息是gradle。这是FilmFile代码: https://docs.google.com/document/d/1IHdG3gDeRmKXwRT2LJbsC5zI7K5kP4kuNAwMjCh7wII/edit?usp=sharing 谢谢你的帮助,对不起英语不好。