AIGC时代程序员的跃迁——编程高手的密码武器

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
img

  • 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老
  • 导航
    • 檀越剑指大厂系列:全面总结 java 核心技术,jvm,并发编程 redis,kafka,Spring,微服务等
    • 常用开发工具系列:常用的开发工具,IDEA,Mac,Alfred,Git,typora 等
    • 数据库系列:详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等
    • 新空间代码工作室:提供各种软件服务,承接各种毕业设计,毕业论文等
    • 懒人运维系列:总结好用的命令,解放双手不香吗?能用一个命令完成绝不用两个操作
    • 数据结构与算法系列:总结数据结构和算法,不同类型针对性训练,提升编程思维,剑指大厂

非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨

博客目录

      • 失真的视频见如下的对比图:
      • ChatGPT 解决视频转码失真问题
      • 本文作者
      • 延伸阅读
      • 内容简介
      • 购买链接
      • 直播预告

在这个迅速变化的时代,AI 技术已经渗透到我们生活的方方面面,尤其是在软件开发领域。

我们作为《AIGC 辅助软件开发:ChatGPT 10 倍效率编程实战》一书的团队,也是在实践 AIGC 中积累了大量的经验, 和大家一同分享。

AIGC 除了在文字对话,生成文档方面有突出的表现,它渊博的知识,也为解决很多项目中的疑难问题提供了极大的帮助。以下给大家分享真实项目中发生的例子。

案例 利用 ChatGPT 解决实际转码 HDR 视频为 SDR 视频出现颜色失真的疑难问题。

在苹果手机高端机型默认开启 HDR 视频作为拍摄视频的模式后, 我们的一款 APP 便收到用户的使用反馈,上传到 APP 的视频,打开查看时颜色变得很暗淡。通过 iOS 开发工程师找到对应机型进行调试和分析,发现在用户上传了 HDR 视频时会出现颜色失真的状况。当时 APP 的方案时在用户上传视频前进行转码,为了最大兼容 Android 系统和 iOS 系统,视频转码为 SDR 视频。

失真的视频见如下的对比图:

图 1 用户上传视频转码前后对比

image-20240708110307531

图 2 开发工程师实际测试视频转码前后对比

image-20240708110317248

图 1 和图 2 的左侧是 HDR 原始视频,右图是转码后的视频,可以见到颜色差别很大。

非专业音视频开发来说,这个问题卡了我们比较久。我们尝试过各种各样的解决方案,咨询过专业处理视频的朋友,也没有很好解决这个问题。直到 ChatGPT 的横空出现,我们重新尝试利用 ChatGPT 来解决。

现在回过头来总结,ChatGPT 于我们而言,就是一位专家。从提出问题到解决问题,只用了 6 轮对话。第 7、8 轮对话进一步提升了视频转码的性能。下面为大家呈现怎么利用 ChatGPT 解决视频转码失真问题的过程。

ChatGPT 解决视频转码失真问题

首先,工程师找到 APP 对用户上传视频的转码命令,原代码为:

image-20240708110332004

这段代码为调用 ffmpeg 命令对原始视频进行转码为 h264 编码的视频格式。

在当前信息化飞速发展的时代,多媒体处理技能越来越受到广泛的重视。对于非音视频专业的程序员而言,ffmpeg 这一强大而复杂的工具经常让人感到无从下手。它拥有众多的指令参数,每一个参数都有其特定的用途和设置方法,这无疑增加了学习和使用的难度。过去,没有合适的辅助工具,这几乎是一项艰巨的工程。然而,随着人工智能技术的发展,特别是 ChatGPT 的出现,这一情况得到了根本性的改变。ChatGPT 不仅可以理解复杂的 ffmpeg 命令,还能根据用户的具体需求提供定制化的指令建议。这意味着,即使是非专业的开发者,也可以轻松掌握并有效使用 ffmpeg 进行音视频处理,大大降低了技术门槛,提升了工作效率。

image-20240708110342798

image-20240708110354506

image-20240708110406941

image-20240708110421335

image-20240708110435499

image-20240708110455599

根据 AI 的具体指引,拿到了视频的详细信息,然后发送给 AI:

image-20240708110506846

image-20240708110520574

image-20240708110530184

image-20240708110540500

image-20240708110553522

到了这一步后,以上的指令已经完成需求了,视频没有失真了,感叹 AI 的神奇疗法,节约了成吨的时间,但是在实际测试中发现,转码过程比较缓慢,6s 的视频几乎花费了 15s 才转码完成,这效率其实是不能接受的,如果是一分钟,十分钟的视频转码,那简直无法想象,还得继续优化。

image-20240708110602613

image-20240708110613765

image-20240708110628695

大概了解了每个参数的作用之后,我们就可以通过人工修改可以完成这个需求:把 -preset slower 改成 - preset faster;把 - b:v 3000k 去掉,采用默认值;把 - crf 16 改成 - crf 25。

最终指令如下:

image-20240708110640526

目前转码效率提高几倍,6s 视频花费 3 ~ 4s 转码完成,转码后的视频质量也非常不错。

总的来说,AI 在编程领域对程序员的帮助还是很大的,不会在每个方面帮助都大,但是在特定方面帮助尤其大,比如以上例举的两个例子:学习新技术,解决技术栈层次更深的问题,这可以解决大量的时间去查阅资料,去理解视频转码的每个参数的意思,尤其视频转码参数众多,理解每个参数都得花费不少的时间,还得挨个组合测试,总之,一级棒。

以上是《AIGC 辅助软件开发:ChatGPT 10 倍效率编程实战》的一个例子,书中记录了涵盖客户端、前端、后端、测试以及项目各个阶段环节应用 ChatGPT 提效的案例记录。这本书不仅适合技术专业人员阅读,也适合所有对 AI 在实际工作中应用感兴趣的读者。

通过真实的开发案例和详尽的技术解析,《AIGC 辅助软件开发:ChatGPT 10 倍效率编程实战》将帮助你充分利用人工智能的潜力,解决编程中遇到的各种难题。这本书是每一个软件开发者书架上必备的宝典。欢迎阅读,开启你的高效编程之旅!

本文作者

本文作者:李柏锋 信息工程背景的富有创造力的技术专家,梅沙科技联合创始人和首席技术官,原腾讯高级工程师。关注并实践 Al,致力于 Al 应用到实际的生产力提升,以及探索 Al 在业务中的应用。参与编写并出版了《编程真酷》、《AIGC 辅助软件开发:ChatGPT10 倍效率编程实战》等技术专业书籍。

文章来源:IT 阅读排行榜

本文摘编自《AIGC 辅助软件开发:ChatGPT 10 倍效率编程实战》,机械工业出版社出版,经出版方授权发布,转载请标明文章来源。

延伸阅读

image-20240708110815589

《AIGC 辅助软件开发:ChatGPT 10 倍效率编程实战》

李柏锋、兰军、张阳 等著

AI 时代程序员自救指南

阅读本书,先人一步实现能力跃迁
10 余位资深 IT 技术专家在

AIGC 辅助软件开发领域的一手经验总结

内容简介

这是一本讲解如何用 ChatGPT、GitHub Copilot X、Cursor 等主流 AIGC 工具优化和提升软件开发全流程效率和质量的实战性著作。

全书以软件开发的流程位主线来组织内容,详细讲解了程序员、架构师、项目经理、产品经理、技术团队管理者们如何在技术方案构建、需求文档撰写、代码编写与注解、客户端开发、前端开发、后端开发、测试和调试、性能优化、疑难问题解决、产品设计、软件架构与设计、应试与面试 12 个主题充分发挥 AIGC 工具的潜能,在提高研发效率和质量的同时,提升自身的实力。

购买链接

购买链接

购买链接:https://item.jd.com/14617898.html

直播预告

7 月 11 日周四 19:00,《AIGC 辅助软件开发:ChatGPT 10 倍效率编程实战》作者团队李柏锋、兰军、周博,三位嘉宾与您分享 “以一顶十,AIGC 时代程序员的跃迁”,点击预约观看!
在这里插入图片描述

觉得有用的话点个赞 👍🏻 呗。
❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

img

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

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

相关文章

一、redis-万字长文读懂redis

高性能分布式缓存Redis `第一篇章`1.1缓存发展史&缓存分类1.1.1 大型网站中缓存的使用带来的问题1.1.2 常见缓存的分类及对比与memcache对比1.2 数据类型选择&应用场景1.2.1 string1.2.2 hash1.2.3 链表1.2.4 set1.2.5 sortedset有序集合类型1.2.6 总结1.3 Redis高级应…

[数仓]三、离线数仓(Hive数仓系统)

第1章 数仓分层 1.1 为什么要分层 DIM:dimensionality 维度 1.2 数据集市与数据仓库概念 1.3 数仓命名规范 1.3.1 表命名 ODS层命名为ods_表名DIM层命名为dim_表名DWD层命名为dwd_表名DWS层命名为dws_表名 DWT层命名为dwt_表名ADS层命名为ads_表名临时表命名为…

昇思25天训练营Day11 - 基于 MindSpore 实现 BERT 对话情绪识别

模型简介 BERT全称是来自变换器的双向编码器表征量(Bidirectional Encoder Representations from Transformers),它是Google于2018年末开发并发布的一种新型语言模型。与BERT模型相似的预训练语言模型例如问答、命名实体识别、自然语言推理、…

56、最近邻向量量化(LVQ) 网络训练对输入向量进行分类

1、LVQ 网络训练对输入向量进行分类简介 1)简介 LVQ(最近邻向量量化)是一种简单而有效的神经网络模型,用于对输入向量进行分类。LVQ网络通过学习一组原型向量(也称为代码矢量或参考向量),来表…

HTML5 WebSocket技术使用详解

HTML5 WebSocket API 提供了一种在单个连接上进行全双工通信的方式。这意味着客户端和服务器可以同时发送和接收数据,而不需要像传统的 HTTP 请求那样进行多次请求和响应的轮询。WebSocket 允许更实时的交互,非常适合需要快速、连续数据交换的应用场景&a…

SAP Build4-office 操作

1. 邮件操作 1.1 前期准备 商店中找到outlook的sdk,添加到build中 在process中添加outlook的SDK 电脑上装了outlook的邮箱并且已经登录 我用个人foxmail邮箱向outlook发了一封带附件的销售订单邮件,就以此作为例子 1.2 搜索邮件 搜索有两层&…

计算机视觉、目标检测、视频分析的过去和未来:目标检测从入门到精通 ------ YOLOv8 到 多模态大模型处理视觉基础任务

文章大纲 计算机视觉项目的关键步骤计算机视觉项目核心内容概述步骤1: 确定项目目标步骤2:数据收集和数据标注步骤3:数据增强和拆分数据集步骤4:模型训练步骤5:模型评估和模型微调步骤6:模型测试步骤7:模型部署常见问题目标检测入门什么是目标检测目标检测算法的分类一阶…

CSS实现图片裁剪居中(只截取剪裁图片中间部分,图片不变形)

1.第一种方式:(直接给图片设置:object-fit:cover;) .imgbox{width: 100%;height:200px;overflow: hidden;position: relative;img{width: 100%;height: 100%; //图片要设置高度display: block;position: absolute;left: 0;right…

OpenCV:解锁计算机视觉的魔法钥匙

OpenCV:解锁计算机视觉的魔法钥匙 在人工智能与图像处理的世界里,OpenCV是一个响当当的名字。作为计算机视觉领域的瑞士军刀,OpenCV以其丰富的功能库、跨平台的特性以及开源的便利性,成为了开发者手中不可或缺的工具。本文将深入…

基于Java+SpringMvc+Vue技术的在线学习交流平台的设计与实现---60页论文参考

博主介绍:硕士研究生,专注于Java技术领域开发与管理,以及毕业项目实战✌ 从事基于java BS架构、CS架构、c/c 编程工作近16年,拥有近12年的管理工作经验,拥有较丰富的技术架构思想、较扎实的技术功底和资深的项目管理经…

AI+若依框架(低代码开发)

提前说明: 文章是实时更新,写了就会更。 文章是黑马视频的笔记,如果要自己学可以点及下面的链接: https://www.bilibili.com/video/BV1pf421B71v/一、若依介绍 1.版本介绍 若依为满足多样化的开发需求,提供了多个版本…

基于jeecgboot-vue3的Flowable流程-集成仿钉钉流程(一)图标svgicon的使用

因为这个项目license问题无法开源,更多技术支持与服务请加入我的知识星球。 1、lowflow这里使用了tsx的动态图标,如下: import ./index.scss import type { CSSProperties, PropType } from vue import { computed, defineComponent, resolv…

MATLAB基础应用精讲-【数模应用】 岭回归(Ridge)(附MATLAB、python和R语言代码实现)

目录 前言 算法原理 数学模型 Ridge 回归的估计量 Ridge 回归与标准多元线性回归的比较 3. Ridge 参数的选择 算法步骤 SPSSPRO 1、作用 2、输入输出描述 3、案例示例 4、案例数据 5、案例操作 6、输出结果分析 7、注意事项 8、模型理论 SPSSAU 岭回归分析案…

Java [ 进阶 ] 深入理解 JVM

✨探索Java基础 深入理解 JVM✨ 深入理解 JVM:结构与垃圾回收机制 Java 虚拟机(JVM)是 Java 程序运行的核心,了解 JVM 的内部结构和垃圾回收机制对优化 Java 应用性能至关重要。本文将深入探讨 JVM 的结构和垃圾回收机制&#…

支付宝沙箱对接(GO语言)

支付宝沙箱对接 1.1 官网1.2 秘钥生成(系统默认)1.3 秘钥生成(软件生成)1.4 golan 安装 SDK1.5 GoLand 代码1.6 前端代码 1.1 官网 沙箱官网: https://open.alipay.com/develop/sandbox/app 秘钥用具下载: https://ope…

序列化、反序列化

java 提供了一种对象序列化的机制,该机制中,一个对象可以被表示为一个字节序列,该字节序列包括该对象的数据、有关对象的类型的信息和存储在对象中数据的类型。 将序列化对象写入文件之后,可以从文件中读取出来,并且对…

Java并发编程-ThreadLocal深入解读及案例实战

文章目录 概述原理使用场景示例最佳实践内存泄漏风险阿里开源组件TransmittableThreadLocal原理和机制使用场景如何使用注意事项ThreadLocal在分布式存储系统edits_log案例中的实践1. 为什么使用`ThreadLocal`?2. 实践案例2.1 缓存日志操作2.2 线程局部的编辑日志状态3. 注意事…

在 Spring 中编写单元测试

单元测试是软件开发过程中不可或缺的一部分,它能有效地提高代码质量,确保代码功能的正确性。在 Spring 应用中,JUnit 和 Mockito 是常用的单元测试工具,而 Spring Test 提供了丰富的测试支持。本文将介绍如何在 Spring 中使用 JUn…

并行处理百万个文件的解析和追加

处理和解析大量文件,尤其是百万级别的文件,是一个复杂且资源密集的任务。为实现高效并行处理,可以使用Python中的多种并行和并发编程工具,比如multiprocessing、concurrent.futures模块以及分布式计算框架如Dask和Apache Spark。这…

物联网时代5G通信技术分析研究一、引言

一、引言 近几年,移动网络技术跟随互联网的不断发展而改革和进步,给平民大众的生活也带来新的尝试与影响。从2G网络的出现,到逐步被社会民众所了解的3G,再到被熟知的且正在服务于大家的4G网络,移动网络技术的发展速度令…