Jat*_*tin 6 java ffmpeg xuggler
我正在构建一个用户可以录制截屏视频的应用程序.应用程序的一个组成部分是,可以暂时停止录制并在以后的任何时间恢复它(会话在服务器端维护).
因此,当用户开始录制屏幕时,宽度和高度为:1024*768.使用xuggler(ffmpeg的java包装器),我能够生成一个视频.但后来他说他是在一个不同的系统,并希望恢复屏幕投射,然后分辨率更改为1080*720.在这个阶段,我单独记录它,然后尝试合并两个文件.但由于宽度和高度不同,我得到以下异常:
16:38:03.916 [main] WARN com.xuggle.xuggler - 收到错误:图片的宽度与此编码器的宽度不同(../../../../../../../ csrc/com/xuggle/xuggler/StreamCoder.cpp:1430)线程"main"中的异常java.lang.RuntimeException:视频编码失败
解决这个问题的最佳方法是什么?用户可以在屏幕上具有不同的宽度和高度.如何合并(或任何其他替代方案,可能附加)不同宽度和高度的视频文件?
我不知道 xuggler,但使用 FFMpeg,我可以使用以下命令序列连接具有不同分辨率的视频。对于每个视频我使用以下命令
ffmpeg -i input(n).mp4 -c copy -vbsf h264_mp4toannexb -f mpegts -s 1280*720 out(n).ts
Run Code Online (Sandbox Code Playgroud)
生成所有 out.ts 文件后,我使用以下命令来连接所有视频
ffmpeg -i "concat:out1.ts|out2.ts" -c:v libx264 -strict experimental -bsf:a aac_adtstoasc -ar 48000 -r 20 output.mp4
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
706 次 |
| 最近记录: |