zoukankan      html  css  js  c++  java
  • 无损1080i到1080p是如何制作的

      目前高清电影的格式有多种如720p、1080i、1080p等等。其中的1080p和1080i有着密不可分的关系,因为1080p可以由1080i通过无损变换而制作。
    无损变换的定义:100%保留原有画面细节,包括内容,亮度,色调,对比度,甚至原有的MSK. 但是,不再有锯齿或水波纹。
    无损变换的基本原理
    我们看到的大多数1080i片源,最初都是用电影方式摄制的逐行信号,数字化以后成为1080p信号,为了在符合1080i的传输设备和显示设备上使用,电视台对它进行了简单的处理(不是重新压缩编码),使它符合1080i的要求。只要我们把这个简单的处理变回去,就得到了原始的1080p信号。简单说,我们下载到的1080i信号,实际上是化了妆的1080p信号,只要卸妆,就得到原始1080p。这个变换过程只修改视频流里面的某些隔行/逐行相关的标志位,完全不涉及真正的视频数据,因此你看到的视频完全不会有任何变化。
    无损变换的过程如下
    1. 鉴定片源是否符合无损变换的要求。最简单的办法是用dgindex查film信号百分比,如果接近100%就可以。但是有时候信号标志位有可能错误,那么需要复杂的办法去逐帧查看视频流,确认真实的信号符合1080p的要求。我目前用的办法是parse D2V, VirtualDub+AVISynth。我现在正在写一些小程序用于简化这个工作。鉴定过程是最花费时间的。如果鉴定不合格,此片只能用重编码方式转换1080p,那就是有损方式了。鉴定合格以后就简单了。
    2.把ts流用MVW(或其他工具)分离成基础视频流m2v/mpv和基础音频流m2a/mpa
    3.用pulldown.exe把m2v/mpv变换成为1080p信号。有时候由于ts分割的原因,m2v/mpv头部会有一些垃圾数据,需要用十六进制编辑工具如WINHEX/ULTRAEDIT把头上的垃圾去掉,确保m2v/mpv是一个合格的基础视频流。否则pulldown.exe不认。
    4. 变换完成后,再用MVW(或其他工具)把1080p版本的m2v/mpv与原来的m2a/mpa合成ts流。需要仔细检查一下是否存在音画不同步问题。
  • 相关阅读:
    vue-fullcalendar插件
    iframe 父框架调用子框架的函数
    关于调试的一点感想
    hdfs 删除和新增节点
    hadoop yarn 实战错误汇总
    Ganglia 安装 No package 'ck' found
    storm on yarn(CDH5) 部署笔记
    spark on yarn 安装笔记
    storm on yarn安装时 提交到yarn失败 failed
    yarn storm spark
  • 原文地址:https://www.cnblogs.com/MaxWoods/p/1640048.html
Copyright © 2011-2022 走看看