首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Elevator优化AV1视频播放

其中有一种方案,取名为Elevator,是一个能在AV1格式视频码流中设置尽可能最低的编码等级的工具。...我们希望高编码级别的码流不会被错误地送到只能解码低编码等级的低功耗设备上,于是我们开发了与rav1e不一样的Elevator,用于分析已编码的视频,设置准确的编码等级。 Elevator能做什么?...尽管我们使用Elevator去降低Vimeo网站上被高估的编码等级,在编码器无法有效地约束视频的编码等级的时候,Elevator的表现也很出色。...Elevator中唯一需要的位计数和位操作是在处理结束时将视频的编码等级设置为正确值。 由于某些码流特性以我们尚未支持的方式影响着参数的计算,Elevator尚不支持所有的AV1格式视频。...Elevator做了什么 Elevator的使用可以高度概括为两个步骤:分析和修补(后者是可选的)。修补步骤相对简单,因为编码等级参数被设定在AV1码流序列头的开始部分。

79220

刘正元: Linux 通用块层之IO合并

相关阅读: 宋宝华: 文件读写(BIO)波澜壮阔的一生 刘正元: Linux 通用块层之DeadLine IO调度器 所谓请求合并就是将进程内或者进程间产生的在物理地址上连续的多个IO请求合并成单个...严格的说用户空间直接产生的IO都会走蓄流路径,哪怕是IO的时候附上了“O_DIRECT” 和 ”O_SYNC”标志(可以参考《Linux通用块层介绍(part1: bio层)》中的蓄流章节),用户间接产生的...,ELEVATOR_DISCARD_MERGE。...合并”的第二个点,关于泄流的时机请参考我之前写的《Linux通用块层介绍(part1: bio层)》。...2.寻找进阶合并,参考我之前写的《Linux通用块层介绍(part2: request层)》中对进阶合并的描述,如果bio产生了后向合并,则调用attempt_back_merge试图进行后向进阶合并,

3.5K11

Linux文件系统之 — 通用块处理层

概述 由于不同块设备(如磁盘,机械硬盘等)有着不同的设备驱动程序,为了让文件系统有统一的读写块设备接口,Linux实现了一个 通用块层。如下图中的红色部分: ?...elevator_t *elevator = &q->elevator; count = bh->b_size >> 9; // 要读写的扇区数 sector = bh->b_rsector...return 0; } __make_request() 函数首先通过调用 elevator->elevator_merge_fn() 方法尝试将当前I/O请求与其他正在排队的I/O请求进行合并,因为如果当前...run_task_queue() 函数是 Linux 用于运行任务队列的入口,而 tq_disk 队列就是块设备I/O的任务队列。...return; q->plugged = 1; queue_task(&q->plug_tq, &tq_disk); // 把I/O请求队列添加到 tq_disk 任务队列中 } 通过 Linux

2.2K20
领券