[meta-freescale] [meta-fsl-arm][PATCH 1/5] libfslcodec: Upgrade to v4.0.9

Carlos Rafael Giani dv at pseudoterminal.org
Wed Apr 6 01:43:55 PDT 2016


Well, users do need to know the SONAME if they are loaded with dlopen() 
(and this is how their documentations suggest it should be done.)
See the beepdec registry in imx-gst1.0-plugin for an example. Also, the 
configure.ac in imx-gst1.0-plugin runs objdump on the plugins to get the 
SONAME.
I do not see how just linking to uniaudio codecs could work. The way 
their API is designed requires you to explicitely query for a 
"UniACodecQueryInterface" symbol via dlsym().

Carlos

On 2016-04-06 10:36, Yuqing Zhu wrote:
> Hi Carlos,
>
>        Thanks for your feedback.
>         But it's not reasonable to add this file to imx-codec, it's gstreamer plugin specific file, imx-codec is a codec general package.
>         User doesn't need to know SONAME, they just link the lib_codec.so in the makefile.
>
>
>
> B.R.
> Yuqing Zhu
>
> -----Original Message-----
> From: meta-freescale-bounces at yoctoproject.org [mailto:meta-freescale-bounces at yoctoproject.org] On Behalf Of Carlos Rafael Giani
> Sent: Thursday, March 31, 2016 11:14 PM
> To: meta-freescale at yoctoproject.org
> Subject: Re: [meta-freescale] [meta-fsl-arm][PATCH 1/5] libfslcodec: Upgrade to v4.0.9
>
> I have a suggestion for this recipe.
>
> The uniaudio codecs require knowledge about the SONAME of the plugin.
> Without this SONAME, accessing these plugins is not possible. For this reason, imx-gst1.0-plugin installs a file in /etc/ that contains a list of these plugins.
> (gstreamer-imx scans for plugins and extracts the SONAME at build time
> instead.)
>
> It would make more sense to add such a file to the libfslcodec package.
> This list would contain a list of each uniaudio plugin along with its SONAME. This way, other packages such as imx-gst1.0-plugin and gstreamer-imx do not have to scan the plugins on their own for the SONAME - they can just rely on this list file to exist in the rootfs.
>
>
> On 03/31/2016 11:37 AM, Yuqing Zhu wrote:
>> --Change the recipe name from "libfslcodec" to "imx-codec"
>>
>> --[aac_dec] refine the code for pure c build
>>     aac decoder c build need float point support, which use some
>>     float point function.
>>
>> Signed-off-by: Yuqing Zhu <carol.zhu at nxp.com>
>> ---
>>    .../{libfslcodec/libfslcodec.inc => imx-codec/imx-codec.inc}   | 10 +++++-----
>>    recipes-multimedia/imx-codec/imx-codec_4.0.9.bb                | 10 ++++++++++
>>    recipes-multimedia/libfslcodec/libfslcodec_4.0.8.bb            |  9 ---------
>>    3 files changed, 15 insertions(+), 14 deletions(-)
>>    rename recipes-multimedia/{libfslcodec/libfslcodec.inc => imx-codec/imx-codec.inc} (91%)
>>    create mode 100644 recipes-multimedia/imx-codec/imx-codec_4.0.9.bb
>>    delete mode 100644
>> recipes-multimedia/libfslcodec/libfslcodec_4.0.8.bb
>>
>> diff --git a/recipes-multimedia/libfslcodec/libfslcodec.inc
>> b/recipes-multimedia/imx-codec/imx-codec.inc
>> similarity index 91%
>> rename from recipes-multimedia/libfslcodec/libfslcodec.inc
>> rename to recipes-multimedia/imx-codec/imx-codec.inc
>> index 2f0bc44..b2aca48 100644
>> --- a/recipes-multimedia/libfslcodec/libfslcodec.inc
>> +++ b/recipes-multimedia/imx-codec/imx-codec.inc
>> @@ -1,4 +1,4 @@
>> -# Copyright (C) 2012-2014 Freescale Semiconductor
>> +# Copyright (C) 2012-2016 Freescale Semiconductor
>>    # Released under the MIT license (see COPYING.MIT for the terms)
>>    DESCRIPTION = "Freescale Multimedia codec libs"
>>    LICENSE = "Proprietary"
>> @@ -41,7 +41,7 @@ python __set_insane_skip() {
>>    
>>            # FIXME: All binaries lack GNU_HASH in elf binary but as we don't have
>>            # the source we cannot fix it. Disable the insane check for now.
>> -        if p == 'libfslcodec-test-bin':
>> +        if p == 'imx-codec-test-bin':
>>                # FIXME: includes the DUT .so files so we need to deploy those
>>                d.setVar("INSANE_SKIP_%s" % p, "ldflags textrel libdir")
>>            else:
>> @@ -54,7 +54,7 @@ python __split_libfslcodec_plugins() {
>>        codecdir = bb.data.expand('${libdir}', d)
>>        do_split_packages(d, codecdir, '^lib_([^_]*).*_arm.*_elinux\.so\..*',
>>                          aux_files_pattern='${libdir}/imx-mm/audio-codec/wrap/lib_%sd_wrap_arm*_elinux.so.*',
>> -                      output_pattern='libfslcodec-%s',
>> +                      output_pattern='imx-codec-%s',
>>                          description='Freescale i.MX Codec (%s)',
>>                          extra_depends='')
>>    }
>> @@ -63,9 +63,9 @@ python __set_metapkg_rdepends() {
>>        # Allow addition of all codecs in a image; useful specially for
>>        # debugging.
>>        codec_pkgs = oe.utils.packages_filter_out_system(d)
>> -    codec_pkgs = filter(lambda x: x not in ['libfslcodec-test-bin', 'libfslcodec-test-source'],
>> +    codec_pkgs = filter(lambda x: x not in ['imx-codec-test-bin',
>> + 'imx-codec-test-source'],
>>                            codec_pkgs)
>> -    d.appendVar('RDEPENDS_libfslcodec-meta', ' ' + ' '.join(codec_pkgs))
>> +    d.appendVar('RDEPENDS_imx-codec-meta', ' ' + '
>> + '.join(codec_pkgs))
>>    }
>>    
>>    PACKAGESPLITFUNCS =+ "__split_libfslcodec_plugins __set_metapkg_rdepends"
>> diff --git a/recipes-multimedia/imx-codec/imx-codec_4.0.9.bb
>> b/recipes-multimedia/imx-codec/imx-codec_4.0.9.bb
>> new file mode 100644
>> index 0000000..e7bdfc8
>> --- /dev/null
>> +++ b/recipes-multimedia/imx-codec/imx-codec_4.0.9.bb
>> @@ -0,0 +1,10 @@
>> +# Copyright (C) 2013-2016 Freescale Semiconductor # Released under
>> +the MIT license (see COPYING.MIT for the terms)
>> +
>> +require imx-codec.inc
>> +LIC_FILES_CHKSUM = "file://COPYING;md5=8cf95184c220e247b9917e7244124c5a"
>> +
>> +SRC_URI[md5sum] = "bcf54698af6f52958b36e34dcbd9fcd1"
>> +SRC_URI[sha256sum] = "62bda182143cde9743cba0eb2a1c315a53cb434294605742f9fc364219958888"
>> +
>> +COMPATIBLE_MACHINE = "(mx6|mx6ul|mx7)"
>> diff --git a/recipes-multimedia/libfslcodec/libfslcodec_4.0.8.bb
>> b/recipes-multimedia/libfslcodec/libfslcodec_4.0.8.bb
>> deleted file mode 100644
>> index 1b32f90..0000000
>> --- a/recipes-multimedia/libfslcodec/libfslcodec_4.0.8.bb
>> +++ /dev/null
>> @@ -1,9 +0,0 @@
>> -# Copyright (C) 2013-2015 Freescale Semiconductor -# Released under
>> the MIT license (see COPYING.MIT for the terms)
>> -
>> -require libfslcodec.inc
>> -
>> -SRC_URI[md5sum] = "462fb27b20cd7df56a49b9e7d6b7c8b4"
>> -SRC_URI[sha256sum] = "544ffc5989bce18ca50c7a826cc03370b1cf8455335e4291ef0c0779b4c33de0"
>> -
>> -COMPATIBLE_MACHINE = "(mx6|mx6ul|mx7)"
> --
> _______________________________________________
> meta-freescale mailing list
> meta-freescale at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-freescale



More information about the meta-freescale mailing list