当前位置: 首页 > news >正文

Qt/C++音视频开发63-设置视频旋转角度/支持0-90-180-270度旋转/自定义旋转角度

一、前言

设置旋转角度,相对来说是一个比较小众的需求,如果视频本身带了旋转角度,则解码播放的时候本身就会旋转到对应的角度显示,比如手机上拍摄的视频一般是旋转了90度的,如果该视频文件放到电脑上打开,一些早期的播放器可能播放的时候是躺着的,因为早期播放器设计的时候,手机还没有流行,也没有考虑这种需求,只是随着现代社会的发展,才慢慢有了这种新的需求。

除了能够对源头视频识别旋转角度进行纠正以外,也可以主动指定旋转角度来播放视频,这也是部分用户的需求,比如有些用户是的大屏机器是垂直的,希望视频能够设置旋转角度来播放。查阅了qt中的多媒体类,几乎都没有提供旋转角度的接口,在Qt中的做法是将播放放到一个容器中比如作为QGraphicsItem或者qml中,他们的容器就提供了良好的旋转接口。如果是ffmpeg内核相关的,基本上通过滤镜来实现旋转,而vlc/mpv等本身就提供了旋转接口。通过对比各种内核的旋转接口,发现一般的做法是在绘制这边做旋转,而不是源头数据那边做旋转,ffmpeg滤镜就是源头数据那边做旋转,源头做旋转相对来说耗用资源,而绘制这边基本上是通过opengl去处理。

二、效果图

在这里插入图片描述
在这里插入图片描述

http://www.lryc.cn/news/278611.html

相关文章:

  • Python电能质量扰动信号分类(五)基于CNN-Transformer的一维信号分类模型
  • 基于Vue组合式API的实用工具集
  • 065:vue中将一维对象数组转换为二维对象数组
  • mysql 字符串分割
  • 解决Windows11 “我们无法设置移动热点”
  • python tcp socket中实现SSL/TLS认证
  • SQL-修改表操作
  • 【Node.js学习 day3——http模块】
  • 初探UAF漏洞(3)
  • C++学习笔记(二十一)
  • Java版企业电子招投标系统源代码,支持二次开发,采用Spring cloud技术
  • 01、Kafka ------ 下载、安装 ZooKeeper 和 Kafka
  • Spark: 检查数据倾斜的方法以及解决方法总结
  • 基于JavaWeb+BS架构+SpringBoot+Vue“共享书角”图书借还管理系统系统的设计和实现
  • 论文阅读:TinyGPT-V 论文阅读及源码梳理对应
  • XCTF:MISCall[WriteUP]
  • 【MIdjourney】图像角度关键词
  • 使用 Jamf Pro 和 Okta 工作流程实现自动化苹果设备管理
  • 根能抵达的节点(二分法、DFS)C++
  • 一天一个设计模式---桥接模式
  • OpenHarmony4.0Release系统应用常见问题FAQ
  • Skywalking UI页面中操作的各种实用功能汇总
  • springboot摄影跟拍预定管理系统源码和论文
  • 【python】python新年烟花代码【附源码】
  • 书生·浦语大模型实战营-学习笔记1
  • ELF解析03 - 加载段
  • Mysql——索引相关的数据结构
  • 无代码DIY图像检索
  • Elasticsearch--Master选举
  • 微服务实战系列之Filter