- 博客(338)
- 资源 (85)
- 收藏
- 关注
原创 《FFmpeg开发实战:从零基础到短视频上线》资源下载和内容勘误
下面是《FFmpeg开发实战:从零基础到短视频上线》一书用到的工具和代码资源:1、本书使用的FFmpeg版本为,也可在FFmpeg的github主页上下载。2、本书第12章使用的Android Studio版本为。3、本书提供所有示例源码的demo工程下载,扫描前言末尾的二维码即可下载完整的随书源码。最新的源码也可访问我的gitee获取,gitee地址是。4、本书提供配套的ppt课件下载,扫描前言末尾的二维码即可下载完整的随书ppt。
2024-06-23 13:00:55 1286
原创 FFmpeg开发笔记全目录(FFmpeg开发实战详解,含直播系统的搭建过程)
下面是补充的FFmpeg开发笔记内容目录,主要是对《FFmpeg开发实战:从零基础到短视频上线》的进阶增补。记录下FFmpeg的学习笔记目录,完整的FFmpeg开发实战内容详见。下面是《FFmpeg开发实战:从零基础到短视频上线》一书的目录概要。第七章 Windows环境给FFmpeg集成第三方库。第二章 Windows环境编译FFmpeg。8.1 Windows环境编译FFmpeg。第一章 Linux环境编译FFmpeg。第 12 章 FFmpeg的移动开发。
2024-05-18 16:36:52 1576
原创 《Android Studio开发实战 从零基础到App上线(第3版)》资源下载和内容勘误
下面是《Android Studio开发实战 从零基础到App上线(第3版)》一书用到的工具和代码资源:1、本书使用的Android Studio版本为Android Studio Dolphin(小海豚版本),最新的安装包可前往。2、本书使用的Android NDK版本为r23b,最新的安装包可前往。3、本书提供所有示例源码的demo工程下载,源码(适配Android5.0到Android12)的下载方式见该书前言末尾的二维码,获取ppt课件同样扫描前言末尾的二维码。
2023-04-05 08:00:00 13154 39
原创 《Android App开发进阶与项目实战》资源下载和内容勘误
下面是《Android App开发进阶与项目实战》一书用到的工具和代码资源:1、本书使用的Android Studio版本为4.2,最新的安装包可前往。2、本书提供所有示例源码的demo工程下载,源码(适配Android4.4到Android11)的下载方式见该书前言末尾的二维码,获取ppt课件同样扫描前言末尾的二维码。最新的源码也可访问我的github获取,github地址是,服务端的github地址是。
2022-12-10 09:00:00 1250
原创 《Android App开发入门与项目实战》资源下载和内容勘误
下面是《Android App开发入门与项目实战》一书用到的工具和代码资源:1、本书使用的Android Studio版本为4.1,最新的安装包可前往。2、本书提供所有示例源码的demo工程下载,源码(适配Android4.4到Android11)的下载方式见该书前言末尾的二维码,获取ppt课件同样扫描前言末尾的二维码。最新的源码也可访问我的gitee获取。
2021-06-07 14:42:29 3431 13
原创 《好好学Java 从零基础到项目实战》姗姗而来
梦里寻她千百度,千呼万唤始出来。从决定开始写这本书,到最终出版上市,数数已经是第三个夏天了。今年疫情有点紧,各行各业都受到影响,多亏出版社各位老师东奔西走,总算排除了万般艰难险阻,这才有了《好好学Java 从零基础到项目实战》的顺利上市。又是一本600页的编程书籍,拿在手中沉甸甸的,感觉两年的辛劳和等待终于没有白费。感谢这个伟大的时代给人激情澎湃,感谢清华社的老师在芸芸众生中发掘人才,让程序员也有机会成为技术作家,感谢我的家人始终如一的支持和关怀,使我能够集中精力写完本书。先来看看《好好学Java 从零基
2020-07-03 13:17:31 2505 2
原创 《Android Studio开发实战 从零基础到App上线(第2版)》资源下载和内容勘误
资源下载下面是《Android Studio开发实战 从零基础到App上线(第2版)》一书用到的工具和代码资源:1、本书使用的Android Studio版本为3.2,最新的安装包可前往Android官网页面下载。2、本书使用的Android NDK版本为r17,最新的安装包可前往Android官网页面下载。3、本书提供所有示例源码的demo工程下载,源码(适配Android4.1到9....
2020-04-06 16:58:31 47439 181
原创 Kotlin入门教程——目录索引
Kotlin是谷歌官方认可的Android开发语言,即将发布的Android Studio 3.0版本也会开始内置Kotlin,所以未来在App开发中Kotlin取代Java是大势所趋,就像当初Android Studio取代Eclipse成为App开发工具一样。下面分章节列出各篇Kotlin教程的索引地址,方便大家查阅。Kotlin入门教程目录第一章 环境搭建Kotlin入门(1)...
2017-07-18 11:04:12 13187 3
原创 Android开发笔记(序)写在前面的目录
知识点分类一方面写写自己走过的弯路掉进去的坑,避免以后再犯;另一方面希望通过分享自己的经验教训,与网友互相切磋,从而去芜存菁进一步提升自己的水平。因此博主就想,入门的东西咱就不写了,人不能老停留在入门上;其次是想拾缺补漏,写写虽然小众却又用得着的东西;另外就是想以实用为主,不求大而全,但求小而精;还有就是有的知识点是java的,只是Android开发也会经常遇上,所以蛮记下来。个人的经验......
2015-11-24 14:36:06 78915 66
原创 鸿蒙NEXT开发笔记(九)仿微信聊天App的收发文本消息
上一节我们把SocketIO库导入App工程,那么怎样通过SocketIO库来传递聊天消息呢?接下来就以文本消息为例,介绍如何利用SocketIO库在鸿蒙真机与服务器之间收发文本消息。由于SocketIO库属于外部的第三方库,因此以源码方式导入SocketIO库的时候,还要补充相应的依赖配置。也就是打开App模块的的oh-package.json5,在dependencies节点内部添加库名、版本号或者库路径。
2024-11-01 08:00:00 403
原创 鸿蒙NEXT开发笔记(八)仿微信聊天App的SocketIO库
上一节我们实现了仿微信消息的气泡背景效果,那么聊天消息的传输还要引入第三方的SocketIO库,我方手机的App先把消息内容传给后端的SocketIO服务器,再由SocketIO服务器把消息内容转发给对方手机的App。后端的SocketIO服务器可采用netty-socketio,完整的服务端工程代码参考 https://gitee.com/aqi00/net_server/tree/master/HttpServer。
2024-10-30 08:00:00 296
原创 鸿蒙NEXT开发笔记(七)仿微信聊天App的气泡背景
上一节我们实现了仿微信聊天页面的消息左右对齐方式,那么聊天消息的气泡背景也是很有必要的,不管聊天消息有多长有多高,气泡背景都能自动跟着拉长拉高,恰当地把消息内容都包裹在气泡中,如下图所示。在安卓系统中,气泡背景通过点九图(也叫九宫格图片)实现,利用Android Studio特制的.9.png图片,安卓App能够根据实际宽高自动拉伸点九图的指定区域。但在鸿蒙系统中,不存在特制的点九图片格式,而是通过与点九图相同功能的API设置实现,详细说明如下。
2024-10-28 08:00:00 285
原创 鸿蒙NEXT开发笔记(六)仿微信聊天App的聊天消息对齐
上一节我们实现了仿微信聊天页面的软键盘避让方式,那么聊天时候的对方消息和我方消息有着不同的对齐方式,对方消息靠左靠上对齐,而我方消息靠右靠下对齐,如下图所示。对于组件内外的对齐规则,鸿蒙App与安卓App拥有不同的处理方式。安卓App通过layout_gravity属性控制自身相对上级容器的对齐方式,通过gravity属性控制下级组件相对自身的对齐方式。而对鸿蒙App而言,情况又有所不同,下面将一一阐述鸿蒙App对于各种场景的对齐规则。
2024-10-25 08:00:00 788
原创 鸿蒙NEXT开发笔记(五)仿微信聊天App的避让软键盘
上一节我们实现了仿微信的昵称修改弹窗,那么在微信的聊天页面,看起来是对方和自己一左一右的对话交互。别看这个对话界面没什么技术含量,实际上打磨一个既方便又美观的交互效果可不容易了,仅仅对话界面就有软键盘避让、组件内外对齐、背景图拉伸三个难点需要一一攻克。下面详细介绍如何在聊天界面有效避让输入法的软键盘。
2024-10-23 08:00:00 405
原创 鸿蒙NEXT开发笔记(四)仿微信聊天App的自定义弹窗
因为对话框属于独立的控件,允许被多个页面引用,所以可在单独的ETS文件中定义。自定义对话框以“@CustomDialog”前缀开头,并且内部必须声明CustomDialogController类型的控制器属性,这样外部页面才能通过控制器对象操纵对话框的交互动作。对于多数对话框来说,一般要提供取消和确定两个按钮,那么自定义对话框内部还需声明取消接口和确定接口,由具体引用的页面去实现真正的取消操作和确定操作。// @CustomDialog组件必须声明CustomDialogController属性。
2024-10-21 08:00:00 364
原创 鸿蒙NEXT开发笔记(三)仿微信聊天App的底部页签栏
ArkUI默认的单个页签风格很单调,仅仅提供页签文字罢了,缺少微信底部页签的丰富样式。为了给页签增加包含图标和文字在内的高亮效果,需要自己定义单个页签的布局内容。自定义的页签布局以“@Builder”打头,其后就像编写普通的方法代码那样,包括方法名称、方法参数、方法代码等等。常见的页签高亮特效会区分背景、图标、文字颜色和字号样式,可以采用Stack容器作为单个页签的根布局,先放入一张背景图片,再放入Column容器包裹的前景图标和前景文字。
2024-10-18 08:00:00 482
原创 鸿蒙NEXT开发笔记(二)仿微信聊天App的好友列表
上一节我们实现了仿微信的登录界面,那么登录成功打开微信主界面,首先就会看到好友列表页面。列表是一组具有相似风格的组件元素集合,可以从上往下顺序排列,也可以从左往右顺序排列。鸿蒙App采用List组件用作列表,所有基于列表的界面布局能够通过List实现。下面详细介绍如何使用List组件实现仿微信的好友列表界面。
2024-10-16 08:00:00 1505
原创 鸿蒙NEXT开发笔记(一)仿微信聊天App的登录页面
仿微信聊天”的App项目在Android系统中有成熟的实战案例,具体参见《Android Studio开发实战:从零基础到App上线(第3版)》第13章的“13.5 实战项目:仿微信的私聊和群聊”,该项目的前后端通讯方式采用SocketIO实现,同时支持一对一的私聊和多对多的群聊,聊天内容也同时支持文本消息和图片消息,并且在多部Android真机上测试通过,具备很高的学习研究价值。
2024-10-14 08:00:00 934
原创 FFmpeg开发笔记(六十)使用国产的ijkplayer播放器观看网络视频
ijkplayer是Bilibili公司(简称B站)基于FFmpeg3.4研发并开源的国产播放器,它可运行于Android和iOS系统,既支持播放本地视频文件,也支持播放网络上的流媒体链接。之前的文章《Linux编译ijkplayer的Android平台so库》介绍了如何编译获得App工程所需ijkplayer的so文件,接下来还要把官方的案例工程导入到新版的Android Studio,才能开展后续的App调试和开发工作。
2024-10-11 08:00:00 620
原创 FFmpeg开发笔记(五十九)Linux编译ijkplayer的Android平台so库
ijkplayer是一款由B站研发的移动端国产播放器,它基于FFmpeg3.4版本,同时兼容Android和iOS两大移动操作系统。ijkplayer的源码托管地址为https://github.com/bilibili/ijkplayer,截止2024年9月15日,ijkplayer获得3.24万星标数,以及0.81万个分支数,而这还是ijkplayer停止更新6年之后的数据,可想而知当年的ijkplayer是多么火爆。
2024-10-08 08:00:00 275
原创 FFmpeg开发笔记(五十八)把32位采样的MP3转换为16位的PCM音频
FFmpeg开发实战:从零基础到短视频上线》一书的“5.1.2 把音频流保存为PCM文件”介绍了如何把媒体文件中的音频流转存为原始的PCM音频,在样例代码的转存过程中,解码后的PCM数据未经任何加工处理,就直接保存到二进制文件。原汁原味保存的PCM文件本来也没什么问题,可是在实际应用中,有的业务场景需要特定规格的PCM音频。比如某厂家的语音识别引擎,要求只能输入16位的PCM数据,然而标准的MP3音频都采用32位采样,如此一来,得想办法把32位的MP3音频转换为16位的PCM音频才行。
2024-09-26 08:00:00 292
原创 FFmpeg开发笔记(五十七)使用Media3的Transformer加工视频文件
继音视频播放器ExoPlayer之后,谷歌又推出了音视频转换器Transformer,要在音视频加工领域施展拳脚。根据Android开发者官网介绍:Jetpack Media3是Android媒体库的新家,可让App呈现丰富的视听体验。Media3提供了一个简单的架构,能够基于设备功能开展自定义与可靠性优化,可以解决媒体部分的碎片化问题。
2024-09-23 08:00:00 330
原创 FFmpeg开发笔记(五十六)使用Media3的Exoplayer播放网络视频
Android早期的MediaPlayer控件对于网络视频的兼容性很差,所以后来单独推出了Exoplayer库增强支持网络视频,在《Android Studio开发实战:从零基础到App上线(第3版)》一书第14章的“14.3.3 新型播放器ExoPlayer”就详细介绍了Exoplayer库的详细用法。现在Android官方再次升级Exoplayer,并将其纳入了Jetpack的Media3第三代媒体库,作为音视频相关操作的统一处理引擎。
2024-09-18 08:00:00 1176
原创 FFmpeg开发笔记(五十五)寒冬里的安卓程序员可进阶修炼的几种姿势
喊了多年的互联网寒冬,今年的寒风格外凛冽,还在坚守安卓开发的朋友着实不容易。因为能转行的早就转了,能转岗的也早就转了,那么安卓程序员比较迷茫的就是,我该学什么安卓技术才好呢?还是直接扔了安卓再去搞别的技术吗?下面探讨下安卓程序员还能在哪些方面进阶修炼,主要有以下三个方向。
2024-09-09 08:00:00 1282
原创 FFmpeg开发笔记(五十四)使用EasyPusher实现移动端的RTSP直播
之前的文章《利用RTMP协议构建电脑与手机的直播Demo》介绍了如何使用RTMP Streamer实现完整的RTMP直播流程,另一篇文章《利用SRT协议构建手机APP的直播Demo》介绍了如何使用SRT Streamer实现完整的SRT直播流程,接下来介绍如何使用EasyPusher-Android实现完整的RTSP直播流程。
2024-09-05 08:00:00 1086
原创 安卓程序员如何逆袭成为国内原创IT书籍的优秀著译者
国内的原创IT编程书籍当然一直在努力,只是早期国内的IT图书往往以编程入门为主,当做高校的编程教材尚可,不过由于缺乏足够的深度,在进阶方面难以同翻译过来的国外同类书籍竞争。自程杰之后,国内的计算机原创书籍如雨后春笋般纷纷涌现,在计算机技术的各大细分领域各显神通。值得注意的是,《大话设计模式》和《大话数据结构》两书的作者程杰原本只是个程序员,但写出来的IT编程书籍却如此畅销,说明真正在开发一线的程序员才能洞察编程的奥秘,才能有效解答初学者的困惑。
2024-09-02 08:00:00 634
原创 FFmpeg开发笔记(五十三)移动端的国产直播录制工具EasyPusher
EasyPusher是一款国产的RTSP直播录制推流客户端工具,它支持Windows、Linux、Android、iOS等操作系统。EasyPusher采用RTSP推流协议,其中安卓版EasyPusher的Github托管地址为https://github.com/EasyDarwin/EasyPusher-Android。不过EasyPusher有好几年没更新了,尤其安卓版的EasyPusher仍在调用过时的support支持库,而非推出多年的AndroidX库。
2024-08-30 08:00:00 1184
原创 程序员写书哪家强?谈谈计算机图书出版的四大金刚
35岁以上的程序员如何维持职业生涯,这是一个非常现实而又非常严峻的话题,毕竟哪个程序员都不希望自己过了35岁就向社会输出。那么35岁以上的程序员能干啥呢?是做铁人三项(外卖、快递、网约车)呢,还是做吉祥三保(保安、保洁、保姆)呢?大龄程序员的转型之路众说纷纭,这里不去展开各种方向的转型可能,专就程序员写书方面展开讨论。计算机业界众所周知,在IT图书出版领域,存在机械工业出版社、人民邮电出版社、电子工业出版社、清华大学出版社这四大金刚。
2024-08-27 08:00:00 1467
原创 FFmpeg开发笔记(五十二)移动端的国产视频播放器GSYVideoPlayer
GSYVideoPlayer是一个国产的移动端视频播放器,它采用了IJKPlayer、Media3(EXOPlayer)、MediaPlayer、AliPlayer等四种播放器内核,支持弹幕、滤镜、广告等多项功能。
2024-08-20 08:00:00 1521
原创 FFmpeg开发笔记(五十一)适合学习研究的几个音视频开源框架
很多程序员想学习音视频的编程开发,却不知从何学习,因为音视频技术的体系庞大、知识杂糅,一眼望去就令人生怯。那么学习音视频建议站在前人的肩膀上,从优秀的音视频开源框架开始钻研,先熟悉这些开源工具的具体用法,再深入了解这些开源框架的实现代码。
2024-08-15 08:00:00 1057
原创 【送书活动】《Android App开发入门与项目实战》买一赠一
限于篇幅,书中主要介绍APP开发的初中级技术,未深入介绍APP开发的高级进阶技术,例如图像加工、事件交互、动画特效、手机阅读、三维处理、即时通信、定位导航、物联网、智能语音、人脸识别、在线直播等进阶内容。《Android App开发入门与项目实战》随书提供了8个实战项目,包括计算器、找回密码、购物车、记账本、广告轮播、电商首页、评价晒单、猜你喜欢,帮助读者学以致用,掌握实战技能。,先到先得,送完为止;5、总共赠送《Android App开发进阶与项目实战》图书。,联系群主确认赠书事宜;,无需另外支付运费;
2024-08-04 08:00:00 686
原创 FFmpeg开发笔记(五十)聊聊几种流媒体传输技术的前世今生
自从互联网普及之后,用于视频直播的流媒体技术就发展起来。这几十年中,比较有影响的主要有MMS、RTSP、RTMP、HLS、SRT、RIST几种,分别介绍如下。
2024-08-01 08:00:00 853
原创 FFmpeg开发笔记(四十九)助您在毕业设计中脱颖而出的几个流行APP
就编程类大作业而言,怎样才算是让人耳目一新的毕业设计呢?以手机APP为例,现在APP开发技术很成熟了,若想做一个鹤立鸡群的毕业设计APP,就要在代码中运用最新的开发技术,尤其是和5G时代密切相关的音视频技术,比如音视频的基础框架FFmpeg、火爆一时的RTMP/SRT视频直播技术、音视频实时通讯技术WebRTC等等。
2024-07-29 08:00:00 832
原创 FFmpeg开发笔记(四十八)从0开始搭建直播系统的开源软件架构
音视频技术的一个主要用途是直播,包括电视直播、电脑直播、手机直播等等,甚至在线课堂、在线问诊、安防监控等应用都属于直播系统的范畴。由于直播系统不仅涉及到音视频数据的编解码,还涉及到音视频数据的实时传输,因此直播领域采用的网络技术标准比较高,实现起来也比一般的WEB系统复杂。
2024-07-22 08:00:00 1402
原创 FFmpeg开发笔记(四十七)寒冬下安卓程序员的几个技术转型发展方向
IT寒冬之下,程序员这个职业不再像以往那么吃香,尤其是APP开发的门槛越来越高,使得安卓程序员不得不求变,如果不在技术上及时转型提高,逆水行舟未来不可期呀。有鉴于此,博主整理了几个可供安卓程序员的技术转型发展方向,供大家参考。
2024-07-19 08:00:00 913
原创 FFmpeg开发笔记(四十六)利用SRT协议构建手机APP的直播Demo
常见的流媒体传输协议主要有下面四类:RTSP协议、RTMP协议、SRT协议和RIST协议,关于这四种协议的详细说明参见之前的文章《利用RTMP协议构建电脑与手机的直播Demo》,这里不再赘述。总的来说,虽然SRT协议出现时间较晚,但是它的直播质量大大优于RTMP协议,今后必将成为国内直播领域主流的流媒体协议。下面就以SRT协议为例,介绍如何通过OBS Studio和SRT Streamer向流媒体服务器做SRT直播推流。
2024-07-16 08:00:00 1195
原创 【送书活动】《Android Studio开发实战:从零基础到App上线(第3版)》买一赠一
值此《FFmpeg开发实战:从零基础到短视频上线》出版上架之际,即日起推出送书活动,凡购买《Android Studio开发实战:从零基础到App上线(第3版)》且符合下列条件的朋友,可获赠图书《FFmpeg开发实战:从零基础到短视频上线》一本。
2024-07-14 08:00:00 760
原创 FFmpeg开发笔记(四十五)使用SRT Streamer开启APP直播推流
SRT Streamer是一个安卓手机端的开源SRT协议直播推流框架,可用于RTMP直播和SRT直播。SRT Streamer支持的视频编码包括H264、H265等等,支持的音频编码包括AAC、OPUS等等,可谓功能强大的APP直播框架。相比之下,另一款APP直播框架RTMP Streamer支持RTMP直播和RTSP直播,不支持SRT协议的直播。而本文讲述的SRT Streamer支持RTMP直播和SRT直播,不支持RTSP协议的直播。
2024-07-11 08:00:00 1045
原创 FFmpeg开发笔记(四十四)毕业设计可做的几个拉满颜值的音视频APP
以手机APP为例,毕业设计做APP就要结合行业发展趋势。现在5G技术已经很普及了,很多商用APP都在音视频方面深根细作,有短视频APP比如抖音、快手等等,有聊天APP比如微信、畅联等等,有播音APP比如酷狗、喜马拉雅等等,有视频剪辑APP比如剪映等等。那么毕业设计做个音视频相关APP无疑是个热门方向,不但自带高科技,还能拉满颜值。
2024-07-08 08:00:00 812
原创 FFmpeg开发笔记(四十三)使用SRS开启SRT协议的视频直播服务
SRS是一款国产的开源流媒体服务器,支持RTMP、SRT等主流直播协议,它的安装说明参见之前的文章《Linux环境安装SRS实现视频推流》。结合SRS与ffmpeg实现RTMP协议的推流功能,已在《Linux环境安装SRS实现视频推流》一文中详细介绍,这里单独讲解如何通过SRS与ffmpeg实现SRT协议的推流功能。
2024-07-04 08:00:00 688
Android使用更多更好看图像控件的代码例子
2016-09-06
Android使用列表弹窗的代码例子
2016-09-05
Android操作工具栏Toolbar的代码例子
2016-09-05
Android对图片进行特效处理的代码例子
2016-09-01
Android自定义Drawable的代码例子
2016-08-31
Android对多语言支持的代码例子
2016-08-30
Android兼容5.0水波动画的代码例子
2016-08-30
Android对屏幕规格适配的代码例子
2016-08-30
Android对资源和权限进行校验的代码例子
2016-08-29
Android上传文件的代码例子
2016-08-29
Android对运行时状态检查的代码例子
2016-08-29
Android使用任务调度JobScheduler的代码例子
2017-05-11
Android浏览书籍的层叠翻页动画效果
2017-05-04
Android读取ppt和pdf文件的代码例子
2017-04-16
Android读取并显示word文件的代码例子
2017-04-09
Android实现可定制可滑动的标签栏的代码例子
2017-04-09
Android使用截图和录屏功能的代码例子
2017-03-24
Android使用文本输入布局TextInputLayout的代码例子
2017-03-15
Android自定义行为Behavior的代码例子
2017-03-08
Android使用协调布局CoordinatorLayout的代码例子
2017-02-27
Android使用可折叠工具栏布局CollapsingToolbarLayout的代码例子
2017-02-24
Android使用应用栏布局AppBarLayout的代码例子
2017-02-24
Android使用导航视图NavigationView的代码例子
2017-02-24
Android使用水波图形和矢量图形的代码例子
2017-02-09
Android使用提示窗Snackbar的代码例子
2017-02-09
Android校验手机制式适配的代码例子
2017-02-09
Android使用变换图形的代码例子
2017-02-09
Android自定义音乐播放器的代码例子
2016-09-20
Android自定义视频播放器的代码例子
2016-09-12
Android自带的循环器视图RecyclerView的代码例子
2016-09-02
Android自带的两个侧滑布局的代码例子
2016-09-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人