live555 静态编译怎么生成iphone的静态库

live555 - 开源中国社区
当前访客身份:游客 [
当前位置:
在Debug模式下程序能够正常运行。 在Release模式下面程序运行到该行崩溃,且无法定位进去进一步debug。 基于Win10,VS2015开发。 具...
用live555做流媒体转发,vlc播放,点击播放按钮后等了几秒才有画面而且开始的画面不对,几秒后就正常了但是有延时,5秒左右,不知道是什么问题,在此请教...
音视频编码方式为 264 + AAC thanks!
live555 server公网udp怎么穿越,还需自己改造?
求大神指导怎么生成生成live555 静态库,移植到xcode上
我的使用流程 1.下載live555後編譯 2.跑testH264VideoStreamer.cpp這隻程式 ,其中影片是官方的h264影片 http:/...
我用live555获取到了H264编码的视频流,但是由于live555是一个数据包一个数据包的接收的,解码该如何进行呢?
我有一个支持RTSP协议的摄像头,但是只能局域网访问,我想把它变成一个支持远程访问的设备。
我想到的做法是,在摄像头里面嵌入一个新的程序——代理程序。这...
小弟正在学习流媒体,那个大哥有做好的流媒体播放器的Demo发给小弟学习学习,小弟不胜感激。 邮箱:
哪位大哥有live555做好的activex控件?给我下可以不,学习下, god_
各位大侠好!我现在做live555多路高清视频传输,客户端接收6路720p15比较稳定,但是6路720p30就不稳定了,想问一下大侠,live555最多可...
@晨曦之光 你好,想跟你请教 大侠,你好,我整在做一个实时转发的演示平台,你是怎么做的呀?LIVE555缺省不支持实时转发,框架又很复杂,呜呜!拷贝份例子...
很希望应聘一个IPC(IP摄像机)的项目经理做,我可以很快组建一个团队,开发出产品。伯乐?有木有?contact with e-mail:tanyc @ ...
最近想研究下live555,在ubuntu下编译并运行,虽然有cgdb可以进行源码调试,但总感觉调试时不够直观和简便,于是想在vs2010下编译。...
freeman工作室 方向:开源软件项目的商业化 招募志愿者加入,要求: 1、5年以上软件开发经验。 2、有创业的热情和决心。 3、热爱网络和软件开发工作...
找不到我想要的答案?本周问答荣誉榜
本月问答荣誉榜
含有标签"live555"的问题
大家好,我使用最新的live555,根据官网的流程编译得到了libBasicUsageEnvironment.a,libgroupsock.a,libliveMedia.a,libUsageEnvironment.a这四个库,但是目前我不太清楚怎么在项目中使用,请大侠们不灵赐教。
spritehelper 做的动画如何导入 xcode
135927浏览
各位大哥,我参考dropcam写了一个监控客户端,也就是利用live555实现rtsp连接并接收H264视频数据,用ffmpeg解码。具体是在rtspClient每接收到一帧数据调用didReceiveFrame函数,在didReceiveFrame回调函数中利用ffmpeg解码每接收到的一个帧,现在已经解码成功,保存为ppm图像是可以打开看到监控的图片,但用uiimage画图却一直是没有图像。不知道是什么原因,请教大侠。
- (void)didReceiveFrame:(const uint8_t*)frameData
frameDataLength:(int)frameDataLength
presentationTime:(struct timeval)presentationTime
durationInMicroseconds:(unsigned)duration
subsession:(RTSPSubsession*)subsession
这边我省略了给每帧加入sps,pps头的代码,如果需要的可以联系我
if ([myDecoder isFrameReady]) {
[myDecoder decodeFrame:myFrameData];
//解码器已经在前面初始化好,这里直接调用解码函数,myFrameData是加入了帧头的每帧数据
imageView.image = myDecoder.currentI
//解码好后,经过yuv->rgb24->uiimage转换,得到currentImage。进行...live555 怎么生成iphone的静态库? - 开源中国社区
当前访客身份:游客 [
当前位置:
求大神指导怎么生成生成live555 静态库,移植到xcode上
共有0个答案
更多开发者职位上
有什么技术问题吗?
类似的话题Xcode7中创建静态库
招聘信息:
一、静态库和动态库的区别:静态库和动态库是相对编译期和运行期的,静态库以 .a 和 .framework 形式存在,链接时,静态库会被完整地复制到可执行文件中,被多次使用就有多份冗余拷贝;动态库以 .dylib 和 .framework 形式存在,链接时不复制,程序运行时由系统动态加载到内存,供程序调用,系统只加载一次,多个程序共用,节省内存,一般只能由系统创建。二、静态库简介:1、静态库分为真机—Debug(调试)版本、真机—Release(发布)版本、模拟器—Debug版本、模拟器—Release版本;开发中一般都打包Release(发布)版本,将真机和模拟器版本合并,提供外界。2、使用场景:在项目开发的过程中,例如两个公司之间业务交流,不可能把源代码都发送给另一个公司,这时候将私密内容打包成静态库,别人只能调用接口,而不能知道其中实现的细节。三、用Xcode7创建静态库.a文件版本(以制作AFNetworking静态库为例)1、新建项目,点击iOS—Framework&—Cocoa Touch Static Library。给你的工程命名为StaticLib2、系统自动生成以工程名命名的.h和.m文件,可自定义的在目录下添加或删除文件,注意目录下Products文件夹有一个.a文件为红色,说明文件并不存在。这里我们将系统生成的.h和.m文件删除。将AFNetworking的所有文件导入工程目录下3、点击Build Phases—Copy Files,左下角点击+号按钮,添加你需要暴露的接口头文件。如果你在静态库工程中使用了category,那么你可能会碰到链接问题,解决的办法就是需要同时在生成静态库的工程和使用静态库的工程中使用“-all_load”编译选项,即在对应target的"Build Settings"中的“Other Linker Flags”选项添加“-all_load”,注意:使用静态库的工程中是一定要加该编译选项的!至于生成静态库的工程中加不加没有试过,不过建议还是加上该编译选项。点击Add添加4、然后点击左上角,选择Edit Scheme,Build Configuration下选择Release,先注意检查下面Release是否为NO:Yes表示只编译选中模拟器设备对应的架构,No则为编译所有模拟器设备支持的cup架构(Debug版本同理),选择NO,然后分别在模拟器和真机下Command+B编译一下,会看到Products文件夹下的.a文件变为黑色,这个.a文件就是我们想要得到的静态库,这里会出现一个问题你先编译的模拟器会发现.a依然是红色,你需要模拟器和真机都编译后.a才会变成黑色,这应该是Xcode本身的问题。注:关于静态库对CPU架构的支持,首先了解iOS设备CPU架构方面的知识,ARM是微处理器行业的一家知名企业,arm处理器以体积小和高性能的优势在嵌入式设备中广泛使用,几乎所有手机都是使用它的。模拟器:iphone4s~5 : i386 iphone5s~6plus : x86_64真机:iphone3gs~4s : armv7 ?iphone5~5c : armv7s (静态库只要支持了armv7,就可以跑在armv7s的架构上) iphone5s~6plus : arm64armv6, armv7, armv7s是ARM CPU的不同指令集,原则是向下兼容的。例如iPhone4S CPU支持armv7, 但它同时兼容armv6,只是使用armv6指令可能无法充分发挥它的特性。这里再补充一下查看静态库.a对处理器架构的支持,先cd到.a文件的路径下,命令行输入:lipo -info xxxxx.a5、通过终端打开路径/Users/shelin/Library/Developer/Xcode/DerivedData/,选择对应的工程文件夹。打开Build—Products文件夹,会看到Release-iphoneos和Release-iphonesimulator文件夹,分别是真机和模拟器的.a文件,为了使用方便我们将两个版本的.a文件合并。6、合并真机和模拟器.a文件,在终端输入以下命令行:lipo -create? 模拟器.a文件的路径 真机.a文件的路径 -output 合并后的保存路径(例:lipo -create /Users/shelin/Library/Developer/Xcode/DerivedData/StaticLib/Build/Products/Release-iphoneos/libxxx.a? /Users/shelin/Library/Developer/Xcode/DerivedData/StaticLib/Build/Products/Release-iphonesimulator/libxxx.a? -output /Users/shelin/Desktop/StaticLib.a)最终会在桌面得到一个合并后的StaticLib.a文件,再将暴露出来的.h头文件一起复制出来。7、使用:只需将.a和暴露出来的.h头文件导入工程目录下就可供外界使用。.framework版本:待补充......
微信扫一扫
订阅每日移动开发及APP推广热点资讯公众号:CocoaChina
您还没有登录!请或
点击量9347点击量7001点击量6528点击量6520点击量5863点击量5474点击量5373点击量5167点击量5017
&2016 Chukong Technologies,Inc.
京公网安备89转自iPhoneGeek&&由于Apple禁止在iPhone中使用外部框架或动态链接库,所以要重用代码(第三方库或自己的代码)只能选择如下方法:直接将代码加入项目。这种方法有点笨。例如,你的一段代码被五个项目共享,如果你发现一个小bug,那么你需要更改五个地方。够麻烦吧?使用静态库。这是我经常使用的方法。但Xcode并未为iPhone提供静态库的模板。有两种解决方法:&如果你的项目主要是使用Objective-C(C/C++也可使用,只要做些简单修改),那么你可使用现成的Xcode 模板。通过Mac OS X栏下的Static Library中的BSD Static Library建立一个静态库。但要用于iPhone项目,还需做些修改(需要将项目的Base SDK改为iPhone)。但怎样在项目中链接静态库呢?如果你熟悉Xcode,那么你可跳过此段。很简单:指定静态库的头文件路径Head Search Paths。添加静态库到Xcode项目中。就这么简单。但是且慢,万事大吉了吗?如果你要修改你的静态库呢?你需要从Find中找到你的静态库项目,打开它修改。有点麻烦,不能像 Visual Studio一样将相关项目包括在应用项目中吗?答案是:可以,虽然还是没有Visual Studio中的工作空间好用。但你可以从Xcode中直接打开相关的静态库。方法是使用Xcode的Cross-Project Reference(跨项目参考)。将静态库的Xcode项目加入到当前项目。右击Targets下本项目,添加到静态库项目的关联。在项目下,扩展静态库项目,拖动xxxx.a到Targets下的Link Binary With Libraries。这样你就可以从当前项目下,双击静态库的项目来打开和修改静态库的代码了。

我要回帖

更多关于 live555学习笔记 的文章

 

随机推荐