您的位置:首页 > 移动开发 > Android开发

VLC for Android源码下载和编译 (包含其他开源项目,很全面!!!!)

2014-12-26 13:34 746 查看

Project Hosting on


点击打开链接

最受欢迎的开源项目

点击打开链接

由Android的核心开发团队提供了15个优秀的示例项 目,包含了游戏、图像处理、时间显示、开始菜单快捷方式等。

地址:http://code.google.com/p/apps-for-android/

点击打开链接



VLC for Android源码下载和编译

from:http://dingran.iteye.com/blog/1717711

1.vlc for android 已经发布了,开源的地址是:


http://wiki.videolan.org/AndroidCompile


这里面有详细的使用说明,



其中源码获取是:



git clone git://git.videolan.org/vlc-ports/android.git



再次感谢git这个伟大的工具。





2.源码编译:



最新版的源码编译已经简化多了,不用从网上找pdf的文档了,那个已经不适用了。只要按照wiki上的说明操作即可。



运行到:



sh compile.sh



之后会出现:



dr@dr-OptiPlex-3010:~/vlc_android/android$ sh compile.sh

For an ARMv6 device without FPU, you need a build without FPU:

$ export NO_FPU=1

For an ARMv5 device or the Android emulator, you need an ARMv5 build:

$ export NO_ARMV6=1

If you plan to use a release build, run 'compile.sh release'

VLC source not found, cloning

Cloning into 'vlc'...

remote: Counting objects: 389435, done.

remote: Compressing objects: 100% (77835/77835), done.



接下来会下载vlc的源码文件,就会在原有的git下载的目录下,再新建一个vlc的文件夹里面。估计是按照文档里面不同的编译



配置选项下载的不同的vlc的源码。比如,arm5或7,NEON和NONEON,等等。下载约202MB的东西。



编译过程输出:



Shell代码


Switched to a new branch 'android'
Applying the patches
Applying: libavcodec: add NEON runtime autodetection
Applying: libvlc: add language and frame rate to libvlc_media_track_info_t
Building the contribs
Guessing build system... x86_64-linux-gnu
Creating configuration file... config.mak
Bootstrap completed.

Run "make" to start compilation.

Other targets:
* make install same as "make"
* make prebuilt fetch and install prebuilt binaries
* make list list packages
* make fetch fetch required source tarballs
* make fetch-all fetch all source tarballs
* make distclean clean everything and undo bootstrap
* make mostlyclean clean everything except source tarballs
* make clean clean everything
* make package prepare prebuilt packages
curl -f -L -- "http://downloads.videolan.org/pub/videolan/testing/contrib/a52dec-0.7.4.tar.gz" > "../../contrib/tarballs/a52dec-0.7.4.tar.gz"
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 235k 100 235k 0 0 9905 0 0:00:24 0:00:24 --:--:-- 18338
grep -- " a52dec-0.7.4.tar.gz$" "../../contrib/src/a52/SHA512SUMS" && (cd ../../contrib/tarballs && sha512sum --check /dev/stdin) < "../../contrib/src/a52/SHA512SUMS"
4b26fe9492f218b775fb190b76ecf06edaeb656adfe6dcbd24d0a0f86871c3ba917edb88a398eb12dccedaa1605b6f0a0be06b09f9fddd9a46e457b7dd244848 a52dec-0.7.4.tar.gz
a52dec-0.7.4.tar.gz: OK
touch .sum-a52
curl -f -L -- "http://libass.googlecode.com/files/libass-0.10.1.tar.gz" > "../../contrib/tarballs/libass-0.10.1.tar.gz"
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 368k 100 368k 0 0 20113 0 0:00:18 0:00:18 --:--:-- 15260
grep -- " libass-0.10.1.tar.gz$" "../../contrib/src/ass/SHA512SUMS" && (cd ../../contrib/tarballs && sha512sum --check /dev/stdin) < "../../contrib/src/ass/SHA512SUMS"
531b48a173f4d7bc50ea443ff71c8fe5c1287e8563c44a5dbf72b0a9e5fb16570fe2285ad2bac8ccdada6e6d195b4f451b1036dca17f2aa6de5803e8946cb9a3 libass-0.10.1.tar.gz
libass-0.10.1.tar.gz: OK
touch .sum-ass
curl -f -L -- "http://downloads.videolan.org/pub/videolan/libdca/0.0.5/libdca-0.0.5.tar.bz2" > "../../contrib/tarballs/libdca-0.0.5.tar.bz2"
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 384k 100 384k 0 0 10600 0 0:00:37 0:00:37 --:--:-- 15121
grep -- " libdca-0.0.5.tar.bz2$" "../../contrib/src/dca/SHA512SUMS" && (cd ../../contrib/tarballs && sha512sum --check /dev/stdin) < "../../contrib/src/dca/SHA512SUMS"
d9f0ed34efeb3f27af8424fcb3e6df56744c6735854a65b5709c02b42b4513b9c4618dcc19eb44293afa051bd95616651bda5fc3b49dfabe975d0babfb1bc287 libdca-0.0.5.tar.bz2
libdca-0.0.5.tar.bz2: OK
touch .sum-dca
curl -f -L -- "http://downloads.videolan.org/pub/videolan/libdvbpsi/0.2.2/libdvbpsi-0.2.2.tar.bz2" > "../../contrib/tarballs/libdvbpsi-0.2.2.tar.bz2"
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 322k 100 322k 0 0 14946 0 0:00:22 0:00:22 --:--:-- 21309
grep -- " libdvbpsi-0.2.2.tar.bz2$" "../../contrib/src/dvbpsi/SHA512SUMS" && (cd ../../contrib/tarballs && sha512sum --check /dev/stdin) < "../../contrib/src/dvbpsi/SHA512SUMS"
9077a87d31b6c142773d68a5679a5b864df1c063f66d8b405964127b5e2f0b6b8ab4c1c003f873c221ba5657022667bfdb19cc399211be52bbc94a227de262a7 libdvbpsi-0.2.2.tar.bz2
libdvbpsi-0.2.2.tar.bz2: OK
touch .sum-dvbpsi
curl -f -L -- "http://dl.matroska.org/downloads/libebml/libebml-1.2.2.tar.bz2" > "../../contrib/tarballs/libebml-1.2.2.tar.bz2"
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 60802 100 60802 0 0 4941 0 0:00:12 0:00:12 --:--:-- 43121
grep -- " libebml-1.2.2.tar.bz2$" "../../contrib/src/ebml/SHA512SUMS" && (cd ../../contrib/tarballs && sha512sum --check /dev/stdin) < "../../contrib/src/ebml/SHA512SUMS"
aa9b446aadbfea6cd7031a08a8cd0251a764febb8ef43ee3ba44d066b945698311bda7db6bb2d983d5f0c1e24f108ae4cf1c6551b04337210b13daf7e2236135 libebml-1.2.2.tar.bz2
libebml-1.2.2.tar.bz2: OK
touch .sum-ebml
curl -f -L -- "http://git.libav.org/?p=libav.git;a=snapshot;h=1a8c6917f68f;sf=tgz" > "../../contrib/tarballs/ffmpeg-git.tar.gz"
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 5577k 0 5577k 0 0 17615 0 --:--:-- 0:05:24 --:--:-- 12273
../../contrib/src/ffmpeg/rules.mak:136: Not implemented.
touch .sum-ffmpeg
curl -f -L -- "http://heanet.dl.sourceforge.net/sourceforge/flac/flac-src/flac-1.2.1-src/flac-1.2.1.tar.gz" > "../../contrib/tarballs/flac-1.2.1.tar.gz"
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 409 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0
0 0 0 0 0 0 0 0 --:--:-- 0:00:12 --:--:-- 0
100 1962k 100 1962k 0 0 17063 0 0:01:57 0:01:57 --:--:-- 15064
grep -- " flac-1.2.1.tar.gz$" "../../contrib/src/flac/SHA512SUMS" && (cd ../../contrib/tarballs && sha512sum --check /dev/stdin) < "../../contrib/src/flac/SHA512SUMS"
39b216239341fbfe210c3a2fc0d0531ecae26c425365c4b6d4fc1081e44e6dc7a9aba8d4c79cc8025386d0a7bb0d25c413c9b64cf7da9ab04ca34a56d2699787 flac-1.2.1.tar.gz
flac-1.2.1.tar.gz: OK
touch .sum-flac
curl -f -L -- "http://heanet.dl.sourceforge.net/sourceforge/freetype/freetype2/2.4.10/freetype-2.4.10.tar.gz" > "../../contrib/tarballs/freetype-2.4.10.tar.gz"
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 411 0 0 0 0 0 0 --:--:-- 0:00:11 --:--:-- 0
0 0 0 0 0 0 0 0 --:--:-- 0:00:13 --:--:-- 0
100 1959k 100 1959k 0 0 15040 0 0:02:13 0:02:13 --:--:-- 21090
grep -- " freetype-2.4.10.tar.gz$" "../../contrib/src/freetype2/SHA512SUMS" && (cd ../../contrib/tarballs && sha512sum --check /dev/stdin) < "../../contrib/src/freetype2/SHA512SUMS"
507d1c03d394b695b5a96041ad7ee03b375964c89f007678db864a7e5bd2ee69d83e6c638f4aadaf348c921d37c16741a03ef9bee03196bda2b94ceea409b688 freetype-2.4.10.tar.gz
freetype-2.4.10.tar.gz: OK
touch .sum-freetype2
curl -f -L -- "http://fribidi.org/download/fribidi-0.19.4.tar.bz2" > "../../contrib/tarballs/fribidi-0.19.4.tar.bz2"
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 593k 100 593k 0 0 11802 0 0:00:51 0:00:51 --:--:-- 16848
grep -- " fribidi-0.19.4.tar.bz2$" "../../contrib/src/fribidi/SHA512SUMS" && (cd ../../contrib/tarballs && sha512sum --check /dev/stdin) < "../../contrib/src/fribidi/SHA512SUMS"
6095421de6652202f54ce008eba881e514059e4ac2fd84fdbaabad504f147b332e9c688982b1857cd4d04d6d0346ca9dd16e6a5a5d2ef5acd4d1c400e054968c fribidi-0.19.4.tar.bz2
fribidi-0.19.4.tar.bz2: OK
touch .sum-fribidi
curl -f -L -- "ftp://ftp.gnupg.org/gcrypt/libgcrypt/libgcrypt-1.5.0.tar.bz2" > "../../contrib/tarballs/libgcrypt-1.5.0.tar.bz2"
curl: (6) Couldn't resolve host 'ftp.gnupg.org'
make: *** [../../contrib/tarballs/libgcrypt-1.5.0.tar.bz2] Error 6
make: *** Deleting file `../../contrib/tarballs/libgcrypt-1.5.0.tar.bz2'


编译出错了,Fuck!是因为网速慢,继续运行sh compile.sh就行了,可以继续下载。



待下载完成会自动进行编译,编译的时间较长,耐心等待。



我的编译过程中出错了,错误信息如下:



Shell代码


[crunch] Processing image to cache: /home/dr/vlc_android/android/java-libs/ActionBarSherlock/res/drawable-xhdpi/abs__tab_unselected_pressed_holo.9.png => /home/dr/vlc_android/android/java-libs/ActionBarSherlock/bin/res/drawable-xhdpi/abs__tab_unselected_pressed_holo.9.png
[crunch] (processed image to cache entry /home/dr/vlc_android/android/java-libs/ActionBarSherlock/bin/res/drawable-xhdpi/abs__tab_unselected_pressed_holo.9.png: 0% size of source)
[crunch] Crunched 201 PNG files to update cache

-package-resources:
[echo] Library project: do not package resources...

-package:
[echo] Library project: do not package apk...

-post-package:

-do-debug:
[echo] Library project: do not create apk...
[propertyfile] Creating new property file: /home/dr/vlc_android/android/java-libs/ActionBarSherlock/bin/build.prop
[propertyfile] Updating property file: /home/dr/vlc_android/android/java-libs/ActionBarSherlock/bin/build.prop
[propertyfile] Updating property file: /home/dr/vlc_android/android/java-libs/ActionBarSherlock/bin/build.prop
[propertyfile] Updating property file: /home/dr/vlc_android/android/java-libs/ActionBarSherlock/bin/build.prop

-post-build:

debug:

-pre-build:

-code-gen:
[mergemanifest] Merging AndroidManifest files into one.
[mergemanifest] Manifest merger disabled. Using project manifest only.
[echo] Handling aidl files...
[aidl] Found 2 AIDL files.
[aidl] Compiling 2 AIDL files.
[echo] ----------
[echo] Handling RenderScript files...
[renderscript] No RenderScript files to compile.
[echo] ----------
[echo] Handling Resources...
[aapt] Generating resource IDs...
[aapt] aapt: warning: string 'filebrowser_parent' has no default translation in /home/dr/vlc_android/android/java-libs/SlidingMenu/res; found: eu fr gd hr mr te uk wa
[aapt] aapt: warning: string 'search_found_results' has no default translation in /home/dr/vlc_android/android/java-libs/SlidingMenu/res; found: es eu gd hr mr te uk wa
[aapt] aapt: warning: string 'time_0' has no default translation in /home/dr/vlc_android/android/java-libs/SlidingMenu/res; found: es eu fr gd hr mr te uk wa
[echo] ----------
[echo] Handling BuildConfig class...
[buildconfig] Generating BuildConfig class.

-pre-compile:

-compile:
[javac] Compiling 70 source files to /home/dr/vlc_android/android/vlc-android/bin/classes
[javac] /home/dr/vlc_android/android/vlc-android/src/org/videolan/vlc/Util.java:244: cannot find symbol
[javac] symbol : variable JELLY_BEAN
[javac] location: class android.os.Build.VERSION_CODES
[javac] return android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.JELLY_BEAN;
[javac] ^
[javac] 1 error

BUILD FAILED
/home/dr/android-sdk-linux/tools/ant/build.xml:679: The following error occurred while executing this line:
/home/dr/android-sdk-linux/tools/ant/build.xml:692: Compile failed; see the compiler error output for details.

Total time: 10 seconds
make: *** [vlc-android/bin/VLC-debug.apk] Error 1
rm android-libs/libmedia.c android-libs/libutils.c android-libs/libstagefright.c android-libs/libbinder.c





JELLY_BEAN是4.1的sdk版本,我需要先更新一下sdk,然后继续。之前他说sdk要最新的,没想到是真的,Fuck!



也要注意的是ndk的版本是要求r8的,一开始的说明要仔细看呢。



更新了sdk应该可以了,可是仍不行,后来我才想起来是我修改了工程的配置文件:project.properties



把里面的target=android-16修改成了14,Fuck,我干了蠢事啊。



那么改回来继续编译:



哈哈,编译成功了:



log如下:



Shell代码


-package:
[apkbuilder] Current build type is different than previous build: forced apkbuilder run.
[apkbuilder] Creating VLC-debug-unaligned.apk and signing it with a debug key...

-post-package:

-do-debug:
[zipalign] Running zip align on final apk...
[echo] Debug Package: /home/dr/vlc_android/android/vlc-android/bin/VLC-debug.apk
[propertyfile] Creating new property file: /home/dr/vlc_android/android/vlc-android/bin/build.prop
[propertyfile] Updating property file: /home/dr/vlc_android/android/vlc-android/bin/build.prop
[propertyfile] Updating property file: /home/dr/vlc_android/android/vlc-android/bin/build.prop
[propertyfile] Updating property file: /home/dr/vlc_android/android/vlc-android/bin/build.prop

-post-build:

debug:

BUILD SUCCESSFUL
Total time: 17 seconds
rm android-libs/libmedia.c android-libs/libutils.c android-libs/libstagefright.c android-libs/libbinder.c




3.虽然res下面还有红叉,但是apk已经编译出来了,就在bin下面,看来eclipse没起作用。只是用来看代码的吧。



那么该研究研究vlc for android了,这可是好东西啊。以后还要集成DRM呢。

电视和视频App

[b]Hulu:[/b]一个能满足所有您最喜爱的电视节目的App。
Cartoon Network Anything:这是卡通网络应用程序,专为智能手机简短形式的内容所设计。
Comedy Central:能够满足南方公园和每日秀。
Disney Movies Anywhere:它可以让你随时随地观看所有的迪士尼电影。
DramaFever流媒体服务,让你看韩国,日本,台湾,西班牙和拉丁美洲的电视节目,并且配有专业的英文字幕。
5by又称,“朋友发现、分享、聊聊他们最喜爱的视频的‘胜地’”。
DailyMotion:YouTube强劲的竞争对手之一。
Samba一个非常时髦的视频共享app,可以让你看到你的朋友观看你的视频时的反应。
Video Collage Maker,正如标题所展示的,让你把所有你喜欢的视频拼贴起来。

照片编辑App

Over一款照片编辑 App,你可以为图片添加文字和插图。价格:1.99美元。
Timehop:漂亮的应用程序,从您所有的社交账号中收集照片,并且将照片按照时间排序。这样你就可以准确地找到你在某一天的照片。
Afterlight照片编辑应用程序,提供了一个令人难以置信的59种不同的过滤器和15个不同的调整工具。价格:0.99美元。
Carousel以下拉框的形式组织你上传的照片和视频。
Facetune照片编辑应用程序,专为让你的自拍照更漂亮而打造。价格:2.99美元。
Camera ZOOM FX相机应用程序,能够在Android手机上***出iOS 8风格的时间推移视频。
EyeEm另一个Instagram风格的照片编辑 App。
Frontback一个能让你“一个用前置摄像头拍照,另一个用后置摄像头拍照,并在一张照片上同时分享”的摄像
App。

音乐应用程序

Shazam流行歌曲识别程序。
Pandora广播式的在线音乐流媒体之王。
iHeartRadio高清晰度频道的在线广播流媒体
App。
SoundHoundShazam 音乐风格识别应用程序。
musiXmatch一个应用程序,能显示播放歌曲的歌词,是卡拉 OK 迷的最爱。
edjing有超过5千万个轨道的 DJ 程序。
TuneIn Radio这使您能够访问10万多个不同的电台。
djay2它集成了 Spotify 和“将 Android 设备完美打造成特色 DJ 系统”的App,价值2.99美元。
Equalizer数字音乐播放软件,音乐发烧友都会爱。

社交App

OKCupid Dating一个最好的婚介服务App。
Skype Qik以最快的方法做Skype视频与您的朋友聊天。
Obscure照片共享应用程序,可以让你收回你后悔发送给朋友的任何照片。
lettrs消息传递App,带给你从朋友那里收发正式信件的快感,并使用自己的个性签名。
Rundavoo一个与您的朋友制定计划的一流App。
Bitmoji因为你永远不会在你的生活中有太多的表情符号。
Secret臭名昭著的迟钝的应用程序,可以让你完全匿名。
LINK一个社会网络,非常适合刚刚搬到新的地方,想让朋友分享类似活动的人。
TelegramWhatsApp的竞争对手,致力于”快速和安全”。

旅游和交通

Expedia Hotels and Flights您所需要的最重要的旅游预订信息。
Windfinder水手的最爱,跟踪天气报告和从成千上万的资源进行预测,以确保你永远不会停滞不前了。
MAPS.ME一个获取地图的好方式,当你没有移动数据流量或Wi-Fi的时候。
Uber一款叫车应用程序,但同时又是方便的和具有争议的的App。
AnywayanydayExpedia风格的旅行预订程序。
Golfshot一个疯狂的精准的高尔夫球场GPS应用程序,具有“天桥每个孔的三维显示,精确的码数以及全球4万多个高尔夫球场的数据”。
Amazing World Atlas孤独星球的移动应用程序,价格:2.99美元。

生产力和专业知识

Wunderlist一个流行的任务管理应用程序。
IFTT生产力应用程序,让你更轻松地管理你最喜欢的相互关联的 Android 应用程序。
SwitftKey最好的第三方触摸屏智能手机键盘之一。
Sunrise Calendar一个设计精美的日历应用程序。
(OFFTIME)一个有助于让社会媒体的工作狂摆脱手机长时间的干扰并得到简单的放松的App。
Todoist备受赞誉的任务管理应用程序。
Strive一个基于位置的为找临时工作的应用程序。
ViadeoLinkedIn 的对手,让你和“世界各地6千万专业人士”联系起来。
SlideShare PresentationsLinkedIn 创建应用程序来帮助你培养世界上最优秀的演讲。
Mailbox集成了 iCloud Dropbox 和 Gmail 的邮件解决方案。

新闻应用程序

Yahoo News Digest让你快速的了解你所关注的新闻。
Locket Lock Screen一个在你屏幕锁定时也能看到新闻头条和社交帖子的应用程序。
BuzzFeed适用于需要猫的图片F和“我是谁?“的人,他们生活中的小测验。
Link Bubble Browser一个智能的浏览器,只会跟你显示加载好的网页,所以你不必浪费宝贵的时间看一个空白的屏幕。
The Economist Espresso适合于喜欢学习关于为什么尼日利亚是在一个十字路口的人,还有全球其他的事件。
CNN Breaking News所以你永远不会错过一分钟的双曲埃博拉覆盖。
OneFootball足球球迷们真正唯一需要的应用程序。
NYTimes – Breaking News纽约时报–突发新闻,所有值得印刷的新闻。
Watchup新闻视频的应用程序,称自己是“最聪明的方式来观看视频新闻因为它建立您的个性化的地方新闻,国家和国际新闻频道”。
Univision Deportes从来没有错过一个goal。

教育软件

TEDTED官方的 Android 应用程序。
Luminosity一个有助于体改记忆力的 App。
Duolingo Test Center帮助那些想要学好英语的外国人。
Craftsy Classes适合任何热爱工艺项目的人。
Nester新父母想要一个适合孩子的程序,会教给孩子学习和玩耍的价值。
Ultimate Guitar Tabs and Chords有抱负的音乐家都应拥有的
App。价格:1.99美元。
Monki Chinese Class学习汉语的很好的途径。

购物和金融应用程序

Wish个人购物助理,可以帮助您节省大量的现金。
Groupon日常交易最好的地方。
Money Tracker从 billguard 获取信息的个人财务应用程序。

健身应用程序

7 Minute Workout健身应用程序,也就是你认为的那样。
Google Fit谷歌自己的内部健身应用程序。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: