转载自:http://blog.csdn.net/sunwutian0325/article/details/8582524,尊重原创!
在android ndk下编译live555
1.下载live555源码(我这个版本是live.2013.02.11.tar.gz)
http://www.live555.com/liveMedia/public/
2.解压成一个live文件夹,在live文件夹下建一个jni目录,将live下的其他所有文件和文件夹都放到jni目录下
3.进入live/jni目录下
新建一个Android.mk文件,里面的内容为
View Code
1 LOCAL_PATH := $(call my-dir)
2
3 include $(CLEAR_VARS)
4
5 LOCAL_MODULE := liblive555
6
7 LOCAL_ARM_MODE := arm
8
9 LOCAL_PRELINK_MODULE := false
10
11 LOCAL_CPPFLAGS :=
12 -DNULL=0 -DSOCKLEN_T=socklen_t -DNO_SSTREAM -DBSD=1 -DNO_SSTREAM -fexceptions -DANDROID -DXLOCALE_NOT_USED
13
14 LOCAL_C_INCLUDES :=
15 $(LOCAL_PATH)
16 $(LOCAL_PATH)/BasicUsageEnvironment/include
17 $(LOCAL_PATH)/BasicUsageEnvironment
18 $(LOCAL_PATH)/UsageEnvironment/include
19 $(LOCAL_PATH)/UsageEnvironment
20 $(LOCAL_PATH)/groupsock/include
21 $(LOCAL_PATH)/groupsock
22 $(LOCAL_PATH)/liveMedia/include
23 $(LOCAL_PATH)/liveMedia
24
25 LOCAL_MODULE_TAGS := optional
26
27 LOCAL_SRC_FILES :=
28 liveMedia/Media.cpp
29 liveMedia/MediaSource.cpp
30 liveMedia/FramedSource.cpp
31 liveMedia/FramedFileSource.cpp
32 liveMedia/FramedFilter.cpp
33 liveMedia/ByteStreamFileSource.cpp
34 liveMedia/ByteStreamMultiFileSource.cpp
35 liveMedia/ByteStreamMemoryBufferSource.cpp
36 liveMedia/BasicUDPSource.cpp
37 liveMedia/DeviceSource.cpp
38 liveMedia/AudioInputDevice.cpp
39 liveMedia/WAVAudioFileSource.cpp
40 liveMedia/MPEG1or2Demux.cpp
41 liveMedia/MPEG1or2DemuxedElementaryStream.cpp
42 liveMedia/MPEGVideoStreamFramer.cpp
43 liveMedia/MPEG1or2VideoStreamFramer.cpp
44 liveMedia/MPEG1or2VideoStreamDiscreteFramer.cpp
45 liveMedia/MPEG4VideoStreamFramer.cpp
46 liveMedia/MPEG4VideoStreamDiscreteFramer.cpp
47 liveMedia/H264VideoStreamFramer.cpp
48 liveMedia/H264VideoStreamDiscreteFramer.cpp
49 liveMedia/MPEGVideoStreamParser.cpp
50 liveMedia/MPEG1or2AudioStreamFramer.cpp
51 liveMedia/MPEG1or2AudioRTPSource.cpp
52 liveMedia/MPEG4LATMAudioRTPSource.cpp
53 liveMedia/MPEG4ESVideoRTPSource.cpp
54 liveMedia/MPEG4GenericRTPSource.cpp
55 liveMedia/MP3FileSource.cpp
56 liveMedia/MP3Transcoder.cpp
57 liveMedia/MP3ADU.cpp
58 liveMedia/MP3ADUdescriptor.cpp
59 liveMedia/MP3ADUinterleaving.cpp
60 liveMedia/MP3ADUTranscoder.cpp
61 liveMedia/MP3StreamState.cpp
62 liveMedia/MP3Internals.cpp
63 liveMedia/MP3InternalsHuffman.cpp
64 liveMedia/MP3InternalsHuffmanTable.cpp
65 liveMedia/MP3ADURTPSource.cpp
66 liveMedia/MPEG1or2VideoRTPSource.cpp
67 liveMedia/MPEG2TransportStreamMultiplexor.cpp
68 liveMedia/MPEG2TransportStreamFromPESSource.cpp
69 liveMedia/MPEG2TransportStreamFromESSource.cpp
70 liveMedia/MPEG2TransportStreamFramer.cpp
71 liveMedia/ADTSAudioFileSource.cpp
72 liveMedia/H263plusVideoRTPSource.cpp
73 liveMedia/H263plusVideoStreamFramer.cpp
74 liveMedia/H263plusVideoStreamParser.cpp
75 liveMedia/AC3AudioStreamFramer.cpp
76 liveMedia/AC3AudioRTPSource.cpp
77 liveMedia/DVVideoStreamFramer.cpp
78 liveMedia/DVVideoRTPSource.cpp
79 liveMedia/JPEGVideoSource.cpp
80 liveMedia/AMRAudioSource.cpp
81 liveMedia/AMRAudioFileSource.cpp
82 liveMedia/InputFile.cpp
83 liveMedia/StreamReplicator.cpp
84 liveMedia/MediaSink.cpp
85 liveMedia/FileSink.cpp
86 liveMedia/BasicUDPSink.cpp
87 liveMedia/AMRAudioFileSink.cpp
88 liveMedia/H264VideoFileSink.cpp
89 liveMedia/MPEG1or2AudioRTPSink.cpp
90 liveMedia/MP3ADURTPSink.cpp
91 liveMedia/MPEG1or2VideoRTPSink.cpp
92 liveMedia/MPEG4LATMAudioRTPSink.cpp
93 liveMedia/MPEG4GenericRTPSink.cpp
94 liveMedia/MPEG4ESVideoRTPSink.cpp
95 liveMedia/H263plusVideoRTPSink.cpp
96 liveMedia/H264VideoRTPSink.cpp
97 liveMedia/DVVideoRTPSink.cpp
98 liveMedia/AC3AudioRTPSink.cpp
99 liveMedia/VorbisAudioRTPSink.cpp
100 liveMedia/VP8VideoRTPSink.cpp
101 liveMedia/GSMAudioRTPSink.cpp
102 liveMedia/JPEGVideoRTPSink.cpp
103 liveMedia/SimpleRTPSink.cpp
104 liveMedia/AMRAudioRTPSink.cpp
105 liveMedia/T140TextRTPSink.cpp
106 liveMedia/TCPStreamSink.cpp
107 liveMedia/OutputFile.cpp
108 liveMedia/uLawAudioFilter.cpp
109 liveMedia/RTPSource.cpp
110 liveMedia/MultiFramedRTPSource.cpp
111 liveMedia/SimpleRTPSource.cpp
112 liveMedia/H261VideoRTPSource.cpp
113 liveMedia/H264VideoRTPSource.cpp
114 liveMedia/QCELPAudioRTPSource.cpp
115 liveMedia/AMRAudioRTPSource.cpp
116 liveMedia/JPEGVideoRTPSource.cpp
117 liveMedia/VorbisAudioRTPSource.cpp
118 liveMedia/VP8VideoRTPSource.cpp
119 liveMedia/RTPSink.cpp
120 liveMedia/MultiFramedRTPSink.cpp
121 liveMedia/AudioRTPSink.cpp
122 liveMedia/VideoRTPSink.cpp
123 liveMedia/TextRTPSink.cpp
124 liveMedia/RTPInterface.cpp
125 liveMedia/RTCP.cpp
126 liveMedia/rtcp_from_spec.c
127 liveMedia/RTSPServer.cpp
128 liveMedia/RTSPClient.cpp
129 liveMedia/RTSPCommon.cpp
130 liveMedia/RTSPServerSupportingHTTPStreaming.cpp
131 liveMedia/SIPClient.cpp
132 liveMedia/MediaSession.cpp
133 liveMedia/ServerMediaSession.cpp
134 liveMedia/PassiveServerMediaSubsession.cpp
135 liveMedia/OnDemandServerMediaSubsession.cpp
136 liveMedia/FileServerMediaSubsession.cpp
137 liveMedia/MPEG4VideoFileServerMediaSubsession.cpp
138 liveMedia/H264VideoFileServerMediaSubsession.cpp
139 liveMedia/H263plusVideoFileServerMediaSubsession.cpp
140 liveMedia/WAVAudioFileServerMediaSubsession.cpp
141 liveMedia/AMRAudioFileServerMediaSubsession.cpp
142 liveMedia/MP3AudioFileServerMediaSubsession.cpp
143 liveMedia/MPEG1or2VideoFileServerMediaSubsession.cpp
144 liveMedia/MPEG1or2FileServerDemux.cpp
145 liveMedia/MPEG1or2DemuxedServerMediaSubsession.cpp
146 liveMedia/MPEG2TransportFileServerMediaSubsession.cpp
147 liveMedia/ADTSAudioFileServerMediaSubsession.cpp
148 liveMedia/DVVideoFileServerMediaSubsession.cpp
149 liveMedia/AC3AudioFileServerMediaSubsession.cpp
150 liveMedia/MPEG2TransportUDPServerMediaSubsession.cpp
151 liveMedia/ProxyServerMediaSession.cpp
152 liveMedia/QuickTimeFileSink.cpp
153 liveMedia/QuickTimeGenericRTPSource.cpp
154 liveMedia/AVIFileSink.cpp
155 liveMedia/MPEG2IndexFromTransportStream.cpp
156 liveMedia/MPEG2TransportStreamIndexFile.cpp
157 liveMedia/MPEG2TransportStreamTrickModeFilter.cpp
158 liveMedia/MatroskaFile.cpp
159 liveMedia/MatroskaFileParser.cpp
160 liveMedia/EBMLNumber.cpp
161 liveMedia/MatroskaDemuxedTrack.cpp
162 liveMedia/MatroskaFileServerDemux.cpp
163 liveMedia/H264VideoMatroskaFileServerMediaSubsession.cpp
164 liveMedia/VP8VideoMatroskaFileServerMediaSubsession.cpp
165 liveMedia/AACAudioMatroskaFileServerMediaSubsession.cpp
166 liveMedia/AC3AudioMatroskaFileServerMediaSubsession.cpp
167 liveMedia/MP3AudioMatroskaFileServerMediaSubsession.cpp
168 liveMedia/VorbisAudioMatroskaFileServerMediaSubsession.cpp
169 liveMedia/T140TextMatroskaFileServerMediaSubsession.cpp
170 liveMedia/DarwinInjector.cpp
171 liveMedia/BitVector.cpp
172 liveMedia/StreamParser.cpp
173 liveMedia/DigestAuthentication.cpp
174 liveMedia/our_md5.c
175 liveMedia/our_md5hl.c
176 liveMedia/Base64.cpp
177 liveMedia/Locale.cpp
178 groupsock/GroupsockHelper.cpp
179 groupsock/GroupEId.cpp
180 groupsock/inet.c
181 groupsock/Groupsock.cpp
182 groupsock/NetInterface.cpp
183 groupsock/NetAddress.cpp
184 groupsock/IOHandlers.cpp
185 UsageEnvironment/UsageEnvironment.cpp
186 UsageEnvironment/HashTable.cpp
187 UsageEnvironment/strDup.cpp
188 BasicUsageEnvironment/BasicUsageEnvironment0.cpp
189 BasicUsageEnvironment/BasicUsageEnvironment.cpp
190 BasicUsageEnvironment/BasicTaskScheduler0.cpp
191 BasicUsageEnvironment/BasicTaskScheduler.cpp
192 BasicUsageEnvironment/DelayQueue.cpp
193 BasicUsageEnvironment/BasicHashTable.cpp
194
195
196 include $(BUILD_SHARED_LIBRARY)
4.在终端中打开,运行
1 lx@PC120288:~/live/jni$ ndk-build
5.运行结果
View Code
1 Compile++ arm : live555 <= Media.cpp
2 Compile++ arm : live555 <= MediaSource.cpp
3 Compile++ arm : live555 <= FramedSource.cpp
4 Compile++ arm : live555 <= FramedFileSource.cpp
5 Compile++ arm : live555 <= FramedFilter.cpp
6 Compile++ arm : live555 <= ByteStreamFileSource.cpp
7 Compile++ arm : live555 <= ByteStreamMultiFileSource.cpp
8 Compile++ arm : live555 <= ByteStreamMemoryBufferSource.cpp
9 Compile++ arm : live555 <= BasicUDPSource.cpp
10 Compile++ arm : live555 <= DeviceSource.cpp
11 Compile++ arm : live555 <= AudioInputDevice.cpp
12 Compile++ arm : live555 <= WAVAudioFileSource.cpp
13 Compile++ arm : live555 <= MPEG1or2Demux.cpp
14 Compile++ arm : live555 <= MPEG1or2DemuxedElementaryStream.cpp
15 Compile++ arm : live555 <= MPEGVideoStreamFramer.cpp
16 Compile++ arm : live555 <= MPEG1or2VideoStreamFramer.cpp
17 Compile++ arm : live555 <= MPEG1or2VideoStreamDiscreteFramer.cpp
18 Compile++ arm : live555 <= MPEG4VideoStreamFramer.cpp
19 Compile++ arm : live555 <= MPEG4VideoStreamDiscreteFramer.cpp
20 Compile++ arm : live555 <= H264VideoStreamFramer.cpp
21 Compile++ arm : live555 <= H264VideoStreamDiscreteFramer.cpp
22 Compile++ arm : live555 <= MPEGVideoStreamParser.cpp
23 Compile++ arm : live555 <= MPEG1or2AudioStreamFramer.cpp
24 Compile++ arm : live555 <= MPEG1or2AudioRTPSource.cpp
25 Compile++ arm : live555 <= MPEG4LATMAudioRTPSource.cpp
26 Compile++ arm : live555 <= MPEG4ESVideoRTPSource.cpp
27 Compile++ arm : live555 <= MPEG4GenericRTPSource.cpp
28 Compile++ arm : live555 <= MP3FileSource.cpp
29 Compile++ arm : live555 <= MP3Transcoder.cpp
30 Compile++ arm : live555 <= MP3ADU.cpp
31 Compile++ arm : live555 <= MP3ADUdescriptor.cpp
32 Compile++ arm : live555 <= MP3ADUinterleaving.cpp
33 Compile++ arm : live555 <= MP3ADUTranscoder.cpp
34 Compile++ arm : live555 <= MP3StreamState.cpp
35 Compile++ arm : live555 <= MP3Internals.cpp
36 Compile++ arm : live555 <= MP3InternalsHuffman.cpp
37 Compile++ arm : live555 <= MP3InternalsHuffmanTable.cpp
38 Compile++ arm : live555 <= MP3ADURTPSource.cpp
39 Compile++ arm : live555 <= MPEG1or2VideoRTPSource.cpp
40 Compile++ arm : live555 <= MPEG2TransportStreamMultiplexor.cpp
41 Compile++ arm : live555 <= MPEG2TransportStreamFromPESSource.cpp
42 Compile++ arm : live555 <= MPEG2TransportStreamFromESSource.cpp
43 Compile++ arm : live555 <= MPEG2TransportStreamFramer.cpp
44 Compile++ arm : live555 <= ADTSAudioFileSource.cpp
45 Compile++ arm : live555 <= H263plusVideoRTPSource.cpp
46 Compile++ arm : live555 <= H263plusVideoStreamFramer.cpp
47 Compile++ arm : live555 <= H263plusVideoStreamParser.cpp
48 Compile++ arm : live555 <= AC3AudioStreamFramer.cpp
49 Compile++ arm : live555 <= AC3AudioRTPSource.cpp
50 Compile++ arm : live555 <= DVVideoStreamFramer.cpp
51 Compile++ arm : live555 <= DVVideoRTPSource.cpp
52 Compile++ arm : live555 <= JPEGVideoSource.cpp
53 Compile++ arm : live555 <= AMRAudioSource.cpp
54 Compile++ arm : live555 <= AMRAudioFileSource.cpp
55 Compile++ arm : live555 <= InputFile.cpp
56 Compile++ arm : live555 <= StreamReplicator.cpp
57 Compile++ arm : live555 <= MediaSink.cpp
58 Compile++ arm : live555 <= FileSink.cpp
59 Compile++ arm : live555 <= BasicUDPSink.cpp
60 Compile++ arm : live555 <= AMRAudioFileSink.cpp
61 Compile++ arm : live555 <= H264VideoFileSink.cpp
62 Compile++ arm : live555 <= MPEG1or2AudioRTPSink.cpp
63 Compile++ arm : live555 <= MP3ADURTPSink.cpp
64 Compile++ arm : live555 <= MPEG1or2VideoRTPSink.cpp
65 Compile++ arm : live555 <= MPEG4LATMAudioRTPSink.cpp
66 Compile++ arm : live555 <= MPEG4GenericRTPSink.cpp
67 Compile++ arm : live555 <= MPEG4ESVideoRTPSink.cpp
68 Compile++ arm : live555 <= H263plusVideoRTPSink.cpp
69 Compile++ arm : live555 <= H264VideoRTPSink.cpp
70 Compile++ arm : live555 <= DVVideoRTPSink.cpp
71 Compile++ arm : live555 <= AC3AudioRTPSink.cpp
72 Compile++ arm : live555 <= VorbisAudioRTPSink.cpp
73 Compile++ arm : live555 <= VP8VideoRTPSink.cpp
74 Compile++ arm : live555 <= GSMAudioRTPSink.cpp
75 Compile++ arm : live555 <= JPEGVideoRTPSink.cpp
76 Compile++ arm : live555 <= SimpleRTPSink.cpp
77 Compile++ arm : live555 <= AMRAudioRTPSink.cpp
78 Compile++ arm : live555 <= T140TextRTPSink.cpp
79 Compile++ arm : live555 <= TCPStreamSink.cpp
80 Compile++ arm : live555 <= OutputFile.cpp
81 Compile++ arm : live555 <= uLawAudioFilter.cpp
82 Compile++ arm : live555 <= RTPSource.cpp
83 Compile++ arm : live555 <= MultiFramedRTPSource.cpp
84 Compile++ arm : live555 <= SimpleRTPSource.cpp
85 Compile++ arm : live555 <= H261VideoRTPSource.cpp
86 Compile++ arm : live555 <= H264VideoRTPSource.cpp
87 Compile++ arm : live555 <= QCELPAudioRTPSource.cpp
88 Compile++ arm : live555 <= AMRAudioRTPSource.cpp
89 Compile++ arm : live555 <= JPEGVideoRTPSource.cpp
90 Compile++ arm : live555 <= VorbisAudioRTPSource.cpp
91 Compile++ arm : live555 <= VP8VideoRTPSource.cpp
92 Compile++ arm : live555 <= RTPSink.cpp
93 Compile++ arm : live555 <= MultiFramedRTPSink.cpp
94 Compile++ arm : live555 <= AudioRTPSink.cpp
95 Compile++ arm : live555 <= VideoRTPSink.cpp
96 Compile++ arm : live555 <= TextRTPSink.cpp
97 Compile++ arm : live555 <= RTPInterface.cpp
98 Compile++ arm : live555 <= RTCP.cpp
99 Compile arm : live555 <= rtcp_from_spec.c
100 Compile++ arm : live555 <= RTSPServer.cpp
101 Compile++ arm : live555 <= RTSPClient.cpp
102 Compile++ arm : live555 <= RTSPCommon.cpp
103 Compile++ arm : live555 <= RTSPServerSupportingHTTPStreaming.cpp
104 Compile++ arm : live555 <= SIPClient.cpp
105 Compile++ arm : live555 <= MediaSession.cpp
106 Compile++ arm : live555 <= ServerMediaSession.cpp
107 Compile++ arm : live555 <= PassiveServerMediaSubsession.cpp
108 Compile++ arm : live555 <= OnDemandServerMediaSubsession.cpp
109 Compile++ arm : live555 <= FileServerMediaSubsession.cpp
110 Compile++ arm : live555 <= MPEG4VideoFileServerMediaSubsession.cpp
111 Compile++ arm : live555 <= H264VideoFileServerMediaSubsession.cpp
112 Compile++ arm : live555 <= H263plusVideoFileServerMediaSubsession.cpp
113 Compile++ arm : live555 <= WAVAudioFileServerMediaSubsession.cpp
114 Compile++ arm : live555 <= AMRAudioFileServerMediaSubsession.cpp
115 Compile++ arm : live555 <= MP3AudioFileServerMediaSubsession.cpp
116 Compile++ arm : live555 <= MPEG1or2VideoFileServerMediaSubsession.cpp
117 Compile++ arm : live555 <= MPEG1or2FileServerDemux.cpp
118 Compile++ arm : live555 <= MPEG1or2DemuxedServerMediaSubsession.cpp
119 Compile++ arm : live555 <= MPEG2TransportFileServerMediaSubsession.cpp
120 Compile++ arm : live555 <= ADTSAudioFileServerMediaSubsession.cpp
121 Compile++ arm : live555 <= DVVideoFileServerMediaSubsession.cpp
122 Compile++ arm : live555 <= AC3AudioFileServerMediaSubsession.cpp
123 Compile++ arm : live555 <= MPEG2TransportUDPServerMediaSubsession.cpp
124 Compile++ arm : live555 <= ProxyServerMediaSession.cpp
125 Compile++ arm : live555 <= QuickTimeFileSink.cpp
126 Compile++ arm : live555 <= QuickTimeGenericRTPSource.cpp
127 Compile++ arm : live555 <= AVIFileSink.cpp
128 Compile++ arm : live555 <= MPEG2IndexFromTransportStream.cpp
129 Compile++ arm : live555 <= MPEG2TransportStreamIndexFile.cpp
130 Compile++ arm : live555 <= MPEG2TransportStreamTrickModeFilter.cpp
131 Compile++ arm : live555 <= MatroskaFile.cpp
132 Compile++ arm : live555 <= MatroskaFileParser.cpp
133 Compile++ arm : live555 <= EBMLNumber.cpp
134 Compile++ arm : live555 <= MatroskaDemuxedTrack.cpp
135 Compile++ arm : live555 <= MatroskaFileServerDemux.cpp
136 Compile++ arm : live555 <= H264VideoMatroskaFileServerMediaSubsession.cpp
137 Compile++ arm : live555 <= VP8VideoMatroskaFileServerMediaSubsession.cpp
138 Compile++ arm : live555 <= AACAudioMatroskaFileServerMediaSubsession.cpp
139 Compile++ arm : live555 <= AC3AudioMatroskaFileServerMediaSubsession.cpp
140 Compile++ arm : live555 <= MP3AudioMatroskaFileServerMediaSubsession.cpp
141 Compile++ arm : live555 <= VorbisAudioMatroskaFileServerMediaSubsession.cpp
142 Compile++ arm : live555 <= T140TextMatroskaFileServerMediaSubsession.cpp
143 Compile++ arm : live555 <= DarwinInjector.cpp
144 Compile++ arm : live555 <= BitVector.cpp
145 Compile++ arm : live555 <= StreamParser.cpp
146 Compile++ arm : live555 <= DigestAuthentication.cpp
147 Compile arm : live555 <= our_md5.c
148 Compile arm : live555 <= our_md5hl.c
149 Compile++ arm : live555 <= Base64.cpp
150 Compile++ arm : live555 <= Locale.cpp
151 Compile++ arm : live555 <= GroupsockHelper.cpp
152 Compile++ arm : live555 <= GroupEId.cpp
153 Compile arm : live555 <= inet.c
154 Compile++ arm : live555 <= Groupsock.cpp
155 Compile++ arm : live555 <= NetInterface.cpp
156 Compile++ arm : live555 <= NetAddress.cpp
157 Compile++ arm : live555 <= IOHandlers.cpp
158 Compile++ arm : live555 <= UsageEnvironment.cpp
159 Compile++ arm : live555 <= HashTable.cpp
160 Compile++ arm : live555 <= strDup.cpp
161 Compile++ arm : live555 <= BasicUsageEnvironment0.cpp
162 Compile++ arm : live555 <= BasicUsageEnvironment.cpp
163 Compile++ arm : live555 <= BasicTaskScheduler0.cpp
164 Compile++ arm : live555 <= BasicTaskScheduler.cpp
165 Compile++ arm : live555 <= DelayQueue.cpp
166 Compile++ arm : live555 <= BasicHashTable.cpp
167 StaticLibrary : libstdc++.a
168 SharedLibrary : liblive555.so
169 Install : liblive555.so => libs/armeabi/liblive555.so
原文链接: https://www.cnblogs.com/wyqfighting/archive/2013/03/04/2943005.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/79687
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!