diff options
Diffstat (limited to 'meta-agl-demo/recipes-demo-hmi/navigation/navigation')
6 files changed, 224 insertions, 0 deletions
diff --git a/meta-agl-demo/recipes-demo-hmi/navigation/navigation/0001-switch-to-pipewire-output.patch b/meta-agl-demo/recipes-demo-hmi/navigation/navigation/0001-switch-to-pipewire-output.patch new file mode 100644 index 00000000..53c1165d --- /dev/null +++ b/meta-agl-demo/recipes-demo-hmi/navigation/navigation/0001-switch-to-pipewire-output.patch @@ -0,0 +1,34 @@ +gpsnavi: Switch to pipewire output + +Update the talk scripts to use pipewire output via gst-launch-1.0 +instead of PulseAudio's paplay. gstreamer is used to allow using the +pipewire output sink and set its media role property. + +Upstream-Status: Inappropriate [no upstream] + +Signed-off-by: Scott Murray <scott.murray@konsulko.com> + +diff --git a/flite_agl.in b/flite_agl.in +index 28b512c..be41d66 100644 +--- a/flite_agl.in ++++ b/flite_agl.in +@@ -1,6 +1,6 @@ + #!/bin/sh + TMP=/tmp/navi.wav + echo "$1" | flite_hts_engine -m @datadir@/Voice/us/cmu_us_arctic_slt.htsvoice -o $TMP +-paplay --property='media.role=Navi' $TMP ++gst-launch-1.0 filesrc location=$TMP ! decodebin ! audioconvert ! audioresample ! pwaudiosink stream-properties="p,media.role=Navigation" + rm -f $TMP + +diff --git a/jtalk_agl.in b/jtalk_agl.in +index 76900f4..0ca6975 100644 +--- a/jtalk_agl.in ++++ b/jtalk_agl.in +@@ -1,6 +1,6 @@ + #!/bin/sh + TMP=/tmp/navi.wav + echo "$1" | open_jtalk -ow $TMP -m @exec_prefix@/share/Voice/mei/mei_normal.htsvoice -x @exec_prefix@/share/dic/ +-paplay --property='media.role=Navi' $TMP ++gst-launch-1.0 filesrc location=$TMP ! decodebin ! audioconvert ! audioresample ! pwaudiosink stream-properties="p,media.role=Navigation" + rm -f $TMP + diff --git a/meta-agl-demo/recipes-demo-hmi/navigation/navigation/0002-openssl-1.1-fixes.patch b/meta-agl-demo/recipes-demo-hmi/navigation/navigation/0002-openssl-1.1-fixes.patch new file mode 100644 index 00000000..9506ce11 --- /dev/null +++ b/meta-agl-demo/recipes-demo-hmi/navigation/navigation/0002-openssl-1.1-fixes.patch @@ -0,0 +1,31 @@ +gpsnavi: Fix compilation with OpenSSL 1.1 + +Handle the ERR_load_crypto_strings and ERR_free_strings functions no +longer being present in OpenSSL 1.1. + +Signed-off-by: Scott Murray <scott.murray@konsulko.com> + +diff --git a/src/sms/sms-core/SMCAL/SMCAL.c b/src/sms/sms-core/SMCAL/SMCAL.c +index eadab8f..2dfe1f3 100755 +--- a/src/sms/sms-core/SMCAL/SMCAL.c ++++ b/src/sms/sms-core/SMCAL/SMCAL.c +@@ -158,7 +158,9 @@ void SC_CAL_Initialize_OpenSSL() { + // 初期化
+ ERR_load_BIO_strings();
+ SSL_load_error_strings();
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ ERR_load_crypto_strings();
++#endif
+ OpenSSL_add_all_algorithms();
+
+ // SSLの初期化(戻り値は常に1)
+@@ -542,7 +544,9 @@ E_SC_CAL_RESULT SC_CAL_DisConnect(SMCAL *cal) + if (NULL != cal->ssl.ctx) {
+ SSL_CTX_free((SSL_CTX*)cal->ssl.ctx);
+ }
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
+ ERR_free_strings();
++#endif
+
+ cal->ssl.ssl = NULL;
+ cal->ssl.ctx = NULL;
diff --git a/meta-agl-demo/recipes-demo-hmi/navigation/navigation/0003-update-permissions.patch b/meta-agl-demo/recipes-demo-hmi/navigation/navigation/0003-update-permissions.patch new file mode 100644 index 00000000..1f1ee491 --- /dev/null +++ b/meta-agl-demo/recipes-demo-hmi/navigation/navigation/0003-update-permissions.patch @@ -0,0 +1,22 @@ +gpsnavi: Update permissions + +Add the new display and audio permissions required with the change to +running as non-root. + +Upstream-Status: Inappropriate [no upstream] + +Signed-off-by: Scott Murray <scott.murray@konsulko.com> + +diff --git a/agl/config.xml b/agl/config.xml +index 9d4c0ca..44de94a 100755 +--- a/agl/config.xml ++++ b/agl/config.xml +@@ -8,6 +8,8 @@ + <feature name="urn:AGL:widget:required-permission"> + <param name="urn:AGL:permission::public:no-htdocs" value="required" /> + <param name="http://tizen.org/privilege/internal/dbus" value="required" /> ++ <param name="urn:AGL:permission::public:display" value="required" /> ++ <param name="urn:AGL:permission::public:audio" value="required" /> + </feature> + <feature name="urn:AGL:widget:required-api"> + <param name="homescreen" value="ws" /> diff --git a/meta-agl-demo/recipes-demo-hmi/navigation/navigation/download_mapdata_jp.sh b/meta-agl-demo/recipes-demo-hmi/navigation/navigation/download_mapdata_jp.sh new file mode 100755 index 00000000..15120f89 --- /dev/null +++ b/meta-agl-demo/recipes-demo-hmi/navigation/navigation/download_mapdata_jp.sh @@ -0,0 +1,61 @@ +#!/bin/sh +# +# AGL Navigation mapdata download scripts +# + +#-------------------------------------------------------------- +help() +{ +bn=`basename $0` +cat << EOF +usage +host: sudo $bn 'target_rootfs_path/' +target : $bn / +EOF + +} +#-check para------------------------------------------------------- +shift `expr $OPTIND - 1` + +if [ $# != 1 ]; then + help + exit +fi + +rootfs=$1 + +#---------------------------------------------------------------- + +# check the if root? ------------------------------ +userid=`id -u` +if [ $userid -ne "0" ]; then + echo "you're not root? run with sudo" + exit +fi + +if [ ! -e $1 ]; then + echo "rootfs:$1 not found" + exit +fi + +if [ ! -f $HOME/navi_data.tar.gz ]; then + echo "no map data" + echo "start downloading..." + wget --directory-prefix=$HOME http://agl.wismobi.com/data/japan_TR9/navi_data.tar.gz +else + echo "use downloaded map data" +fi + +mapdatadir=$rootfs/var/mapdata + +if [ ! -d $mapdatadir ]; then + echo "map data directory does not exist" + echo "create a directory" $mapdatadir + mkdir -p $mapdatadir +else + echo "map data directory exists" +fi + +tar xvzf $HOME/navi_data.tar.gz -C $mapdatadir +sync +echo "done.." diff --git a/meta-agl-demo/recipes-demo-hmi/navigation/navigation/download_mapdata_uk.sh b/meta-agl-demo/recipes-demo-hmi/navigation/navigation/download_mapdata_uk.sh new file mode 100755 index 00000000..d1f9a796 --- /dev/null +++ b/meta-agl-demo/recipes-demo-hmi/navigation/navigation/download_mapdata_uk.sh @@ -0,0 +1,61 @@ +#!/bin/sh +# +# AGL Navigation mapdata download scripts +# + +#-------------------------------------------------------------- +help() +{ +bn=`basename $0` +cat << EOF +usage +host: sudo $bn 'target_rootfs_path/' +target : $bn / +EOF + +} +#-check para------------------------------------------------------- +shift `expr $OPTIND - 1` + +if [ $# != 1 ]; then + help + exit +fi + +rootfs=$1 + +#---------------------------------------------------------------- + +# check the if root? ------------------------------ +userid=`id -u` +if [ $userid -ne "0" ]; then + echo "you're not root? run with sudo" + exit +fi + +if [ ! -e $1 ]; then + echo "rootfs:$1 not found" + exit +fi + +if [ ! -f $HOME/navi_data_UK.tar.gz ]; then + echo "no map data" + echo "start downloading..." + wget --directory-prefix=$HOME http://agl.wismobi.com/data/UnitedKingdom_TR9/navi_data_UK.tar.gz +else + echo "use downloaded map data" +fi + +mapdatadir=$rootfs/var/mapdata + +if [ ! -d $mapdatadir ]; then + echo "map data directory does not exist" + echo "create a directory" $mapdatadir + mkdir -p $mapdatadir +else + echo "map data directory exists" +fi + +tar xvzf $HOME/navi_data_UK.tar.gz -C $mapdatadir +sync +echo "done.." diff --git a/meta-agl-demo/recipes-demo-hmi/navigation/navigation/org.agl.naviapi.conf b/meta-agl-demo/recipes-demo-hmi/navigation/navigation/org.agl.naviapi.conf new file mode 100644 index 00000000..7f4d85f0 --- /dev/null +++ b/meta-agl-demo/recipes-demo-hmi/navigation/navigation/org.agl.naviapi.conf @@ -0,0 +1,15 @@ +<!DOCTYPE busconfig PUBLIC +"-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN" +"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd"> +<busconfig> + <policy context="default"> + <!-- Allow everyone to talk to main service. We'll later add an agent to + only share the location if user allows it. --> + <allow send_interface="org.agl.naviapi"/> + </policy> + + <policy user="root"> + <!-- Allow root to own the name on the bus --> + <allow own="org.agl.naviapi"/> + </policy> +</busconfig> |