Windows环境下 VS2022 编译 Xvid 源码

news2024/11/17 19:32:08

Xvid

  • Xvid 是一个开源的视频编解码器,遵循 MPEG-4 视频编码标准,特别是 MPEG-4 Part 2 Advanced Simple Profile。它被广泛用于视频的压缩和解压,尤其是在互联网上分享视频文件时,因为它能够有效地减小文件大小而不会过多损失视频质量。Xvid 的文件扩展名可以是 AVI、MKV、MP4 等,但需要注意的是,文件的扩展名并不总是反映视频的编码格式。例如,一个 .avi 文件可能实际上是使用 Xvid 编码的,而一个 .mp4 文件可能使用了不同的编码格式。

  • Xvid 支持多种编码技术,包括但不限于:

    • 多种编码模式,包括单次和双重编码(1-pass 和 2-pass)。
    • 量化(Quantization)方式和范围控制。
    • 运动侦测和曲线平衡分配。
    • 动态关键帧距和心理视觉亮度修正。
    • 外部自定义控制和运动向量加速编码。
    • 画面优化解码,包括去块(deblocking)、去环(deringing)和减少蚊状噪斑(mosquito noise reduction)。
  • Xvid 的开发始于 2001 年,当时是由于 DivX 编码器的闭源化,一群开发者决定创建一个完全开源的替代品,这就是 Xvid 的起源。由于 Xvid 是开源的,它允许更广泛的社区参与和改进,这使得它在功能和性能上都有持续的提升。

  • Xvid 编解码器的软件通常很小,不会占用太多系统资源,而且它是免费的。它提供了多种编码模式,包括固定码率(CBR)和可变码率(VBR),以及不同的质量控制选项。Xvid 还支持自定义量化矩阵,这可以进一步提高压缩效率和视频质量。

Windows下VS2022编译Xvid源码过程

  1. Xvid官网地址:https://medical-dictionary.thefreedictionary.com/Xvid
    在这里插入图片描述
  2. 源码仓库地址:http://websvn.xvid.org/cvs/viewvc.cgi/

在这里插入图片描述
3. 从ShiftMediaProject项目集中下载Xvid源码项目进行编译,由于官网代码利用SVN管理,所以git里应该也是拷贝过来。
在这里插入图片描述
4. 打开下载下来的xvid源码中SMP文件夹,这就是利用VS编译的核心文件夹。
在这里插入图片描述
5. 点击SMP文件夹中,即可用VS2022打开。
在这里插入图片描述
6. 右键libxvidcore工程,点击“生成”,一小段时间,即可生成对应的lib库文件和相应的头文件以及版本信息文件。
在这里插入图片描述
7. 需要注意的是,指定的输出目录是msvc的相对路径目录,可以根据的需求在项目属性中配置输出目录路径。
在这里插入图片描述
8. 也可以将SMP直接拷贝到指定的Xvid源码版本,或者自己优化调整过的Xvid源码中,利用VS进行源码编译。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2133315.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

切线空间:unity中shader切线空间,切线矩阵,TBN矩阵 ,法线贴图深度剖析

unity中shader切线空间 看了网上各种解释,各种推理。直接脑袋大。感觉复杂的高大上。当深入了解后,才发是各种扯淡。 一切从模型法向量开始 在shader中,大部分的光照计算都是与法向量有关。通过法向量和其他向量能计算出模型在光线照射下的…

How to see if openAI (node js) createModeration response “flagged“ is true

题意:如何查看 OpenAI (Node.js) createModeration 响应中的 "flagged" 是否为 true 问题背景: Using the OpenAI createModeration feature, I am trying to see if the string gets flagged or not. 使用 OpenAI 的 createModeration 功能…

医学数据分析实训 项目一 医学数据采集

项目一 医学数据采集 一、实践目的 了解医学数据的特点;熟悉常见的医学公共数据库的使用方法;掌握获取医学数据的方法; 二、实践平台 操作系统:Windows10 及以上Python 版本:3.8.x 及以上PyCharm 或 Anoconda 集成…

Ubuntu 安装最新 Google Chrome 浏览器

谷歌浏览器使用简单并且用户友好,使用它浏览互联网愉悦至极。许多用户喜欢 Chrome,因为它加载网页又快又流畅。Chrome 提供强大的安全功能,帮助用户保持在线安全。Google Chrome 官方提供了一个 Debian 软件包存储库,基于 Debian …

Llama Factory :百种以上语言模型的统一高效微调框架

人工智能咨询培训老师叶梓 转载标明出处 大模型适应到特定下游任务时,传统的全参数微调方法成本高昂,因此,研究者们一直在探索更高效的微调技术。由北京航空航天大学和北京大学的研究团队提出了一个名为Llama Factory的统一框架,…

【免费刷题】实验室安全第一知识题库分享

道路千万条,实验安全第一条。 嘿,实验室的小伙伴们!是不是还在为实验室安全考试而烦恼?别担心,今天就让我来分享一些实用的题库,帮助你轻松应对考试,同时也更好地保护自己和实验室的安全。 一、…

前端开发第三节课

20-目录文件夹和根目录 4.8图像标签和路径(重点) 2.路径(前期铺垫知识) (1)目录文件夹和目录 实际工作中,我们的文件不能随便乱放,否则用起来很难快速地找到他们,因此…

LeetCode 热题 100 回顾13

干货分享,感谢您的阅读!原文见:LeetCode 热题 100 回顾_力code热题100-CSDN博客 一、哈希部分 1.两数之和 (简单) 题目描述 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标…

基于SpringBoot+Vue的个性化旅游推荐系统

作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、SSM项目源码 系统展示 【2025最新】基于JavaSpringBootVueMySQL的…

free -h 查看内存free空间不足

free空间不足 大部分被buff/cache占用 解决办法一: 手动释放缓存 释放页缓存 sudo sync; sudo sysctl -w vm.drop_caches1 释放目录项和inode缓存 sudo sync; sudo sysctl -w vm.drop_caches2 释放所有缓存(页缓存、目录项和inode缓存) sudo sync…

【隐私计算】安全多方计算MPC中的高效三角函数计算

隐私计算中的非线性函数很难算,或者开销很大。三角函数更是如此,Squirrel文章中提出了一种高效的计算方式,感觉可以作为一种通用优化方案。 参考文献:Squirrel: A Scalable Secure Two-Party Computation Framework for Training…

几何概率模型

一、几何概率模型 ① 样本空间的样本点为无限个 ② 每个样本点发生的可能性是均等的 ③ P(A)事件A的几何度量值/样本空间的几何度量值 说明:如果样本空间的样本点为有限个,则为古典概型 通过2个例子,来感受下两者的区别 ① 例&#xff1…

大语言模型之ICL(上下文学习) - In-Context Learning Creates Task Vectors

本文译自 《In-Context Learning Creates Task Vectors》 —— 论文中的作者也在用LLaMA模型,笔者自我感觉拉近和世界顶级人才的距离,哈哈内容较长,如想看结论直接看 摘要、介绍与结论几个章节即可,看细节请看目录索引。经验风险最…

ZoneTree: 高性能ACID兼容的.NET有序键值数据库

推荐一个专门针对键值存储的开源数据库。 01 项目简介 ZoneTree基于.Net开发的开源键值数据库。它以其持久化存储、高性能处理、事务性操作和ACID合规性而著称。ZoneTree能够以内存数据库的形式运行,也可以在本地或云存储上进行数据持久化,提供了灵活性…

人工智能物联网:一项综述

这篇论文的标题是《Artificial Intelligence of Things: A Survey》,作者是 Shakhrul Iman Siam 等人,来自不同的大学和研究机构。论文提供了对人工智能物联网(AIoT)研究的系统性和全面性回顾。以下是论文的主要内容概述&#xff…

【H2O2|全栈】关于CSS(4)CSS基础(四)

目录 CSS基础知识 前言 准备工作 精灵图 概念 属性 案例 浮动 基础属性 清除浮动 案例 预告和回顾 后话 CSS基础知识 前言 本系列博客将分享层叠样式表(CSS)有关的知识点。 接下来的几期内容相对比较少,主要是对前面的内容进…

服务网关Gateway快速入门

1.引入 网关可以把它理解成坐高铁时的安检,他可以对用户做身份验证,哪些人能通过,哪些人不能通过,都由他决定,如果没有安检,那么高铁的安全性将受到打击,一个微服务没有网关,那么接口…

大数据新视界 --大数据大厂之HBase深度探寻:大规模数据存储与查询的卓越方案

💖💖💖亲爱的朋友们,热烈欢迎你们来到 青云交的博客!能与你们在此邂逅,我满心欢喜,深感无比荣幸。在这个瞬息万变的时代,我们每个人都在苦苦追寻一处能让心灵安然栖息的港湾。而 我的…

webpack原理简述

1.1 核心概念 JavaScript 的 模块打包工具 (module bundler)。通过分析模块之间的依赖,最终将所有模块打包成一份或者多份代码包 (bundler),供 HTML 直接引用。实质上,Webpack 仅仅提供了 打包功能 和一套 文件处理机制,然后通过生…

Mini-Omni 语言模型在流式传输中边思考边听说应用

引入简介 Mini-Omni 是一个开源的多模态大语言模型,能够在思考的同时进行听觉和语言交流。它具有实时端到端语音输入和流媒体音频输出的对话能力。 语言模型的最新进展取得了显著突破。GPT-4o 作为一个新的里程碑,实现了与人类的实时对话,展示了接近人类的自然流畅度。为了…