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