Meego Wiki
Views

ARM/N900/Features/CallAudio

From MeeGo wiki
(Difference between revisions)
Jump to: navigation, search
m
Line 73: Line 73:
** UPSTREAM STATUS: in progress, changes to be made before integration. Current patch used not accepted by upstream.
** UPSTREAM STATUS: in progress, changes to be made before integration. Current patch used not accepted by upstream.
** RISK: Does not affect other components than including a new n900modem driver.
** RISK: Does not affect other components than including a new n900modem driver.
-
* /etc/ofono/modem.conf is seperated out into ofono-config-* packages. This is because there might be non-n900modem phonet0 configurations.
+
* /etc/ofono/modem.conf is seperated out into ofono-config-* packages. Ofono now depends on ofono-config This is because there might be non-n900modem phonet0 configurations.
-
** RISK: ofono-config-phonesim will be needed to be included on anywhere phonesim is used (Aava, etc). QA needed after this change.
+
** RISK: ofono-config-phonesim will be needed to be included on anywhere phonesim is used (Aava, etc). QA needed after this change. Prjconf needed to be added and kickstart files having a configuration package suitable for device added.
Package is global.
Package is global.
-
 
==== pulseaudio ====
==== pulseaudio ====
Line 122: Line 121:
** RISK: Does not affect core pulseaudio, just adds to API. Nokia pulseaudio voice modules need this.
** RISK: Does not affect core pulseaudio, just adds to API. Nokia pulseaudio voice modules need this.
* Added [https://build.meego.com/package/view_file?file=0027-build-add-pulsecore.pc-Nokia-specific.patch&package=pulseaudio&project=devel%3Adevices%3An900%3Afeature11_modem pulsecore headers]. This adds pkgconfig(pulsecore) and exports src/pulsecore/*.h to modules. This is needed for Nokia pulseaudio voice modules, possibly for getting closer into the pulseaudio core.
* Added [https://build.meego.com/package/view_file?file=0027-build-add-pulsecore.pc-Nokia-specific.patch&package=pulseaudio&project=devel%3Adevices%3An900%3Afeature11_modem pulsecore headers]. This adds pkgconfig(pulsecore) and exports src/pulsecore/*.h to modules. This is needed for Nokia pulseaudio voice modules, possibly for getting closer into the pulseaudio core.
-
*** UPSTREAM STATUS: Uncertain, but rule of encapsulation might be broken in terms of architecture (if core is not usually suitable for outside interference)
+
** UPSTREAM STATUS: Uncertain, but rule of encapsulation might be broken in terms of architecture (if core is not usually suitable for outside interference)
-
*** RISK: None, except for added ABI/API currently exported without headers.
+
** RISK: None, except for added ABI/API currently exported without headers.
Package is global.
Package is global.
Line 160: Line 159:
Dependancy of maemo-pulseaudio-modules
Dependancy of maemo-pulseaudio-modules
 +
 +
=== ofono-config-n900 ===
 +
 +
Package maintainer:
 +
 +
Upstream: none
 +
 +
Package files: https://build.meego.com/package/files?package=ofono-config-n900&project=devel%3Adevices%3An900%3Afeature11_modem
 +
 +
What does it do:
 +
 +
Provides ofono-config and /etc/ofono/modem.conf for N900 settings.
 +
 +
 +
=== ofono-config-phonesim ===
 +
 +
Package maintainer:
 +
 +
Upstream: none
 +
 +
Package files: https://build.meego.com/package/files?package=ofono-config-phonesim&project=devel%3Adevices%3An900%3Afeature11_modem
 +
 +
What does it do:
 +
 +
Provides ofono-config and /etc/ofono/modem.conf for Phonesim settings.
 +
 +
=== maemo-pulseaudio-modules ====
 +
 +
Package maintainer:
 +
 +
Upstream: http://meego.gitorious.org/maemo-multimedia/pulseaudio-modules-meego
 +
 +
Package files: https://build.meego.com/package/files?package=maemo-pulseaudio-modules&project=devel%3Adevices%3An900%3Afeature11_modem
 +
 +
What does it do:
 +
 +
Provides maemo-pulseaudio-modules-voice, maemo-pulseaudio-modules-voice. Key components for voice call.
 +
 +
This is a Nokia CMT modem specific package.
 +
 +
Patches:
 +
 +
* [https://build.meego.com/package/view_file?file=ofono-cmtspeech.patch&package=maemo-pulseaudio-modules&project=devel%3Adevices%3An900%3Afeature11_modem ofono-cmtspeech interact with ofono for cmtspeech control]. Upstream status unknown.
 +
* [https://build.meego.com/package/view_file?file=meego-pulseaudio.patch&package=maemo-pulseaudio-modules&project=devel%3Adevices%3An900%3Afeature11_modem match to meego pulseaudio patch]. Upstream status unknown. Patch only changes version numbers to install into the right spot.
 +
* [https://build.meego.com/package/view_file?file=include-call-state-tracker_h.patch&package=maemo-pulseaudio-modules&project=devel%3Adevices%3An900%3Afeature11_modem include call state tracker header]. Upstream status unknown but should be trivial.
 +
* [https://build.meego.com/package/view_file?file=0901-dont_build_main_volume.patch&package=maemo-pulseaudio-modules&project=devel%3Adevices%3An900%3Afeature11_modem don't build mainvolume module. Unsuitable for MeeGo]. Upstreaming not needed.
 +
 +
TODO:
 +
* Changes file missing

Revision as of 11:08, 3 September 2010

This feature provides working call audio (incoming, outgoing), SMS sending on the Nokia N900.

The modifications are hosted in the OBS project devel:devices:n900:feature11_modem

All the packages in question are built for ARMv7 and X86 and can downloaded at http://download.meego.com/live/devel:/devices:/n900:/feature11_modem/testing/ . The packages are built against testing repository (http://download.meego.com/testing/)

Contents

Prjconf changes

Add:

Prefer: ofono-config-phonesim

Kickstart changes

For N900, add repository and in %packages:

# Feature modem
pulseaudio-meego-voice
pulseaudio-meego-cmtspeech
pulseaudio-meego-common
ofono-config-n900

In all other configurations using phonesim, add in %packages:

ofono-config-phonesim

Modified packages

nokia-n900-configs

Package maintainer: Carsten Munk <carsten@maemo.org>

Patch diff location: https://build.meego.com/package/files?package=nokia-n900-configs&project=home%3Ajouni.peltonen

Package is N900 specific.

What is changed:

  • Modem powerup d-bus script is started in system startup (rc.d)
    • RISK: Slower startup or stall if modem not answering (dbus timeouts would happen, I presume?)
    • POSSIBLE CHANGE: Backgrounding modem powerup script at startup
  • ALSA mixer changes for N900 and pulseaudio configuration changes
    • RISK: Non-modem sound in general might not work (need QA)

udev-rules-nokia-n900

Package maintainer: Carsten Munk <carsten@maemo.org>

Patch diff location: https://build.meego.com/package/files?package=udev-rules-nokia-n900&project=home%3Ajouni.peltonen

Package is N900 specific

What is changed:

  • Added new udev rule file, 10-cmt_speech.rules, with permissions 0777 (rwxrwxrwx). To allow user to talk to CMT speech interface in kernel.
    • RISK: Very wide permissions.
    • POSSIBLE CHANGE: Should be for meego user instead?

ofono

Package maintainer: Martin Xu <martin.xu@intel.com>

Package diff location: https://build.meego.com/package/files?package=ofono&project=devel%3Adevices%3An900%3Afeature11_modem

What is changed:

  • Added N900 modem power on patch [http://bugs.meego.com/show_bug.cgi?id=5662 BMC#5662)
    • UPSTREAM STATUS: in progress, changes to be made before integration. Current patch used not accepted by upstream.
    • RISK: Does not affect other components than including a new n900modem driver.
  • /etc/ofono/modem.conf is seperated out into ofono-config-* packages. Ofono now depends on ofono-config This is because there might be non-n900modem phonet0 configurations.
    • RISK: ofono-config-phonesim will be needed to be included on anywhere phonesim is used (Aava, etc). QA needed after this change. Prjconf needed to be added and kickstart files having a configuration package suitable for device added.

Package is global.

pulseaudio

Package maintainer: Vivian Zhang <vivian.zhang@intel.com> ?

Package diff location: https://build.meego.com/package/files?package=pulseaudio&project=devel%3Adevices%3An900%3Afeature11_modem

What is changed:

  • Added alsa 'old sink' patch. This is needed for the Nokia voice pulseaudio modules. This patch is a composite of patches, described in top of patch.
    • UPSTREAM STATUS: Uncertain and unclear if it would be suitable for upstream. Opinion of patch writers needed.
    • RISK: These patches touch core pulseaudio things and may affect other devices. QA on other devices needed to confirm they don't.
# From 46b1ae641bbfe209ce1837c7795177b7d604949b Mon Sep 17 00:00:00 2001  
# From: Jyri Sarha <jyri.sarha@nokia.com>  
# Date: Wed, 22 Jul 2009 12:00:59 +0300  
# Subject: [PATCH 037/115] core: Add infrastructure for delayed HW volume setting  
#   
# To make concurrent use of SW and HW volume glitchles their application  
# needs to be syncronized. For accurate syncronization the HW volume  
# needs to be applied in IO thread. This patch adds infrastructure to  
# delay the applying of HW volume to match with SW volume. For this patch  
# to have any effect it needs to be taken into use by sink implementor.  
#  
# From 6c573b1a03cfe2f6e5b649371f002be60ea3cf01 Mon Sep 17 00:00:00 2001  
# From: Tanu Kaskinen <ext-tanu.kaskinen@nokia.com>  
# Date: Mon, 21 Dec 2009 14:11:31 +0200  
# Subject: [PATCH 072/115] alsa-mixer: Add DecibelFix section to the profile set config file format.  
#   
# This commit only implements the parser, the decibel fix data is not yet used  
# for anything.  
#  
# From 91fe0803afe864016e446cb1535cac5e5826fe5c Mon Sep 17 00:00:00 2001  
# From: Tanu Kaskinen <ext-tanu.kaskinen@nokia.com>  
# Date: Tue, 29 Dec 2009 14:51:09 +0200  
# Subject: [PATCH 073/115] alsa-mixer: Use decibel fixes when getting and setting decibel volumes.  
  • Added flat sink patch
    • UPSTREAM STATUS: Uncertain, needs patch writer opinion.
    • RISK: This patch affects core pulseaudio and would need QA on other devices.
  • Added call state tracker singleton object. This is used to monitor if a call is currently going on.
    • UPSTREAM STATUS: Uncertain, but may be MeeGo specific enough to not upstream
    • RISK: Does not affect core pulseaudio, just adds to API. Nokia pulseaudio voice modules need this.
  • Added pulsecore headers. This adds pkgconfig(pulsecore) and exports src/pulsecore/*.h to modules. This is needed for Nokia pulseaudio voice modules, possibly for getting closer into the pulseaudio core.
    • UPSTREAM STATUS: Uncertain, but rule of encapsulation might be broken in terms of architecture (if core is not usually suitable for outside interference)
    • RISK: None, except for added ABI/API currently exported without headers.

Package is global.

Added packages

libcmtspeech

Library for cellular speech data path

Package maintainer: Sami Sirkia <sami.u.sirkia@gmail.com>

Package files: https://build.meego.com/package/files?package=libcmtspeechdata&project=devel%3Adevices%3An900%3Afeature11_modem

Upstream: http://meego.gitorious.org/meego-cellular/libcmtspeechdata

What does it do:

# This package provides "libcmtspeechdata", an application  
# engine (APE) side library, for the Nokia CMT Speech Data  
# SSI protocol. The library provides an application interface,  
# for implementing the speech data path for cellular voice  
# calls. The library depends on other components for setting  
# up and managing the call signaling path.  
#   
# CMT is abbreviation of Cellular Modem Terminal, i.e. the  
# cellular modem. APE refers to Application Engine, i.e.  
# the processing environment where libcmtspeechdata is run.  
# In DFL6x configurations, APE is a TI OMAP3 processor.  
# SSI refers to the Synchronous Serial Interface, which is  
# a serial bus found on TI OMAP application engines as well  
# as on Nokia cellular modems. SSI is used as the low-level  
# interface used to communicate between APE and CMT. 

Dependancy of maemo-pulseaudio-modules

ofono-config-n900

Package maintainer:

Upstream: none

Package files: https://build.meego.com/package/files?package=ofono-config-n900&project=devel%3Adevices%3An900%3Afeature11_modem

What does it do:

Provides ofono-config and /etc/ofono/modem.conf for N900 settings.


ofono-config-phonesim

Package maintainer:

Upstream: none

Package files: https://build.meego.com/package/files?package=ofono-config-phonesim&project=devel%3Adevices%3An900%3Afeature11_modem

What does it do:

Provides ofono-config and /etc/ofono/modem.conf for Phonesim settings.

maemo-pulseaudio-modules =

Package maintainer:

Upstream: http://meego.gitorious.org/maemo-multimedia/pulseaudio-modules-meego

Package files: https://build.meego.com/package/files?package=maemo-pulseaudio-modules&project=devel%3Adevices%3An900%3Afeature11_modem

What does it do:

Provides maemo-pulseaudio-modules-voice, maemo-pulseaudio-modules-voice. Key components for voice call.

This is a Nokia CMT modem specific package.

Patches:

TODO:

  • Changes file missing
Personal tools