自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 资源 (4)
  • 收藏
  • 关注

原创 基于iOS的网络音视频实时传输系统(六)- AudioQueue播放音频,OpenGL渲染显示图像

AudioQueue播放音频在上一篇中写了解码H264,不过AAC可以省略解码的步骤因为AudioQueue函数提供的接口可以直接播放AAC音频,估计解码的操作它内部自己帮我们做了,AudioQueue的使用主要就是几个函数,还有就是它是偏C的函数,所以ARC管不了,我们自己要注意内存的管理。具体可以参考下面的123篇文章当时我是直接在官方的代码上找的示例,然后一试就可以了。下面是引用官方指南的部分信息:“用于播放的音频队列播放音频队列的结构如下所示。

2017-10-12 15:37:07 1501 1

原创 基于iOS的网络音视频实时传输系统(五)- 使用VideoToolbox硬解码H264

client端--接收音视频数据,并解码H264、AAC

2017-10-12 15:34:59 2225

原创 基于iOS的网络音视频实时传输系统(三)- VideoToolbox编码音视频数据为H264、AAC

server端--编码音视频数据为H264、AAC这部分花了好多时间,本身就不具备这方面的相关知识,查阅了不少资料,不过关于VideoToolbox和AudioToolbox方面的编码资料寥寥无几,虽然网上搜索结果看似特别多,其实一看 内容也大同小异,建议还是看看官方的文档。

2017-10-12 15:33:21 2565

原创 基于iOS的网络音视频实时传输系统(二)- 捕获音视频数据

获取音视频数据,这里使用的是AVCaptureSession,可以方便地自定义相机界面,看起来大概是这样的:

2017-09-25 20:41:46 2537

原创 基于iOS的网络音视频实时传输系统(一)- 前言

之前在做类似的网络协议的时候,突发奇想,想写一个网络视频监控,基于局域网的情况下,将MacBook摄像头捕获到的视频,在手机端显示,但是由于对macOS不是很熟悉,最终导致该计划流产。所以后来干脆使用手机捕获视频数据。为了简化项目工作量,socket协议也只用到了一些必要的功能,其他细节如client端退出监控视频时,server端会crash,各位有需要可以自行去添加一些如设置select()函数,或者设置signal()函数忽略这个断开的信号。等等项目中没有写录制设备视频的功能,所以没有用到MP4

2017-09-24 23:57:15 6018 8

原创 VideoToolbox视频编码——在macOS上对获取到的视频进行编码的问题记录 及YUV422转YUV420

想在macOS平台上写一个将Mac摄像头上获取到的视频数据使用VideoToolBox编码后socket发送出去的服务器,但是遇到了好多问题先是在接受数据的客户端最终渲染出来的视频中发现绿屏现象,如下图所示:并且报-12911的错误信息,网上查了一下说是视频数据不完整的原因,经过验证,初步排除了socket收发数据有误的可能,所以暂时将焦点放在了macOS端的工程上,将ma

2017-08-11 19:20:14 6509 3

原创 iOS开发之32位与64位,以及结构体对齐访问的问题

首先说32位与64位的问题,1.之前不清楚iOS是32位还是64位的时候,看见sizeof(int) 打印出来的结果是4的时候,就单纯地以为是32位的系统,即便是看到Mac的“关于本机”里的内存大小清清楚楚地写着是16G(64位OS内存一般为16G,即2的64次方),我也天真地以为大概macOS 和iOS 两者位宽大概不一样吧。因为楼主以前学Linux的,我清清楚楚地记得老师说:int 整型

2017-08-02 23:47:45 1947 1

原创 模仿高德地图搜索控件

模仿高德地图搜索控件,效果如图所示需要注意的主要有两个地方:一是手势与tableView的scroll滑动冲突的问题;还有一个就是searchBar的键盘以及searchBar在Editing状态下的动画问题。该项目主要解决的就是这些问题

2017-07-05 23:18:00 1972

原创 基于iOS的网络音视频实时传输系统(四)- 自定义socket协议(TCP、UDP)

首先我们需要明确一点的就是,为什么需要自定义socket协议?① 客户端与服务器间的相互通信是异步的② 理论上,二者都可以任意地发送或者接受数据③ 但是实际上,它们应该配合:当client发送时,server接受; 当server发送时,让client去接受④ 那么,任何让它们二者配合默契,相互协调呢?⑤ 这就引出了我们需要的——应用底层协议来解决⑥ 这个所谓的协议,实质上就是代码我们都知道,TCP或者UDP的握手协议(三次握手 三次挥手之类),不过这些协议都已经被封装在了TC

2017-07-01 23:41:32 2414 3

原创 头像

2018-05-31 16:58:46 597 1

转载 iOS开发——APP回退到历史版本

文章转载自:https://www.cnblogs.com/CoderAlex/p/6295497.html1.软件准备【必备】Charles2.正式开始2.1 打开Charles青花瓷historyApp1.png2.2 安装证书以便能够拦截解析HTTPS请求数据historyApp2.png2.2.1 如果是选择本地安装证书的话,记住保存格式选择.cerhistoryApp3.png2.2.2...

2018-05-20 19:30:43 31062

原创 碎碎念

今天又闲着没事把印象笔记升级了,果然不好到预感总是不出意外,印象笔记又出幺蛾子了。。之前的一次升级,让我肠子都快悔青了,发现代码块复制粘贴不再带格式了,而且网上查了好久都没有找到办法。。所以后来每次看到软件提醒说有新版本可更新,我都会想到那次心塞的一次升级然后我平时一般是不升级的但是今天可能真的太闲了,我想搞不好也有可能都修复了是吧遂升级

2018-03-31 21:23:23 279

原创 支付宝集成

支付宝集成

2018-03-31 21:22:24 251

原创 iOS集成融云SDK part 1 小记

之前虽然稍微了解过即时通讯方面的内容,但是一直没有怎么去做过聊天部分的。这次是刚刚使用融云,做一下记录。关于融云SDK集成的具体步骤,我都是参考以下这些文章,链接在这里:https://www.jianshu.com/p/eabfb0a93cf9https://www.cnblogs.com/ithongjie/p/5036383.html1.首先打开融云官网htt

2018-03-31 00:22:16 725

原创 3月有感

过了个年,时隔好久才打开了博客,之前几度有要弃更了的想法,都在看到访问量的一刻烟消云散。。啊,确实,付出总有收获的。也有看到有在留言中留下的提问的,暂时可能得被搁置了,因为最近我正在准备会计考试,嗯,没有错,我的路数就是摸不透。                    ...

2018-03-20 15:35:32 206

原创 temp2

temp2

2018-01-31 22:09:02 500

原创 temp1

temp1

2018-01-31 22:08:45 438

原创 Swift的可选类型

Swift的可选类型

2018-01-31 10:48:01 191

原创 Swift中的guard

Swift中的guard

2018-01-31 10:45:41 450

原创 tableView横向滚动条

tableView横向滚动条

2017-12-31 17:01:33 1376 2

原创 react native

react native

2017-12-31 17:01:06 201

原创 storyboard

storyboard

2017-12-31 17:00:36 258

原创 iOS与unity交互、opencv 草稿

好不容易找到了两篇写得特别好的博客:http://blog.csdn.net/foreverhyh58/article/details/50353158http://www.jianshu.com/p/5524d9e9befd遇到的问题1,问题一:enum { NO, GAIN, GAIN_BLOCKS };    Expected identi

2017-12-24 22:05:51 497

原创 iOS高仿“随便走”APP

效果图:代码地址:在这里

2017-11-30 15:26:05 1823 3

原创 iOS高仿“花田小憩”APP

11月的最后一天,我还有两篇博客没有写,一时半会儿也想不出写什么,就把去年写的代码拿出来填充一下...效果图如下:

2017-11-30 13:51:17 1021

原创 UIView子view随父view同步变化

一般情况下,当对父view做动画时,我们希望得到父view内所有的子视图跟随着同步发生变化,即如下的效果(注:黑色正方形为父view1,白色正方形为view1的子view2):但是,当我们什么也没有做时,它的效果往往却不是我们想要的样子,而是下面这样...抱歉 图片太模糊了,不过大概

2017-11-23 23:59:26 3970

转载 iOS 之UIAlertController的使用方法

UIAlertView在IOS 8以上版本已经过时了,官方推荐我们使用UIAlertController代替UIAlertView、UIActionSheet1、UIAlertController显示普通的Alert[objc] view plain copy- (IBAction)showAlert:(UIButton

2017-11-17 16:02:18 1686

转载 解决AQDefaultDevice (173): skipping input stream 的输出问题

升级到Xcode 9以后再使用AVFoundation框架的AVPlayer进行播放会一直打印AQDefaultDevice (173): skipping input stream 0 0 0x0,这不是工程的问题,只需要在Xcode中设置一下就可以了。解决办法:1.选择 Product -->Scheme-->Edit Scheme2.选择 Argu

2017-10-12 16:58:30 456

原创 Xcode、iPhoneOS回退到历史版本的方法记录

昨天闲着没事把手机升级到iOS 11,连上Xcode说Xcode也要更新,Xcode更新又需要macOS也更新,闲着没事干就一股脑全更新了,虽然新的什么都好,Xcode9打开原来的工程也是报了好多警告和错误,不过每次更新都是这个样子,网上搜搜基本上也都能搞定,况且还新增了不少功能。参考这篇文章:不可能不爱的 XCODE 9:最新功能详尽介绍还能同时打开多个模拟器,还能无线在iPho

2017-10-12 15:41:27 9922

原创 Xcode程序异常崩溃情况事故记录

在某个工程运行代码的时候,总是会莫名其妙地crash,多运行几次,又能正常工作。这个问题让人摸不着头脑,能正常运行又不能正常运行...崩溃后却又不知道怎么修复,真是闹心。初步猜测是内存管理没做好,在我的代码中crash的地方一般是:参考文章:http://blog.c

2017-10-09 12:00:04 593

原创 草稿——swift的简单学习 -- 音乐播放器

swift的简单学习 -- 音乐播放器

2017-09-25 20:39:53 494

转载 CMSampleBufferRef与byte*互相转换

**** audio ****byte*转CMSampleBufferRef-(AudioStreamBasicDescription) getAudioFormat{ AudioStreamBasicDescription format; format.mSampleRate = 44100; format.

2017-09-21 17:43:17 2966

原创 linker command failed with exit code 1 (use -v to see invocation)解决办法

linker command failed with exit code 1 (use -v to see invocation)解决办法报错信息显示是连接时发生了错误,并且可以看到有编译后产生的目标文件如AACPlayer.o等,也证明编译过程没有出现问题。网上找了好多文章,大部分说的都是关于第三方库,或者导入文件重复的问题

2017-08-15 20:03:48 1372

原创 FFmpeg第一步--编译

FFmpeg编译参考:https://cnbin.github.io/blog/2015/05/19/iospei-zhi-ffmpegkuang-jia/记得要在Build Settings中找到Search Paths,设置Header Search Pahts 和 Library Search Paths如下。不然会报include“libavformat/avformat.h” file n

2017-08-13 23:56:02 346

原创 音视频编解码相关知识学习

是一种图像压缩或者说视频流格式实际应用中,摄像头采集到的视频,实质上是一帧一帧的图片,只要每秒图片的帧数足够多,我们视觉看起来就像流畅的视频。图像的压缩格式有很多,但是即便是把每张图片压缩到1M,每秒30帧的话,一秒的视频体积也有30M,如果放在网络传输的话,压力是非常大的。

2017-08-13 18:24:23 402

原创 Swift中的枚举enum 与C中的枚举

Swift中的枚举enum。在C语言中,甚至OC等其他高级语言中,都是把enum枚举的值当作是一个int整数来替代。而在Swift中,它的case就是它的值本身,无需刻意地定义一个值来代表它。

2017-08-09 00:00:54 633

原创 C语言中的枚举与宏定义 及其不同之处

C语言的枚举与宏定义。有人可能会觉得这个太easy了,本来也没想写这篇文章,但是想想觉得有必要用自己的语言组织一下记下来,跟学习Swift的枚举做类比,好理解一些。

2017-08-08 23:59:16 6558 1

原创 大小端模式

大小端模式

2017-08-08 23:57:30 3625 1

原创 Swift中的struct与class

Swift中的struct。这篇文章是以前学习Swift的时候记录在印象笔记里的,现在把它搬过来。结构体和枚举能够定义方法 是Swift与C/OC的主要区别之一。C语言中可以通过结构体内嵌函数指针实现面向对象的方法。

2017-08-06 23:33:12 396

原创 实例方法(instance method) 和 类方法(class method)

OC与Swift中的实例方法(instance method) 和 类方法(class method)的比较

2017-08-06 23:31:05 8009

iOS页面间的转场动画

iOS页面间的转场动画

2017-08-29

Easy_openCV

openCV的简单使用

2017-08-22

SwipeGesture和SearchBar

此项目模仿高德地图搜索控件,主要解决了两个部分: 一是手势与tableView的scroll滑动冲突的问题; 还有一个就是searchBar的键盘以及searchBar在Editing状态下的动画问题。

2017-08-15

重力感应CoreMotion

iOS 重力感应之箭头指向重力方向. (请忽略项目名称,本项目里没有小球)

2017-08-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除