FFMPEG中Doby-AC3 的处理流程
  qUJOhJyC3pLU 2023年11月02日 68 0


Dolby-AC3是需要Licence的,但是FFMPEG却有解码源代码,并且可以解码成功,不知道是不是这个license只限制在产品中征收版税,而不限制开源或者以研发为目的的使用。

FFMPEG中Dolby解码框架解读:

解码接口有三个,分别是init/decode/end,实现在ac3dec.c中,但ac3dec.c本身部直接参与编译,而是以头文件的形式被包含在ac3dec_float.c/ac3dec_fixed.c文件中,参与编译的是后者。

FFMPEG中Doby-AC3 的处理流程_测试用例

FFMPEG中Doby-AC3 的处理流程_音视频_02

FFMPEG中Doby-AC3 的处理流程_3d_03

注册codec.

FFMPEG中Doby-AC3 的处理流程_3d_04

FFMPEG中Doby-AC3 的处理流程_3d_05

FFMPEG中Doby-AC3 的处理流程_测试用例_06


其中,EAC3就是DD+。

验证:

准备AC3片源:

mediainfo /media/caozilong/B0509F8C509F5844/The.Godfather.Part2.Blu-ray.720p.x264.DD51-HiS@MySiLU.mkv

可见音轨是AC3.

添加调试打印:

ac3_decode_frame函数中添加调试打印信息;

FFMPEG中Doby-AC3 的处理流程_兼容性问题_07

重新编译安装:

FFMPEG中Doby-AC3 的处理流程_音视频_08

ffmpeg测试:

./ffplay /media/caozilong/B0509F8C509F5844/The.Godfather.Part2.Blu-ray.720p.x264.DD51-HiS@MySiLU.mkv

FFMPEG中Doby-AC3 的处理流程_音视频_09

gstreamer测试:

gst-play-1.0 /media/caozilong/B0509F8C509F5844/The.Godfather.Part2.Blu-ray.720p.x264.DD51-HiS@MySiLU.mkv

可以看到,无论FFMPEG还是GST都有AC3解码入口的打印。


关于版权

产品中使用Dolby-AC3是需要购买版权的,但是在FFMPEG里面,是有AC3的解码器实现的,并且经过上面测试,它是可以正常工作的,既然开源实现可以替代杜比自己的实现,那岂不是任何人都可以不付出成本的加以使用了么? 那么Dolby赚钱的逻辑是什么?杜比的版权究竟限制的是什么呢?

经过请教,加深了对这个问题的理解,简单来说,杜比的逻辑是,能够播放杜比音频的终端,它的主控IC必须有我的授权,没有就属于非法使用,市场上发现这样的产品它就可以告你。但是如果你购买了我的授权,那么你是用我的解码器还是FFMPEG中的解码器,你随便选,但最终解释权归它所有。并且FFMPEG AC3解码器肯定比不过标准制定者杜比原厂的实现,所有肯定是有兼容性问题的,如果客户投诉杜比音质问题,上诉到杜比那里,人家拿一些特殊夹具一测就知道你是不是使用了官方解码器的实现。至于什么是夹具,就是一些测试用例,TestBench之类。

总结:Dolby License限制的是你用处理器解码的能力,至于你用哪种库(官方库,开源库)实现这种能力,它不管。


结束!

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  lG7RE7vNF4mc   2023年11月13日   33   0   0 3d权重字段
  ssdBcskP7cCp   2023年11月13日   31   0   0 音视频
qUJOhJyC3pLU