如何判断视频数据是H264编码

news/2024/11/29 2:44:28/

H264详细介绍:H264编码总结

 
u8 is_h264_file(char *filename)
{AVFormatContext *ifmt_ctx = NULL;int ret = 0;if ((ret = avformat_open_input(&ifmt_ctx, filename, 0, 0)) < 0) {printf( "Could not open input file.");return 0;}//	printf("1ifmt_ctx->video_codec_id:%d\n",ifmt_ctx->video_codec_id);if ((ret = avformat_find_stream_info(ifmt_ctx, 0)) < 0) {printf( "Failed to retrieve input stream information");avformat_close_input(&ifmt_ctx);return 0;}//ifmt_ctx->streams[0]->codecpar->codec_id;printf("3ifmt_ctx->video_codec_id:%d\n",ifmt_ctx->streams[0]->codecpar->codec_id);if(ifmt_ctx->streams[0]->codecpar->codec_id==AV_CODEC_ID_H264){printf("is h264 file\n");avformat_close_input(&ifmt_ctx);return 1;}else {printf("is not h264 file\n");avformat_close_input(&ifmt_ctx);return 0;}}

判断MP4是否为H.264编码格式,用mediaInfo这个软件是可以查看的
  H264标准的主要特点如下:
  1.更高的编码效率:同H.263等标准的特率效率相比,能够平均节省大于50%的码率。
  2.高质量的视频画面:H.264能够在低码率情况下提供高质量的视频图像,在较低带宽上提供高质量的图像传输是H.264的应用亮点。
  3.提高网络适应能力:H.264可以工作在实时通信应用(如视频会议)低延时模式下,也可以工作在没有延时的视频存储或视频流服务器中。
  4.采用混合编码结构:同H.263相同,H.264也使用采用DCT变换编码加DPCM的差分编码的混合编码结构,还增加了如多模式运动估计、帧内预测、多帧预测、基于内容的变长编码、4x4二维整数变换等新的编码方式,提高了编码效率。
  5.H.264的编码选项较少:在H.263中编码时往往需要设置相当多选项,增加了编码的难度,而H.264做到了力求简洁的“回归基本”,降低了编码时复杂度。
  6.H.264可以应用在不同场合:H.264可以根据不同的环境使用不同的传输和播放速率,并且提供了丰富的错误处理工具,可以很好的控制或消除丢包和误码。
  7.错误恢复功能:H.264提供了解决网络传输包丢失的问题的工具,适用于在高误码率传输的无线网络中传输视频数据。
  8.较高的复杂度:264性能的改进是以增加复杂性为代价而获得的。据估计,H.264编码的计算复杂度大约相当于H.263的3倍,解码复杂度大约相当于H.263的2倍。


http://www.ppmy.cn/news/261248.html

相关文章

深度哈希-DHN

Deep Hashing Network for Efficient Similarity Retrieval AAAI 2016 源码&#xff1a;https://github.com/zhuhan1236/dhn-caffe 与上一篇文章类似&#xff0c;通过设计损失函数&#xff0c;使得最后全连接层的输出分布近似于二值{-1&#xff0c;1}分布。不过这篇论文从理论…

机器人导论 学习笔记2 - 运动学(D-H模型)

D-H模型 &#xff08;Denavit-Hartenberg&#xff09; 两种D-H模型&#xff08;标准D-H模型和改进D-H模型&#xff09;比较 1 将连杆坐标系的原点建立在连杆的关节首端 &#xff08;改进型DH&#xff09; 这种建立D-H坐标系的方法的步骤是&#xff1a; 画出各关节轴…

工业机器人(3)-- Denavit–Hartenberg(D-H)参数

在机械工程中&#xff0c;Denavit-Hartenberg 参数(也称为 DH 参数)是与一个特定约定相关联的四个参数&#xff0c;用于将参考坐标系附加到空间运动链或机器人操作臂的连杆上。 “Jacques Denavit and Richard Hartenberg introduced this convention in 1955 in order to sta…

一文详解机器人标准D-H参数与改进型D-H参数

标准D-H参数&#xff08;SDH&#xff09; 关节角&#xff1a;绕轴&#xff0c;旋转到的角度&#xff1b; 偏置距离&#xff1a;沿轴&#xff0c;移动到的距离&#xff1b; 连杆长度&#xff1a;从轴&#xff0c;移动到的距离&#xff1b; 连杆扭角&#xff1a;绕轴&#xf…

国密SM2算法

目录 1 前言2 基础参数3 密钥对生成4 签名算法4.1 预处理14.2 预处理24.3 生成签名4.4 签名验证4.5 签名验证原理 5 参考资料 1 前言 比原链的智能合约支持国密算法的函数。SM2是国密标准的椭圆曲线加密算法&#xff0c;遵循以下SM2国家标准&#xff1a; GB/T 32918.1-2016GB…

dirent.h使用详解

LINUX下历遍目录的方法一般是这样的 打开目录-》读取-》关闭目录 相关函数是 opendir -> readdir -> closedir #include <dirent.h> DIR *opendir(const char *dirname); struct dirent *readdir(DIR *dirp); int closedir(DIR *dirp); 好了&#xff0c;三个函…

SATA协议14种FIS介绍

&#xfeff;&#xfeff; FIS(Frame Information Structure)解析 FIS是一种用于Host和device之间信息传输的机制&#xff0c;每个FIS的格式都是固定的&#xff0c;并且对应唯一的ID&#xff0c;SATA Spec定义了14类FIS ID。 但是&#xff0c;实际上&#xff0c;我们用到主要是…

机器人之D-H模型建立和推导

D-H建模原理推导 1.1 基本思路 D-H建模具体思路是先分别在每个关节加建立关节坐标系&#xff0c;确定关节刚性连杆参数&#xff0c;再依次将关节变换联系起来&#xff0c;计算出末端执行器相对于参考坐标系的变换关系得到坐标变换矩阵&#xff0c;从而建立机械臂运动学方程。关…