在android studio下用gstreamer sdk构建多媒体应用


android studio版本: android stuodio 1.5.1 gradle的版本使用1.5.0 gstreamer在android的例子:Android tutorial 3: Video, 链接:http://docs.gstreamer.com/display/GstSDK/Android+tutorial+3%3A+Video 在android studiao下编译通过
资源截图
代码片段和文件信息
package org.freedesktop.gstreamer;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

import android.content.Context;
import android.content.res.AssetManager;

public class GStreamer {
    private static native void nativeInit(Context context) throws Exception;

    public static void init(Context context) throws Exception {
        nativeInit(context);
        copyFonts(context);
        copyCaCertificates(context);
    }

    private static void copyFonts(Context context) {
        AssetManager assetManager = context.getAssets();
        File filesDir = context.getFilesDir();
        File fontsFCDir = new File (filesDir “fontconfig“);
        File fontsDir = new File (fontsFCDir “fonts“);
        File fontsCfg = new File (fontsFCDir “fonts.conf“);

        fontsDir.mkdirs();

        try {
            /* Copy the config file */
            copyFile (assetManager “fontconfig/fonts.conf“ fontsCfg);
            /* Copy the fonts */
            for(String filename : assetManager.list(“fontconfig/fonts“)) {
                File font = new File(fontsDir filename);
                copyFile (assetManager “fontconfig/fonts/“ + filename font);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    private static void copyCaCertificates(Context context) {
        AssetManager assetManager = context.getAssets();
        File filesDir = context.getFilesDir();
        File sslDir = new File (filesDir “ssl“);
        File certsDir = new File (sslDir “certs“);
        File certs = new File (certsDir “ca-certificates.crt“);

        certsDir.mkdirs();

        try {
            /* Copy the certificates file */
            copyFile (assetManager “ssl/certs/ca-certificates.crt“ certs);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    private static void copyFile(AssetManager assetManager String assetPath File outFile) throws IOException {
        InputStream in;
        OutputStream out;
        byte[] buffer = new byte[1024];
        int read;

        if (outFile.exists())
            outFile.delete();

        in = assetManager.open(assetPath);
        out = new FileOutputStream (outFile);
        while((read = in.read(buffer)) != -1){
          out.write(buffer 0 read);
        }
        in.close();
        out.flush();
        out.close();
   }
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件         30  2015-10-25 14:18  gst-player-masterandroid.gradle2.2.1 askArtifactscache.properties

     文件         17  2015-10-25 17:54  gst-player-masterandroid.gradle2.2.1 askArtifactscache.properties.lock

     文件      90801  2015-10-25 17:54  gst-player-masterandroid.gradle2.2.1 askArtifactsfileHashes.bin

     文件    1047678  2015-10-25 17:54  gst-player-masterandroid.gradle2.2.1 askArtifactsfileSnapshots.bin

     文件      19682  2015-10-25 17:53  gst-player-masterandroid.gradle2.2.1 askArtifactsoutputFileStates.bin

     文件      62485  2015-10-25 17:54  gst-player-masterandroid.gradle2.2.1 askArtifacts askArtifacts.bin

     文件         31  2016-06-10 18:56  gst-player-masterandroid.gradle2.8 askArtifactscache.properties

     文件         17  2016-06-11 11:15  gst-player-masterandroid.gradle2.8 askArtifactscache.properties.lock

     文件     149746  2016-06-10 20:32  gst-player-masterandroid.gradle2.8 askArtifactsfileHashes.bin

     文件     659170  2016-06-10 20:32  gst-player-masterandroid.gradle2.8 askArtifactsfileSnapshots.bin

     文件      19982  2016-06-10 20:27  gst-player-masterandroid.gradle2.8 askArtifactsoutputFileStates.bin

     文件      54765  2016-06-10 20:32  gst-player-masterandroid.gradle2.8 askArtifacts askArtifacts.bin

     文件          7  2016-06-11 11:15  gst-player-masterandroid.idea.name

     文件        686  2016-06-11 11:15  gst-player-masterandroid.ideacompiler.xml

     文件         76  2016-06-11 11:15  gst-player-masterandroid.ideacopyrightprofiles_settings.xml

     文件         94  2016-06-11 11:18  gst-player-masterandroid.ideadictionariesAdministrator.xml

     文件        200  2016-06-11 11:15  gst-player-masterandroid.ideaencodings.xml

     文件        701  2016-06-11 11:15  gst-player-masterandroid.ideagradle.xml

     文件        786  2016-06-11 11:17  gst-player-masterandroid.idealibrariesappcompat_v7_23_1_1.xml

     文件        804  2016-06-11 11:17  gst-player-masterandroid.idealibraries
ecyclerview_v7_23_1_1.xml

     文件        545  2016-06-11 11:17  gst-player-masterandroid.idealibrariessupport_annotations_23_1_1.xml

     文件        928  2016-06-11 11:17  gst-player-masterandroid.idealibrariessupport_v4_23_1_1.xml

     文件       2834  2016-06-11 11:18  gst-player-masterandroid.ideamisc.xml

     文件        351  2016-06-11 11:17  gst-player-masterandroid.ideamodules.xml

     文件        564  2016-06-11 11:17  gst-player-masterandroid.idea
unConfigurations.xml

     文件        164  2016-06-11 11:15  gst-player-masterandroid.ideavcs.xml

     文件     135362  2016-06-11 12:48  gst-player-masterandroid.ideaworkspace.xml

     文件        938  2016-06-11 11:17  gst-player-masterandroidandroid.iml

     文件       7187  2016-06-11 11:17  gst-player-masterandroidappapp.iml

     文件        774  2016-06-10 20:25  gst-player-masterandroidappuild.gradle

............此处省略104个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)