gstreamer-android Digest, Vol 14, Issue 1

Stefan Sauer ensonic at hora-obscura.de
Fri Aug 3 09:21:52 PDT 2012


On 08/03/2012 10:53 AM, Anees Alappat wrote:
> Hi,
>
> I tried to play mpeg/mp4 files as an Application using eclipse
> environment by loading some of the libraries from Gstreamer. The main
> limitation is that it requires both audio sink(audioflinger.so) and
> video sink(surfaceflinger.so) to play the files and display it on the
> screen, When we tested it on the phone. we are able to hear mp4 audio
> perfectly but video is not displayed on screen. This is due to a
> permission error on video sink - surfaceflingersink.
> 08-01 16:11:31.335: W/ServiceManager(1542): Permission failure:
> android.permission.ACCESS_SURFACE_FLINGER from uid=10076 pid=15466
> 08-01 16:11:31.335: E/SurfaceFlinger(1542): Permission Denial: can't
> access SurfaceFlinger pid=15466, uid=10076
>
surfaceflinger can only be used when bilding a system image. In the ndk
version, one cannot easily access surfaceflinger (in gingerbread). Not
sure if this has been relaxed in newer versions.

Stefan

> How to resolve this permission error?
>
> Regards
> Anees
>
> On Tue, Jul 3, 2012 at 7:23 PM, Anees Alappat <aneesalappatt at gmail.com
> <mailto:aneesalappatt at gmail.com>> wrote:
>
>     Thanks for your help.
>
>     We tried to write a script and used  setenv to set the PATH for
>     environment variable but it is not working.
>     We tried to call setenv inside gst-launch.c  and also inside the
>     script file to set the PATH for the environment variables but it
>     did not work.
>     From the JNI layer from the native code from we tried to call the
>     main function of the gst-launch.c passing the command line
>     arguments for gst-launch command as string variables. Before
>     calling the main function we have set all the environment
>     variables using setenv.But still this option also didn't work.
>
>     This is the code snippet for the caling the gst-launc main
>     function inside JNI layer
>
>     JNIEXPORT void JNICALL Java_uk_co_videokit_gstreamer_
>
>         Gstreamer_run(JNIEnv *env, jobject obj, jobjectArray args)
>         {
>                 LOGD("run() called");
>                 int i = 0;
>                 int argc = 0;
>                 char **argv = NULL;
>                 setenv ("GST_REGISTRY",
>         "/data/data/videokit.gstream/cache/registry.bin", 1);
>                 setenv ("GST_PLUGIN_PATH",
>         "/data/data/videokit.gstream/lib", 1);
>                 setenv ("LD_LIBRARY_PATH",
>         "/data/data/videokit.gstream/lib",1);
>                 setenv ("PATH", "/data/data/videokit.gstream/bin",1);
>                 setenv
>         ("GST_PLUGIN_SCANNER","/data/data/videokit.gstream/bin/gst-plugin-scanner",1);
>                 setenv
>         ("GST_OMX_CONFIG_DIR","/data/data/videokit.gstream/conf",1);
>
>                 if (args != NULL) {
>                         argc = (*env)->GetArrayLength(env, args);
>                         argv = (char **) malloc(sizeof(char *) * argc);
>
>                         for(i=0;i<argc;i++)
>                         {
>                                 jstring str =
>         (jstring)(*env)->GetObjectArrayElement(env, args, i);
>                                 argv[i] = (char
>         *)(*env)->GetStringUTFChars(env, str, NULL);
>                                           }
>                 }
>
>                 LOGD("run passing off to main()");
>         main(argc,argv);
>         }
>
>
>
>         Regards
>         Anees
>
>
>
>     On Tue, Jul 3, 2012 at 7:13 PM, Anees Alappat
>     <aneesalappatt at gmail.com <mailto:aneesalappatt at gmail.com>> wrote:
>
>         Thanks for your help.
>
>         We tried to write a script and used  setenv to set the PATH
>         for environment variable but it is not working.
>         We tried to call setenv inside gst-launch.c  and also inside
>         the script file to set the PATH for the environment variables
>         but it did not work.
>         From the JNI layer from the native code from we tried to call
>         the main function of the gst-launch.c passing the command line
>         arguments for gst-launch command as string variables. Before
>         calling the main function we have set all the environment
>         variables using setenv.But still this option also didn't work.
>
>         This is the code snippet for the caling the gst-launc main
>         function inside JNI layer
>
>         JNIEXPORT void JNICALL
>         Java_uk_co_videokit_gstreamer_Gstreamer_run(JNIEnv *env,
>         jobject obj, jobjectArray args)
>         {
>                 LOGD("run() called");
>                 int i = 0;
>                 int argc = 0;
>                 char **argv = NULL;
>                 setenv ("GST_REGISTRY",
>         "/data/data/videokit.gstream/cache/registry.bin", 1);
>                 setenv ("GST_PLUGIN_PATH",
>         "/data/data/videokit.gstream/lib", 1);
>                 setenv ("LD_LIBRARY_PATH",
>         "/data/data/videokit.gstream/lib",1);
>                 setenv ("PATH", "/data/data/videokit.gstream/bin",1);
>                 setenv
>         ("GST_PLUGIN_SCANNER","/data/data/videokit.gstream/bin/gst-plugin-scanner",1);
>                 setenv
>         ("GST_OMX_CONFIG_DIR","/data/data/videokit.gstream/conf",1);
>
>                 if (args != NULL) {
>                         argc = (*env)->GetArrayLength(env, args);
>                         argv = (char **) malloc(sizeof(char *) * argc);
>
>                         for(i=0;i<argc;i++)
>                         {
>                                 jstring str =
>         (jstring)(*env)->GetObjectArrayElement(env, args, i);
>                                 argv[i] = (char
>         *)(*env)->GetStringUTFChars(env, str, NULL);
>                                           }
>                 }
>
>                 LOGD("run passing off to main()");
>         main(argc,argv);
>         }
>
>
>
>         Regards
>         Anees
>
>
>         On Tue, Jul 3, 2012 at 10:11 AM, Anees Alappat
>         <aneesalappatt at gmail.com <mailto:aneesalappatt at gmail.com>> wrote:
>
>
>
>             ---------- Forwarded message ----------
>             From: <gstreamer-android-request at lists.freedesktop.org
>             <mailto:gstreamer-android-request at lists.freedesktop.org>>
>             Date: Tue, Jul 3, 2012 at 12:30 AM
>             Subject: gstreamer-android Digest, Vol 14, Issue 1
>             To: gstreamer-android at lists.freedesktop.org
>             <mailto:gstreamer-android at lists.freedesktop.org>
>
>
>             Send gstreamer-android mailing list submissions to
>                     gstreamer-android at lists.freedesktop.org
>             <mailto:gstreamer-android at lists.freedesktop.org>
>
>             To subscribe or unsubscribe via the World Wide Web, visit
>                    
>             http://lists.freedesktop.org/mailman/listinfo/gstreamer-android
>             or, via email, send a message with subject or body 'help' to
>                     gstreamer-android-request at lists.freedesktop.org
>             <mailto:gstreamer-android-request at lists.freedesktop.org>
>
>             You can reach the person managing the list at
>                     gstreamer-android-owner at lists.freedesktop.org
>             <mailto:gstreamer-android-owner at lists.freedesktop.org>
>
>             When replying, please edit your Subject line so it is more
>             specific
>             than "Re: Contents of gstreamer-android digest..."
>
>
>             Today's Topics:
>
>                1. gstreamer running on Android app? (Anees Alappat)
>                2. Re: gstreamer running on Android app? (Enrique Oca?a
>             Gonz?lez)
>
>
>             ----------------------------------------------------------------------
>
>             Message: 1
>             Date: Mon, 2 Jul 2012 17:42:15 +0530
>             From: Anees Alappat <aneesalappatt at gmail.com
>             <mailto:aneesalappatt at gmail.com>>
>             To: gstreamer-android at lists.freedesktop.org
>             <mailto:gstreamer-android at lists.freedesktop.org>
>             Subject: gstreamer running on Android app?
>             Message-ID:
>                    
>             <CAJYLsdkBszkZzyCPuWuQtO0GMtG4oQGj8u+GggOh3gpuVz_gig at mail.gmail.com
>             <mailto:CAJYLsdkBszkZzyCPuWuQtO0GMtG4oQGj8u%2BGggOh3gpuVz_gig at mail.gmail.com>>
>             Content-Type: text/plain; charset="iso-8859-1"
>
>             Hi,
>             We could succesfully port Gstreamer framework to Android
>             going through the
>             link
>             http://gstreamer.freedesktop.org/wiki/GstreamerAndroid_InstallInstructions
>
>             Through adb shell, we could run gstreamer commands to view
>             mp4 files as
>             well as mpegts files using gst-launch command. To view the
>             video/ausio, we
>             used audioflingersink as well as surfaceflingersink.
>             For this purpose, all the gstreamer related environment
>             variables have to
>             be exported manually through the adb shell.
>             We would like to run the gst-launch as an application in
>             the Android phone
>             without exporting the variables using adb shell. Is there
>             any method for
>             this?
>
>             I am exporting the following below mentioned environment
>             variables in the
>             adb shell.
>
>             export
>             LD_LIBRARY_PATH=/data/data/com.android.freedesktop.gstreamer/lib/
>
>             export
>             PATH=/data/data/com.android.freedesktop.gstreamer/bin:$PATH
>
>             export
>             GST_PLUGIN_PATH=/data/data/com.android.freedesktop.gstreamer/lib/
>
>             export
>             GST_PLUGIN_SCANNER=/data/data/com.android.freedesktop.gstreamer/bin/gst-plugin-scanner
>
>             export
>             GST_OMX_CONFIG_DIR=/data/data/com.android.freedesktop.gstreamer/conf/
>
>             export GST_REGISTRY_REUSE_PLUGIN_SCANNER=no
>
>             Thanks & Regards
>             Anees
>             -------------- next part --------------
>             An HTML attachment was scrubbed...
>             URL:
>             <http://lists.freedesktop.org/archives/gstreamer-android/attachments/20120702/24f4c169/attachment-0001.html>
>
>             ------------------------------
>
>             Message: 2
>             Date: Mon, 2 Jul 2012 15:53:00 +0200
>             From: Enrique Oca?a Gonz?lez <eocanha at igalia.com
>             <mailto:eocanha at igalia.com>>
>             To: gstreamer-android at lists.freedesktop.org
>             <mailto:gstreamer-android at lists.freedesktop.org>
>             Subject: Re: gstreamer running on Android app?
>             Message-ID: <201207021553.00470.eocanha at igalia.com
>             <mailto:201207021553.00470.eocanha at igalia.com>>
>             Content-Type: Text/Plain;  charset="iso-8859-15"
>
>             On Lunes, 2 de Julio de 2012 14:12:15 Anees Alappat escribi?:
>
>             > For this purpose, all the gstreamer related environment
>             variables have to
>             > be exported manually through the adb shell.
>             > We would like to run the gst-launch as an application in
>             the Android phone
>             > without exporting the variables using adb shell. Is
>             there any method for
>             > this?
>
>             Maybe some of these suggestions could be useful to you:
>
>             - Writing a wrapper in shell script (eg: gst-launch.sh)
>             that does the variable
>             exports before calling the actual gst-launch executable.
>             Execute the script
>             invoking /system/bin/sh <script-name>.
>             - Writing a wrapper C program that does the variable
>             exports using setenv()
>             and then exec() the actual executable.
>             - Modify the gst-launch sources to add the setenv()s there.
>
>             Cheers.
>
>             --
>             Enrique Oca?a
>
>
>             ------------------------------
>
>             _______________________________________________
>             gstreamer-android mailing list
>             gstreamer-android at lists.freedesktop.org
>             <mailto:gstreamer-android at lists.freedesktop.org>
>             http://lists.freedesktop.org/mailman/listinfo/gstreamer-android
>
>
>             End of gstreamer-android Digest, Vol 14, Issue 1
>             ************************************************
>
>
>
>
>
>
> _______________________________________________
> gstreamer-android mailing list
> gstreamer-android at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-android

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-android/attachments/20120803/a1b70173/attachment-0001.html>


More information about the gstreamer-android mailing list