java - MP4 视频的文件输入/输出流
问题描述
我想通过我的 java 代码读写 mp4 文件。这是我读取 2 个文件并合并它的代码。它适用于文本文件,但不适用于 mp4 文件。在这里它正在正确读取两个文件,但问题是在写入文件时。帮我合并两个视频文件:
import java.io.FileInputStream;
import java.io.SequenceInputStream;
import java.io.FileOutputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Scanner;
class Stm4
{
public static void main(String[]args)
{
Scanner input=new Scanner(System.in);
boolean q=true;
FileInputStream fis=null;
FileInputStream dis=null;
SequenceInputStream uiu=null;
FileOutputStream sis=null;
try
{
System.out.print("enter the first file");
String s=input.next();
System.out.print("enter the second file");
String p=input.next();
System.out.print("enter the destination File name");
String u=input.next();
fis=new FileInputStream(s);
dis=new FileInputStream(p);
uiu=new SequenceInputStream(fis,dis);
sis=new FileOutputStream(u);
int a;
do
{
a=uiu.read();
if(a==-1)
{
break;
}
sis.write(a);
}
while(true);
fis.close();
dis.close();
sis.close();
uiu.close();
}
catch(FileNotFoundException ime)
{
System.out.print("file not found");
}
catch(IOException jnf)
{
System.out.print("file is empty");
}
}
}
解决方案
仅加入二进制数据不会帮助您创建有效的视频输出。您应该搜索可以处理视频编辑的库,或者您必须遵循输出视频的 mp4 规范。
MP4 规格:http: //jchblog.u.qiniudn.com/doc/ISO_IEC_14496-14_2003-11-15.pdf
推荐阅读
- c++ - 为什么这个程序会编译?它应该不会出错,因为我要删除两次相同的东西
- python - 文本预处理中更快的拼写纠正
- jquery - Jquery将左右内容滑出屏幕
- javascript - 如何在具有本地存储的对象中添加对象?
- python - Python中的元组项替换
- c++ - 通过删除几个元素获得的 Rcpp 最大值
- r - 如何使用 R 获取单波段栅格的 RGBA 颜色表?
- node.js - AWS elasticbeanstalk不接受请求
- kubernetes - Helm,Promethus:在 ec2 实例上安装带有数据/默认目录的 prometheus
- sql - 在不使用 sql server 代理的情况下,当 SQL 中的数据有更新时,如何安排我的存储过程运行?