GStreamer on Android with ALSA support?

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

GStreamer on Android with ALSA support?

saepia

Hello,

I need to run GStreamer on Android but with ALSA support which is not present in the standard builds. Where can I find any instructions how to make custom build for Android? I struggle to do this by myself.

Context is that I am using rooted device that properly detects the second USB sound card but opensles element has no support for choosing the device.

Thank you in advance

Marcin


_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: GStreamer on Android with ALSA support?

Nicolas Dufresne-3
Le samedi 28 novembre 2015 à 11:38 +0100, [hidden email] a écrit :
> I need to run GStreamer on Android but with ALSA support which is not
> present in the standard builds. Where can I find any instructions how
> to make custom build for Android? I struggle to do this by myself.

You can clone the build environment we use, it's this repository:

git clone git://anongit.freedesktop.org/gstreamer/cerbero

There is a README for instructions. Don't forget the bootstrap step.

cheers,
Nicolas
_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (188 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: GStreamer on Android with ALSA support?

saepia

Thank you!

M.

28 lis 2015 4:01 PM "Nicolas Dufresne" <[hidden email]> napisał(a):
Le samedi 28 novembre 2015 à 11:38 +0100, [hidden email] a écrit :
> I need to run GStreamer on Android but with ALSA support which is not
> present in the standard builds. Where can I find any instructions how
> to make custom build for Android? I struggle to do this by myself.

You can clone the build environment we use, it's this repository:

git clone git://anongit.freedesktop.org/gstreamer/cerbero

There is a README for instructions. Don't forget the bootstrap step.

cheers,
Nicolas
_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: GStreamer on Android with ALSA support?

saepia
In reply to this post by Nicolas Dufresne-3
Hello,

I am running into issues I am unable to resolve by myself and I would appreciate some guidance.

I've cloned cerbero from the repo, and checked out tag 1.6.1. I am using ubuntu 14.04. I've done the following:

1. Added variants = ['alsa'] to config/cross-android.cbc
2. Typed ./cerbero-uninstalled -c config/cross-android.cbc show-config to ensure that alsa is enabled
3. Run ./cerbero-uninstalled -c config/cross-android.cbc bootstrap
4. Run ./cerbero-uninstalled -c config/cross-android.cbc package gstreamer-1.0

and apparently the lib file is not generated. What am I doing wrong?

Thanks,

Marcin

***** Error running 'build' command:
Recipe 'gst-plugins-base-1.0-static' failed at the build step 'post_install'
Traceback (most recent call last):
  File "./cerbero/build/oven.py", line 143, in _cook_recipe
    stepfunc()
  File "/home/marcin/aktivitis/radiokit/cerbero/recipes/custom.py", line 91, in post_install
    shutil.copyfile(src, dest)
  File "/usr/lib/python2.7/shutil.py", line 82, in copyfile
    with open(src, 'rb') as fsrc:
IOError: [Errno 2] No such file or directory: '/home/marcin/cerbero/sources/android_arm/gst-plugins-base-1.0-static-1.6/static-build/home/marcin/cerbero/dist/android_arm/lib/gstreamer-1.0/libgstalsa.a'



2015-11-28 16:01 GMT+01:00 Nicolas Dufresne <[hidden email]>:
Le samedi 28 novembre 2015 à 11:38 +0100, [hidden email] a écrit :
> I need to run GStreamer on Android but with ALSA support which is not
> present in the standard builds. Where can I find any instructions how
> to make custom build for Android? I struggle to do this by myself.

You can clone the build environment we use, it's this repository:

git clone git://anongit.freedesktop.org/gstreamer/cerbero

There is a README for instructions. Don't forget the bootstrap step.

cheers,
Nicolas
_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: GStreamer on Android with ALSA support?

Sebastian Dröge-3
On Mo, 2015-11-30 at 19:06 +0100, [hidden email] wrote:

> Hello,
>
> I am running into issues I am unable to resolve by myself and I would
> appreciate some guidance.
>
> I've cloned cerbero from the repo, and checked out tag 1.6.1. I am
> using ubuntu 14.04. I've done the following:
>
> 1. Added variants = ['alsa'] to config/cross-android.cbc
> 2. Typed ./cerbero-uninstalled -c config/cross-android.cbc show-
> config to ensure that alsa is enabled
> 3. Run ./cerbero-uninstalled -c config/cross-android.cbc bootstrap
> 4. Run ./cerbero-uninstalled -c config/cross-android.cbc package
> gstreamer-1.0
>
> and apparently the lib file is not generated. What am I doing wrong?
ALSA is not public API on Android, and as such not included in the NDK.
configure of gst-plugins-base won't find it and won't build the ALSA
plugin as a result.

You will have to provide the library and headers for it yourself so
that it can be built.

Best regards,
--
Sebastian Dröge, Centricular Ltd · http://www.centricular.com


_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (968 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: GStreamer on Android with ALSA support?

Sebastian Dröge-3
On Di, 2015-12-01 at 10:21 +0200, Sebastian Dröge wrote:

> On Mo, 2015-11-30 at 19:06 +0100, [hidden email] wrote:
> > Hello,
> >
> > I am running into issues I am unable to resolve by myself and I
> > would
> > appreciate some guidance.
> >
> > I've cloned cerbero from the repo, and checked out tag 1.6.1. I am
> > using ubuntu 14.04. I've done the following:
> >
> > 1. Added variants = ['alsa'] to config/cross-android.cbc
> > 2. Typed ./cerbero-uninstalled -c config/cross-android.cbc show-
> > config to ensure that alsa is enabled
> > 3. Run ./cerbero-uninstalled -c config/cross-android.cbc bootstrap
> > 4. Run ./cerbero-uninstalled -c config/cross-android.cbc package
> > gstreamer-1.0
> >
> > and apparently the lib file is not generated. What am I doing
> > wrong?
>
> ALSA is not public API on Android, and as such not included in the
> NDK.
> configure of gst-plugins-base won't find it and won't build the ALSA
> plugin as a result.
>
> You will have to provide the library and headers for it yourself so
> that it can be built.
Also on Android often tinyalsa is used instead of libasound. The
GStreamer ALSA plugin currently does not support tinyalsa, but it
should be possible to make it work with both with some relatively
minimal effort.

--
Sebastian Dröge, Centricular Ltd · http://www.centricular.com


_______________________________________________
gstreamer-devel mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (968 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: GStreamer on Android with ALSA support?

Alfred
In reply to this post by Sebastian Dröge-3
Hi,

I am also trying to do the same. For building the gstalsa library, do I need to use NDK toolchain? Or can I use the library built for Linux?

Regards,
Alfred
Reply | Threaded
Open this post in threaded view
|

Re: GStreamer on Android with ALSA support?

Arun Raghavan-4
On Sat, 30 Jul 2016, at 08:26 PM, Alfred wrote:
> Hi,
>
> I am also trying to do the same. For building the gstalsa library, do I
> need
> to use NDK toolchain? Or can I use the library built for Linux?

You'll need a version of alsa-lib (maybe salsa-lib will also work) built
for your device.

Do note that unless you're running as root on some specific device where
you control everything, accessing the ALSA device directly is likely not
a good approach.

-- Arun
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel