Android全格式播放器开发(第四节sdl android编译)

第四节sdl android编译


作者:xdongp@gmail.com

博客:http://www.weibo.com/xdpan

工程地址:http://code.google.com/p/kudou-player/

----------------------------------------------

 

由于支持android平台的SDL版本必须是SDL-1.3以上,而且SDL-2.0改动比较大,所以先选用SDL-1.3作为播放器音视频输出使用。

 

下载SDL-1.3

cd  /home/xdpan/work/

axel  -n4 http://www.libsdl.org/tmp/SDL-1.3.tar.gz

tar  -xvf SDL-1.3.tar.gz

cd  SDL-1.3.0-6248

 

按照README.android的指引,如下操作:

cdandroid-project/jni/ && mkdir SDL

cp ../../src/SDL/ -R &&   cp ../../include/SDL/ -R &&  cp ../../Android.mkSDL/ 

 

 vim src/Android.mk 将 YourSourceHere.c 改成main.c

在src在建立main.c内容如下:

#include"SDL.h"

 

int main(intargc, char* argv[])

{

        SDL_Window* window;

        SDL_Renderer* renderer;

 

        // Initialize SDL.

        if (SDL_Init(SDL_INIT_VIDEO) < 0)

                return 1;

 

        // Create the window where we willdraw.

        window =SDL_CreateWindow("SDL_RenderClear",

                        SDL_WINDOWPOS_CENTERED,SDL_WINDOWPOS_CENTERED,

                        512, 512,

                        SDL_WINDOW_SHOWN);

 

        // We must call SDL_CreateRenderer inorder for draw calls to affect this window.

        renderer = SDL_CreateRenderer(window,-1, 0);

 

        // Select the color for drawing. It isset to red here.

        SDL_SetRenderDrawColor(renderer, 255,0, 0, 255);

 

        // Clear the entire screen to ourselected color.

        SDL_RenderClear(renderer);

 

        // Up until now everything was drawnbehind the scenes.

        // This will show the new, red contentsof the window.

        SDL_RenderPresent(renderer);

 

        // Give us time to see the window.

        SDL_Delay(5000);

 

        // Always be sure to clean up

        SDL_Quit();

        return 0;

}

ndk-build -j4

编译完成以后,创建eclipse工程启动,看到红色activity及成功。

 

错误解决:

如果编译时出现:

/home/xdpan/ndkr8/build/gmsl/__gmsl:512:*** non-numeric second argument to `wordlist' function: ''.  Stop.

需要在AndroidManifest.xml添加

<uses-sdkandroid:minSdkVersion="3" />

如下红色所示:

<?xmlversion="1.0" encoding="utf-8"?>

<manifestxmlns:android="http://schemas.android.com/apk/res/android"

      package="org.libsdl.app"

      android:versionCode="1"

      android:versionName="1.0">

    <uses-sdkandroid:minSdkVersion="3" />

    <applicationandroid:label="@string/app_name"

                   android:icon="@drawable/icon">

        <activityandroid:name=".SDLActivity"

                 android:label="@string/app_name">

            <intent-filter>

                <actionandroid:name="android.intent.action.MAIN" />

                <categoryandroid:name="android.intent.category.LAUNCHER" />

            </intent-filter>

        </activity>

    </application>

</manifest>

 

 

 

源工程件如下(或者在虚拟机对应目录中提取):

SDLTest.zip

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值