这里我有三种方法来获取H264文件,就像所有法医科学家一样,我对它们之间的差异非常好奇:
1
ffmpeg -i video.mp4 video.h264
2
ffmpeg -i video.mp4 -vcodec copy -an -f h264 video.h264
3。使用ffmpeg官方网站上提供的示例“demuxing_decoding.c”: http://ffmpeg.org/doxygen/trunk/demuxing_decoding_8c-example.html
显然,第一个进行转换,第二个进行转换。它们呈现不同的H264文件,但是文件大小相似(在我的情况下,大约是24 MB)。令人惊讶的是,第三个,也应该做拆分工作,呈现一个8.4 GB的H264文件!为什么?
我真的想知道,这三种方法的内部是如何工作的?(第三种方法已经在源代码中,因此很容易获得洞察力)前两个命令怎么样?在执行这两个命令时调用哪些API以及如何调用这些API(即,调用它们的类型)等等。 对我来说同样重要的一件事是,我不知道如何跟踪ffmpeg命令行的执行例程。我想看看源代码版本中ffmpeg命令背后发生了什么。有可能吗?
我感谢任何评论。