视频编解码基础概念

1. 概述
音视频领域早期采用模拟化技术,目前已发展为数字化技术。数字化的主要好处有:可靠性高、能够消除传输及存储损耗,便于计算机处理及网络传输等。数字化后,音视频处理就进入了计算机技术领域,音视频处理本质上就是对计算机数据的处理。
图像信息经采集后生成的原始视频数据,数据量非常大,对于某些采集后直接本地播放的应用场合,不需要考虑压缩技术。但现实中更多的应用场合,涉及视频的传输与存储,传输网络与存储设备无法容忍原始视频数据的巨大数据量,必须将原始视频数据经过编码压缩后,再进行传输与存储。
本文仅关注视频,不关注音频。

2. 视频压缩原理

2.1 熵与冗余

...

视频编解码相关知识

视频编解码基础概念理解
P帧,I帧,D帧,DTS,PTS
1
I 帧: 关键帧,又称帧内编码帧,自带存储完整的视频数据,无需参考其他编码帧,是视频序列的第一帧
P 帧: 向前预测编码帧,需要参考前面的 I 帧或者 P 帧才可以进行编码,存储与前一帧的差别
B 帧: 双向预测编码帧,需要参考前面的 I 帧或者 P 帧及其后面的 P 帧来进行编码
DTS(Decoding Time Stamp):即解码时间戳,这个时间戳的意义在于告诉播放器该在什么时候解码这一帧的数据。
PTS(Presentation Time Stamp):即显示时间戳,这个时间戳用来告诉播放器该在什么时候显示这一帧的数据。
...

Django2.0入门教程:Django常用命令

安装Django: pip install django  指定版本 pip3 install django==2.0
新建项目: django-admin.py startproject mysite
新建APP : python manage.py startapp blog
启动:python manage.py runserver 8080
同步或者更改生成 数据库:
python manage.py makemigrations
python manage.py migrate
清空数据库: python manag...

git 如何查看远程仓库地址

现在代码管理git非常火爆,但是如果使用TortoiseGit工具是一般查看不了远程git的地址。
如果查看远程地址呢:
打开【命令提示行】到需要查看的目录输入:git remote -v 就可以看到了远程地址了。
如图:




NET(C#):线程本地存储(Thread-Local Storage)

1. 使用ThreadStatic特性
ThreadStatic特性是最简单的TLS使用,且只支持静态字段,只需要在字段上标记这个特性就可以了:

//TLS中的str变量
[ThreadStatic]
static string str = "hehe"; 


static void Main() 
{

    //另一个线程只会修改自己TLS中的str变量

    Thread th = new Thread(() => { str = "Mgen"; Display(); });

   ...

C# 利用MetadataType 实现对象统一验证

       在我们开发过程中经常会遇到数据有效性性验证,例如非空验证,长度验证以及其他验证,如果每个方法单独验证会导致方法入口一堆重复的代码,如果利用MetadataType进行统一验证就能减少很多重复的代码

老生常谈 .net使用GhostDoc生成代码注释

一、名词解释
   GhostDoc是Visual Studio的一个免费插件,可以帮助开发人员编写XML格式的注释文档。
    .net开发时XML格式的文档注释功能很多:Visual Studio会在很多地方显示这些注释内容(例如,编辑器的工具提示或对象浏览器),还有一些工具(比如NDoc或微软的文档工具Sandcastle) 也可以利用这些注释生成具有良好外观的帮助文件,WebApi对我开放接口用swagger工具使用。这些都让XML格式的注释看上去很美——但很不幸,你首先得编写大量的注释。 
二、GhostDoc主...

        HTTP协议/IIS 原理及ASP.NET运行机制浅析【图解】

        前言
        前一段在整理邮件的时候发现几年前和CDD老师交流时的一份邮件.下面是简单摘要:
        “从技术角度来说,无论哪一个阵营,跟新技术都是不可避免的,也是很累的,当然作为一个程序员来说,也是必须的。要想让技术的更新对自己的影响减小,基础就必须打牢。所以,底层的东西和抽象层的东西需要下一番功夫。因为说到底,无论什么技术,无非就是架构和最终的实现,技术框架只是应用开发的一个平台一种技术,如果了解了具体的东西,技术更新对你来说就没什么影响了,或者换句话说,你要学一种新的技术,速度和效率会非常之高。”
        上面一段话对自己的影响很大,可能大家在踏入“程序人生”的时候都会存在一些迷茫和彷徨。...

        (转)ASP.NET页面与IIS底层交互和工作原理详解

        第一回:

        引言

        我查阅过不少Asp.Net的书籍,发现大多数作者都是站在一个比较高的层次上讲解Asp.Net。他们耐心、细致地告诉你如何一步步拖放控件、设置控件属性、编写CodeBehind代码,以实现某个特定的功能。
        这种做法,实际上是回答了“如何去做”的问题,却没有回答“为什么可以这样做”的问题。
        尽管我很推崇 悉江华 先生的《圣殿祭祀的Asp.Net开发详解》一书,但当我翻看了一下其对角色(Role) 和 用户(Member)的讲解时,我决定跳过去直接读后面的章节。因为我发现他也随了大流,对这部分的讲解停留在“如何去做”的层面上。我相信像悉先生 这样的牛人是...

                        WCF、WebAPI、WebService之间的区别

                        一.WCF、WebAPI、WebService之间的区别
                        Web Service

                        1、它是基于SOAP协议的,数据格式是XML
                        2、只支持HTTP协议
                        3、它不是开源的,但可以被任意一个了解XML的人使用
                        4、它只能部署在IIS上 


                        WCF


                        1、这个也是基于SOAP的,数据格式是XML
                        2、这个是Web Service(ASMX)的进化版,可以支持各种各样的协议,像TCP,HTTP,HTTPS,Named Pipes, MSMQ.
                        3、WCF的主要问题是,它配置起来特别的繁琐
                        ...
                        加载中...