自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 资源 (7)
  • 收藏
  • 关注

原创 X264算法参数一(X264线程参数)

一、线程参数概览参数名称 参数类型 参数含义 参数配置 cpu unsigned int cpu型号 根据编译环境自动确定,无需单独配置。 i_threads int 并行编码线程数 b_sliced_threads为0时:帧级并行编码线程数 b_sliced_threads为1时:slice级并行编码线程数 i_look...

2019-04-26 18:02:11 1921 5

原创 X264算法参数五(码控参数)

一、码控参数概览X264码控参数概述 参数名称 参数类型 参数含义 备注说明 i_rc_method int 码控方法 X264_RC_CQP:固定的量化参数,随着视频运动情况,码率会上升和下降。但是码率不可控,码率大小取决于残差大小。 X264_RC_CRF:恒定质量编码(运动/纹理复杂场景,码率上升;静态/纹理简单的画面,码率下...

2019-04-26 16:35:51 2319

转载 mark:常见的开源协议行为约束

mark:https://www.cnblogs.com/sadkilo/p/5962371.html参考:http://www.ha97.com/833.html

2019-04-24 17:18:01 322

原创 X264算法参数六(动态修改码率)

一、函数关系树X264编码参数动态修改函数调用关系如下图所示:二、动态码率修改1、X264只仅支持CBR模式下的码率修改。其他模式不支持。2、CBR是恒定码率,是ABR的一个特殊应用场景。当x264_param_t->rc->i_bitrate等于x264_param_t->rc->i_vbv_max_bitrate。即目标码率和峰值码率相等时,编码...

2019-04-19 10:05:41 2499 1

原创 X264代码走读一(ABR算法码控)

一、码控简介x264码率控制主要分为单次编码(1pass)和多次编码(2pass)两大类,其中单次编码主要分如下三种:CRF(constant Rate Factor):恒定质量编码(运动/纹理复杂场景,码率上升;静态/纹理简单的画面,码率下降) CQP(constant quantization parameter):固定的量化参数,随着视频运动情况,码率会上升和下降。但是码率不可控,...

2019-04-12 13:35:44 2916 1

原创 X264代码走读三(b_annexb参数)

一、简介1)协议说明使能b_annexb参数:X264编码器输出的码流格式符合《T-REC-H.264-201704-I!!PDF-E》Annex B Byte stream format+《T-REC-H.264-201704-I!!PDF-E》NAL unit syntax定义格式 关闭b_annexb参数:X264编码器输出的码流格式符合 “四个字节的长度字段“+《T-REC-H....

2019-04-03 17:18:14 1343

使用std::optional替换absl::optional需要包含的头文件

使用std::optional替换absl::optional需要包含的头文件。替换对abseil-cpp开源软件的依赖。

2023-04-04

H5网页标准SDP协商日志

WebRTC Internals H5网页标准SDP协商日志信息

2022-09-07

x265.exe demo

x265.exe --input black.yuv --input-res 1280x720 xxx.265 --log-level debug 可以查看numa架构打印

2021-08-16

webrtc_demo_withlog.tar

webrtc客户端和信令服务器demo,client客户端自动生成日志

2021-07-07

graphstudio.rar

查看和配置windows下设备管理器属性

2021-06-03

vmafossexec.rar

命令行:vmafossexec yuv420p 640 480 ref.yuv test.yuv vmaf_v0.6.1.pkl --psnr --ssim --log test.txt

2019-05-17

psnr_ssim_analyzer.exe

一、命令行 psnr_ssim_analyzer.exe --height=480 --width=640 --reference_file=ref.yuv --test_file=test.yuv --results_file=test.csv 二、代码来源及修订记录: 1、该工具是根据webrtc的psnr_ssim_analyzer.cc源码修改,webrtc源码有bug,没有判断文件是否结束。导致计算结果异常。 2、优化写结果格式,可以在excel中打开,进行统计分析。 三、修改webrtc代码点: bool ExtractFrameFromYuvFile(const char* i420_file_name, int width, int height, int frame_number, uint8_t* result_frame) { int frame_size = GetI420FrameSize(width, height); int64_t offset = frame_number * frame_size; // Calculate offset for the frame. bool errors = false; FILE* input_file = fopen(i420_file_name, "rb"); if (input_file == NULL) { fprintf(stderr, "Couldn't open input file for reading: %s\n", i420_file_name); return false; } fseek (input_file, 0, SEEK_END); int64_t file_size = ftell(input_file); if (offset > file_size) { fprintf(stderr, "the end %s frame_number:%d frame_size:%d file_size:%lld offset:%lld\n", i420_file_name, frame_number, frame_size, file_size, offset); return false; } // Change stream pointer to new offset. fseek(input_file, offset, SEEK_SET); size_t bytes_read = fread(result_frame, 1, frame_size, input_file); if (bytes_read != static_cast(frame_size) && ferror(input_file)) { fprintf(stdout, "Error while reading frame no %d from file %s\n", frame_number, i420_file_name); errors = true; } fclose(input_file); return !errors; }

2019-05-16

写日志文件代码

实现日志写文件功能,并且优化日志打印内容,增加时间、文件名、行号信息。

2018-12-28

webrtc vp8_rtp抓包样例

在webrtc系统上捕获的VP8无FEC、SRTP的RTP报文,用于VP8协议分析。

2018-10-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除