zoukankan      html  css  js  c++  java
  • 视频专家之路【一】:音视频入门知识基础

     本文是听了雷宵骅大神的课之后的总结,部分内容借用了其PPT的内容,如有侵权请告知删除。

    雷宵骅大神的博客为:https://blog.csdn.net/leixiaohua1020


    视频播放器的原理


    先说我们平常见到的例如MP4RVMB视频文件是怎么来的,一开始是原始视频,实际上视频就是一张一张的图片拼接而成。假如一秒钟给你播放30张图片,你会觉得这视频很流畅,想象一下小时候那种通过翻页会动的小人书。假如现在由1秒中的视频需要30张的图片,那1个小时就得60*60*30张图片,这样的话体积太大了,所以要进行压缩得到视频压缩文件。此时只有视频,没有声音,就需要把视频和声音拼在一起,这就生成了最终的视频了。而视频播放器就是反其道而行。播放器的流程如下图所示:

     所以个人将其分为了三层:封装格式层、压缩数据层、原始数据层

     常用的音视频分析工具


     常用的音视频分析工具如下图所示,但本文不会提及如何使用,可能在后续文章会有所涉猎

    封装格式的作用以及举例(封装格式层)


    以下举两个比较常用的封装格式例子,MPEG2-TS格式主要是用于数字电视传输,特点是中途断了也能够续播。而FLV假如文件头丢了啥的就播放不了了

    视频编码数据(压缩数据层)


     

    视频编码中运用最广泛的为H264,下面是对其的简单介绍

    音频编码数据(压缩数据层)


    音频编码中运用最广泛的为AAC,下面是对其的简单介绍

     

    视频像素数据(原始数据层)


    视频像素数据最常见的是RGB和YUV两种格式,下面对两种格式分别进行介绍

    (1)RGB格式

    (2)YUV格式

    音频采样数据(原始数据层)


    音频原始数据采用的是PCM格式,以下是对其的简单介绍

  • 相关阅读:
    Button 样式设置
    WPF 运行报错:在使用 ItemsSource 之前,项集合必须为空。
    c# List 按条件查找、删除
    c# WPF DataGrid设置一列自增一
    C# WPF DataGrid去掉最左侧自动生成一列
    int 转换成定长的 byte数组
    字节数组 byte[] 与 int型数字的相互转换
    [ c# ] int 类型转换为固定长度的字符串
    ListView 绑定 字典
    不能引用的文件,却需要在程序底层使用的文件 的存放位置
  • 原文地址:https://www.cnblogs.com/codescrew/p/9030144.html
Copyright © 2011-2022 走看看