Initial release 23/259123/1 accepted/tizen/unified/20210602.122332 accepted/tizen/unified/20210603.000609 submit/tizen/20210602.025405 submit/tizen/20210602.222059
authorJeongmo Yang <jm80.yang@samsung.com>
Tue, 1 Jun 2021 09:24:46 +0000 (18:24 +0900)
committerJeongmo Yang <jm80.yang@samsung.com>
Tue, 1 Jun 2021 09:27:48 +0000 (18:27 +0900)
- It's renamed from mmfw-sysconf for HAL image.

[Version] 0.3.0
[Issue Type] Initial release

Change-Id: Icf2e09fc2d50af5d8dfc1e531426e25aa6e83334
Signed-off-by: Jeongmo Yang <jm80.yang@samsung.com>
489 files changed:
AUTHORS [new file with mode: 0644]
LICENSE.APLv2.0 [new file with mode: 0644]
LICENSE.LGPLv2.1 [new file with mode: 0644]
NOTICE [new file with mode: 0644]
media-config-simulator.manifest [new file with mode: 0644]
media-config-simulator/hal/etc/asound.conf [new file with mode: 0644]
media-config-simulator/hal/etc/inference/inference_engine.ini [new file with mode: 0644]
media-config-simulator/hal/etc/multimedia/mmfw_audio_volume.ini [new file with mode: 0644]
media-config-simulator/hal/etc/multimedia/mmfw_camcorder.ini [new file with mode: 0644]
media-config-simulator/hal/etc/multimedia/mmfw_camcorder_camera0.ini [new file with mode: 0644]
media-config-simulator/hal/etc/multimedia/mmfw_camcorder_camera1.ini [new file with mode: 0644]
media-config-simulator/hal/etc/multimedia/mmfw_media_codec.ini [new file with mode: 0644]
media-config-simulator/hal/etc/multimedia/mmfw_media_streamer.ini [new file with mode: 0644]
media-config-simulator/hal/etc/multimedia/mmfw_player.ini [new file with mode: 0644]
media-config-simulator/hal/etc/multimedia/mmfw_player_audio_effect.ini [new file with mode: 0644]
media-config-simulator/hal/etc/multimedia/mmfw_resource_manager.ini [new file with mode: 0644]
media-config-simulator/hal/etc/multimedia/mmfw_streamrecorder.ini [new file with mode: 0644]
media-config-simulator/hal/etc/multimedia/mused.conf [new file with mode: 0644]
media-config-simulator/hal/etc/murphy/murphy.lua [new file with mode: 0644]
media-config-simulator/hal/etc/profile.d/mmf.sh [new file with mode: 0755]
media-config-simulator/hal/etc/pulse/client.conf [new file with mode: 0644]
media-config-simulator/hal/etc/pulse/daemon.conf [new file with mode: 0644]
media-config-simulator/hal/etc/pulse/default.pa [new file with mode: 0755]
media-config-simulator/hal/etc/pulse/device-map.json [new file with mode: 0644]
media-config-simulator/hal/etc/pulse/stream-map.json [new file with mode: 0644]
media-config-simulator/hal/etc/pulse/system.pa [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf [new file with mode: 0644]
media-config-simulator/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf [new file with mode: 0644]
media-config-target-artik10.manifest [new file with mode: 0644]
media-config-target-artik10/hal/etc/asound.conf [new file with mode: 0644]
media-config-target-artik10/hal/etc/multimedia/mmfw_audio_pcm_dump.ini [new file with mode: 0644]
media-config-target-artik10/hal/etc/multimedia/mmfw_audio_volume.ini [new file with mode: 0644]
media-config-target-artik10/hal/etc/multimedia/mmfw_camcorder.ini [new file with mode: 0644]
media-config-target-artik10/hal/etc/multimedia/mmfw_camcorder_camera0.ini [new file with mode: 0644]
media-config-target-artik10/hal/etc/multimedia/mmfw_media_codec.ini [new file with mode: 0644]
media-config-target-artik10/hal/etc/multimedia/mmfw_media_streamer.ini [new file with mode: 0644]
media-config-target-artik10/hal/etc/multimedia/mmfw_player.ini [new file with mode: 0644]
media-config-target-artik10/hal/etc/multimedia/mmfw_player_audio_effect.ini [new file with mode: 0644]
media-config-target-artik10/hal/etc/multimedia/mmfw_resource_manager.ini [new file with mode: 0644]
media-config-target-artik10/hal/etc/multimedia/mmfw_streamrecorder.ini [new file with mode: 0644]
media-config-target-artik10/hal/etc/multimedia/mused.conf [new file with mode: 0644]
media-config-target-artik10/hal/etc/murphy/murphy.lua [new file with mode: 0644]
media-config-target-artik10/hal/etc/profile.d/mmf.sh [new file with mode: 0644]
media-config-target-artik10/hal/etc/pulse/client.conf [new file with mode: 0644]
media-config-target-artik10/hal/etc/pulse/daemon.conf [new file with mode: 0644]
media-config-target-artik10/hal/etc/pulse/default.pa [new file with mode: 0644]
media-config-target-artik10/hal/etc/pulse/device-map.json [new file with mode: 0644]
media-config-target-artik10/hal/etc/pulse/stream-map.json [new file with mode: 0644]
media-config-target-artik10/hal/etc/pulse/system.pa [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf [new file with mode: 0644]
media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf [new file with mode: 0644]
media-config-target-hawkp.manifest [new file with mode: 0644]
media-config-target-hawkp/hal/etc/asound.conf [new file with mode: 0644]
media-config-target-hawkp/hal/etc/multimedia/mmfw_audio_pcm_dump.ini [new file with mode: 0644]
media-config-target-hawkp/hal/etc/multimedia/mmfw_audio_volume.ini [new file with mode: 0644]
media-config-target-hawkp/hal/etc/multimedia/mmfw_camcorder.ini [new file with mode: 0644]
media-config-target-hawkp/hal/etc/multimedia/mmfw_camcorder_camera0.ini [new file with mode: 0644]
media-config-target-hawkp/hal/etc/multimedia/mmfw_media_codec.ini [new file with mode: 0644]
media-config-target-hawkp/hal/etc/multimedia/mmfw_media_streamer.ini [new file with mode: 0644]
media-config-target-hawkp/hal/etc/multimedia/mmfw_player.ini [new file with mode: 0644]
media-config-target-hawkp/hal/etc/multimedia/mmfw_player_audio_effect.ini [new file with mode: 0644]
media-config-target-hawkp/hal/etc/multimedia/mmfw_resource_manager.ini [new file with mode: 0644]
media-config-target-hawkp/hal/etc/multimedia/mmfw_streamrecorder.ini [new file with mode: 0644]
media-config-target-hawkp/hal/etc/multimedia/mused.conf [new file with mode: 0644]
media-config-target-hawkp/hal/etc/murphy/murphy.lua [new file with mode: 0644]
media-config-target-hawkp/hal/etc/profile.d/mmf.sh [new file with mode: 0644]
media-config-target-hawkp/hal/etc/pulse/client.conf [new file with mode: 0644]
media-config-target-hawkp/hal/etc/pulse/daemon.conf [new file with mode: 0644]
media-config-target-hawkp/hal/etc/pulse/default.pa [new file with mode: 0644]
media-config-target-hawkp/hal/etc/pulse/device-map.json [new file with mode: 0644]
media-config-target-hawkp/hal/etc/pulse/stream-map.json [new file with mode: 0644]
media-config-target-hawkp/hal/etc/pulse/system.pa [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf [new file with mode: 0644]
media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf [new file with mode: 0644]
media-config-target-n4.manifest [new file with mode: 0644]
media-config-target-n4/hal/etc/asound.conf [new file with mode: 0644]
media-config-target-n4/hal/etc/inference/inference_engine.ini [new file with mode: 0644]
media-config-target-n4/hal/etc/multimedia/mmfw_audio_pcm_dump.ini [new file with mode: 0644]
media-config-target-n4/hal/etc/multimedia/mmfw_audio_volume.ini [new file with mode: 0644]
media-config-target-n4/hal/etc/multimedia/mmfw_camcorder.ini [new file with mode: 0644]
media-config-target-n4/hal/etc/multimedia/mmfw_camcorder_camera0.ini [new file with mode: 0644]
media-config-target-n4/hal/etc/multimedia/mmfw_camcorder_camera1.ini [new file with mode: 0644]
media-config-target-n4/hal/etc/multimedia/mmfw_media_codec.ini [new file with mode: 0644]
media-config-target-n4/hal/etc/multimedia/mmfw_media_streamer.ini [new file with mode: 0644]
media-config-target-n4/hal/etc/multimedia/mmfw_player.ini [new file with mode: 0644]
media-config-target-n4/hal/etc/multimedia/mmfw_player_audio_effect.ini [new file with mode: 0644]
media-config-target-n4/hal/etc/multimedia/mmfw_resource_manager.ini [new file with mode: 0644]
media-config-target-n4/hal/etc/multimedia/mmfw_streamrecorder.ini [new file with mode: 0644]
media-config-target-n4/hal/etc/multimedia/mmfw_wfd_sink.ini [new file with mode: 0644]
media-config-target-n4/hal/etc/multimedia/mused.conf [new file with mode: 0644]
media-config-target-n4/hal/etc/multimedia/scmirroring_src.ini [new file with mode: 0644]
media-config-target-n4/hal/etc/murphy/murphy.lua [new file with mode: 0644]
media-config-target-n4/hal/etc/profile.d/mmf.sh [new file with mode: 0644]
media-config-target-n4/hal/etc/pulse/client.conf [new file with mode: 0644]
media-config-target-n4/hal/etc/pulse/daemon.conf [new file with mode: 0644]
media-config-target-n4/hal/etc/pulse/default.pa [new file with mode: 0644]
media-config-target-n4/hal/etc/pulse/device-map.json [new file with mode: 0644]
media-config-target-n4/hal/etc/pulse/stream-map.json [new file with mode: 0644]
media-config-target-n4/hal/etc/pulse/system.pa [new file with mode: 0644]
media-config-target-n4/hal/etc/xdg/gstomx.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf [new file with mode: 0644]
media-config-target-n4/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf [new file with mode: 0644]
media-config-target-rpi3-spk.manifest [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/asound.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_audio_pcm_dump.ini [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_audio_volume.ini [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_camcorder.ini [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_camcorder_camera0.ini [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_media_codec.ini [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_media_streamer.ini [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_player.ini [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_player_audio_effect.ini [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_resource_manager.ini [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_streamrecorder.ini [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_wfd_sink.ini [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/multimedia/mused.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/multimedia/scmirroring_src.ini [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/murphy/murphy.lua [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/profile.d/mmf.sh [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/pulse/client.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/pulse/daemon.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/pulse/default.pa [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/pulse/device-map.json [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/pulse/stream-map.json [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/pulse/system.pa [new file with mode: 0644]
media-config-target-rpi3-spk/hal/etc/xdg/gstomx.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf [new file with mode: 0644]
media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf [new file with mode: 0644]
media-config-target-rpi3.manifest [new file with mode: 0644]
media-config-target-rpi3/hal/etc/asound.conf [new file with mode: 0644]
media-config-target-rpi3/hal/etc/inference/inference_engine.ini [new file with mode: 0644]
media-config-target-rpi3/hal/etc/multimedia/mmfw_audio_pcm_dump.ini [new file with mode: 0644]
media-config-target-rpi3/hal/etc/multimedia/mmfw_audio_volume.ini [new file with mode: 0644]
media-config-target-rpi3/hal/etc/multimedia/mmfw_camcorder.ini [new file with mode: 0644]
media-config-target-rpi3/hal/etc/multimedia/mmfw_camcorder_camera0.ini [new file with mode: 0644]
media-config-target-rpi3/hal/etc/multimedia/mmfw_media_codec.ini [new file with mode: 0644]
media-config-target-rpi3/hal/etc/multimedia/mmfw_media_streamer.ini [new file with mode: 0644]
media-config-target-rpi3/hal/etc/multimedia/mmfw_player.ini [new file with mode: 0644]
media-config-target-rpi3/hal/etc/multimedia/mmfw_player_audio_effect.ini [new file with mode: 0644]
media-config-target-rpi3/hal/etc/multimedia/mmfw_resource_manager.ini [new file with mode: 0644]
media-config-target-rpi3/hal/etc/multimedia/mmfw_streamrecorder.ini [new file with mode: 0644]
media-config-target-rpi3/hal/etc/multimedia/mmfw_wfd_sink.ini [new file with mode: 0644]
media-config-target-rpi3/hal/etc/multimedia/mused.conf [new file with mode: 0644]
media-config-target-rpi3/hal/etc/multimedia/scmirroring_src.ini [new file with mode: 0644]
media-config-target-rpi3/hal/etc/murphy/murphy.lua [new file with mode: 0644]
media-config-target-rpi3/hal/etc/profile.d/mmf.sh [new file with mode: 0644]
media-config-target-rpi3/hal/etc/pulse/client.conf [new file with mode: 0644]
media-config-target-rpi3/hal/etc/pulse/daemon.conf [new file with mode: 0644]
media-config-target-rpi3/hal/etc/pulse/default.pa [new file with mode: 0644]
media-config-target-rpi3/hal/etc/pulse/device-map.json [new file with mode: 0644]
media-config-target-rpi3/hal/etc/pulse/stream-map.json [new file with mode: 0644]
media-config-target-rpi3/hal/etc/pulse/system.pa [new file with mode: 0644]
media-config-target-rpi3/hal/etc/xdg/gstomx.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf [new file with mode: 0644]
media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf [new file with mode: 0644]
media-config-target-tm1.manifest [new file with mode: 0644]
media-config-target-tm1/hal/etc/asound.conf [new file with mode: 0644]
media-config-target-tm1/hal/etc/inference/inference_engine.ini [new file with mode: 0644]
media-config-target-tm1/hal/etc/inference/inference_engine_backend_path.ini [new file with mode: 0644]
media-config-target-tm1/hal/etc/multimedia/audio_hw.xml [new file with mode: 0644]
media-config-target-tm1/hal/etc/multimedia/mmfw_audio_pcm_dump.ini [new file with mode: 0644]
media-config-target-tm1/hal/etc/multimedia/mmfw_audio_volume.ini [new file with mode: 0644]
media-config-target-tm1/hal/etc/multimedia/mmfw_camcorder.ini [new file with mode: 0644]
media-config-target-tm1/hal/etc/multimedia/mmfw_camcorder_camera0.ini [new file with mode: 0644]
media-config-target-tm1/hal/etc/multimedia/mmfw_camcorder_camera1.ini [new file with mode: 0644]
media-config-target-tm1/hal/etc/multimedia/mmfw_fmradio.ini [new file with mode: 0644]
media-config-target-tm1/hal/etc/multimedia/mmfw_media_codec.ini [new file with mode: 0644]
media-config-target-tm1/hal/etc/multimedia/mmfw_media_streamer.ini [new file with mode: 0644]
media-config-target-tm1/hal/etc/multimedia/mmfw_player.ini [new file with mode: 0644]
media-config-target-tm1/hal/etc/multimedia/mmfw_player_audio_effect.ini [new file with mode: 0644]
media-config-target-tm1/hal/etc/multimedia/mmfw_resource_manager.ini [new file with mode: 0644]
media-config-target-tm1/hal/etc/multimedia/mmfw_streamrecorder.ini [new file with mode: 0644]
media-config-target-tm1/hal/etc/multimedia/mmfw_wfd_sink.ini [new file with mode: 0644]
media-config-target-tm1/hal/etc/multimedia/mused.conf [new file with mode: 0644]
media-config-target-tm1/hal/etc/multimedia/scmirroring_src.ini [new file with mode: 0644]
media-config-target-tm1/hal/etc/murphy/murphy.lua [new file with mode: 0644]
media-config-target-tm1/hal/etc/profile.d/mmf.sh [new file with mode: 0644]
media-config-target-tm1/hal/etc/pulse/client.conf [new file with mode: 0644]
media-config-target-tm1/hal/etc/pulse/daemon.conf [new file with mode: 0644]
media-config-target-tm1/hal/etc/pulse/default.pa [new file with mode: 0644]
media-config-target-tm1/hal/etc/pulse/device-map.json [new file with mode: 0644]
media-config-target-tm1/hal/etc/pulse/stream-map.json [new file with mode: 0644]
media-config-target-tm1/hal/etc/pulse/system.pa [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf [new file with mode: 0644]
media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf [new file with mode: 0644]
media-config-target-tw1.manifest [new file with mode: 0644]
media-config-target-tw1/hal/etc/asound.conf [new file with mode: 0644]
media-config-target-tw1/hal/etc/multimedia/mmfw_audio_pcm_dump.ini [new file with mode: 0644]
media-config-target-tw1/hal/etc/multimedia/mmfw_audio_volume.ini [new file with mode: 0644]
media-config-target-tw1/hal/etc/multimedia/mmfw_camcorder.ini [new file with mode: 0644]
media-config-target-tw1/hal/etc/multimedia/mmfw_media_codec.ini [new file with mode: 0644]
media-config-target-tw1/hal/etc/multimedia/mmfw_media_streamer.ini [new file with mode: 0644]
media-config-target-tw1/hal/etc/multimedia/mmfw_player.ini [new file with mode: 0644]
media-config-target-tw1/hal/etc/multimedia/mmfw_player_audio_effect.ini [new file with mode: 0644]
media-config-target-tw1/hal/etc/multimedia/mmfw_resource_manager.ini [new file with mode: 0644]
media-config-target-tw1/hal/etc/multimedia/mmfw_streamrecorder.ini [new file with mode: 0644]
media-config-target-tw1/hal/etc/multimedia/mused.conf [new file with mode: 0644]
media-config-target-tw1/hal/etc/murphy/murphy.lua [new file with mode: 0644]
media-config-target-tw1/hal/etc/profile.d/mmf.sh [new file with mode: 0644]
media-config-target-tw1/hal/etc/pulse/client.conf [new file with mode: 0644]
media-config-target-tw1/hal/etc/pulse/daemon.conf [new file with mode: 0644]
media-config-target-tw1/hal/etc/pulse/default.pa [new file with mode: 0644]
media-config-target-tw1/hal/etc/pulse/device-map.json [new file with mode: 0644]
media-config-target-tw1/hal/etc/pulse/stream-map.json [new file with mode: 0644]
media-config-target-tw1/hal/etc/pulse/system.pa [new file with mode: 0644]
media-config-target-tw1/hal/etc/xdg/gstomx.conf [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf [new file with mode: 0644]
media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf [new file with mode: 0644]
media-config-target-tw2.manifest [new file with mode: 0644]
media-config-target-tw2/hal/etc/asound.conf [new file with mode: 0644]
media-config-target-tw2/hal/etc/multimedia/mmfw_audio_pcm_dump.ini [new file with mode: 0644]
media-config-target-tw2/hal/etc/multimedia/mmfw_audio_volume.ini [new file with mode: 0644]
media-config-target-tw2/hal/etc/multimedia/mmfw_camcorder.ini [new file with mode: 0644]
media-config-target-tw2/hal/etc/multimedia/mmfw_media_codec.ini [new file with mode: 0644]
media-config-target-tw2/hal/etc/multimedia/mmfw_media_streamer.ini [new file with mode: 0644]
media-config-target-tw2/hal/etc/multimedia/mmfw_player.ini [new file with mode: 0644]
media-config-target-tw2/hal/etc/multimedia/mmfw_player_audio_effect.ini [new file with mode: 0644]
media-config-target-tw2/hal/etc/multimedia/mmfw_resource_manager.ini [new file with mode: 0644]
media-config-target-tw2/hal/etc/multimedia/mmfw_streamrecorder.ini [new file with mode: 0644]
media-config-target-tw2/hal/etc/multimedia/mused.conf [new file with mode: 0644]
media-config-target-tw2/hal/etc/murphy/murphy.lua [new file with mode: 0644]
media-config-target-tw2/hal/etc/profile.d/mmf.sh [new file with mode: 0644]
media-config-target-tw2/hal/etc/pulse/client.conf [new file with mode: 0644]
media-config-target-tw2/hal/etc/pulse/daemon.conf [new file with mode: 0644]
media-config-target-tw2/hal/etc/pulse/default.pa [new file with mode: 0644]
media-config-target-tw2/hal/etc/pulse/device-map.json [new file with mode: 0644]
media-config-target-tw2/hal/etc/pulse/stream-map.json [new file with mode: 0644]
media-config-target-tw2/hal/etc/pulse/system.pa [new file with mode: 0644]
media-config-target-tw2/hal/etc/xdg/gstomx.conf [new file with mode: 0644]
media-config-target-tw2/hal/lib/udev/rules.d/99-ion.rules [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf [new file with mode: 0644]
media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf [new file with mode: 0644]
media-config-target-tw3.manifest [new file with mode: 0644]
media-config-target-tw3/hal/etc/asound.conf [new file with mode: 0644]
media-config-target-tw3/hal/etc/inference/inference_engine.ini [new file with mode: 0644]
media-config-target-tw3/hal/etc/multimedia/mmfw_audio_pcm_dump.ini [new file with mode: 0644]
media-config-target-tw3/hal/etc/multimedia/mmfw_audio_volume.ini [new file with mode: 0644]
media-config-target-tw3/hal/etc/multimedia/mmfw_camcorder.ini [new file with mode: 0644]
media-config-target-tw3/hal/etc/multimedia/mmfw_media_codec.ini [new file with mode: 0644]
media-config-target-tw3/hal/etc/multimedia/mmfw_media_streamer.ini [new file with mode: 0644]
media-config-target-tw3/hal/etc/multimedia/mmfw_player.ini [new file with mode: 0644]
media-config-target-tw3/hal/etc/multimedia/mmfw_player_audio_effect.ini [new file with mode: 0644]
media-config-target-tw3/hal/etc/multimedia/mmfw_resource_manager.ini [new file with mode: 0644]
media-config-target-tw3/hal/etc/multimedia/mmfw_streamrecorder.ini [new file with mode: 0644]
media-config-target-tw3/hal/etc/multimedia/mused.conf [new file with mode: 0644]
media-config-target-tw3/hal/etc/murphy/murphy.lua [new file with mode: 0644]
media-config-target-tw3/hal/etc/profile.d/mmf.sh [new file with mode: 0644]
media-config-target-tw3/hal/etc/pulse/client.conf [new file with mode: 0644]
media-config-target-tw3/hal/etc/pulse/daemon.conf [new file with mode: 0644]
media-config-target-tw3/hal/etc/pulse/default.pa [new file with mode: 0644]
media-config-target-tw3/hal/etc/pulse/device-map.json [new file with mode: 0644]
media-config-target-tw3/hal/etc/pulse/stream-map.json [new file with mode: 0644]
media-config-target-tw3/hal/etc/pulse/system.pa [new file with mode: 0644]
media-config-target-tw3/hal/etc/xdg/gstomx.conf [new file with mode: 0644]
media-config-target-tw3/hal/lib/udev/rules.d/99-ion.rules [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf [new file with mode: 0644]
media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf [new file with mode: 0644]
media-config-target-u3.manifest [new file with mode: 0644]
media-config-target-u3/hal/etc/asound.conf [new file with mode: 0644]
media-config-target-u3/hal/etc/inference/inference_engine.ini [new file with mode: 0644]
media-config-target-u3/hal/etc/inference/inference_engine_backend_path.ini [new file with mode: 0644]
media-config-target-u3/hal/etc/multimedia/mmfw_audio_pcm_dump.ini [new file with mode: 0644]
media-config-target-u3/hal/etc/multimedia/mmfw_audio_volume.ini [new file with mode: 0644]
media-config-target-u3/hal/etc/multimedia/mmfw_camcorder.ini [new file with mode: 0644]
media-config-target-u3/hal/etc/multimedia/mmfw_camcorder_camera0.ini [new file with mode: 0644]
media-config-target-u3/hal/etc/multimedia/mmfw_media_codec.ini [new file with mode: 0644]
media-config-target-u3/hal/etc/multimedia/mmfw_media_streamer.ini [new file with mode: 0644]
media-config-target-u3/hal/etc/multimedia/mmfw_player.ini [new file with mode: 0644]
media-config-target-u3/hal/etc/multimedia/mmfw_player_audio_effect.ini [new file with mode: 0644]
media-config-target-u3/hal/etc/multimedia/mmfw_resource_manager.ini [new file with mode: 0644]
media-config-target-u3/hal/etc/multimedia/mmfw_streamrecorder.ini [new file with mode: 0644]
media-config-target-u3/hal/etc/multimedia/mused.conf [new file with mode: 0644]
media-config-target-u3/hal/etc/murphy/murphy.lua [new file with mode: 0644]
media-config-target-u3/hal/etc/profile.d/mmf.sh [new file with mode: 0644]
media-config-target-u3/hal/etc/pulse/client.conf [new file with mode: 0644]
media-config-target-u3/hal/etc/pulse/daemon.conf [new file with mode: 0644]
media-config-target-u3/hal/etc/pulse/default.pa [new file with mode: 0644]
media-config-target-u3/hal/etc/pulse/device-map.json [new file with mode: 0644]
media-config-target-u3/hal/etc/pulse/stream-map.json [new file with mode: 0644]
media-config-target-u3/hal/etc/pulse/system.pa [new file with mode: 0644]
media-config-target-u3/hal/etc/xdg/gstomx.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf [new file with mode: 0644]
media-config-target-u3/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf [new file with mode: 0644]
packaging/media-config.spec [new file with mode: 0644]

diff --git a/AUTHORS b/AUTHORS
new file mode 100644 (file)
index 0000000..07bbefa
--- /dev/null
+++ b/AUTHORS
@@ -0,0 +1,4 @@
+Heechul Jeon <heechul.jeon at samsung dot com>
+Eunhae Choi <eunhae1.choi at samsung dot com>
+Seungbae Shin <seungbae.shin at samsung dot com>
+Jeongmo Yang <jm80.yang at samsung dot com>
diff --git a/LICENSE.APLv2.0 b/LICENSE.APLv2.0
new file mode 100644 (file)
index 0000000..261eeb9
--- /dev/null
@@ -0,0 +1,201 @@
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
diff --git a/LICENSE.LGPLv2.1 b/LICENSE.LGPLv2.1
new file mode 100644 (file)
index 0000000..8add30a
--- /dev/null
@@ -0,0 +1,504 @@
+                 GNU LESSER GENERAL PUBLIC LICENSE
+                      Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+     51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL.  It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+                           Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+  This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it.  You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations below.
+
+  When we speak of free software, we are referring to freedom of use,
+not price.  Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+  To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights.  These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+  For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you.  You must make sure that they, too, receive or can get the source
+code.  If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it.  And you must show them these terms so they know their rights.
+
+  We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+  To protect each distributor, we want to make it very clear that
+there is no warranty for the free library.  Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+\f
+  Finally, software patents pose a constant threat to the existence of
+any free program.  We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder.  Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+  Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License.  This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License.  We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+  When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library.  The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom.  The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+  We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License.  It also provides other free software developers Less
+of an advantage over competing non-free programs.  These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries.  However, the Lesser license provides advantages in certain
+special circumstances.
+
+  For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard.  To achieve this, non-free programs must be
+allowed to use the library.  A more frequent case is that a free
+library does the same job as widely used non-free libraries.  In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+  In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software.  For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+  Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.  Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library".  The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+\f
+                 GNU LESSER GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+  A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+  The "Library", below, refers to any such software library or work
+which has been distributed under these terms.  A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language.  (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+  "Source code" for a work means the preferred form of the work for
+making modifications to it.  For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+  Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it).  Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+  
+  1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+  You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+\f
+  2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) The modified work must itself be a software library.
+
+    b) You must cause the files modified to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    c) You must cause the whole of the work to be licensed at no
+    charge to all third parties under the terms of this License.
+
+    d) If a facility in the modified Library refers to a function or a
+    table of data to be supplied by an application program that uses
+    the facility, other than as an argument passed when the facility
+    is invoked, then you must make a good faith effort to ensure that,
+    in the event an application does not supply such function or
+    table, the facility still operates, and performs whatever part of
+    its purpose remains meaningful.
+
+    (For example, a function in a library to compute square roots has
+    a purpose that is entirely well-defined independent of the
+    application.  Therefore, Subsection 2d requires that any
+    application-supplied function or table used by this function must
+    be optional: if the application does not supply it, the square
+    root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library.  To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License.  (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.)  Do not make any other change in
+these notices.
+\f
+  Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+  This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+  4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+  If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library".  Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+  However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library".  The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+  When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library.  The
+threshold for this to be true is not precisely defined by law.
+
+  If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work.  (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+  Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+\f
+  6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+  You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License.  You must supply a copy of this License.  If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License.  Also, you must do one
+of these things:
+
+    a) Accompany the work with the complete corresponding
+    machine-readable source code for the Library including whatever
+    changes were used in the work (which must be distributed under
+    Sections 1 and 2 above); and, if the work is an executable linked
+    with the Library, with the complete machine-readable "work that
+    uses the Library", as object code and/or source code, so that the
+    user can modify the Library and then relink to produce a modified
+    executable containing the modified Library.  (It is understood
+    that the user who changes the contents of definitions files in the
+    Library will not necessarily be able to recompile the application
+    to use the modified definitions.)
+
+    b) Use a suitable shared library mechanism for linking with the
+    Library.  A suitable mechanism is one that (1) uses at run time a
+    copy of the library already present on the user's computer system,
+    rather than copying library functions into the executable, and (2)
+    will operate properly with a modified version of the library, if
+    the user installs one, as long as the modified version is
+    interface-compatible with the version that the work was made with.
+
+    c) Accompany the work with a written offer, valid for at
+    least three years, to give the same user the materials
+    specified in Subsection 6a, above, for a charge no more
+    than the cost of performing this distribution.
+
+    d) If distribution of the work is made by offering access to copy
+    from a designated place, offer equivalent access to copy the above
+    specified materials from the same place.
+
+    e) Verify that the user has already received a copy of these
+    materials or that you have already sent this user a copy.
+
+  For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it.  However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+  It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system.  Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+\f
+  7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+    a) Accompany the combined library with a copy of the same work
+    based on the Library, uncombined with any other library
+    facilities.  This must be distributed under the terms of the
+    Sections above.
+
+    b) Give prominent notice with the combined library of the fact
+    that part of it is a work based on the Library, and explaining
+    where to find the accompanying uncombined form of the same work.
+
+  8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License.  Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License.  However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+  9. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Library or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+  10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+\f
+  11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded.  In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+  13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation.  If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+\f
+  14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission.  For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this.  Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+                           NO WARRANTY
+
+  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+                    END OF TERMS AND CONDITIONS
+\f
+           How to Apply These Terms to Your New Libraries
+
+  If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change.  You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms of the
+ordinary General Public License).
+
+  To apply these terms, attach the following notices to the library.  It is
+safest to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least the
+"copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the library's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This library is free software; you can redistribute it and/or
+    modify it under the terms of the GNU Lesser General Public
+    License as published by the Free Software Foundation; either
+    version 2.1 of the License, or (at your option) any later version.
+
+    This library is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+    Lesser General Public License for more details.
+
+    You should have received a copy of the GNU Lesser General Public
+    License along with this library; if not, write to the Free Software
+    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the library, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the
+  library `Frob' (a library for tweaking knobs) written by James Random Hacker.
+
+  <signature of Ty Coon>, 1 April 1990
+  Ty Coon, President of Vice
+
+That's all there is to it!
+
+
diff --git a/NOTICE b/NOTICE
new file mode 100644 (file)
index 0000000..2854051
--- /dev/null
+++ b/NOTICE
@@ -0,0 +1,9 @@
+Copyright (c) Samsung Electronics Co., Ltd. All rights reserved.
+Except as noted, this software is licensed under Apache License, Version 2.
+Please, see the LICENSE.APLv2.0 file for Apache License terms and conditions.
+
+Some parts of media-config are licensed under the GNU Lesser General Public License version 2.1
+See the LICENSE.LGPLv2.1 file for LGPL License terms and conditions.
+Specifically, the LGPL parts of media-config are
+ - */etc/*
+ - */usr/share/*
diff --git a/media-config-simulator.manifest b/media-config-simulator.manifest
new file mode 100644 (file)
index 0000000..a76fdba
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+       <request>
+               <domain name="_" />
+       </request>
+</manifest>
diff --git a/media-config-simulator/hal/etc/asound.conf b/media-config-simulator/hal/etc/asound.conf
new file mode 100644 (file)
index 0000000..86fa895
--- /dev/null
@@ -0,0 +1,11 @@
+# default sound configuration for simulator
+
+pcm. !default {
+       type hw
+       card 0
+}
+
+ctl. !default {
+       type hw
+       card 0
+}
diff --git a/media-config-simulator/hal/etc/inference/inference_engine.ini b/media-config-simulator/hal/etc/inference/inference_engine.ini
new file mode 100644 (file)
index 0000000..54eddf2
--- /dev/null
@@ -0,0 +1,3 @@
+[inference backend]
+;/*OPENCV=0, Tensorflow-lite=1
+supported backend types = 0,1
diff --git a/media-config-simulator/hal/etc/multimedia/mmfw_audio_volume.ini b/media-config-simulator/hal/etc/multimedia/mmfw_audio_volume.ini
new file mode 100644 (file)
index 0000000..09a9a97
--- /dev/null
@@ -0,0 +1,19 @@
+[volumes]
+system                         = 0, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 82, 84, 86, 88, 90
+notification                   = 0, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 95
+alarm                          = 0, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 90
+ringtone                       = 0, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 90
+media                          = 0, 44, 48, 52, 56, 61, 66, 70, 74, 78, 82, 85, 88, 91, 94, 97
+call                           = 60, 65, 70, 76, 82, 88, 94, 100
+voip                           = 60, 65, 70, 76, 82, 88, 94, 100
+voice                          = 0, 55, 58, 61, 64, 67, 70, 73, 76, 79, 82, 85, 88, 91, 94, 97
+gain_dialer                    = 1.00
+gain_touch                     = 1.00
+gain_af                        = 0.70
+gain_shutter1                  = 0.14
+gain_shutter2                  = 1.00
+gain_camcording                = 0.30
+gain_midi                      = 1.00
+gain_booting                   = 0.40
+gain_video                     = 0.90
+gain_tts                       = 1.00
diff --git a/media-config-simulator/hal/etc/multimedia/mmfw_camcorder.ini b/media-config-simulator/hal/etc/multimedia/mmfw_camcorder.ini
new file mode 100644 (file)
index 0000000..a669d5b
--- /dev/null
@@ -0,0 +1,109 @@
+; < Camera/Camcorder Configure Main INI file >
+;
+; - SDK Camera
+;
+; - Header List -
+; 1.  General
+; 2.  VideoInput
+; 3.  AudioInput
+; 4.  VideoOutput
+; 5.  Capture
+; 6.  Record
+; 7.  VideoEncoder
+; 8.  AudioEncoder
+; 9.  ImageEncoder
+; 10. Mux
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryMain"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[General]
+SyncStateChange = 1
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap || NOT-USE-DEFAULT_VALUE
+;GSTInitOption = --gst-debug=3,avsysvideosrc:4 || NOT-USE-DEFAULT_VALUE
+ModelName = TIZEN_SDK
+;DisabledAttributes = camera-optical-zoom camera-af-touch-x camera-af-touch-y camera-exposure-value camera-f-number camera-shutter-speed camera-hold-af-after-capturing filter-flip filter-hue display-src-x display-src-y display-src-width display-src-height tag-image-description strobe-control strobe-capabilities strobe-mode detect-mode detect-number detect-focus-select detect-select-number detect-status || NO_DEFAULT_VALUE
+
+[VideoInput]
+VideosrcElement = v4l2src | 1,0 | do-timestamp,1
+UseVideoscale = 0
+VideoscaleElement = videoscale | 3,0 | width,320 | height,240 | method,1
+UseZeroCopyFormat = 0
+DeviceCount = 2
+SupportMediaPacketPreviewCb = 1
+
+[AudioInput]
+AudioDevice = 0,1 || 0
+AudiosrcElement = pulsesrc | 1,0 | do-timestamp,1
+AudiomodemsrcElement = pulsesrc | 1,0 | do-timestamp,1
+
+[VideoOutput]
+; DisplayDevice
+;;; 0: MAIN LCD, 1: SUB LCD, 2:TV OUT, 3: MAIN LCD and SUB LCD, 4: MAIN LCD and TV OUT
+DisplayDevice = 0 || 0
+; DisplayMode
+;;; 0: Default, 1: Pri Video ON and Sec Video Full-Screen, 2: Pri Video OFF and Sec Video Full-Screen
+DisplayMode = 0 || 0
+; Videosink
+;;; 0: Overlay surface, 1: Evas surface, 2: GL surface, 3: NULL surface, 4: Remote
+Videosink = 0,3,4 || 3
+VideosinkElementOverlay = tizenwlsink | 7,0 | draw-borders,0 | force-aspect-ratio,1 | enable-last-sample,0 | qos,0 | sync,0 | show-preroll-frame,0 | use-tbm,0
+VideosinkElementRemote = shmsink | 5,0 | wait-for-connection,0 | perms,511 | enable-last-sample,0 | qos,0 | sync,0
+VideosinkElementNull = fakesink | 3,0 | qos,0 | sync,0 | enable-last-sample,0
+UseVideoscale = 0
+VideoscaleElement = videoscale | 1,0 | method,1
+UseVideoconvert = 1
+VideoconvertElement = videoconvert | 0,0
+
+[VideoEncoder]
+H263 = avenc_h263p | 1,0 | compliance, -2
+MPEG4 = avenc_mpeg4 | 1,0 | compliance, -2
+
+[AudioEncoder]
+AMR = amrnbenc | 0,0
+AAC = avenc_aac | 1,0 | compliance, -2
+WAVE = wavenc | 0,0
+VORBIS = vorbisenc | 0,0
+
+[ImageEncoder]
+JPEG = jpegenc | 0,0
+PNG = pngenc | 0,0
+
+[Capture]
+UseEncodebin = 1
+UseCaptureMode = 0
+VideoscaleElement = videoscale | 1,0 | method,1
+PlayCaptureSound = 1
+
+[Record]
+UseAudioEncoderQueue = 1
+UseVideoEncoderQueue = 1
+VideoProfile = 0
+VideoAutoAudioConvert = 1
+VideoAutoAudioResample = 0
+VideoAutoColorSpace = 1
+AudioProfile = 1
+AudioAutoAudioConvert = 1
+AudioAutoAudioResample = 0
+AudioAutoColorSpace = 0
+ImageProfile = 2
+ImageAutoAudioConvert = 0
+ImageAutoAudioResample = 0
+ImageAutoColorSpace = 0
+RecordsinkElement = filesink | 1,0 | async,0
+UseNoiseSuppressor = 0
+DropVideoFrame = 0
+PassFirstVideoFrame = 0
+
+[Mux]
+3GP = 3gppmux | 0,0
+AMR = avmux_amr | 0,0
+MP4 = mp4mux | 0,0
+OGG = oggmux | 0,0
+WAV = wavenc | 0,0
+AAC = avmux_adts | 0,0
+M2TS = mpegtsmux | 0,0
+
diff --git a/media-config-simulator/hal/etc/multimedia/mmfw_camcorder_camera0.ini b/media-config-simulator/hal/etc/multimedia/mmfw_camcorder_camera0.ini
new file mode 100644 (file)
index 0000000..e0fa03c
--- /dev/null
@@ -0,0 +1,194 @@
+; < Camera/Camcorder Configure Control INI file >
+;
+; - SDK Camera. Mega Camera.
+;
+; - Header List -
+; 1.  Camera
+; 2.  Strobe
+; 3.  Effect
+; 4.  Photograph
+; 5.  Capture
+; 6.  Detect
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryControl"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[Camera]
+; Input index - real setting value
+;;; 0:PRIMARY_CAMERA, 1:SECONDARY_CAMERA
+; Input index - MSL value(convert array index)
+;;; -1:NONE, 0:CAMERA0, 1:CAMERA1
+InputIndex = 0,-255 || 0
+DeviceName = virtual driver
+PreviewResolution = 176,144 | 320,240 | 352,288 | 640,480 || 640,480
+CaptureResolution = 176,144 | 320,240 | 352,288 | 640,480 || 640,480
+VideoResolution = 176,144 | 320,240 | 352,288 | 640,480 || 640,480
+FPS0 = 30 || 30
+FPS1 = 30 || 30
+FPS2 = 30 || 30
+FPS3 = 30 || 30
+; PictureForamt - MSL value
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED
+PictureFormat = 4,7,8 || 4
+Overlay = 0,1 || 1
+; Recommend display rotation
+;;; 0:NONE, 1:90, 2:180, 3:270
+RecommendDisplayRotation = 0
+; Recommend preview format for capture
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY
+RecommendPreviewFormatCapture = 7
+; Recommend preview format for record
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY
+RecommendPreviewFormatRecord = 7
+; Recommend preview resolution
+;;; 0: NORMAL ratio(4:3), 1: WIDE ratio(16:9)
+RecommendPreviewResolution = 640,480 | 352,288 || 640,480
+; Camera facing direction
+;;; 0:REAR, 1:FRONT
+FacingDirection = 0
+
+
+[Strobe]
+;StrobeControl - Not support
+;StrobeCapabilities - Not support
+; Strobe mode - real setting value
+;;; N/A
+; Strobe mode - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:REDEYE_REDUCTION, 4:SLOW_SYNC, 5:FRONT_CURTAIN, 6:REAR_CURTAIN, 7:PERMANENT
+StrobeMode = 0,-255,-255,-255,-255,-255,-255,-255 || 0
+;StrobeStatus - Not support
+;StrobeEV - Not support
+
+
+[Effect]
+Brightness = 1,20 || 10
+Contrast = 1,20 || 10
+Saturation = 1,20 || 10
+Sharpness = 1,20 || 10
+
+; White balance - real setting value
+;;; N/A
+; White balance - MSL value(convert array index)
+;;; 0:NONE, 1:AUTO, 2:DAYLIGHT, 3:CLOUDY, 4:FLUOROSCENT, 5:INCANDESCENT, 6:SHADE, 7:HORIZON, 8:FLASH, 9:CUSTOM
+WhiteBalance = 0,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Color tone - real setting value
+;;; N/A
+; Color tone - MSL value(convert array index)
+;;; 0:NONE, 1:MONO, 2:SEPIA, 3:NEGATIVE, 4:BLUE, 5:GREEN, 6:AQUA, 7:VIOLET, 8:ORANGE, 9:GRAY, 10:REC,
+;;; 11:ANTIQUE, 12:WARM, 13:PINK, 14:YELLOW, 15:PURPLE, 16:EMBOSS, 17:OUTLINE, 18:SOLARIZATION_1, 19:SOLARIZATION_2, 20:SOLARIZATION_3,
+;;; 21:SOLARIZATION_4, 22:SKETCH_1, 23:SKETCH_2, 24:SKETCH_3, 25:SKETCH_4
+ColorTone = 0,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Flip - MSL value(convert array index)
+;;; 0:NONE, 1:HORIZONTAL, 2:VERTICAL, 3:BOTH
+Flip = 0,-255,-255,-255 || 0
+
+; Wide Dynamic Range - real setting value
+;;; N/A
+; Wide Dynamic Range - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO
+WDR = 0,-255,-255 || 0
+
+
+[Photograph]
+;LensInit = 0,1 || 0
+;DigitalZoom = 10,30 || 10
+;OpticalZoom - Not support
+
+; Focus mode - real setting value
+;;; N/A
+; Focus mode - MSL value(convert array index)
+;;; 0:NONE, 1:PAN, 2:AUTO, 3:MANUAL, 4:TOUCH_AUTO, 5:CONTINUOUS
+FocusMode = 0,-255,-255,-255,-255,-255 || 0
+
+; Auto focus type - real setting value
+;;; N/A
+; Auto focus - MSL value(convert array index)
+;;; 0:NONE, 1:NORMAL, 2:MACRO, 3:FULL
+AFType = 0,-255,-255,-255 || 0
+
+; Auto exposure type - real setting value
+;;; N/A
+; Auto exposure mode - MSL value(convert array index)
+;;; 0,OFF 1,ALL 2,CENTER1  3,CENTER2 4,CENTER3 5,SPOT1 6,SPOT2 7,CUSTOM1 8,CUSTOM2
+AEType = -255,0,-255,-255,-255,-255,-255,-255,-255 || 0
+
+;ExposureValue - Not support
+;FNumber - Not support
+;ShutterSpeed - Not support
+
+; ISO - real setting value
+;;; N/A
+; ISO - MSL value(convert array index)
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600, 7:3200
+ISO = 0,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Program mode - real setting value
+;;; N/A
+; Program mode - MSL value(convert array index)
+;;; 0:NORMAL, 1:PORTRAIT, 2:LANDSCAPE, 3:SPORTS, 4:PARTY_N_INDOOR, 5:BEACH_N_INDOOR, 6:SUNSET, 7:DUSK_N_DAWN, 8:FALL_COLOR, 9:NIGHT_SCENE,
+;;; 10:FIREWORK, 11:TEXT, 12:SHOW_WINDOW, 13:CANDLE_LIGHT, 14:BACKLIGHT
+ProgramMode = 0,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Anti-handshake - real setting value
+;;; N/A
+; Anti-handshake - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:MOVIE_ON
+AntiHandshake = 0,-255,-255,-255 || 0
+
+; Video-stabilization - real setting value
+;;; 0:OFF, 1:ON
+; Video-stabilization - MSL value(convert array index)
+;;; 0:OFF, 1:ON
+VideoStabilization = 0 || 0
+
+; Face zoom mode
+;;; 0:OFF, 1:ON
+FaceZoomMode = 0 || 0
+; Face zoom level
+FaceZoomLevel = 0,0 || 0
+
+; PTZ(Pan Tilt Zoom) type
+;;; 0:Mechanical, 1:Electronic
+;PtzType = 0,1 || 1
+
+; Pan range for mechanical movement
+;PanMecha = -10,10
+
+; Pan range for electronic movement
+;PanElec = -10,10
+
+; Tilt range for mechanical movement
+;TiltMecha = -10,10
+
+; Tilt range for electronic movement
+;TiltElec = -10,10
+
+
+[Capture]
+; Output mode
+;;; No need to convert
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED
+OutputMode = 4,7,8,13 || 13
+JpegQuality = 0,100 || 50
+MultishotNumber = 1,1 || 1
+SensorEncodedCapture = 0
+; Support HDR
+;;; 0: OFF, 1: ON, 2: ON and Original
+SupportHDR = 0,-255,-255 || 0
+
+
+[Detect]
+; Detect mode
+;;; No need to convert
+;;; 0:OFF, 1:ON
+DetectMode = 0,-255 || 0
+;DetectNumber - Not support
+;DetectFocusSelect - Not support
+;DetectSelectNumber - Not support
+;DetectStatus - Not support
+
diff --git a/media-config-simulator/hal/etc/multimedia/mmfw_camcorder_camera1.ini b/media-config-simulator/hal/etc/multimedia/mmfw_camcorder_camera1.ini
new file mode 100644 (file)
index 0000000..dd7626d
--- /dev/null
@@ -0,0 +1,194 @@
+; < Camera/Camcorder Configure Control INI file >
+;
+; - SDK Camera - VGA Camera
+;
+; - Header List -
+; 1.  Camera
+; 2.  Strobe
+; 3.  Effect
+; 4.  Photograph
+; 5.  Capture
+; 6.  Detect
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryControl"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[Camera]
+; Input index - real setting value
+;;; 0:PRIMARY_CAMERA, 1:SECONDARY_CAMERA
+; Input index - MSL value(convert array index)
+;;; -1:NONE, 0:CAMERA0, 1:CAMERA1
+InputIndex = -255,0 || 0
+DeviceName = virtual driver
+PreviewResolution = 176,144 | 320,240 | 352,288 | 640,480 || 640,480
+CaptureResolution = 176,144 | 320,240 | 352,288 | 640,480 || 640,480
+VideoResolution = 176,144 | 320,240 | 352,288 | 640,480 || 640,480
+FPS0 = 30 || 30
+FPS1 = 30 || 30
+FPS2 = 30 || 30
+FPS3 = 30 || 30
+; PictureForamt - MSL value
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED
+PictureFormat = 4,7,8 || 4
+Overlay = 0,1 || 1
+; Recommend display rotation
+;;; 0:NONE, 1:90, 2:180, 3:270
+RecommendDisplayRotation = 0
+; Recommend preview format for capture
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY
+RecommendPreviewFormatCapture = 7
+; Recommend preview format for record
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY
+RecommendPreviewFormatRecord = 7
+; Recommend preview resolution
+;;; 0: NORMAL ratio(4:3), 1: WIDE ratio(16:9)
+RecommendPreviewResolution = 640,480 | 352,288 || 640,480
+; Camera facing direction
+;;; 0:REAR, 1:FRONT
+FacingDirection = 1
+
+
+[Strobe]
+;StrobeControl - Not support
+;StrobeCapabilities - Not support
+; Strobe mode - real setting value
+;;; N/A
+; Strobe mode - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:REDEYE_REDUCTION, 4:SLOW_SYNC, 5:FRONT_CURTAIN, 6:REAR_CURTAIN, 7:PERMANENT
+StrobeMode = 0,-255,-255,-255,-255,-255,-255,-255 || 0
+;StrobeStatus - Not support
+;StrobeEV - Not support
+
+
+[Effect]
+Brightness = 1,20 || 10
+Contrast = 1,20 || 10
+Saturation = 1,20 || 10
+Sharpness = 1,20 || 10
+
+; White balance - real setting value
+;;; N/A
+; White balance - MSL value(convert array index)
+;;; 0:NONE, 1:AUTO, 2:DAYLIGHT, 3:CLOUDY, 4:FLUOROSCENT, 5:INCANDESCENT, 6:SHADE, 7:HORIZON, 8:FLASH, 9:CUSTOM
+WhiteBalance = 0,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Color tone - real setting value
+;;; N/A
+; Color tone - MSL value(convert array index)
+;;; 0:NONE, 1:MONO, 2:SEPIA, 3:NEGATIVE, 4:BLUE, 5:GREEN, 6:AQUA, 7:VIOLET, 8:ORANGE, 9:GRAY, 10:REC,
+;;; 11:ANTIQUE, 12:WARM, 13:PINK, 14:YELLOW, 15:PURPLE, 16:EMBOSS, 17:OUTLINE, 18:SOLARIZATION_1, 19:SOLARIZATION_2, 20:SOLARIZATION_3,
+;;; 21:SOLARIZATION_4, 22:SKETCH_1, 23:SKETCH_2, 24:SKETCH_3, 25:SKETCH_4
+ColorTone = 0,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Flip - MSL value(convert array index)
+;;; 0:NONE, 1:HORIZONTAL, 2:VERTICAL, 3:BOTH
+Flip = 0,-255,-255,-255 || 0
+
+; Wide Dynamic Range - real setting value
+;;; N/A
+; Wide Dynamic Range - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO
+WDR = 0,-255,-255 || 0
+
+
+[Photograph]
+;LensInit = 0,1 || 0
+;DigitalZoom = 10,30 || 10
+;OpticalZoom - Not support
+
+; Focus mode - real setting value
+;;; N/A
+; Focus mode - MSL value(convert array index)
+;;; 0:NONE, 1:PAN, 2:AUTO, 3:MANUAL, 4:TOUCH_AUTO, 5:CONTINUOUS
+FocusMode = 0,-255,-255,-255,-255,-255 || 0
+
+; Auto focus type - real setting value
+;;; N/A
+; Auto focus - MSL value(convert array index)
+;;; 0:NONE, 1:NORMAL, 2:MACRO, 3:FULL
+AFType = 0,-255,-255,-255 || 0
+
+; Auto exposure type - real setting value
+;;; N/A
+; Auto exposure mode - MSL value(convert array index)
+;;; 0,OFF 1,ALL 2,CENTER1  3,CENTER2 4,CENTER3 5,SPOT1 6,SPOT2 7,CUSTOM1 8,CUSTOM2
+AEType = -255,0,-255,-255,-255,-255,-255,-255,-255 || 0
+
+;ExposureValue - Not support
+;FNumber - Not support
+;ShutterSpeed - Not support
+
+; ISO - real setting value
+;;; N/A
+; ISO - MSL value(convert array index)
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600, 7:3200
+ISO = 0,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Program mode - real setting value
+;;; N/A
+; Program mode - MSL value(convert array index)
+;;; 0:NORMAL, 1:PORTRAIT, 2:LANDSCAPE, 3:SPORTS, 4:PARTY_N_INDOOR, 5:BEACH_N_INDOOR, 6:SUNSET, 7:DUSK_N_DAWN, 8:FALL_COLOR, 9:NIGHT_SCENE,
+;;; 10:FIREWORK, 11:TEXT, 12:SHOW_WINDOW, 13:CANDLE_LIGHT, 14:BACKLIGHT
+ProgramMode = 0,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Anti-handshake - real setting value
+;;; N/A
+; Anti-handshake - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:MOVIE_ON
+AntiHandshake = 0,-255,-255,-255 || 0
+
+; Video-stabilization - real setting value
+;;; 0:OFF, 1:ON
+; Video-stabilization - MSL value(convert array index)
+;;; 0:OFF, 1:ON
+VideoStabilization = 0 || 0
+
+; Face zoom mode
+;;; 0:OFF, 1:ON
+FaceZoomMode = 0 || 0
+; Face zoom level
+FaceZoomLevel = 0,0 || 0
+
+; PTZ(Pan Tilt Zoom) type
+;;; 0:Mechanical, 1:Electronic
+;PtzType = 0,1 || 1
+
+; Pan range for mechanical movement
+;PanMecha = -10,10
+
+; Pan range for electronic movement
+;PanElec = -10,10
+
+; Tilt range for mechanical movement
+;TiltMecha = -10,10
+
+; Tilt range for electronic movement
+;TiltElec = -10,10
+
+
+[Capture]
+; Output mode
+;;; No need to convert
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED
+OutputMode = 4,7,8,13 || 13
+JpegQuality = 0,100 || 50
+MultishotNumber = 1,1 || 1
+SensorEncodedCapture = 0
+; Support HDR
+;;; 0: OFF, 1: ON, 2: ON and Original
+SupportHDR = 0,-255,-255 || 0
+
+
+[Detect]
+; Detect mode
+;;; No need to convert
+;;; 0:OFF, 1:ON
+DetectMode = 0,-255 || 0
+;DetectNumber - Not support
+;DetectFocusSelect - Not support
+;DetectSelectNumber - Not support
+;DetectStatus - Not support
+
diff --git a/media-config-simulator/hal/etc/multimedia/mmfw_media_codec.ini b/media-config-simulator/hal/etc/multimedia/mmfw_media_codec.ini
new file mode 100644 (file)
index 0000000..7898931
--- /dev/null
@@ -0,0 +1,89 @@
+[h261]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = , ,
+sw_encoder = , ,
+
+[h263]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_h263,   video/x-h263, I420
+sw_encoder = avenc_h263,   video/x-raw,  H263
+
+[h264]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_h264,   video/x-h264, I420
+sw_encoder = , ,
+
+[mpeg4]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_mpeg4,   video/mpeg, I420
+sw_encoder = avenc_mpeg4,   video/x-raw, MPEG4_SP
+
+[aac_lc]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = avenc_aac,   audio/x-raw, AAC_LC
+
+[aac_he]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[aac_he_ps]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[mp3]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_mp3,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[amr_nb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrnb,   audio/AMR, PCM_F32LE
+sw_encoder = amrnbenc, audio/x-raw, AMR_NB
+
+[amr_wb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrwb,   audio/AMR-WB, PCM_F32LE
+sw_encoder = , ,
+
+[vorbis]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = vorbisdec,   audio/x-vorbis, PCM_F32LE
+sw_encoder = , ,
+
+[flac]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_flac,   audio/x-flac, PCM_F32LE
+sw_encoder = , ,
+
+[wmav1]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav1,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmav2]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav2,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmapro]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmapro,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
diff --git a/media-config-simulator/hal/etc/multimedia/mmfw_media_streamer.ini b/media-config-simulator/hal/etc/multimedia/mmfw_media_streamer.ini
new file mode 100644 (file)
index 0000000..47e2601
--- /dev/null
@@ -0,0 +1,124 @@
+[general]
+; generating dot file representing pipeline state
+generate dot = no
+dot dir =
+
+; decodebin will be used instead of decoder node
+use decodebin = yes
+
+; comma separated list of element names which
+; will not be used in autoplug mode
+exclude elements = v4l2video,v4l2h264,v4l2mpeg4,omx,sprd,maru
+
+; comma separated list of element names which
+; will require resources in autoplug mode
+resource elements = omx,sprd
+
+; comma separated list of arguments
+; that will pass to gst_init
+gstreamer arguments = --gst-debug=2
+
+
+;MEDIA_STREAMER_NODE_TYPE_SRC
+[node type 1]
+audio capture = pulsesrc
+video capture = waylandsrc
+camera = v4l2src
+
+;MEDIA_STREAMER_NODE_TYPE_SINK
+[node type 2]
+audio = pulsesink
+overlay = tizenwlsink
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_ENCODER
+[node type 3]
+video/x-h263 = avenc_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DECODER
+[node type 4]
+video/x-h263 = avdec_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_ENCODER
+[node type 5]
+audio/AMR = amrnbenc
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DECODER
+[node type 6]
+audio/AMR = amrnbdec
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_CONVERTER
+[node type 7]
+video/x-raw = videoconvert
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_CONVERTER
+[node type 8]
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_RESAMPLE
+[node type 9]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_PAY
+[node type 10]
+video/x-h263 = rtph263pay
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_PAY
+[node type 11]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DEPAY
+[node type 12]
+video/x-h263 = rtph263depay
+video/x-h264 = rtph264depay
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DEPAY
+[node type 13]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_RATE
+[node type 14]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_SCALE
+[node type 15]
+
+;MEDIA_STREAMER_NODE_TYPE_TEXT_OVERLAY
+[node type 16]
+text/x-raw = textoverlay
+
+;MEDIA_STREAMER_NODE_TYPE_PARSER
+[node type 17]
+video/x-h263 = h263parse
+video/x-h264 = h264parse
+
+;MEDIA_STREAMER_NODE_TYPE_FILTER
+[node type 18]
+
+;MEDIA_STREAMER_NODE_TYPE_TEE
+[node type 19]
+
+;MEDIA_STREAMER_NODE_TYPE_QUEUE
+[node type 20]
+
+;MEDIA_STREAMER_NODE_TYPE_MQUEUE
+[node type 21]
+
+;MEDIA_STREAMER_NODE_TYPE_MUXER
+[node type 22]
+
+;MEDIA_STREAMER_NODE_TYPE_DEMUXER
+[node type 23]
+
+;MEDIA_STREAMER_NODE_TYPE_RTP
+[node type 24]
+
+;MEDIA_STREAMER_NODE_TYPE_INPUT_SELECTOR
+[node type 25]
+
+;MEDIA_STREAMER_NODE_TYPE_OUTPUT_SELECTOR
+[node type 26]
+
+;MEDIA_STREAMER_NODE_TYPE_INTERLEAVE
+[node type 27]
+
+;MEDIA_STREAMER_NODE_TYPE_DEINTERLEAVE
+[node type 28]
+
diff --git a/media-config-simulator/hal/etc/multimedia/mmfw_player.ini b/media-config-simulator/hal/etc/multimedia/mmfw_player.ini
new file mode 100644 (file)
index 0000000..92306e9
--- /dev/null
@@ -0,0 +1,132 @@
+[general]
+
+disable segtrap = yes ; same effect with --gst-disable-segtrap
+
+; set default videosink element according to video surface type(X, EVAS, NULL)
+videosink element overlay = tizenwlsink
+videosink element fake = fakesink
+video converter element = ffmpegcolorspace
+
+; decoder element keyword for resource management.
+video codec element hw =
+video codec element sw = avdec,maru
+video codec default type = sw ; hw or sw
+
+audio codec element hw =
+audio codec element sw = avdec
+audio codec default type = sw ; hw or sw
+
+; support with HW audio codec
+support audio effect = no
+support pcm exporting = no
+support pitch control = no
+support replaygain control = no
+
+audiosink element = pulsesink
+
+; audio offload information
+audio offload sink element =
+audio offload device type =    ; builtin-speaker,bt-a2dp,audio-jack,usb-audio from pulse stream-map
+audio offload media format =   ; Use the format keyword of media_format_mimetype_e, MAX:10
+
+; supported input format of external media source stream
+; Use the format keyword of media_format_mimetype_e, MAX:10
+media stream input format = AAC,H264_SP,H264_MP,H264_HP
+
+; if yes. gstreamer will not update registry
+skip rescan = yes
+delay before repeat = 50 ; msec
+
+; comma separated list of tocken which elemnts has it in it's name will not be used
+; this works if 'use decodebin = yes'
+element exclude keyword = ffdec_, omx_, v4l2
+
+; comma separated list of tocken
+; this works if 'use decodebin = yes'
+unsupported codec keyword = divx
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1 = --gst-debug=*:2
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; generating dot file representing pipeline state
+; DEFAULT MUST BE 'no'. If 'yes', mmplayer will set env-variable for it's session as "export GST_DEBUG_DUMP_DOT_DIR=/tmp/"
+generate dot = no
+
+; parameter is for only video to be determined
+; which clock will be used
+; if yes, system clock will be used
+; apart from this, audiosink is clock provider for audio
+use system clock = yes
+
+; allowed timeout for changing pipeline state
+live state change timeout = 30 ; sec
+localplayback state change timeout = 10 ; sec
+
+; delay in msec for sending EOS
+eos delay = 150 ; msec
+
+; extracted pcm buffer size
+pcm buffer size = 51200 ; 50Kbytes
+
+; max num of bo for sw codec
+video bo max = 10
+
+; video bo timeout (sec)
+video bo timeout = 10
+
+; setup pipeline with decodebin2
+use decodebin = no
+
+[http streaming]
+
+httpsrc element = souphttpsrc
+
+http buffering limit = 99.0 ; percent
+
+; if yes, use file for buffering.
+; if no, use memory for buffering.
+http use file buffer = no
+
+; ring buffer size when use mem buffer
+http ring buffer size = 20971520 ; 20MBytes
+
+http max size bytes = 1048576 ; bytes
+
+http buffering time = 1.2
+
+http timeout = 30 ; sec
+
+
+[rtsp streaming]
+
+rtspsrc element = rtspsrc
+
+rtsp buffering time = 5000; msec
+
+rtsp rebuffering time = 15000; msec
+
+rtsp do typefinding = no; if no, caps on rtspsrc:src pad will be used for autoplugging
+
+rtsp error concealment = yes
+
+
+[hw accelation]
+use video hw accel = no
+
+
+[priority]
+
+use priority setting = no
+
+demux = 95
+
+videosink = 96
+
+audiosink = 97
+
+ringbuffer = 98
diff --git a/media-config-simulator/hal/etc/multimedia/mmfw_player_audio_effect.ini b/media-config-simulator/hal/etc/multimedia/mmfw_player_audio_effect.ini
new file mode 100644 (file)
index 0000000..1394608
--- /dev/null
@@ -0,0 +1,17 @@
+[audio effect]
+; name of audio effect element
+audio effect element = audioeq
+
+; preset audio effect setting
+audio effect preset = no
+
+; custom audio effect setting (EQ/extension)
+audio effect custom = yes
+audio effect custom list = 0
+
+audio effect custom eq band num = 7 ; number of EQ bands
+audio effect custom eq band width = 33, 90, 242, 649, 1743, 4676, 12544 ; list of each EQ band width (Hz)
+audio effect custom eq band freq = 36, 98, 265, 711, 1907, 5117, 13727 ; list of each EQ band central frequency (Hz)
+
+audio effect custom min list = -12 ; list of minimum level value (the first element is for EQ, others for extension effect)
+audio effect custom max list = 12 ; list of maximum level value (the first element is for EQ, others for extension effect)
diff --git a/media-config-simulator/hal/etc/multimedia/mmfw_resource_manager.ini b/media-config-simulator/hal/etc/multimedia/mmfw_resource_manager.ini
new file mode 100644 (file)
index 0000000..c3ed32e
--- /dev/null
@@ -0,0 +1,9 @@
+[max volume]
+video_overlay = -1
+video_encoder = -1
+camera = -1
+radio = -1
+
+[priority]
+media = 10
+interrupt = 99
diff --git a/media-config-simulator/hal/etc/multimedia/mmfw_streamrecorder.ini b/media-config-simulator/hal/etc/multimedia/mmfw_streamrecorder.ini
new file mode 100644 (file)
index 0000000..2888707
--- /dev/null
@@ -0,0 +1,81 @@
+[general]
+;is encsink source is live
+encscink source is live = 0
+
+retrialcount = 10
+
+minimum frame = 5
+
+reset pause time = 0
+
+screen record = 1
+
+convert output buffer num = 6
+
+hw encoder supported = 0 ; 1 if supported and 'video codec element hw' should be formed.
+
+video codec element hw = ; sprd (if verified) or verified hw codec element
+
+[encodebin]
+;MM_STREAMRECORDER_ENCBIN_PROFILE_VIDEO = 0 MM_STREAMRECORDER_ENCBIN_PROFILE_AUDIO = 1
+;MM_STREAMRECORDER_ENCBIN_PROFILE_IMAGE = 2 MM_STREAMRECORDER_ENCBIN_PROFILE_NUM = 3
+encsink bin profile = 0
+
+encsink bin auto audio resample = 0
+
+encsink bin auto colorspace = 1
+
+encsink bin auto audio convert = 1
+
+encsink bin use video toggle = 0
+
+[pipeline]
+encsink bin source = appsrc
+
+name of audio src = pulsesrc
+
+h264 encoder =
+
+h263 encoder = avenc_h263p
+
+mpeg4 encoder = avenc_mpeg4
+
+name of audio encoder = avenc_aac
+
+use parser  =
+
+name of 3GP muxer = avmux_3gp
+
+name of MP4 muxer = avmux_mp4
+
+name of video converter = videoconvert
+
+name of sink = filesink
+
+[video param]
+;/*ms*/
+video frame wait time = 200000
+
+[audio param]
+audio frame minimum space = 102400
+
+audio frame wait time = 20000
+
+[attribute]
+supported height = 1080,720,480,240,288,144
+
+supported width = 1920,1280,640,320,352,176
+
+;/*AMR, AAC, VORBIS ,PCM*/
+supported audio encoders = AMR,AAC,PCM
+
+;/* H263 , H264 , MPEG4 */
+supported video encoders = H263,MPEG4
+
+;/*3GP , AMR, MP4 , WAV, ADTS*/
+supported file formats = 3GP,MP4,AMR,ADTS,WAV
+
+[debug]
+; generating dot file representing pipeline state
+; do export GST_DEBUG_DUMP_DOT_DIR=/tmp/ in the shell (also do export to '/etc/profile.d/mmf.sh')
+generate dot = no
diff --git a/media-config-simulator/hal/etc/multimedia/mused.conf b/media-config-simulator/hal/etc/multimedia/mused.conf
new file mode 100644 (file)
index 0000000..38e07b8
--- /dev/null
@@ -0,0 +1,66 @@
+[muse]
+; The 'hosts' parameter defines the modules,
+; which the user would like to connect to the muse.
+; If you want to add host, then write manually.
+hosts=player, camera, recorder
+logfile=/var/log/mused/muse-server
+lockfile=/tmp/.muse_core.lock
+min_timeout=5
+max_timeout=90
+;100MB=100000
+memory_threshold=100000
+enable_watch_external_storage=1
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1=--gst-debug=*:2
+gstparam2=--gst-disable-segtrap
+gstparam3=
+gstparam4=
+gstparam5=
+gstparam6=
+gstparam7=
+gstparam8=
+gstparam9=
+gstparam10=
+
+; gstparam#=--gst-plugin-load=/usr/lib/gstreamer-1.0/libgstcoreelements.so'
+; can be substituted with gstpreload=coreelements'
+gstpreload=
+
+[player]
+; The 'player' parameter represents the muse-player.
+; This module recovers the "capi-media-player".
+path=libmuse-player.so
+preloaded=no
+timeout=60
+disable_watchdog_api=-1
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[camera]
+; The 'camera' parameter represents the muse-camera.
+; This module recovers the "capi-media-camera".
+path=libmuse-camera.so
+preloaded=no
+timeout=10
+;api 2 is camera_dispatcher_start_preview
+disable_watchdog_api=2
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[recorder]
+; The 'recorder' parameter represents the muse-recorder.
+; This module recovers the "capi-media-recorder".
+; This one should be paired with the 'camera' module.
+path=libmuse-recorder.so
+preloaded=no
+timeout=10
+;api 5 is recorder_start
+disable_watchdog_api=5
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
diff --git a/media-config-simulator/hal/etc/murphy/murphy.lua b/media-config-simulator/hal/etc/murphy/murphy.lua
new file mode 100644 (file)
index 0000000..3d4d93a
--- /dev/null
@@ -0,0 +1,99 @@
+m = murphy.get()
+
+-- load the dlog plugin
+m:try_load_plugin('dlog')
+
+-- load the console plugin
+-- m:try_load_plugin('console')
+
+-- load the dbus plugin
+-- if m:plugin_exists('dbus') then
+--    m:load_plugin('dbus')
+-- end
+
+-- load the native resource plugin
+if m:plugin_exists('resource-native') then
+    m:load_plugin('resource-native')
+    m:info("native resource plugin loaded")
+else
+    m:info("No native resource plugin found...")
+end
+
+-- load the dbus resource plugin
+m:try_load_plugin('resource-dbus', {
+    dbus_bus = "system",
+    dbus_service = "org.Murphy",
+    dbus_track = true,
+    default_zone = "driver",
+    default_class = "implicit"
+})
+
+-- load the domain control plugin
+if m:plugin_exists('domain-control') then
+    m:load_plugin('domain-control')
+else
+    m:info("No domain-control plugin found...")
+end
+
+if m:plugin_exists('glib') then
+    m:load_plugin('glib')
+else
+    m:info("No glib plugin found...")
+end
+
+-- define application classes
+application_class {
+    name     = "interrupt",
+    priority = 99,
+    modal    = false,
+    share    = false,
+    order    = "fifo"
+}
+
+application_class {
+    name     = "media",
+    priority = 10,
+    modal    = false,
+    share    = false,
+    order    = "lifo"
+}
+
+-- define zone attributes
+zone.attributes {
+    type = {mdb.string, "common", "rw"},
+    location = {mdb.string, "anywhere", "rw"}
+}
+
+-- define zones
+zone {
+     name = "driver",
+     attributes = {
+         type = "common",
+         location = "front-left"
+     }
+}
+
+-- define resource classes
+resource.class {
+     name = "video_overlay",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_encoder",
+     shareable = true,
+     sync_release = true
+}
+
+resource.class {
+     name = "camera",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "radio",
+     shareable = false,
+     sync_release = true
+}
diff --git a/media-config-simulator/hal/etc/profile.d/mmf.sh b/media-config-simulator/hal/etc/profile.d/mmf.sh
new file mode 100755 (executable)
index 0000000..7dac276
--- /dev/null
@@ -0,0 +1,6 @@
+#!/bin/sh
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+export GST_DEBUG=2
+export ORC_CODE=debug
+export ORC_DEBUG=5
+export GST_PLUGIN_PATH=@HAL_LIBDIR@/gstreamer-1.0
diff --git a/media-config-simulator/hal/etc/pulse/client.conf b/media-config-simulator/hal/etc/pulse/client.conf
new file mode 100644 (file)
index 0000000..1ce9863
--- /dev/null
@@ -0,0 +1,33 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for PulseAudio clients. See pulse-client.conf(5) for
+## more information. Default values a commented out.  Use either ; or # for
+## commenting.
+
+; default-sink =
+; default-source =
+; default-server =
+
+; autospawn = yes
+; daemon-binary = /usr/bin/pulseaudio
+; extra-arguments = --log-target=syslog
+
+; cookie-file =
+
+; enable-shm = yes
+shm-size-bytes = 4194304 # setting this 0 will use the system-default, usually 64 MiB
diff --git a/media-config-simulator/hal/etc/pulse/daemon.conf b/media-config-simulator/hal/etc/pulse/daemon.conf
new file mode 100644 (file)
index 0000000..431e66b
--- /dev/null
@@ -0,0 +1,83 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for the PulseAudio daemon. See pulse-daemon.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+daemonize = yes
+; fail = yes
+; allow-module-loading = yes
+; allow-exit = yes
+; use-pid-file = yes
+system-instance = yes
+; local-server-type = user
+; enable-shm = yes
+; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
+; lock-memory = no
+; cpu-limit = no
+
+; high-priority = yes
+; nice-level = -11
+
+realtime-scheduling = yes
+realtime-priority = 5
+
+; exit-idle-time = 20
+; scache-idle-time = 20
+
+; dl-search-path = (depends on architecture)
+
+; load-default-script-file = yes
+; default-script-file = /etc/pulse/default.pa
+
+log-target = dlog
+log-level = info
+; log-meta = no
+; log-time = no
+; log-backtrace = 0
+
+resample-method = speex-fixed-3
+; enable-remixing = yes
+; enable-lfe-remixing = no
+
+flat-volumes = no
+
+; rlimit-fsize = -1
+; rlimit-data = -1
+; rlimit-stack = -1
+; rlimit-core = -1
+; rlimit-as = -1
+; rlimit-rss = -1
+; rlimit-nproc = -1
+; rlimit-nofile = 256
+; rlimit-memlock = -1
+; rlimit-locks = -1
+; rlimit-sigpending = -1
+; rlimit-msgqueue = -1
+; rlimit-nice = 31
+; rlimit-rtprio = 9
+; rlimit-rttime = 1000000
+
+; default-sample-format = s16le
+; default-sample-rate = 44100
+alternate-sample-rate = 44100
+; default-sample-channels = 2
+; default-channel-map = front-left,front-right
+
+; default-fragments = 4
+; default-fragment-size-msec = 25
diff --git a/media-config-simulator/hal/etc/pulse/default.pa b/media-config-simulator/hal/etc/pulse/default.pa
new file mode 100755 (executable)
index 0000000..c208aad
--- /dev/null
@@ -0,0 +1,135 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started per-user
+# (i.e. not in system mode)
+
+.nofail
+
+### Load something into the sample cache
+#load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
+#load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-access /usr/share/sounds/generic.wav
+
+.fail
+
+### Automatically restore the volume of streams and devices
+load-module module-device-restore
+load-module module-stream-restore
+load-module module-card-restore
+
+### Automatically augment property information from .desktop files
+### stored in /usr/share/application
+load-module module-augment-properties
+
+### Load audio drivers statically (it's probably better to not load
+### these drivers manually, but instead use module-hal-detect --
+### see below -- for doing this automatically)
+#load-module module-alsa-sink
+#load-module module-alsa-source device=hw:1,0
+#load-module module-oss device="/dev/dsp" sink_name=output source_name=input
+#load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input
+#load-module module-null-sink
+#load-module module-pipe-sink
+
+### Automatically load driver modules depending on the hardware available
+.ifexists module-udev-detect.so
+#load-module module-udev-detect
+.else
+### Alternatively use the static hardware detection module (for systems that
+### lack udev support)
+#load-module module-detect
+.endif
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Load several protocols
+.ifexists module-esound-protocol-unix.so
+load-module module-esound-protocol-unix
+.endif
+load-module module-native-protocol-unix
+
+### Network access (may be configured with paprefs, so leave this commented
+### here if you plan to use paprefs)
+#load-module module-esound-protocol-tcp
+#load-module module-native-protocol-tcp
+#load-module module-zeroconf-publish
+
+### Load the RTP reciever module (also configured via paprefs, see above)
+#load-module module-rtp-recv
+
+### Load the RTP sender module (also configured via paprefs, see above)
+#load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 description="RTP Multicast Sink"
+#load-module module-rtp-send source=rtp.monitor
+
+### Load additional modules from GConf settings. This can be configured with the paprefs tool.
+### Please keep in mind that the modules configured by paprefs might conflict with manually
+### loaded modules.
+.ifexists module-gconf.so
+.nofail
+load-module module-gconf
+.fail
+.endif
+
+### Automatically restore the default sink/source when changed by the user during runtime
+load-module module-default-device-restore
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Honour intended role device property
+load-module module-intended-roles
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle
+
+### If autoexit on idle is enabled we want to make sure we only quit
+### when no local session needs us anymore.
+load-module module-console-kit
+
+### Enable positioned event sounds
+load-module module-position-event-sounds
+
+### Cork music streams when a phone stream is active
+load-module module-cork-music-on-phone
+
+# X11 modules should not be started from default.pa so that one daemon
+# can be shared by multiple sessions.
+
+### Load X11 bell module
+#load-module module-x11-bell sample=bell-windowing-system
+
+### Register ourselves in the X11 session manager
+#load-module module-x11-xsmp
+
+### Publish connection data in the X11 root window
+#.ifexists module-x11-publish.so
+#.nofail
+#load-module module-x11-publish
+#.fail
+#.endif
+
+### Make some devices default
+#set-default-sink output
+#set-default-source input
diff --git a/media-config-simulator/hal/etc/pulse/device-map.json b/media-config-simulator/hal/etc/pulse/device-map.json
new file mode 100644 (file)
index 0000000..f7c7f0e
--- /dev/null
@@ -0,0 +1,44 @@
+{
+       "device-types":[
+               {
+                       "device-type":"builtin-speaker",
+                       "playback-devices":{"normal":"alsa:0,0"}
+               },
+               {
+                       "device-type":"builtin-receiver",
+                       "playback-devices":{"normal":"alsa:0,0"}
+               },
+               {
+                       "device-type":"builtin-mic",
+                       "capture-devices":{"normal":"alsa:0,0"}
+               },
+               {
+                       "device-type":"audio-jack",
+                       "playback-devices":{"normal":"alsa:0,0"},
+                       "capture-devices":{"normal":"alsa:0,0"}
+               },
+               {
+                       "device-type":"hdmi",
+                       "playback-devices":{"normal":"alsa:0,0"}
+               },
+               {
+                       "device-type":"bt-sco",
+                       "playback-devices":{"normal":"alsa:0,0"},
+                       "capture-devices":{"normal":"alsa:0,0"}
+               }
+       ],
+       "device-files":{
+               "playback-devices":[
+                       {
+                               "device-string":"alsa:0,0",
+                               "role":{"normal":"rate=44100"}
+                       }
+               ],
+               "capture-devices":[
+                       {
+                               "device-string":"alsa:0,0",
+                               "role":{"normal":"rate=44100"}
+                       }
+               ]
+       }
+}
diff --git a/media-config-simulator/hal/etc/pulse/stream-map.json b/media-config-simulator/hal/etc/pulse/stream-map.json
new file mode 100644 (file)
index 0000000..d5b6059
--- /dev/null
@@ -0,0 +1,254 @@
+{
+       "latencies":[
+               {
+                       "type":"low",
+                       "fragsize-ms":25,
+                       "minreq-ms":-1,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"mid",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"high",
+                       "fragsize-ms":75,
+                       "minreq-ms":-1,
+                       "tlength-ms":400,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"voip",
+                       "fragsize-ms":20,
+                       "minreq-ms":20,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":-1,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default-async",
+                       "fragsize-ms":50,
+                       "minreq-ms":20,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+       ],
+       "volumes":[
+               {
+                       "type":"master",
+                       "is-hal-volume":1
+               },
+               {
+                       "type":"media",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"system",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"alarm",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"notification",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voice",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"ringtone",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voip",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"call",
+                       "is-hal-volume":0
+               }
+       ],
+       "streams":[
+               {
+                       "role":"media",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["audio-jack","builtin-mic"],
+                       "avail-out-devices":["audio-jack","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"system",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"system"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"alarm",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"alarm"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"notification",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"notification"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"emergency",
+                       "priority" : 4,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-information",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"voice"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-recognition",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["audio-jack","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"voice-recognition-service",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["audio-jack","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"ringtone-voip",
+                       "priority" : 5,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","sound-manager"]
+               },
+               {
+                       "role":"ringtone-call",
+                       "priority" : 6,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"ringbacktone-call",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"call"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-receiver","builtin-speaker"],
+                       "avail-frameworks":["wav-player","tone-player"]
+               },
+               {
+                       "role":"voip",
+                       "priority" : 5,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"voip"},
+                       "avail-in-devices":["builtin-mic","audio-jack"],
+                       "avail-out-devices":["builtin-receiver","builtin-speaker","audio-jack"],
+                       "avail-frameworks":["audio-io","tone-player","sound-manager"]
+               },
+               {
+                       "role":"call-voice",
+                       "priority" : 6,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"call"},
+                       "avail-in-devices":["builtin-mic","audio-jack"],
+                       "avail-out-devices":["builtin-receiver","builtin-speaker","audio-jack"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"call-video",
+                       "priority" : 6,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"call"},
+                       "avail-in-devices":["builtin-mic","audio-jack"],
+                       "avail-out-devices":["builtin-receiver","builtin-speaker","audio-jack"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"radio",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-speaker"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"loopback",
+                       "priority" : 2,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["usb-audio"],
+                       "avail-out-devices":["builtin-speaker","usb-audio"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"ext-media",
+                       "priority" : 3,
+                       "route-type" : "manual-ext",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["usb-audio"],
+                       "avail-out-devices":["usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"solo",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-speaker"],
+                       "avail-frameworks":["wav-player","tone-player"]
+               }
+       ]
+}
diff --git a/media-config-simulator/hal/etc/pulse/system.pa b/media-config-simulator/hal/etc/pulse/system.pa
new file mode 100644 (file)
index 0000000..0e92784
--- /dev/null
@@ -0,0 +1,74 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started in system
+# mode.
+
+### Automatically load driver modules depending on the hardware available
+#.ifexists module-udev-detect.so
+load-module module-udev-detect
+#.endif
+
+### Load several protocols
+load-module module-native-protocol-unix auth-anonymous=1
+
+### Load module-tizenaudio-policy
+load-module module-tizenaudio-policy
+
+### Sound Player module
+load-module module-sound-player
+load-module module-tone-player
+load-module module-role-ducking global=1 trigger_roles=solo/notification ducking_roles=media,system,alarm,notification,voice-information,ext-media/media,ext-media volume=0%/25% fade_in=0/1000 fade_out=0/1000
+load-module module-poweroff
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Automatically restore the volume of streams and devices
+#load-module module-stream-restore
+#load-module module-device-restore
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+.ifexists module-dbus-protocol.so
+### If you want to allow TCP connections, set access to "remote" or "local,remote".
+load-module module-dbus-protocol access=local
+.endif
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+#load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle timeout=1
+
+load-sample camera-shutter-01 /usr/share/sounds/mm-camcorder/capture_shutter_01.ogg
+load-sample camera-shutter-02 /usr/share/sounds/mm-camcorder/capture_shutter_02.ogg
+load-sample recording-start /usr/share/sounds/mm-camcorder/recording_start_01.ogg
+load-sample recording-stop /usr/share/sounds/mm-camcorder/recording_stop_01.ogg
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf
new file mode 100644 (file)
index 0000000..db78eb4
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'Aux' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf
new file mode 100644 (file)
index 0000000..baf674a
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'FM' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-radio
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+.include analog-input.conf.common
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf
new file mode 100644 (file)
index 0000000..4be5722
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf
new file mode 100644 (file)
index 0000000..f7f3085
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic/Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf
new file mode 100644 (file)
index 0000000..2a36f2f
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+name = analog-input-microphone
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common
new file mode 100644 (file)
index 0000000..b35e7af
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common element for all microphone inputs
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Mic Select'
+
+[Element Mic Select]
+enumeration = select
+
+[Option Mic Select:Mic1]
+name = input-microphone
+priority = 20
+
+[Option Mic Select:Mic2]
+name = input-microphone
+priority = 19
+
+;;; Various Boosts
+
+[Element Mic Boost (+20dB)]
+switch = select
+volume = merge
+
+[Option Mic Boost (+20dB):on]
+name = input-boost-on
+
+[Option Mic Boost (+20dB):off]
+name = input-boost-off
+
+[Element Mic Boost]
+switch = select
+volume = merge
+
+[Option Mic Boost:on]
+name = input-boost-on
+
+[Option Mic Boost:off]
+name = input-boost-off
+
+[Element Front Mic Boost]
+switch = select
+
+[Option Front Mic Boost:on]
+name = input-boost-on
+
+[Option Front Mic Boost:off]
+name = input-boost-off
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf
new file mode 100644 (file)
index 0000000..8531ec7
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'TV Tuner' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-video
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf
new file mode 100644 (file)
index 0000000..74c76f0
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Video' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf
new file mode 100644 (file)
index 0000000..5055f90
--- /dev/null
@@ -0,0 +1,54 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; A fallback for devices that lack seperate Mic/Line/Aux/Video/TV
+; Tuner/FM elements
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Capture]
+required = volume
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required-absent = any
+
+[Element Line]
+required-absent = any
+
+[Element Aux]
+required-absent = any
+
+[Element Video]
+required-absent = any
+
+[Element Mic/Line]
+required-absent = any
+
+[Element TV Tuner]
+required-absent = any
+
+[Element FM]
+required-absent = any
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common
new file mode 100644 (file)
index 0000000..951e11f
--- /dev/null
@@ -0,0 +1,294 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Mixer path for PulseAudio's ALSA backend, common elements for all
+; input paths. If multiple options by the same id are discovered they
+; will be suffixed with a number to distuingish them, in the same
+; order they appear here.
+;
+; Source selection should use the following names:
+;
+;       input                       -- If we don't know the exact kind of input
+;       input-microphone
+;       input-microphone-internal
+;       input-microphone-external
+;       input-linein
+;       input-video
+;       input-radio
+;       input-docking-microphone
+;       input-docking-linein
+;       input-docking
+;
+;  We explicitly don't want to wrap the following sources:
+;
+;       CD
+;       Synth/MIDI
+;       Phone
+;       Mix
+;       Digital/SPDIF
+;       Master
+;       PC Speaker
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Input Source Select'
+
+[Element Input Source Select]
+enumeration = select
+
+[Option Input Source Select:Input1]
+name = input
+priority = 10
+
+[Option Input Source Select:Input2]
+name = input
+priority = 5
+
+;;; 'Input Source'
+
+[Element Input Source]
+enumeration = select
+
+[Option Input Source:Mic]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Microphone]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Front Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Front Microphone]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Internal Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Line]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line-In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Docking-Station]
+name = input-docking
+priority = 17
+
+[Option Input Source:AUX IN]
+name = input
+priority = 10
+
+;;; 'Capture Source'
+
+[Element Capture Source]
+enumeration = select
+
+[Option Capture Source:TV Tuner]
+name = input-video
+
+[Option Capture Source:FM]
+name = input-radio
+
+[Option Capture Source:Mic/Line]
+name = input
+
+[Option Capture Source:Line/Mic]
+name = input
+
+[Option Capture Source:Mic]
+name = input-microphone
+
+[Option Capture Source:Microphone]
+name = input-microphone
+
+[Option Capture Source:Int Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Int DMic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Mic]
+name = input-microphone-internal
+
+[Option Capture Source:iMic]
+name = input-microphone-internal
+
+[Option Capture Source:i-Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Microphone]
+name = input-microphone-internal
+
+[Option Capture Source:Front Mic]
+name = input-microphone
+
+[Option Capture Source:Front Microphone]
+name = input-microphone
+
+[Option Capture Source:Rear Mic]
+name = input-microphone
+
+[Option Capture Source:Mic1]
+name = input-microphone
+
+[Option Capture Source:Mic2]
+name = input-microphone
+
+[Option Capture Source:D-Mic]
+name = input-microphone
+
+[Option Capture Source:IntMic]
+name = input-microphone-internal
+
+[Option Capture Source:ExtMic]
+name = input-microphone-external
+
+[Option Capture Source:Ext Mic]
+name = input-microphone-external
+
+[Option Capture Source:E-Mic]
+name = input-microphone-external
+
+[Option Capture Source:e-Mic]
+name = input-microphone-external
+
+[Option Capture Source:LineIn]
+name = input-linein
+
+[Option Capture Source:Analog]
+name = input
+
+[Option Capture Source:Line]
+name = input-linein
+
+[Option Capture Source:Line-In]
+name = input-linein
+
+[Option Capture Source:Line In]
+name = input-linein
+
+[Option Capture Source:Video]
+name = input-video
+
+[Option Capture Source:Aux]
+name = input
+
+[Option Capture Source:Aux0]
+name = input
+
+[Option Capture Source:Aux1]
+name = input
+
+[Option Capture Source:Aux2]
+name = input
+
+[Option Capture Source:Aux3]
+name = input
+
+[Option Capture Source:AUX IN]
+name = input
+
+[Option Capture Source:Aux In]
+name = input
+
+[Option Capture Source:AOUT]
+name = input
+
+[Option Capture Source:AUX]
+name = input
+
+[Option Capture Source:Cam Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 1]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 2]
+name = input-microphone
+
+[Option Capture Source:Analog Inputs]
+name = input
+
+[Option Capture Source:Unknown1]
+name = input
+
+[Option Capture Source:Unknown2]
+name = input
+
+[Option Capture Source:Docking-Station]
+name = input-docking
+
+[Option Capture Source:Dock Mic]
+name = input-docking-microphone
+
+;;; 'Mic Jack Mode'
+
+[Element Mic Jack Mode]
+enumeration = select
+
+[Option Mic Jack Mode:Mic In]
+name = input-microphone
+
+[Option Mic Jack Mode:Line In]
+name = input-linein
+
+;;; 'Digital Input Source'
+
+[Element Digital Input Source]
+enumeration = select
+
+[Option Digital Input Source:Analog Inputs]
+name = input
+
+[Option Digital Input Source:Digital Mic 1]
+name = input-microphone
+
+[Option Digital Input Source:Digital Mic 2]
+name = input-microphone
+
+;;; Various Boosts
+
+[Element Capture Boost]
+switch = select
+
+[Option Capture Boost:on]
+name = input-boost-on
+
+[Option Capture Boost:off]
+name = input-boost-off
+
+[Element Auto Gain Control]
+switch = select
+
+[Option Auto Gain Control:on]
+name = input-agc-on
+
+[Option Auto Gain Control:off]
+name = input-agc-off
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf
new file mode 100644 (file)
index 0000000..f2fd31c
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone2' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 89
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the second headphones, not
+; the first headphones. But it should not hurt if we leave the
+; headphone jack enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf
new file mode 100644 (file)
index 0000000..2131cfe
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+[Element Headphone]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the first headphones, not
+; the second headphones. But it should not hurt if we leave the second
+; headphone jack enabled nonetheless.
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf
new file mode 100644 (file)
index 0000000..0a43e27
--- /dev/null
@@ -0,0 +1,85 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage in laptops that have a seperate LFE speaker
+; connected to the Master mono connector
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 40
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all-no-lfe
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf
new file mode 100644 (file)
index 0000000..542edc4
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage on boards that have a seperate Mono output plug.
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 50
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = off
+volume = off
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf
new file mode 100644 (file)
index 0000000..aea7853
--- /dev/null
@@ -0,0 +1,94 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Speaker' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = mute
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = mute
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = mute
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf
new file mode 100644 (file)
index 0000000..fc30800
--- /dev/null
@@ -0,0 +1,92 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for the 'default' output. Note that a-o-speaker.conf has a
+; higher priority than this
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 99
+
+[Element Hardware Master]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = ignore
+volume = ignore
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the default output, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = ignore
+volume = zero
+
+[Element Headphone2]
+switch = ignore
+volume = zero
+
+[Element Speaker]
+switch = ignore
+volume = off
+
+[Element Front]
+switch = ignore
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = ignore
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = ignore
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = ignore
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common
new file mode 100644 (file)
index 0000000..90c2bb0
--- /dev/null
@@ -0,0 +1,128 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common part of all paths
+
+; So here's generally how mixer paths are used by PA: PA goes through
+; a mixer path file from top to bottom and checks if a mixer element
+; described therein exists. If so it is added to the list of mixer
+; elements PA will control, keeping the order it read them in. If a
+; mixer element described here has set the required= or
+; required-absent= directives a path might not be accepted as valid
+; and is ignored in its entirety (see below). However usually if a
+; element listed here is missing this one element is ignored but not
+; the entire path.
+;
+; When a device shall be muted/unmuted *all* elements listed in a path
+; file with "switch = mute" will be toggled.
+;
+; When a device shall change its volume, PA will got through the list
+; of all elements with "volume = merge" and set the volume on the
+; first element. If that element does not support dB volumes, this is
+; where the story ends. If it does support dB volumes, PA divides the
+; requested volume by the volume that was set on this element, and
+; then go on to the next element with "volume = merge" and then set
+; that there, and so on.  That way the first volume element in the
+; path will be the one that does the 'biggest' part of the overall
+; volume adjustment, with the remaining elements usually being set to
+; some value next to 0dB. This logic makes sure we get the full range
+; over all volume sliders and a very high granularity of volumes
+; already in hardware.
+;
+; All switches and enumerations set to "select" are exposed via the
+; "port" functionality of sinks/sources. Basically every possible
+; switch setting and every possible enumeration setting will be
+; combined and made into a "port". So make sure you don't list too
+; many switches/enums for exposing, because the number of ports might
+; rise exponentially.
+;
+; Only one path can be selected at a time. All paths that are valid
+; for an audio device will be exposed as "port" for the sink/source.
+
+
+; [General]
+; priority = ...                         # Priority for this path
+; description = ...
+;
+; [Option ...:...]                       # For each option of an enumeration or switch element
+;                                        # that shall be exposed as a sink/source port. Needs to
+;                                        # be named after the Element, followed by a colon, followed
+;                                        # by the option name, resp. on/off if the element is a switch.
+; name = ...                             # Logical name to use in the path identifier
+; priority = ...                         # Priority if this is made into a device port
+;
+; [Element ...]                          # For each element that we shall control
+; required = ignore | switch | volume | enumeration | any     # If set, require this element to be of this kind and available,
+;                                                             # otherwise don't consider this path valid for the card
+; required-absent = ignore | switch | volume                  # If set, require this element to not be of this kind and not
+;                                                             # available, otherwise don't consider this path valid for the card
+;
+; switch = ignore | mute | off | on | select                  # What to do with this switch: ignore it, make it follow mute status,
+;                                                             # always set it to off, always to on, or make it selectable as port.
+;                                                             # If set to 'select' you need to define an Option section for on
+;                                                             # and off
+; volume = ignore | merge | off | zero   # What to do with this volume: ignore it, merge it into the device
+;                                        # volume slider, always set it to the lowest value possible, or always
+;                                        # set it to 0 dB (for whatever that means)
+; enumeration = ignore | select          # What to do with this enumeration, ignore it or make it selectable
+;                                        # via device ports. If set to 'select' you need to define an Option section
+;                                        # for each of the items you want to expose
+; direction = playback | capture         # Is this relevant only for playback or capture? If not set this will implicitly be
+;                                        # set the direction of the PCM device is opened as. Generally this doesn't need to be set
+;                                        # unless you have a broken driver that has playback controls marked for capture or vice
+;                                        # versa
+; direction-try-other = no | yes         # If the element does not supported what is requested, try the other direction, too?
+;
+; override-map.1 = ...                   # Override the channel mask of the mixer control if the control only exposes a single channel
+; override-map.2 = ...                   # Override the channel masks of the mixer control if the control only exposes two channels
+;                                        # Override maps should list for each element channel which high-level channels it controls via a
+;                                        # channel mask. A channel mask may either be the name of a single channel, or the words "all-left",
+;                                        # "all-right", "all-center", "all-front", "all-rear", and "all" to encode a specific subset of
+;                                        # channels in a mask
+
+[Element PCM]
+switch = ignore
+volume = ignore
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element External Amplifier]
+switch = select
+
+[Option External Amplifier:on]
+name = output-amplifier-on
+priority = 10
+
+[Option External Amplifier:off]
+name = output-amplifier-off
+priority = 0
+
+;;; 'Analog Output'
+
+[Element Analog Output]
+enumeration = select
+
+[Option Analog Output:Speakers]
+name = output-speaker
+priority = 10
+
+[Option Analog Output:Headphones]
+name = output-headphones
+priority = 9
+
+[Option Analog Output:FP Headphones]
+name = output-headphones
+priority = 8
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf
new file mode 100644 (file)
index 0000000..9838138
--- /dev/null
@@ -0,0 +1,144 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned. (and should be good enough for the vast majority of
+; cards).  Use the udev property PULSE_PROFILE_SET to assign a
+; different profile set than this one to a device.  So what is this
+; about? Simply, what we do here is map ALSA devices to how they are
+; exposed in PA. We say which ALSA device string to use to open a
+; device, which channel mapping to use then, and which mixer path to
+; use. This is encoded in a 'mapping'. Multiple of these mappings can
+; be bound together in a 'profile' which is then directly exposed in
+; the UI as a card profile. Each mapping assigned to a profile will
+; result in one sink/source to be created if the profile is selected
+; for the card.
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+
+[General]
+auto-profiles = yes
+
+[Mapping analog-mono]
+device-strings = hw:0
+channel-map = mono
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 1
+
+[Mapping analog-stereo]
+device-strings = front:%f hw:0
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 10
+
+[Mapping analog-surround-40]
+device-strings = surround40:%f
+channel-map = front-left,front-right,rear-left,rear-right
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-41]
+device-strings = surround41:%f
+channel-map = front-left,front-right,rear-left,rear-right,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-50]
+device-strings = surround50:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-51]
+device-strings = surround51:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-71]
+device-strings = surround71:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+description = Analog Surround 7.1
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping iec958-stereo]
+device-strings = iec958:%f
+channel-map = left,right
+priority = 5
+
+[Mapping iec958-surround-40]
+device-strings = iec958:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 1
+
+[Mapping iec958-ac3-surround-40]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 2
+direction = output
+
+[Mapping iec958-ac3-surround-51]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 3
+direction = output
+
+[Mapping hdmi-stereo]
+device-strings = hdmi:%f
+channel-map = left,right
+priority = 4
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf
new file mode 100644 (file)
index 0000000..2b83530
--- /dev/null
@@ -0,0 +1,91 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 4 DJ
+;
+; This card has two stereo pairs of input and two stereo pairs of
+; output, named channels A and B. Channel B has an additional
+; Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b-output]
+description = Analog Stereo Channel B (Headphones)
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-b-input]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b-output
+input-mappings = analog-stereo-a analog-stereo-b-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+input-mappings = analog-stereo-b-input
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+priority = 6
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b-input
+priority = 1
+skip-probe = yes
diff --git a/media-config-simulator/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf b/media-config-simulator/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf
new file mode 100644 (file)
index 0000000..3fe3cc5
--- /dev/null
@@ -0,0 +1,162 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 8 DJ
+;
+; This card has four stereo pairs of input and four stereo pairs of
+; output, named channels A to D. Channel C has an additional Mic/Line
+; connector, channel D an additional Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+
+# Since we want to set a different description for channel C's/D's input
+# and output we define two seperate mappings for them
+[Mapping analog-stereo-c-output]
+description = Analog Stereo Channel C
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-c-input]
+description = Analog Stereo Channel C (Line/Mic)
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = input
+
+[Mapping analog-stereo-d-output]
+description = Analog Stereo Channel D (Headphones)
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-d-input]
+description = Analog Stereo Channel D
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B, C (Line/Mic), D (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-input analog-stereo-d-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-c]
+description = Analog Stereo Channel D (Headphones) Output, Channel C (Line/Mic) Input
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-c-input
+priority = 90
+skip-probe = yes
+
+[Profile output:analog-stereo-c-d+input:analog-stereo-c-d]
+description = Analog Stereo Duplex Channels C (Line/Mic), D (Line/Mic)
+output-mappings = analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-c-input analog-stereo-d-input
+priority = 80
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B
+output-mappings = analog-stereo-b
+input-mappings = analog-stereo-b
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-c+input:analog-stereo-c]
+description = Analog Stereo Duplex Channel C (Line/Mic)
+output-mappings = analog-stereo-c-output
+input-mappings = analog-stereo-c-input
+priority = 60
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-d]
+description = Analog Stereo Duplex Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-d-input
+priority = 70
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 6
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B
+output-mappings = analog-stereo-b
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-c]
+description = Analog Stereo Output Channel C
+output-mappings = analog-stereo-c-output
+priority = 7
+skip-probe = yes
+
+[Profile output:analog-stereo-d]
+description = Analog Stereo Output Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+priority = 8
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b
+priority = 1
+skip-probe = yes
+
+[Profile input:analog-stereo-c]
+description = Analog Stereo Input Channel C (Line/Mic)
+input-mappings = analog-stereo-c-input
+priority = 4
+skip-probe = yes
+
+[Profile input:analog-stereo-d]
+description = Analog Stereo Input Channel D
+input-mappings = analog-stereo-d-input
+priority = 3
+skip-probe = yes
diff --git a/media-config-target-artik10.manifest b/media-config-target-artik10.manifest
new file mode 100644 (file)
index 0000000..a76fdba
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+       <request>
+               <domain name="_" />
+       </request>
+</manifest>
diff --git a/media-config-target-artik10/hal/etc/asound.conf b/media-config-target-artik10/hal/etc/asound.conf
new file mode 100644 (file)
index 0000000..acaf318
--- /dev/null
@@ -0,0 +1,11 @@
+# default sound configuration
+
+pcm. !default {
+       type hw
+       card 0
+}
+
+ctl. !default {
+       type hw
+       card 0
+}
diff --git a/media-config-target-artik10/hal/etc/multimedia/mmfw_audio_pcm_dump.ini b/media-config-target-artik10/hal/etc/multimedia/mmfw_audio_pcm_dump.ini
new file mode 100644 (file)
index 0000000..6e13b68
--- /dev/null
@@ -0,0 +1,8 @@
+[pcm_dump]
+;playback
+pa_sink = 0
+pa_sink_input = 0
+
+;capture
+pa_source = 0
+pa_source_output = 0
diff --git a/media-config-target-artik10/hal/etc/multimedia/mmfw_audio_volume.ini b/media-config-target-artik10/hal/etc/multimedia/mmfw_audio_volume.ini
new file mode 100644 (file)
index 0000000..ae7e635
--- /dev/null
@@ -0,0 +1,19 @@
+[volumes]
+system                         = 0, 72, 73, 74, 75, 76, 77, 78, 80, 81, 82, 84, 86, 88, 90, 94
+notification                   = 0, 68, 70, 72, 73, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 97
+alarm                          = 0, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 92
+ringtone                       = 0, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 92
+media                          = 0, 46, 50, 53, 58, 62, 68, 72, 76, 80, 84, 87, 90, 93, 96, 100
+call                           = 60, 65, 70, 76, 82, 88, 94, 100
+voip                           = 60, 65, 70, 76, 82, 88, 94, 100
+voice                          = 0, 55, 58, 61, 64, 67, 70, 75, 78, 82, 86, 89, 91, 94, 97, 100
+gain_dialer                    = 1.00
+gain_touch                     = 1.00
+gain_af                        = 0.70
+gain_shutter1                  = 0.14
+gain_shutter2                  = 1.00
+gain_camcording                = 0.30
+gain_midi                      = 1.00
+gain_booting                   = 0.40
+gain_video                     = 0.90
+gain_tts                       = 1.00
diff --git a/media-config-target-artik10/hal/etc/multimedia/mmfw_camcorder.ini b/media-config-target-artik10/hal/etc/multimedia/mmfw_camcorder.ini
new file mode 100644 (file)
index 0000000..37246d4
--- /dev/null
@@ -0,0 +1,102 @@
+; < Camera/Camcorder Configure Main INI file >
+;
+; - Header List -
+; 1.  General
+; 2.  VideoInput
+; 3.  AudioInput
+; 4.  VideoOutput
+; 5.  Capture
+; 6.  Record
+; 7.  VideoEncoder
+; 8.  AudioEncoder
+; 9.  ImageEncoder
+; 10. Mux
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryMain"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[General]
+SyncStateChange = 1
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap || NOT-USE-DEFAULT_VALUE
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap --gst-debug=3 || NOT-USE-DEFAULT_VALUE
+ModelName = ARTIK
+
+[VideoInput]
+VideosrcElement = v4l2src | 1,0 | do-timestamp,1
+UseVideoscale = 0
+UseZeroCopyFormat = 0
+DeviceCount = 1
+SupportMediaPacketPreviewCb = 1
+
+[AudioInput]
+AudioDevice = 0,1 || 0
+AudiosrcElement = pulsesrc | 1,0 | do-timestamp,1
+AudiomodemsrcElement = pulsesrc | 1,0 | do-timestamp,1
+
+[VideoOutput]
+; DisplayDevice
+;;; 0: MAIN LCD, 1: SUB LCD, 2:TV OUT, 3: MAIN LCD and SUB LCD, 4: MAIN LCD and TV OUT
+DisplayDevice = 0 || 0
+; DisplayMode
+;;; 0: Default, 1: Pri Video ON and Sec Video Full-Screen, 2: Pri Video OFF and Sec Video Full-Screen
+DisplayMode = 0,1,2 || 0
+; Videosink
+;;; 0: Overlay surface, 1: Evas surface, 2: GL surface, 3: NULL surface, 4: Remote
+Videosink = 0,3,4 || 3
+VideosinkElementOverlay = tizenwlsink | 7,0 | draw-borders,0 | force-aspect-ratio,1 | enable-last-sample,0 | qos,0 | sync,0 | show-preroll-frame,0 | use-tbm,0
+VideosinkElementRemote = tizenipcsink | 4,0 | permissions,511 | enable-last-sample,0 | qos,0 | sync,0
+VideosinkElementNull = fakesink | 4,0 | qos,0 | sync,0 | enable-last-sample,0 | show-preroll-frame,0
+UseVideoscale = 0
+VideoscaleElement = videoscale | 1,0 | method,1
+UseVideoconvert = 1
+VideoconvertElement = videoconvert | 0,0
+
+[VideoEncoder]
+MPEG4 = avenc_mpeg4 | 0,0
+
+[AudioEncoder]
+AMR = amrnbenc | 0,0
+AAC = avenc_aac | 1,0 | compliance,-2
+WAVE = wavenc | 0,0
+
+[ImageEncoder]
+JPEG = jpegenc | 0,0
+
+[Capture]
+UseEncodebin = 1
+UseCaptureMode = 0
+VideoscaleElement = videoscale | 1,0 | method,1
+
+[Record]
+UseAudioEncoderQueue = 1
+UseVideoEncoderQueue = 0
+VideoProfile = 0
+VideoAutoAudioConvert = 1
+VideoAutoAudioResample = 0
+VideoAutoColorSpace = 1
+AudioProfile = 1
+AudioAutoAudioConvert = 1
+AudioAutoAudioResample = 0
+AudioAutoColorSpace = 0
+ImageProfile = 2
+ImageAutoAudioConvert = 0
+ImageAutoAudioResample = 0
+ImageAutoColorSpace = 1
+RecordsinkElement = filesink | 1,0 | async,0
+UseNoiseSuppressor = 0
+DropVideoFrame = 0
+PassFirstVideoFrame = 0
+
+[Mux]
+3GP = 3gppmux | 0,0
+AMR = avmux_amr | 0,0
+MP4 = mp4mux | 0,0
+AVI = avimux | 0,0
+MATROSKA = matroskamux | 0,0
+WAV = wavenc | 0,0
+AAC = avmux_adts | 0,0
+M2TS = mpegtsmux | 0,0
+
diff --git a/media-config-target-artik10/hal/etc/multimedia/mmfw_camcorder_camera0.ini b/media-config-target-artik10/hal/etc/multimedia/mmfw_camcorder_camera0.ini
new file mode 100644 (file)
index 0000000..607ab82
--- /dev/null
@@ -0,0 +1,207 @@
+; < Camera/Camcorder Configure Control INI file >
+;
+; - Header List -
+; 1.  Camera
+; 2.  Strobe
+; 3.  Effect
+; 4.  Photograph
+; 5.  Capture
+; 6.  Detect
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryControl"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[Camera]
+; Input index - real setting value
+;;; 0:PRIMARY_CAMERA, 1:SECONDARY_CAMERA
+; Input index - MSL value(convert array index)
+;;; -1:NONE, 0:CAMERA0, 1:CAMERA1
+InputIndex = 0,-255 || 0
+DeviceName = S5K5EA
+PreviewResolution = 640,480 | 1280,720 | 1280,960 || 1280,720
+CaptureResolution = 640,480 | 1280,720 | 1280,960 | 2560,1440 || 1280,720
+VideoResolution = 640,480 | 1280,720 | 1280,960 || 640,480
+FPS0 = 15,30 || 15
+FPS1 = 15,30 || 15
+FPS2 = 15 || 15
+; PictureForamt - MSL value
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+PictureFormat = 7 || 7
+Overlay = 0,1 || 1
+; Recommend display rotation
+;;; 0:NONE, 1:90, 2:180, 3:270
+RecommendDisplayRotation = 3
+; Recommend preview format for capture
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatCapture = 7
+; Recommend preview format for record
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatRecord = 7
+; Recommend preview resolution
+;;; 0: NORMAL ratio(4:3), 1: WIDE ratio(16:9), 2: SQUARE ratio(1:1)
+RecommendPreviewResolution = 1280,960 | 1280,720 | 1280,960 || 1280,720
+; Camera facing direction
+;;; 0:REAR, 1:FRONT
+FacingDirection = 0
+
+
+[Strobe]
+;StrobeControl - Not support
+;StrobeCapabilities - Not support
+; Strobe mode - real setting value
+;;; 0:BASE, 1:OFF, 2:AUTO, 3:ON, 4:TORCH, 5:MAX
+; Strobe mode - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:REDEYE_REDUCTION, 4:SLOW_SYNC, 5:FRONT_CURTAIN, 6:REAR_CURTAIN, 7:PERMANENT
+StrobeMode = 1,-255,-255,-255,-255,-255,-255,-255 || 1
+;StrobeStatus - Not support
+;StrobeEV - Not support
+
+
+[Effect]
+;Brightness = 0,8 || 4
+;Contrast = 1,7 || 4
+;Saturation = 0,4 || 2
+;Sharpness = 0,4 || 2
+
+; White balance - real setting value
+;;; 0:AUTO, 1:DAYLIGHT, 2:CLOUDY, 3:TUNGSTEN, 4:FLUORESCENT
+; White balance - MSL value(convert array index)
+;;; 0:NONE, 1:AUTO, 2:DAYLIGHT, 3:CLOUDY, 4:FLUORESCENT, 5:INCANDESCENT, 6:SHADE, 7:HORIZON, 8:FLASH, 9:CUSTOM
+WhiteBalance = -255,0,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Color tone - real setting value
+;;; 1:NONE, 2:MONO, 3:SEPIA, 4:AQUA, 5:ANTIQUE, 6:NEGATIVE, 7:SHARPEN, 8:SKETCH, 9:WASHED, 10:VINTAGE_WARM
+;;; 11:VINTAGE_COLD, 12:SOLARIZE, 13:POSTERIZE, 14:POINT_BLUE, 15:POINT_RED_YELLOW, 16:POINT_COLOR_3, 17:POINT_GREEN, 18:POINT_RED, 19:POINT_YELLOW, 20:CARTOONIZE
+; Color tone - MSL value(convert array index)
+;;; 0:NONE, 1:MONO, 2:SEPIA, 3:NEGATIVE, 4:BLUE, 5:GREEN, 6:AQUA, 7:VIOLET, 8:ORANGE, 9:GRAY, 10:RED,
+;;; 11:ANTIQUE, 12:WARM, 13:PINK, 14:YELLOW, 15:PURPLE, 16:EMBOSS, 17:OUTLINE, 18:SOLARIZATION, 19:SKETCH, 20:WASHED,
+;;; 21:VINTAGE_WARM, 22:VINTAGE_COLD, 23:POSTERIZATION, 24:CARTOON, 25:SELECTIVE_RED, 26:SELECTIVE_GREEN, 27:SELECTIVE_BLUE, 28:SELECTIVE_YELLOW, 29:SELECTIVE_RED_YELLOW
+ColorTone = 1,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 1
+; Flip - real setting value
+;;; 0:NONE, 1:VERTICAL, 2:HORIZONTAL
+; Flip - MSL value(convert array index)
+;;; 0:HORIZONTAL, 1:VERTICAL, 2:NONE
+;Flip = 2,1,0 || 0
+
+; Wide Dynamic Range - real setting value
+;;; 0:OFF, 1:ON
+; Wide Dynamic Range - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO
+WDR = 0,-255,-255 || 0
+
+; Part color mode - real setting value
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+; Part color mode - MSL value(convert array index)
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+;PartColorMode = 0,1,2 || 0
+
+; Part color - real setting value
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+; Part color - MSL value(convert array index)
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT_BLUE, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+;PartColor = 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 || 0
+
+
+[Photograph]
+;LensInit = 0,1 || 0
+;DigitalZoom = 0,10 || 0
+;OpticalZoom = 0,0 || 0
+
+; Focus mode - real setting value
+;;; 0:AUTO, 1:MANUAL, 2:PAN, 3:TOUCH_AUTO, 4:CONTINUOUS
+; Focus mode - MSL value(convert array index)
+;;; 0:NONE, 1:PAN, 2:AUTO, 3:MANUAL, 4:TOUCH_AUTO, 5:CONTINUOUS
+FocusMode = 0,-255,-255,-255,-255,-255 || 0
+
+; Auto focus type - real setting value
+;;; 0:NORMAL, 1:MACRO, 2:FULL
+; Auto focus - MSL value(convert array index)
+;;; 0:NONE, 1:NORMAL, 2:MACRO, 3:FULL
+AFType = 0,-255,-255,-255 || 0
+
+; Auto exposure type - real setting value
+;;; 0:BASE, 1:MATRIX, 2:CENTER, 3:SPOT, 4:MAX
+; Auto exposure mode - MSL value(convert array index)
+;;; 0,OFF 1,ALL 2,CENTER1  3,CENTER2 4,CENTER3 5,SPOT1 6,SPOT2 7,CUSTOM1 8,CUSTOM2
+AEType = -255,0,-255,-255,-255,-255,-255,-255,-255 || 0
+
+;ExposureValue - Not support
+;FNumber - Not support
+;ShutterSpeed - Not support
+
+; ISO - real setting value
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600
+; ISO - MSL value(convert array index)
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600, 7:3200
+ISO = 0,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Program mode - real setting value
+;;; 1:NONE, 2:PORTRAIT, 3:NIGHTSHOT, 4:BACK_LIGHT, 5:LANDSCAPE, 6:SPORTS, 7:PARTY_INDOOR, 8:BEACH_SNOW, 9:SUNSET, 10:DUSK_DAWN,
+;;; 11:FALL_COLOR, 12:FIREWORKS, 13:TEXT, 14:CANDLE_LIGHT
+; Program mode - MSL value(convert array index)
+;;; 0:NORMAL, 1:PORTRAIT, 2:LANDSCAPE, 3:SPORTS, 4:PARTY_N_INDOOR, 5:BEACH_N_INDOOR, 6:SUNSET, 7:DUSK_N_DAWN, 8:FALL_COLOR, 9:NIGHT_SCENE,
+;;; 10:FIREWORK, 11:TEXT, 12:SHOW_WINDOW, 13:CANDLE_LIGHT, 14:BACKLIGHT
+ProgramMode = 0,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Anti-handshake - real setting value
+;;; 0:OFF, 1:ON
+; Anti-handshake - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:MOVIE_ON
+AntiHandshake = 0,-255,-255,-255 || 0
+
+; Video-stabilization - real setting value
+;;; 0:OFF, 1:ON
+; Video-stabilization - MSL value(convert array index)
+;;; 0:OFF, 1:ON
+VideoStabilization = 0 || 0
+
+; Face zoom mode
+;;; 0:OFF, 1:ON
+FaceZoomMode = 0 || 0
+; Face zoom level
+FaceZoomLevel = 0,0 || 0
+
+; PTZ(Pan Tilt Zoom) type
+;;; 0:Mechanical, 1:Electronic
+;PtzType = 0,1 || 1
+
+; Pan range for mechanical movement
+;PanMecha = -10,10
+
+; Pan range for electronic movement
+;PanElec = -10,10
+
+; Tilt range for mechanical movement
+;TiltMecha = -10,10
+
+; Tilt range for electronic movement
+;TiltElec = -10,10
+
+
+[Capture]
+; Output mode
+;;; No need to convert
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY
+OutputMode = 7,13 || 13
+JpegQuality = 1,100 || 95
+MultishotNumber = 1,1 || 1
+SensorEncodedCapture = 0
+; Support HDR
+;;; 0: OFF, 1: ON, 2: ON and Original
+SupportHDR = 0,-255,-255 || 0
+
+
+[Detect]
+; Detect mode
+;;; 0:OFF, 1:ON
+DetectMode = 0,-255 || 0
+;DetectNumber - Not support
+;DetectFocusSelect - Not support
+;DetectSelectNumber - Not support
+;DetectStatus - Not support
+
diff --git a/media-config-target-artik10/hal/etc/multimedia/mmfw_media_codec.ini b/media-config-target-artik10/hal/etc/multimedia/mmfw_media_codec.ini
new file mode 100644 (file)
index 0000000..9f2a5dd
--- /dev/null
@@ -0,0 +1,89 @@
+[h261]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = , ,
+sw_encoder = , ,
+
+[h263]
+hw_decoder = omxdec_h263, video/x-h263, NV12
+hw_encoder = omxenc_h263, video/x-raw,  H263
+sw_decoder = avdec_h263,   video/x-h263, I420
+sw_encoder = avenc_h263,   video/x-raw,  H263
+
+[h264]
+hw_decoder = omxdec_h264, video/x-h264, NV12
+hw_encoder = omxenc_h264, video/x-raw,  H264_SP
+sw_decoder = avdec_h264,   video/x-h264, I420
+sw_encoder = avenc_h264,   video/x-raw,  H264_SP
+
+[mpeg4]
+hw_decoder = omxdec_mpeg4, video/mpeg, NV12
+hw_encoder = omxenc_mpeg4, video/x-raw,  MPEG4_SP
+sw_decoder = avdec_mpeg4,   video/mpeg, I420
+sw_encoder = avenc_mpeg4,   video/x-raw,  MPEG4_SP
+
+[aac_lc]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = avenc_aac,   audio/x-raw, AAC_LC
+
+[aac_he]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[aac_he_ps]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[mp3]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_mp3,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[amr_nb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrnb,   audio/AMR, PCM_F32LE
+sw_encoder = amrnbenc, audio/x-raw, AMR_NB
+
+[amr_wb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrwb,   audio/AMR-WB, PCM_F32LE
+sw_encoder = , ,
+
+[vorbis]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = vorbisdec,   audio/x-vorbis, PCM_F32LE
+sw_encoder = , ,
+
+[flac]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_flac,   audio/x-flac, PCM_F32LE
+sw_encoder = , ,
+
+[wmav1]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav1,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmav2]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav2,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmapro]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmapro,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
diff --git a/media-config-target-artik10/hal/etc/multimedia/mmfw_media_streamer.ini b/media-config-target-artik10/hal/etc/multimedia/mmfw_media_streamer.ini
new file mode 100644 (file)
index 0000000..34566de
--- /dev/null
@@ -0,0 +1,124 @@
+[general]
+; generating dot file representing pipeline state
+generate dot = no
+dot dir =
+
+; decodebin will be used instead of decoder node
+use decodebin = yes
+
+; comma separated list of element names which
+; will not be used in autoplug mode
+exclude elements = v4l2video,v4l2h264,v4l2mpeg4,omx,sprd,nxvideo
+
+; comma separated list of element names which
+; will require resources in autoplug mode
+resource elements = omx,sprd
+
+; comma separated list of arguments
+; that will pass to gst_init
+gstreamer arguments = --gst-debug=2
+
+
+;MEDIA_STREAMER_NODE_TYPE_SRC
+[node type 1]
+audio capture = pulsesrc
+video capture = waylandsrc
+camera = v4l2src
+
+;MEDIA_STREAMER_NODE_TYPE_SINK
+[node type 2]
+audio = pulsesink
+overlay = tizenwlsink
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_ENCODER
+[node type 3]
+video/x-h263 = avenc_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DECODER
+[node type 4]
+video/x-h263 = avdec_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_ENCODER
+[node type 5]
+audio/AMR = amrnbenc
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DECODER
+[node type 6]
+audio/AMR = amrnbdec
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_CONVERTER
+[node type 7]
+video/x-raw = videoconvert
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_CONVERTER
+[node type 8]
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_RESAMPLE
+[node type 9]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_PAY
+[node type 10]
+video/x-h263 = rtph263pay
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_PAY
+[node type 11]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DEPAY
+[node type 12]
+video/x-h263 = rtph263depay
+video/x-h264 = rtph264depay
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DEPAY
+[node type 13]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_RATE
+[node type 14]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_SCALE
+[node type 15]
+
+;MEDIA_STREAMER_NODE_TYPE_TEXT_OVERLAY
+[node type 16]
+text/x-raw = textoverlay
+
+;MEDIA_STREAMER_NODE_TYPE_PARSER
+[node type 17]
+video/x-h263 = h263parse
+video/x-h264 = h264parse
+
+;MEDIA_STREAMER_NODE_TYPE_FILTER
+[node type 18]
+
+;MEDIA_STREAMER_NODE_TYPE_TEE
+[node type 19]
+
+;MEDIA_STREAMER_NODE_TYPE_QUEUE
+[node type 20]
+
+;MEDIA_STREAMER_NODE_TYPE_MQUEUE
+[node type 21]
+
+;MEDIA_STREAMER_NODE_TYPE_MUXER
+[node type 22]
+
+;MEDIA_STREAMER_NODE_TYPE_DEMUXER
+[node type 23]
+
+;MEDIA_STREAMER_NODE_TYPE_RTP
+[node type 24]
+
+;MEDIA_STREAMER_NODE_TYPE_INPUT_SELECTOR
+[node type 25]
+
+;MEDIA_STREAMER_NODE_TYPE_OUTPUT_SELECTOR
+[node type 26]
+
+;MEDIA_STREAMER_NODE_TYPE_INTERLEAVE
+[node type 27]
+
+;MEDIA_STREAMER_NODE_TYPE_DEINTERLEAVE
+[node type 28]
+
diff --git a/media-config-target-artik10/hal/etc/multimedia/mmfw_player.ini b/media-config-target-artik10/hal/etc/multimedia/mmfw_player.ini
new file mode 100644 (file)
index 0000000..ff5b3b9
--- /dev/null
@@ -0,0 +1,102 @@
+[general]
+
+disable segtrap = yes ; same effect with --gst-disable-segtrap
+
+; set default videosink element according to video surface type(X, EVAS, NULL)
+videosink element overlay = tizenwlsink
+videosink element fake = fakesink
+video converter element =
+
+; decoder element keyword for resource management.
+video codec element hw = nxvideodec
+video codec element sw = avdec
+video codec default type = hw ; hw or sw
+
+audio codec element hw =
+audio codec element sw = avdec
+audio codec default type = sw ; hw or sw
+
+; support with HW audio codec
+support audio effect = no
+support pcm exporting = no
+support pitch control = no
+support replaygain control = no
+
+audiosink element = pulsesink
+
+; audio offload information
+audio offload sink element =
+audio offload device type =    ; builtin-speaker,bt-a2dp,audio-jack,usb-audio from pulse stream-map
+audio offload media format =   ; Use the format keyword of media_format_mimetype_e, MAX:10
+
+; supported input format of external media source stream
+; Use the format keyword of media_format_mimetype_e, MAX:10
+media stream input format = AAC,H264_SP,H264_MP,H264_HP
+
+; if yes. gstreamer will not update registry
+skip rescan = yes
+delay before repeat = 50 ; msec
+
+; comma separated list of tocken which elemnts has it in it's name will not be used
+; this works if 'use decodebin = yes'
+element exclude keyword = v4l2,omx
+
+; comma separated list of tocken
+; this works if 'use decodebin = yes'
+unsupported codec keyword = divx
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1 = --gst-debug=*:2
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; generating dot file representing pipeline state
+; DEFAULT MUST BE 'no'. If 'yes', mmplayer will set env-variable for it's session as "export GST_DEBUG_DUMP_DOT_DIR=/tmp/"
+generate dot = no
+
+; parameter is for only video to be determined
+; which clock will be used
+; if yes, system clock will be used
+; apart from this, audiosink is clock provider for audio
+use system clock = yes
+
+; allowed timeout for changing pipeline state
+live state change timeout = 30 ; sec
+localplayback state change timeout = 10 ; sec
+
+; delay in msec for sending EOS
+eos delay = 0 ; msec
+
+; extracted pcm buffer size
+pcm buffer size = 51200 ; 50Kbytes
+
+; max num of bo for sw codec
+video bo max = 10
+
+; video bo timeout (sec)
+video bo timeout = 10
+
+; setup pipeline with decodebin2
+use decodebin = no
+
+[http streaming]
+
+httpsrc element = souphttpsrc
+
+http buffering limit = 99.0 ; percent
+
+; if yes, use file for buffering.
+; if no, use memory for buffering.
+http use file buffer = no
+
+; ring buffer size when use mem buffer
+http ring buffer size = 20971520 ; 20MBytes
+
+http max size bytes = 1048576 ; bytes
+
+http buffering time = 1.2
+
+http timeout = 30 ; sec
diff --git a/media-config-target-artik10/hal/etc/multimedia/mmfw_player_audio_effect.ini b/media-config-target-artik10/hal/etc/multimedia/mmfw_player_audio_effect.ini
new file mode 100644 (file)
index 0000000..1394608
--- /dev/null
@@ -0,0 +1,17 @@
+[audio effect]
+; name of audio effect element
+audio effect element = audioeq
+
+; preset audio effect setting
+audio effect preset = no
+
+; custom audio effect setting (EQ/extension)
+audio effect custom = yes
+audio effect custom list = 0
+
+audio effect custom eq band num = 7 ; number of EQ bands
+audio effect custom eq band width = 33, 90, 242, 649, 1743, 4676, 12544 ; list of each EQ band width (Hz)
+audio effect custom eq band freq = 36, 98, 265, 711, 1907, 5117, 13727 ; list of each EQ band central frequency (Hz)
+
+audio effect custom min list = -12 ; list of minimum level value (the first element is for EQ, others for extension effect)
+audio effect custom max list = 12 ; list of maximum level value (the first element is for EQ, others for extension effect)
diff --git a/media-config-target-artik10/hal/etc/multimedia/mmfw_resource_manager.ini b/media-config-target-artik10/hal/etc/multimedia/mmfw_resource_manager.ini
new file mode 100644 (file)
index 0000000..082f297
--- /dev/null
@@ -0,0 +1,9 @@
+[max volume]
+video_overlay = -1
+video_decoder = -1
+video_encoder = -1
+camera = -1
+
+[priority]
+media = 10
+interrupt = 99
diff --git a/media-config-target-artik10/hal/etc/multimedia/mmfw_streamrecorder.ini b/media-config-target-artik10/hal/etc/multimedia/mmfw_streamrecorder.ini
new file mode 100644 (file)
index 0000000..2888707
--- /dev/null
@@ -0,0 +1,81 @@
+[general]
+;is encsink source is live
+encscink source is live = 0
+
+retrialcount = 10
+
+minimum frame = 5
+
+reset pause time = 0
+
+screen record = 1
+
+convert output buffer num = 6
+
+hw encoder supported = 0 ; 1 if supported and 'video codec element hw' should be formed.
+
+video codec element hw = ; sprd (if verified) or verified hw codec element
+
+[encodebin]
+;MM_STREAMRECORDER_ENCBIN_PROFILE_VIDEO = 0 MM_STREAMRECORDER_ENCBIN_PROFILE_AUDIO = 1
+;MM_STREAMRECORDER_ENCBIN_PROFILE_IMAGE = 2 MM_STREAMRECORDER_ENCBIN_PROFILE_NUM = 3
+encsink bin profile = 0
+
+encsink bin auto audio resample = 0
+
+encsink bin auto colorspace = 1
+
+encsink bin auto audio convert = 1
+
+encsink bin use video toggle = 0
+
+[pipeline]
+encsink bin source = appsrc
+
+name of audio src = pulsesrc
+
+h264 encoder =
+
+h263 encoder = avenc_h263p
+
+mpeg4 encoder = avenc_mpeg4
+
+name of audio encoder = avenc_aac
+
+use parser  =
+
+name of 3GP muxer = avmux_3gp
+
+name of MP4 muxer = avmux_mp4
+
+name of video converter = videoconvert
+
+name of sink = filesink
+
+[video param]
+;/*ms*/
+video frame wait time = 200000
+
+[audio param]
+audio frame minimum space = 102400
+
+audio frame wait time = 20000
+
+[attribute]
+supported height = 1080,720,480,240,288,144
+
+supported width = 1920,1280,640,320,352,176
+
+;/*AMR, AAC, VORBIS ,PCM*/
+supported audio encoders = AMR,AAC,PCM
+
+;/* H263 , H264 , MPEG4 */
+supported video encoders = H263,MPEG4
+
+;/*3GP , AMR, MP4 , WAV, ADTS*/
+supported file formats = 3GP,MP4,AMR,ADTS,WAV
+
+[debug]
+; generating dot file representing pipeline state
+; do export GST_DEBUG_DUMP_DOT_DIR=/tmp/ in the shell (also do export to '/etc/profile.d/mmf.sh')
+generate dot = no
diff --git a/media-config-target-artik10/hal/etc/multimedia/mused.conf b/media-config-target-artik10/hal/etc/multimedia/mused.conf
new file mode 100644 (file)
index 0000000..38e07b8
--- /dev/null
@@ -0,0 +1,66 @@
+[muse]
+; The 'hosts' parameter defines the modules,
+; which the user would like to connect to the muse.
+; If you want to add host, then write manually.
+hosts=player, camera, recorder
+logfile=/var/log/mused/muse-server
+lockfile=/tmp/.muse_core.lock
+min_timeout=5
+max_timeout=90
+;100MB=100000
+memory_threshold=100000
+enable_watch_external_storage=1
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1=--gst-debug=*:2
+gstparam2=--gst-disable-segtrap
+gstparam3=
+gstparam4=
+gstparam5=
+gstparam6=
+gstparam7=
+gstparam8=
+gstparam9=
+gstparam10=
+
+; gstparam#=--gst-plugin-load=/usr/lib/gstreamer-1.0/libgstcoreelements.so'
+; can be substituted with gstpreload=coreelements'
+gstpreload=
+
+[player]
+; The 'player' parameter represents the muse-player.
+; This module recovers the "capi-media-player".
+path=libmuse-player.so
+preloaded=no
+timeout=60
+disable_watchdog_api=-1
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[camera]
+; The 'camera' parameter represents the muse-camera.
+; This module recovers the "capi-media-camera".
+path=libmuse-camera.so
+preloaded=no
+timeout=10
+;api 2 is camera_dispatcher_start_preview
+disable_watchdog_api=2
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[recorder]
+; The 'recorder' parameter represents the muse-recorder.
+; This module recovers the "capi-media-recorder".
+; This one should be paired with the 'camera' module.
+path=libmuse-recorder.so
+preloaded=no
+timeout=10
+;api 5 is recorder_start
+disable_watchdog_api=5
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
diff --git a/media-config-target-artik10/hal/etc/murphy/murphy.lua b/media-config-target-artik10/hal/etc/murphy/murphy.lua
new file mode 100644 (file)
index 0000000..9675961
--- /dev/null
@@ -0,0 +1,99 @@
+m = murphy.get()
+
+-- load the dlog plugin
+m:try_load_plugin('dlog')
+
+-- load the console plugin
+-- m:try_load_plugin('console')
+
+-- load the dbus plugin
+-- if m:plugin_exists('dbus') then
+--    m:load_plugin('dbus')
+-- end
+
+-- load the native resource plugin
+if m:plugin_exists('resource-native') then
+    m:load_plugin('resource-native')
+    m:info("native resource plugin loaded")
+else
+    m:info("No native resource plugin found...")
+end
+
+-- load the dbus resource plugin
+m:try_load_plugin('resource-dbus', {
+    dbus_bus = "system",
+    dbus_service = "org.Murphy",
+    dbus_track = true,
+    default_zone = "driver",
+    default_class = "implicit"
+})
+
+-- load the domain control plugin
+if m:plugin_exists('domain-control') then
+    m:load_plugin('domain-control')
+else
+    m:info("No domain-control plugin found...")
+end
+
+if m:plugin_exists('glib') then
+    m:load_plugin('glib')
+else
+    m:info("No glib plugin found...")
+end
+
+-- define application classes
+application_class {
+    name     = "interrupt",
+    priority = 99,
+    modal    = false,
+    share    = false,
+    order    = "fifo"
+}
+
+application_class {
+    name     = "media",
+    priority = 10,
+    modal    = false,
+    share    = false,
+    order    = "lifo"
+}
+
+-- define zone attributes
+zone.attributes {
+    type = {mdb.string, "common", "rw"},
+    location = {mdb.string, "anywhere", "rw"}
+}
+
+-- define zones
+zone {
+     name = "driver",
+     attributes = {
+         type = "common",
+         location = "front-left"
+     }
+}
+
+-- define resource classes
+resource.class {
+     name = "video_overlay",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_decoder",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_encoder",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "camera",
+     shareable = false,
+     sync_release = true
+}
diff --git a/media-config-target-artik10/hal/etc/profile.d/mmf.sh b/media-config-target-artik10/hal/etc/profile.d/mmf.sh
new file mode 100644 (file)
index 0000000..7dac276
--- /dev/null
@@ -0,0 +1,6 @@
+#!/bin/sh
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+export GST_DEBUG=2
+export ORC_CODE=debug
+export ORC_DEBUG=5
+export GST_PLUGIN_PATH=@HAL_LIBDIR@/gstreamer-1.0
diff --git a/media-config-target-artik10/hal/etc/pulse/client.conf b/media-config-target-artik10/hal/etc/pulse/client.conf
new file mode 100644 (file)
index 0000000..3637b20
--- /dev/null
@@ -0,0 +1,37 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for PulseAudio clients. See pulse-client.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+; default-sink =
+; default-source =
+default-server = /var/run/pulse/native
+; default-dbus-server =
+
+autospawn = no
+; daemon-binary = /usr/bin/pulseaudio
+; extra-arguments = --log-target=syslog
+
+; cookie-file =
+
+enable-shm = no
+shm-size-bytes = 4194304 # setting this 0 will use the system-default, usually 64 MiB
+
+; auto-connect-localhost = no
+; auto-connect-display = no
diff --git a/media-config-target-artik10/hal/etc/pulse/daemon.conf b/media-config-target-artik10/hal/etc/pulse/daemon.conf
new file mode 100644 (file)
index 0000000..431e66b
--- /dev/null
@@ -0,0 +1,83 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for the PulseAudio daemon. See pulse-daemon.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+daemonize = yes
+; fail = yes
+; allow-module-loading = yes
+; allow-exit = yes
+; use-pid-file = yes
+system-instance = yes
+; local-server-type = user
+; enable-shm = yes
+; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
+; lock-memory = no
+; cpu-limit = no
+
+; high-priority = yes
+; nice-level = -11
+
+realtime-scheduling = yes
+realtime-priority = 5
+
+; exit-idle-time = 20
+; scache-idle-time = 20
+
+; dl-search-path = (depends on architecture)
+
+; load-default-script-file = yes
+; default-script-file = /etc/pulse/default.pa
+
+log-target = dlog
+log-level = info
+; log-meta = no
+; log-time = no
+; log-backtrace = 0
+
+resample-method = speex-fixed-3
+; enable-remixing = yes
+; enable-lfe-remixing = no
+
+flat-volumes = no
+
+; rlimit-fsize = -1
+; rlimit-data = -1
+; rlimit-stack = -1
+; rlimit-core = -1
+; rlimit-as = -1
+; rlimit-rss = -1
+; rlimit-nproc = -1
+; rlimit-nofile = 256
+; rlimit-memlock = -1
+; rlimit-locks = -1
+; rlimit-sigpending = -1
+; rlimit-msgqueue = -1
+; rlimit-nice = 31
+; rlimit-rtprio = 9
+; rlimit-rttime = 1000000
+
+; default-sample-format = s16le
+; default-sample-rate = 44100
+alternate-sample-rate = 44100
+; default-sample-channels = 2
+; default-channel-map = front-left,front-right
+
+; default-fragments = 4
+; default-fragment-size-msec = 25
diff --git a/media-config-target-artik10/hal/etc/pulse/default.pa b/media-config-target-artik10/hal/etc/pulse/default.pa
new file mode 100644 (file)
index 0000000..ef8f114
--- /dev/null
@@ -0,0 +1,149 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started per-user
+# (i.e. not in system mode)
+
+.nofail
+
+### Load something into the sample cache
+#load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
+#load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-access /usr/share/sounds/generic.wav
+
+.fail
+
+### Automatically restore the volume of streams and devices
+load-module module-device-restore
+load-module module-stream-restore
+load-module module-card-restore
+
+### Automatically augment property information from .desktop files
+### stored in /usr/share/application
+load-module module-augment-properties
+
+### Load audio drivers statically
+### (it's probably better to not load these drivers manually, but instead
+### use module-udev-detect -- see below -- for doing this automatically)
+#load-module module-alsa-sink
+#load-module module-alsa-source device=hw:1,0
+#load-module module-null-sink
+#load-module module-pipe-sink
+
+### Automatically load driver modules depending on the hardware available
+.ifexists module-udev-detect.so
+load-module module-udev-detect
+.else
+### Use the static hardware detection module (for systems that lack udev support)
+load-module module-detect
+.endif
+
+### Automatically connect sink and source if JACK server is present
+.ifexists module-jackdbus-detect.so
+.nofail
+load-module module-jackdbus-detect channels=2
+.fail
+.endif
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Load several protocols
+.ifexists module-esound-protocol-unix.so
+load-module module-esound-protocol-unix
+.endif
+load-module module-native-protocol-unix
+
+### Network access (may be configured with paprefs, so leave this commented
+### here if you plan to use paprefs)
+#load-module module-esound-protocol-tcp
+#load-module module-native-protocol-tcp
+
+### Load the RTP receiver module (also configured via paprefs, see above)
+#load-module module-rtp-recv
+
+### Load the RTP sender module (also configured via paprefs, see above)
+#load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
+#load-module module-rtp-send source=rtp.monitor
+
+### Load additional modules from GConf settings. This can be configured with the paprefs tool.
+### Please keep in mind that the modules configured by paprefs might conflict with manually
+### loaded modules.
+.ifexists module-gconf.so
+.nofail
+load-module module-gconf
+.fail
+.endif
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Honour intended role device property
+load-module module-intended-roles
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle
+
+### If autoexit on idle is enabled we want to make sure we only quit
+### when no local session needs us anymore.
+.ifexists module-console-kit.so
+load-module module-console-kit
+.endif
+.ifexists module-systemd-login.so
+load-module module-systemd-login
+.endif
+
+### Enable positioned event sounds
+load-module module-position-event-sounds
+
+### Cork music/video streams when a phone stream is active
+load-module module-role-cork
+
+### Modules to allow autoloading of filters (such as echo cancellation)
+### on demand. module-filter-heuristics tries to determine what filters
+### make sense, and module-filter-apply does the heavy-lifting of
+### loading modules and rerouting streams.
+load-module module-filter-heuristics
+load-module module-filter-apply
+
+### Load DBus protocol
+.ifexists module-dbus-protocol.so
+load-module module-dbus-protocol
+.endif
+
+
+load-module module-switch-on-port-available
+
+### Make some devices default
+#set-default-sink output
+#set-default-source input
diff --git a/media-config-target-artik10/hal/etc/pulse/device-map.json b/media-config-target-artik10/hal/etc/pulse/device-map.json
new file mode 100644 (file)
index 0000000..d241012
--- /dev/null
@@ -0,0 +1,26 @@
+{
+       "device-types":[
+               {
+                       "device-type":"builtin-speaker",
+                       "playback-devices":{"normal":"alsa:0,0"}
+               },
+               {
+                       "device-type":"builtin-mic",
+                       "capture-devices":{"normal":"alsa:0,0"}
+               }
+       ],
+       "device-files":{
+               "playback-devices":[
+                       {
+                               "device-string":"alsa:0,0",
+                               "role":{"normal":"mmap=0 rate=44100"}
+                       }
+               ],
+               "capture-devices":[
+                       {
+                               "device-string":"alsa:0,0",
+                               "role":{"normal":"rate=44100"}
+                       }
+               ]
+       }
+}
diff --git a/media-config-target-artik10/hal/etc/pulse/stream-map.json b/media-config-target-artik10/hal/etc/pulse/stream-map.json
new file mode 100644 (file)
index 0000000..245d950
--- /dev/null
@@ -0,0 +1,209 @@
+{
+       "latencies":[
+               {
+                       "type":"low",
+                       "fragsize-ms":25,
+                       "minreq-ms":-1,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"mid",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"high",
+                       "fragsize-ms":75,
+                       "minreq-ms":-1,
+                       "tlength-ms":400,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"voip",
+                       "fragsize-ms":20,
+                       "minreq-ms":20,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":-1,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default-async",
+                       "fragsize-ms":50,
+                       "minreq-ms":20,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+       ],
+       "volumes":[
+               {
+                       "type":"master",
+                       "is-hal-volume":1
+               },
+               {
+                       "type":"media",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"system",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"alarm",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"notification",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voice",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"ringtone",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voip",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"call",
+                       "is-hal-volume":1
+               }
+       ],
+       "streams":[
+               {
+                       "role":"media",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["builtin-mic"],
+                       "avail-out-devices":["bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"system",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"system"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"alarm",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"alarm"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"notification",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"notification"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"emergency",
+                       "priority" : 4,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-information",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"voice"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-recognition",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["usb-audio","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"voice-recognition-service",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["usb-audio","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"ringtone-voip",
+                       "priority" : 5,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","sound-manager"]
+               },
+               {
+                       "role":"voip",
+                       "priority" : 5,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"voip"},
+                       "avail-in-devices":["builtin-mic"],
+                       "avail-out-devices":["builtin-speaker"],
+                       "avail-frameworks":["audio-io","tone-player","sound-manager"]
+               },
+               {
+                       "role":"loopback",
+                       "priority" : 2,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["usb-audio"],
+                       "avail-out-devices":["usb-audio"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"ext-media",
+                       "priority" : 3,
+                       "route-type" : "manual-ext",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["usb-audio"],
+                       "avail-out-devices":["bt-a2dp","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"solo",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["wav-player","tone-player"]
+               }
+       ]
+}
diff --git a/media-config-target-artik10/hal/etc/pulse/system.pa b/media-config-target-artik10/hal/etc/pulse/system.pa
new file mode 100644 (file)
index 0000000..409cdb3
--- /dev/null
@@ -0,0 +1,73 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started in system
+# mode.
+
+### Automatically load driver modules depending on the hardware available
+### Load several protocols
+load-module module-native-protocol-unix auth-anonymous=1
+
+### Load module-tizenaudio-policy
+load-module module-tizenaudio-policy
+
+#.ifexists module-udev-detect.so
+load-module module-udev-detect
+#.endif
+
+### Sound Player module
+load-module module-sound-player
+load-module module-tone-player
+load-module module-role-ducking global=1 trigger_roles=solo/notification,voice-information ducking_roles=media,system,alarm,notification,voice-information,ext-media/media,ext-media volume=0%/25% fade_in=0/1000 fade_out=0/1000
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Automatically restore the volume of streams and devices
+#load-module module-stream-restore
+#load-module module-device-restore
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+.ifexists module-dbus-protocol.so
+### If you want to allow TCP connections, set access to "remote" or "local,remote".
+load-module module-dbus-protocol access=local
+.endif
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+#load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle timeout=1
+
+load-sample camera-shutter-01 /usr/share/sounds/mm-camcorder/capture_shutter_01.ogg
+load-sample camera-shutter-02 /usr/share/sounds/mm-camcorder/capture_shutter_02.ogg
+load-sample recording-start /usr/share/sounds/mm-camcorder/recording_start_01.ogg
+load-sample recording-stop /usr/share/sounds/mm-camcorder/recording_stop_01.ogg
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf
new file mode 100644 (file)
index 0000000..db78eb4
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'Aux' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf
new file mode 100644 (file)
index 0000000..baf674a
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'FM' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-radio
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+.include analog-input.conf.common
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf
new file mode 100644 (file)
index 0000000..4be5722
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf
new file mode 100644 (file)
index 0000000..f7f3085
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic/Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf
new file mode 100644 (file)
index 0000000..2a36f2f
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+name = analog-input-microphone
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common
new file mode 100644 (file)
index 0000000..b35e7af
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common element for all microphone inputs
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Mic Select'
+
+[Element Mic Select]
+enumeration = select
+
+[Option Mic Select:Mic1]
+name = input-microphone
+priority = 20
+
+[Option Mic Select:Mic2]
+name = input-microphone
+priority = 19
+
+;;; Various Boosts
+
+[Element Mic Boost (+20dB)]
+switch = select
+volume = merge
+
+[Option Mic Boost (+20dB):on]
+name = input-boost-on
+
+[Option Mic Boost (+20dB):off]
+name = input-boost-off
+
+[Element Mic Boost]
+switch = select
+volume = merge
+
+[Option Mic Boost:on]
+name = input-boost-on
+
+[Option Mic Boost:off]
+name = input-boost-off
+
+[Element Front Mic Boost]
+switch = select
+
+[Option Front Mic Boost:on]
+name = input-boost-on
+
+[Option Front Mic Boost:off]
+name = input-boost-off
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf
new file mode 100644 (file)
index 0000000..8531ec7
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'TV Tuner' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-video
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf
new file mode 100644 (file)
index 0000000..74c76f0
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Video' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf
new file mode 100644 (file)
index 0000000..5055f90
--- /dev/null
@@ -0,0 +1,54 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; A fallback for devices that lack seperate Mic/Line/Aux/Video/TV
+; Tuner/FM elements
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Capture]
+required = volume
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required-absent = any
+
+[Element Line]
+required-absent = any
+
+[Element Aux]
+required-absent = any
+
+[Element Video]
+required-absent = any
+
+[Element Mic/Line]
+required-absent = any
+
+[Element TV Tuner]
+required-absent = any
+
+[Element FM]
+required-absent = any
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common
new file mode 100644 (file)
index 0000000..951e11f
--- /dev/null
@@ -0,0 +1,294 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Mixer path for PulseAudio's ALSA backend, common elements for all
+; input paths. If multiple options by the same id are discovered they
+; will be suffixed with a number to distuingish them, in the same
+; order they appear here.
+;
+; Source selection should use the following names:
+;
+;       input                       -- If we don't know the exact kind of input
+;       input-microphone
+;       input-microphone-internal
+;       input-microphone-external
+;       input-linein
+;       input-video
+;       input-radio
+;       input-docking-microphone
+;       input-docking-linein
+;       input-docking
+;
+;  We explicitly don't want to wrap the following sources:
+;
+;       CD
+;       Synth/MIDI
+;       Phone
+;       Mix
+;       Digital/SPDIF
+;       Master
+;       PC Speaker
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Input Source Select'
+
+[Element Input Source Select]
+enumeration = select
+
+[Option Input Source Select:Input1]
+name = input
+priority = 10
+
+[Option Input Source Select:Input2]
+name = input
+priority = 5
+
+;;; 'Input Source'
+
+[Element Input Source]
+enumeration = select
+
+[Option Input Source:Mic]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Microphone]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Front Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Front Microphone]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Internal Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Line]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line-In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Docking-Station]
+name = input-docking
+priority = 17
+
+[Option Input Source:AUX IN]
+name = input
+priority = 10
+
+;;; 'Capture Source'
+
+[Element Capture Source]
+enumeration = select
+
+[Option Capture Source:TV Tuner]
+name = input-video
+
+[Option Capture Source:FM]
+name = input-radio
+
+[Option Capture Source:Mic/Line]
+name = input
+
+[Option Capture Source:Line/Mic]
+name = input
+
+[Option Capture Source:Mic]
+name = input-microphone
+
+[Option Capture Source:Microphone]
+name = input-microphone
+
+[Option Capture Source:Int Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Int DMic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Mic]
+name = input-microphone-internal
+
+[Option Capture Source:iMic]
+name = input-microphone-internal
+
+[Option Capture Source:i-Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Microphone]
+name = input-microphone-internal
+
+[Option Capture Source:Front Mic]
+name = input-microphone
+
+[Option Capture Source:Front Microphone]
+name = input-microphone
+
+[Option Capture Source:Rear Mic]
+name = input-microphone
+
+[Option Capture Source:Mic1]
+name = input-microphone
+
+[Option Capture Source:Mic2]
+name = input-microphone
+
+[Option Capture Source:D-Mic]
+name = input-microphone
+
+[Option Capture Source:IntMic]
+name = input-microphone-internal
+
+[Option Capture Source:ExtMic]
+name = input-microphone-external
+
+[Option Capture Source:Ext Mic]
+name = input-microphone-external
+
+[Option Capture Source:E-Mic]
+name = input-microphone-external
+
+[Option Capture Source:e-Mic]
+name = input-microphone-external
+
+[Option Capture Source:LineIn]
+name = input-linein
+
+[Option Capture Source:Analog]
+name = input
+
+[Option Capture Source:Line]
+name = input-linein
+
+[Option Capture Source:Line-In]
+name = input-linein
+
+[Option Capture Source:Line In]
+name = input-linein
+
+[Option Capture Source:Video]
+name = input-video
+
+[Option Capture Source:Aux]
+name = input
+
+[Option Capture Source:Aux0]
+name = input
+
+[Option Capture Source:Aux1]
+name = input
+
+[Option Capture Source:Aux2]
+name = input
+
+[Option Capture Source:Aux3]
+name = input
+
+[Option Capture Source:AUX IN]
+name = input
+
+[Option Capture Source:Aux In]
+name = input
+
+[Option Capture Source:AOUT]
+name = input
+
+[Option Capture Source:AUX]
+name = input
+
+[Option Capture Source:Cam Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 1]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 2]
+name = input-microphone
+
+[Option Capture Source:Analog Inputs]
+name = input
+
+[Option Capture Source:Unknown1]
+name = input
+
+[Option Capture Source:Unknown2]
+name = input
+
+[Option Capture Source:Docking-Station]
+name = input-docking
+
+[Option Capture Source:Dock Mic]
+name = input-docking-microphone
+
+;;; 'Mic Jack Mode'
+
+[Element Mic Jack Mode]
+enumeration = select
+
+[Option Mic Jack Mode:Mic In]
+name = input-microphone
+
+[Option Mic Jack Mode:Line In]
+name = input-linein
+
+;;; 'Digital Input Source'
+
+[Element Digital Input Source]
+enumeration = select
+
+[Option Digital Input Source:Analog Inputs]
+name = input
+
+[Option Digital Input Source:Digital Mic 1]
+name = input-microphone
+
+[Option Digital Input Source:Digital Mic 2]
+name = input-microphone
+
+;;; Various Boosts
+
+[Element Capture Boost]
+switch = select
+
+[Option Capture Boost:on]
+name = input-boost-on
+
+[Option Capture Boost:off]
+name = input-boost-off
+
+[Element Auto Gain Control]
+switch = select
+
+[Option Auto Gain Control:on]
+name = input-agc-on
+
+[Option Auto Gain Control:off]
+name = input-agc-off
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf
new file mode 100644 (file)
index 0000000..f2fd31c
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone2' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 89
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the second headphones, not
+; the first headphones. But it should not hurt if we leave the
+; headphone jack enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf
new file mode 100644 (file)
index 0000000..2131cfe
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+[Element Headphone]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the first headphones, not
+; the second headphones. But it should not hurt if we leave the second
+; headphone jack enabled nonetheless.
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf
new file mode 100644 (file)
index 0000000..0a43e27
--- /dev/null
@@ -0,0 +1,85 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage in laptops that have a seperate LFE speaker
+; connected to the Master mono connector
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 40
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all-no-lfe
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf
new file mode 100644 (file)
index 0000000..542edc4
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage on boards that have a seperate Mono output plug.
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 50
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = off
+volume = off
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf
new file mode 100644 (file)
index 0000000..aea7853
--- /dev/null
@@ -0,0 +1,94 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Speaker' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = mute
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = mute
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = mute
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf
new file mode 100644 (file)
index 0000000..fc30800
--- /dev/null
@@ -0,0 +1,92 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for the 'default' output. Note that a-o-speaker.conf has a
+; higher priority than this
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 99
+
+[Element Hardware Master]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = ignore
+volume = ignore
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the default output, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = ignore
+volume = zero
+
+[Element Headphone2]
+switch = ignore
+volume = zero
+
+[Element Speaker]
+switch = ignore
+volume = off
+
+[Element Front]
+switch = ignore
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = ignore
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = ignore
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = ignore
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common
new file mode 100644 (file)
index 0000000..3204846
--- /dev/null
@@ -0,0 +1,128 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common part of all paths
+
+; So here's generally how mixer paths are used by PA: PA goes through
+; a mixer path file from top to bottom and checks if a mixer element
+; described therein exists. If so it is added to the list of mixer
+; elements PA will control, keeping the order it read them in. If a
+; mixer element described here has set the required= or
+; required-absent= directives a path might not be accepted as valid
+; and is ignored in its entirety (see below). However usually if a
+; element listed here is missing this one element is ignored but not
+; the entire path.
+;
+; When a device shall be muted/unmuted *all* elements listed in a path
+; file with "switch = mute" will be toggled.
+;
+; When a device shall change its volume, PA will got through the list
+; of all elements with "volume = merge" and set the volume on the
+; first element. If that element does not support dB volumes, this is
+; where the story ends. If it does support dB volumes, PA divides the
+; requested volume by the volume that was set on this element, and
+; then go on to the next element with "volume = merge" and then set
+; that there, and so on.  That way the first volume element in the
+; path will be the one that does the 'biggest' part of the overall
+; volume adjustment, with the remaining elements usually being set to
+; some value next to 0dB. This logic makes sure we get the full range
+; over all volume sliders and a very high granularity of volumes
+; already in hardware.
+;
+; All switches and enumerations set to "select" are exposed via the
+; "port" functionality of sinks/sources. Basically every possible
+; switch setting and every possible enumeration setting will be
+; combined and made into a "port". So make sure you don't list too
+; many switches/enums for exposing, because the number of ports might
+; rise exponentially.
+;
+; Only one path can be selected at a time. All paths that are valid
+; for an audio device will be exposed as "port" for the sink/source.
+
+
+; [General]
+; priority = ...                         # Priority for this path
+; description = ...
+;
+; [Option ...:...]                       # For each option of an enumeration or switch element
+;                                        # that shall be exposed as a sink/source port. Needs to
+;                                        # be named after the Element, followed by a colon, followed
+;                                        # by the option name, resp. on/off if the element is a switch.
+; name = ...                             # Logical name to use in the path identifier
+; priority = ...                         # Priority if this is made into a device port
+;
+; [Element ...]                          # For each element that we shall control
+; required = ignore | switch | volume | enumeration | any     # If set, require this element to be of this kind and available,
+;                                                             # otherwise don't consider this path valid for the card
+; required-absent = ignore | switch | volume                  # If set, require this element to not be of this kind and not
+;                                                             # available, otherwise don't consider this path valid for the card
+;
+; switch = ignore | mute | off | on | select                  # What to do with this switch: ignore it, make it follow mute status,
+;                                                             # always set it to off, always to on, or make it selectable as port.
+;                                                             # If set to 'select' you need to define an Option section for on
+;                                                             # and off
+; volume = ignore | merge | off | zero   # What to do with this volume: ignore it, merge it into the device
+;                                        # volume slider, always set it to the lowest value possible, or always
+;                                        # set it to 0 dB (for whatever that means)
+; enumeration = ignore | select          # What to do with this enumeration, ignore it or make it selectable
+;                                        # via device ports. If set to 'select' you need to define an Option section
+;                                        # for each of the items you want to expose
+; direction = playback | capture         # Is this relevant only for playback or capture? If not set this will implicitly be
+;                                        # set the direction of the PCM device is opened as. Generally this doesn't need to be set
+;                                        # unless you have a broken driver that has playback controls marked for capture or vice
+;                                        # versa
+; direction-try-other = no | yes         # If the element does not supported what is requested, try the other direction, too?
+;
+; override-map.1 = ...                   # Override the channel mask of the mixer control if the control only exposes a single channel
+; override-map.2 = ...                   # Override the channel masks of the mixer control if the control only exposes two channels
+;                                        # Override maps should list for each element channel which high-level channels it controls via a
+;                                        # channel mask. A channel mask may either be the name of a single channel, or the words "all-left",
+;                                        # "all-right", "all-center", "all-front", "all-rear", and "all" to encode a specific subset of
+;                                        # channels in a mask
+
+[Element PCM]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element External Amplifier]
+switch = select
+
+[Option External Amplifier:on]
+name = output-amplifier-on
+priority = 10
+
+[Option External Amplifier:off]
+name = output-amplifier-off
+priority = 0
+
+;;; 'Analog Output'
+
+[Element Analog Output]
+enumeration = select
+
+[Option Analog Output:Speakers]
+name = output-speaker
+priority = 10
+
+[Option Analog Output:Headphones]
+name = output-headphones
+priority = 9
+
+[Option Analog Output:FP Headphones]
+name = output-headphones
+priority = 8
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf
new file mode 100644 (file)
index 0000000..9838138
--- /dev/null
@@ -0,0 +1,144 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned. (and should be good enough for the vast majority of
+; cards).  Use the udev property PULSE_PROFILE_SET to assign a
+; different profile set than this one to a device.  So what is this
+; about? Simply, what we do here is map ALSA devices to how they are
+; exposed in PA. We say which ALSA device string to use to open a
+; device, which channel mapping to use then, and which mixer path to
+; use. This is encoded in a 'mapping'. Multiple of these mappings can
+; be bound together in a 'profile' which is then directly exposed in
+; the UI as a card profile. Each mapping assigned to a profile will
+; result in one sink/source to be created if the profile is selected
+; for the card.
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+
+[General]
+auto-profiles = yes
+
+[Mapping analog-mono]
+device-strings = hw:0
+channel-map = mono
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 1
+
+[Mapping analog-stereo]
+device-strings = front:%f hw:0
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 10
+
+[Mapping analog-surround-40]
+device-strings = surround40:%f
+channel-map = front-left,front-right,rear-left,rear-right
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-41]
+device-strings = surround41:%f
+channel-map = front-left,front-right,rear-left,rear-right,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-50]
+device-strings = surround50:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-51]
+device-strings = surround51:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-71]
+device-strings = surround71:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+description = Analog Surround 7.1
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping iec958-stereo]
+device-strings = iec958:%f
+channel-map = left,right
+priority = 5
+
+[Mapping iec958-surround-40]
+device-strings = iec958:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 1
+
+[Mapping iec958-ac3-surround-40]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 2
+direction = output
+
+[Mapping iec958-ac3-surround-51]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 3
+direction = output
+
+[Mapping hdmi-stereo]
+device-strings = hdmi:%f
+channel-map = left,right
+priority = 4
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf
new file mode 100644 (file)
index 0000000..2b83530
--- /dev/null
@@ -0,0 +1,91 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 4 DJ
+;
+; This card has two stereo pairs of input and two stereo pairs of
+; output, named channels A and B. Channel B has an additional
+; Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b-output]
+description = Analog Stereo Channel B (Headphones)
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-b-input]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b-output
+input-mappings = analog-stereo-a analog-stereo-b-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+input-mappings = analog-stereo-b-input
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+priority = 6
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b-input
+priority = 1
+skip-probe = yes
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf
new file mode 100644 (file)
index 0000000..3fe3cc5
--- /dev/null
@@ -0,0 +1,162 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 8 DJ
+;
+; This card has four stereo pairs of input and four stereo pairs of
+; output, named channels A to D. Channel C has an additional Mic/Line
+; connector, channel D an additional Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+
+# Since we want to set a different description for channel C's/D's input
+# and output we define two seperate mappings for them
+[Mapping analog-stereo-c-output]
+description = Analog Stereo Channel C
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-c-input]
+description = Analog Stereo Channel C (Line/Mic)
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = input
+
+[Mapping analog-stereo-d-output]
+description = Analog Stereo Channel D (Headphones)
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-d-input]
+description = Analog Stereo Channel D
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B, C (Line/Mic), D (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-input analog-stereo-d-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-c]
+description = Analog Stereo Channel D (Headphones) Output, Channel C (Line/Mic) Input
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-c-input
+priority = 90
+skip-probe = yes
+
+[Profile output:analog-stereo-c-d+input:analog-stereo-c-d]
+description = Analog Stereo Duplex Channels C (Line/Mic), D (Line/Mic)
+output-mappings = analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-c-input analog-stereo-d-input
+priority = 80
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B
+output-mappings = analog-stereo-b
+input-mappings = analog-stereo-b
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-c+input:analog-stereo-c]
+description = Analog Stereo Duplex Channel C (Line/Mic)
+output-mappings = analog-stereo-c-output
+input-mappings = analog-stereo-c-input
+priority = 60
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-d]
+description = Analog Stereo Duplex Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-d-input
+priority = 70
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 6
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B
+output-mappings = analog-stereo-b
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-c]
+description = Analog Stereo Output Channel C
+output-mappings = analog-stereo-c-output
+priority = 7
+skip-probe = yes
+
+[Profile output:analog-stereo-d]
+description = Analog Stereo Output Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+priority = 8
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b
+priority = 1
+skip-probe = yes
+
+[Profile input:analog-stereo-c]
+description = Analog Stereo Input Channel C (Line/Mic)
+input-mappings = analog-stereo-c-input
+priority = 4
+skip-probe = yes
+
+[Profile input:analog-stereo-d]
+description = Analog Stereo Input Channel D
+input-mappings = analog-stereo-d-input
+priority = 3
+skip-probe = yes
diff --git a/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf b/media-config-target-artik10/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf
new file mode 100644 (file)
index 0000000..6a8d08b
--- /dev/null
@@ -0,0 +1,127 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned (and should be good enough for the vast majority of
+; cards). If you want to assign a different profile set than this one
+; to a device, either set the udev property PULSE_PROFILE_SET for the
+; card, or use the "profile_set" module argument when loading
+; module-alsa-card.
+;
+; So what is this about? Simply, what we do here is map ALSA devices
+; to how they are exposed in PA. We say which ALSA device string to
+; use to open a device, which channel mapping to use then, and which
+; mixer path to use. This is encoded in a 'mapping'. Multiple of these
+; mappings can be bound together in a 'profile' which is then directly
+; exposed in the UI as a card profile. Each mapping assigned to a
+; profile will result in one sink/source to be created if the profile
+; is selected for the card.
+;
+; Additionally, the path set configuration files can describe the
+; decibel values assigned to the steps of the volume elements. This
+; can be used to work around situations when the alsa driver doesn't
+; provide any decibel information, or when the information is
+; incorrect.
+
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+;
+; [DecibelFix element]                      # Decibel fixes can be used to work around missing or incorrect dB
+;                                           # information from alsa. A decibel fix is a table that maps volume steps
+;                                           # to decibel values for one volume element. The "element" part in the
+;                                           # section title is the name of the volume element.
+;                                           #
+;                                           # NOTE: This feature is meant just as a help for figuring out the correct
+;                                           # decibel values. PulseAudio is not the correct place to maintain the
+;                                           # decibel mappings!
+;                                           #
+;                                           # If you need this feature, then you should make sure that when you have
+;                                           # the correct values figured out, the alsa driver developers get informed
+;                                           # too, so that they can fix the driver.
+;
+; db-values = ...                           # The option value consists of pairs of step numbers and decibel values.
+;                                           # The pairs are separated with whitespace, and steps are separated from
+;                                           # the corresponding decibel values with a colon. The values must be in an
+;                                           # increasing order. Here's an example of a valid string:
+;                                           #
+;                                           #     "0:-40.50  1:-38.70  3:-33.00  11:0"
+;                                           #
+;                                           # The lowest step imposes a lower limit for hardware volume and the
+;                                           # highest step correspondingly imposes a higher limit. That means that
+;                                           # that the mixer will never be set outside those values - the rest of the
+;                                           # volume scale is done using software volume.
+;                                           #
+;                                           # As can be seen in the example, you don't need to specify a dB value for
+;                                           # each step. The dB values for skipped steps will be linearly interpolated
+;                                           # using the nearest steps that are given.
+
+[General]
+auto-profiles = yes
+
+[Mapping analog-mono]
+device-strings = hw:%f
+channel-map = mono
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 1
+
+[Mapping usb-analog-stereo]
+device-strings = hw:%f
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 10
+
+[Mapping usb-analog-surround-51]
+device-strings = hw:%f
+;channel-map = front-left,front-right,front-center,lfe,rear-left,rear-right
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-lfe-on-mono
+priority = 180
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-hawkp.manifest b/media-config-target-hawkp.manifest
new file mode 100644 (file)
index 0000000..a76fdba
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+       <request>
+               <domain name="_" />
+       </request>
+</manifest>
diff --git a/media-config-target-hawkp/hal/etc/asound.conf b/media-config-target-hawkp/hal/etc/asound.conf
new file mode 100644 (file)
index 0000000..f717a3e
--- /dev/null
@@ -0,0 +1,50 @@
+pcm. !default {
+       type asym
+       playback.pcm {
+               type hw
+               card 0
+               device 0
+       }
+       capture.pcm {
+               type hw
+               card 0
+               device 0
+       }
+}
+
+ctl. !default {
+       type hw
+       card 0
+}
+
+pcm. AIF2{
+       type hw
+       card 0
+       device 1
+       format S16_LE
+       channels 2
+       rate 8000
+}
+
+pcm. AIF3{
+       type hw
+       card 0
+       device 2
+       format S16_LE
+       channels 2
+       rate 8000
+}
+
+pcm. AIF4{
+       type hw
+       card 0
+       device 4
+       format S16_LE
+       channels 2
+       rate 44100
+}
+
+ctl. wm1811 {
+       type hw
+       card 0
+}
diff --git a/media-config-target-hawkp/hal/etc/multimedia/mmfw_audio_pcm_dump.ini b/media-config-target-hawkp/hal/etc/multimedia/mmfw_audio_pcm_dump.ini
new file mode 100644 (file)
index 0000000..6e13b68
--- /dev/null
@@ -0,0 +1,8 @@
+[pcm_dump]
+;playback
+pa_sink = 0
+pa_sink_input = 0
+
+;capture
+pa_source = 0
+pa_source_output = 0
diff --git a/media-config-target-hawkp/hal/etc/multimedia/mmfw_audio_volume.ini b/media-config-target-hawkp/hal/etc/multimedia/mmfw_audio_volume.ini
new file mode 100644 (file)
index 0000000..45a912f
--- /dev/null
@@ -0,0 +1,19 @@
+[volumes]
+system                         = 0, 66, 69, 72, 75, 78, 81, 84, 86, 88, 90, 92, 94, 96, 98, 100
+notification                   = 0, 66, 69, 72, 75, 78, 81, 84, 86, 88, 90, 92, 94, 96, 98, 100
+alarm                          = 0, 66, 69, 72, 75, 78, 81, 84, 86, 88, 90, 92, 94, 96, 98, 100
+ringtone                       = 0, 66, 69, 72, 75, 78, 81, 84, 86, 88, 90, 92, 94, 96, 98, 100
+media                          = 0, 66, 69, 72, 75, 78, 81, 84, 86, 88, 90, 92, 94, 96, 98, 100
+call                           = 60, 65, 70, 76, 82, 88, 94, 100
+voip                           = 60, 65, 70, 76, 82, 88, 94, 100
+voice                          = 0, 66, 69, 72, 75, 78, 81, 84, 86, 88, 90, 92, 94, 96, 98, 100
+gain_dialer                    = 1.00
+gain_touch                     = 1.00
+gain_af                        = 0.70
+gain_shutter1                  = 0.14
+gain_shutter2                  = 1.00
+gain_camcording                = 0.30
+gain_midi                      = 1.00
+gain_booting                   = 0.40
+gain_video                     = 0.90
+gain_tts                       = 1.00
diff --git a/media-config-target-hawkp/hal/etc/multimedia/mmfw_camcorder.ini b/media-config-target-hawkp/hal/etc/multimedia/mmfw_camcorder.ini
new file mode 100644 (file)
index 0000000..36dce1a
--- /dev/null
@@ -0,0 +1,103 @@
+; < Camera/Camcorder Configure Main INI file >
+;
+; - Header List -
+; 1.  General
+; 2.  VideoInput
+; 3.  AudioInput
+; 4.  VideoOutput
+; 5.  Capture
+; 6.  Record
+; 7.  VideoEncoder
+; 8.  AudioEncoder
+; 9.  ImageEncoder
+; 10. Mux
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryMain"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[General]
+SyncStateChange = 1
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap || NOT-USE-DEFAULT_VALUE
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap --gst-debug=3 || NOT-USE-DEFAULT_VALUE
+ModelName = GT-TIZEN
+;DisabledAttributes = camera-optical-zoom camera-af-touch-x camera-af-touch-y camera-exposure-value camera-f-number camera-shutter-speed camera-hold-af-after-capturing filter-flip filter-hue display-src-x display-src-y display-src-width display-src-height tag-image-description strobe-control strobe-capabilities strobe-mode detect-mode detect-number detect-focus-select detect-select-number detect-status || NO_DEFAULT_VALUE
+
+[VideoInput]
+VideosrcElement = tvcamerasrc | 1,1 | do-timestamp,1 | device,/dev/video241
+UseVideoscale = 1
+VideoscaleElement = videoscale | 3,0 | width,320 | height,240 | method,1
+UseZeroCopyFormat = 0
+DeviceCount = 1
+
+[AudioInput]
+AudioDevice = 0 || 0
+AudiosrcElement = pulsesrc | 1,0 | do-timestamp,1
+
+[VideoOutput]
+; DisplayDevice
+;;; 0: MAIN LCD, 1: SUB LCD, 2:TV OUT, 3: MAIN LCD and SUB LCD, 4: MAIN LCD and TV OUT
+DisplayDevice = 0 || 0
+; DisplayMode
+;;; 0: Default, 1: Pri Video ON and Sec Video Full-Screen, 2: Pri Video OFF and Sec Video Full-Screen
+DisplayMode = 0,1,2 || 0
+; Videosink
+;;; 0: Overlay surface, 1: Evas surface, 2: GL surface, 3: NULL surface, 4: Remote
+Videosink = 0,3,4 || 3
+VideosinkElementOverlay = tizenwlsink | 7,0 | draw-borders,0 | force-aspect-ratio,1 | enable-last-sample,0 | qos,0 | sync,0 | show-preroll-frame,0 | use-tbm,0
+VideosinkElementRemote = shmsink | 5,0 | wait-for-connection,0 | perms,511 | enable-last-sample,0 | qos,0 | sync,0
+VideosinkElementNull = fakesink | 4,0 | qos,0 | sync,0 | enable-last-sample,0 | show-preroll-frame,0
+UseVideoscale = 1
+VideoscaleElement = fimcconvert | 1,0 | rotang,0
+VideodecoderElementH264 = avdec_h264 | 0,0
+
+[VideoEncoder]
+MPEG4 = avenc_mpeg4 | 0,0
+
+[AudioEncoder]
+AMR = amrnbenc | 0,0
+AAC = avenc_aac | 1,0 | compliance,-2
+WAVE = wavenc | 0,0
+MP3 = lame | 0,0
+
+[ImageEncoder]
+JPEG = jpegenc | 0,0
+;PNG = pngenc | 0,0
+
+[Capture]
+UseEncodebin = 0
+UseCaptureMode = 0
+VideoscaleElement = videoscale | 1,0 | method,1
+
+[Record]
+UseAudioEncoderQueue = 1
+UseVideoEncoderQueue = 0
+VideoProfile = 0
+VideoAutoAudioConvert = 1
+VideoAutoAudioResample = 0
+VideoAutoColorSpace = 0
+AudioProfile = 1
+AudioAutoAudioConvert = 1
+AudioAutoAudioResample = 0
+AudioAutoColorSpace = 0
+ImageProfile = 2
+ImageAutoAudioConvert = 0
+ImageAutoAudioResample = 0
+ImageAutoColorSpace = 1
+RecordsinkElement = filesink | 1,0 | async,0
+UseNoiseSuppressor = 0
+DropVideoFrame = 0
+PassFirstVideoFrame = 0
+
+[Mux]
+3GP = avmux_3gp | 0,0
+AMR = avmux_amr | 0,0
+MP4 = avmux_mp4 | 0,0
+AVI = avimux | 0,0
+MATROSKA = matroskamux | 0,0
+WAV = wavenc | 0,0
+AAC = avmux_adts | 0,0
+M2TS = mpegtsmux | 0,0
+
diff --git a/media-config-target-hawkp/hal/etc/multimedia/mmfw_camcorder_camera0.ini b/media-config-target-hawkp/hal/etc/multimedia/mmfw_camcorder_camera0.ini
new file mode 100644 (file)
index 0000000..5b770de
--- /dev/null
@@ -0,0 +1,213 @@
+; < Camera/Camcorder Configure Control INI file >
+;
+; - Header List -
+; 1.  Camera
+; 2.  Strobe
+; 3.  Effect
+; 4.  Photograph
+; 5.  Capture
+; 6.  Detect
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryControl"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[Camera]
+; Input index - real setting value
+;;; 0:PRIMARY_CAMERA, 1:SECONDARY_CAMERA
+; Input index - MSL value(convert array index)
+;;; -1:NONE, 0:CAMERA0, 1:CAMERA1
+InputIndex = 0,-255 || 0
+DeviceName = TV_USB_Camera
+PreviewResolution = 160,90 | 160,120 | 320,180 | 320,240 | 640,360 | 640,480 | 1280,720 | 1440,1080 | 1920,1080 || 1920,1080
+CaptureResolution = 1920,1080 || 1920,1080
+VideoResolution = 160,90 | 160,120 | 320,180 | 320,240 | 640,360 | 640,480 | 1280,720 | 1440,1080 | 1920,1080 || 1920,1080
+FPS0 = 0,8,15,24,25,30,60,120 || 30
+FPS1 = 0,8,15,24,25,30,60,120 || 30
+FPS2 = 0,8,15,24,25,30,60,120 || 30
+FPS3 = 0,8,15,24,25,30,60,120 || 30
+FPS4 = 0,8,15,24,25,30,60,120 || 30
+FPS5 = 0,8,15,24,25,30,60,120 || 30
+FPS6 = 0,8,15,24,25,30,60,120 || 30
+FPS7 = 0,8,15,24,25,30,60,120 || 30
+FPS8 = 0,8,15,24,25,30,60,120 || 30
+; PictureForamt - MSL value
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+PictureFormat = 15 || 15
+Overlay = 0,1 || 1
+; Recommend display rotation
+;;; 0:NONE, 1:90, 2:180, 3:270
+RecommendDisplayRotation = 0
+; Recommend preview format for capture
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatCapture = 15
+; Recommend preview format for record
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatRecord = 15
+; Recommend preview resolution
+;;; 0: NORMAL ratio(4:3), 1: WIDE ratio(16:9), 2: SQUARE ratio(1:1)
+RecommendPreviewResolution = 1440,1080 | 1920,1080 | 1440,1080 || 1920,1080
+; Camera facing direction
+;;; 0:REAR, 1:FRONT
+FacingDirection = 0
+
+
+[Strobe]
+;StrobeControl - Not support
+;StrobeCapabilities - Not support
+; Strobe mode - real setting value
+;;; 0:BASE, 1:OFF, 2:AUTO, 3:ON, 4:TORCH, 5:MAX
+; Strobe mode - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:REDEYE_REDUCTION, 4:SLOW_SYNC, 5:FRONT_CURTAIN, 6:REAR_CURTAIN, 7:PERMANENT
+StrobeMode = 1,-255,-255,-255,-255,-255,-255,-255 || 1
+;StrobeStatus - Not support
+;StrobeEV - Not support
+
+
+[Effect]
+Brightness = 0,8 || 4
+Contrast = 1,7 || 4
+Saturation = 0,4 || 2
+Sharpness = 0,4 || 2
+
+; White balance - real setting value
+;;; 0:AUTO, 1:DAYLIGHT, 2:CLOUDY, 3:TUNGSTEN, 4:FLUORESCENT
+; White balance - MSL value(convert array index)
+;;; 0:NONE, 1:AUTO, 2:DAYLIGHT, 3:CLOUDY, 4:FLUORESCENT, 5:INCANDESCENT, 6:SHADE, 7:HORIZON, 8:FLASH, 9:CUSTOM
+WhiteBalance = -255,1,2,3,5,4,-255,-255,-255,-255 || 1
+
+; Color tone - real setting value
+;;; 1:NONE, 2:MONO, 3:SEPIA, 4:AQUA, 5:ANTIQUE, 6:NEGATIVE, 7:SHARPEN, 8:SKETCH, 9:WASHED, 10:VINTAGE_WARM
+;;; 11:VINTAGE_COLD, 12:SOLARIZE, 13:POSTERIZE, 14:POINT_BLUE, 15:POINT_RED_YELLOW, 16:POINT_COLOR_3, 17:POINT_GREEN, 18:POINT_RED, 19:POINT_YELLOW, 20:CARTOONIZE
+; Color tone - MSL value(convert array index)
+;;; 0:NONE, 1:MONO, 2:SEPIA, 3:NEGATIVE, 4:BLUE, 5:GREEN, 6:AQUA, 7:VIOLET, 8:ORANGE, 9:GRAY, 10:RED,
+;;; 11:ANTIQUE, 12:WARM, 13:PINK, 14:YELLOW, 15:PURPLE, 16:EMBOSS, 17:OUTLINE, 18:SOLARIZATION, 19:SKETCH, 20:WASHED,
+;;; 21:VINTAGE_WARM, 22:VINTAGE_COLD, 23:POSTERIZATION, 24:CARTOON, 25:SELECTIVE_RED, 26:SELECTIVE_GREEN, 27:SELECTIVE_BLUE, 28:SELECTIVE_YELLOW, 29:SELECTIVE_RED_YELLOW
+ColorTone = 1,2,3,6,-255,-255,4,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,12,8,9,10,11,13,20,-255,17,14,-255,15 || 1
+; Flip - real setting value
+;;; 0:NONE, 1:VERTICAL, 2:HORIZONTAL
+; Flip - MSL value(convert array index)
+;;; 0:HORIZONTAL, 1:VERTICAL, 2:NONE
+;Flip = 2,1,0 || 0
+
+; Wide Dynamic Range - real setting value
+;;; 0:OFF, 1:ON
+; Wide Dynamic Range - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO
+WDR = 0,-255,-255 || 0
+
+; Part color mode - real setting value
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+; Part color mode - MSL value(convert array index)
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+;PartColorMode = 0,1,2 || 0
+
+; Part color - real setting value
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+; Part color - MSL value(convert array index)
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT_BLUE, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+;PartColor = 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 || 0
+
+
+[Photograph]
+;LensInit = 0,1 || 0
+DigitalZoom = 0,10 || 0
+OpticalZoom = 0,0 || 0
+
+; Focus mode - real setting value
+;;; 0:AUTO, 1:MANUAL, 2:PAN, 3:TOUCH_AUTO, 4:CONTINUOUS
+; Focus mode - MSL value(convert array index)
+;;; 0:NONE, 1:PAN, 2:AUTO, 3:MANUAL, 4:TOUCH_AUTO, 5:CONTINUOUS
+FocusMode = 0,-255,-255,-255,-255,-255 || 0
+
+; Auto focus type - real setting value
+;;; 0:NORMAL, 1:MACRO, 2:FULL
+; Auto focus - MSL value(convert array index)
+;;; 0:NONE, 1:NORMAL, 2:MACRO, 3:FULL
+AFType = 0,-255,-255,-255 || 0
+
+; Auto exposure type - real setting value
+;;; 0:BASE, 1:MATRIX, 2:CENTER, 3:SPOT, 4:MAX
+; Auto exposure mode - MSL value(convert array index)
+;;; 0,OFF 1,ALL 2,CENTER1  3,CENTER2 4,CENTER3 5,SPOT1 6,SPOT2 7,CUSTOM1 8,CUSTOM2
+AEType = -255,1,2,-255,-255,3,-255,-255,-255 || 1
+
+;ExposureValue - Not support
+;FNumber - Not support
+;ShutterSpeed - Not support
+
+; ISO - real setting value
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600
+; ISO - MSL value(convert array index)
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600, 7:3200
+ISO = 0,-255,2,3,4,5,6,-255 || 0
+
+; Program mode - real setting value
+;;; 1:NONE, 2:PORTRAIT, 3:NIGHTSHOT, 4:BACK_LIGHT, 5:LANDSCAPE, 6:SPORTS, 7:PARTY_INDOOR, 8:BEACH_SNOW, 9:SUNSET, 10:DUSK_DAWN,
+;;; 11:FALL_COLOR, 12:FIREWORKS, 13:TEXT, 14:CANDLE_LIGHT
+; Program mode - MSL value(convert array index)
+;;; 0:NORMAL, 1:PORTRAIT, 2:LANDSCAPE, 3:SPORTS, 4:PARTY_N_INDOOR, 5:BEACH_N_INDOOR, 6:SUNSET, 7:DUSK_N_DAWN, 8:FALL_COLOR, 9:NIGHT_SCENE,
+;;; 10:FIREWORK, 11:TEXT, 12:SHOW_WINDOW, 13:CANDLE_LIGHT, 14:BACKLIGHT
+ProgramMode = 1,2,5,6,7,8,9,10,11,3,12,13,-255,14,4 || 1
+
+; Anti-handshake - real setting value
+;;; 0:OFF, 1:ON
+; Anti-handshake - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:MOVIE_ON
+AntiHandshake = 0,-255,-255,-255 || 0
+
+; Video-stabilization - real setting value
+;;; 0:OFF, 1:ON
+; Video-stabilization - MSL value(convert array index)
+;;; 0:OFF, 1:ON
+VideoStabilization = 0 || 0
+
+; Face zoom mode
+;;; 0:OFF, 1:ON
+FaceZoomMode = 0 || 0
+; Face zoom level
+FaceZoomLevel = 0,0 || 0
+
+; PTZ(Pan Tilt Zoom) type
+;;; 0:Mechanical, 1:Electronic
+PtzType = 0,1 || 1
+
+; Pan range for mechanical movement
+PanMecha = -10,10
+
+; Pan range for electronic movement
+PanElec = -10,10
+
+; Tilt range for mechanical movement
+TiltMecha = -10,10
+
+; Tilt range for electronic movement
+TiltElec = -10,10
+
+
+[Capture]
+; Output mode
+;;; No need to convert
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY
+OutputMode = 13 || 13
+JpegQuality = 0,100 || 90
+MultishotNumber = 1,1 || 1
+SensorEncodedCapture = 1
+; Support HDR
+;;; 0: OFF, 1: ON, 2: ON and Original
+SupportHDR = 0,-255,-255 || 0
+
+
+[Detect]
+; Detect mode
+;;; 0:OFF, 1:ON
+DetectMode = 0 || 0
+;DetectNumber - Not support
+;DetectFocusSelect - Not support
+;DetectSelectNumber - Not support
+;DetectStatus - Not support
+
diff --git a/media-config-target-hawkp/hal/etc/multimedia/mmfw_media_codec.ini b/media-config-target-hawkp/hal/etc/multimedia/mmfw_media_codec.ini
new file mode 100644 (file)
index 0000000..66b7abb
--- /dev/null
@@ -0,0 +1,89 @@
+[h261]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = , ,
+sw_encoder = , ,
+
+[h263]
+hw_decoder = omxdec_h263, video/x-h263, NV12
+hw_encoder = omxenc_h263, video/x-raw,  H263
+sw_decoder = avdec_h263,   video/x-h263, I420
+sw_encoder = avenc_h263,   video/x-raw,  H263
+
+[h264]
+hw_decoder = omxdec_h264, video/x-h264, NV12
+hw_encoder = omxenc_h264, video/x-raw,  H264_SP
+sw_decoder = avdec_h264,   video/x-h264, I420
+sw_encoder = avenc_h264,   video/x-raw,  H264_SP
+
+[mpeg4]
+hw_decoder = omxdec_h264, video/x-h264, NV12
+hw_encoder = omxenc_h264, video/x-raw,  MPEG4_SP
+sw_decoder = avdec_h264,   video/x-h264, I420
+sw_encoder = avenc_h264,   video/x-raw,  MPEG4_SP
+
+[aac_lc]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = avenc_aac,   audio/x-raw, AAC_LC
+
+[aac_he]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[aac_he_ps]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[mp3]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_mp3,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[amr_nb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrnb,   audio/AMR, PCM_F32LE
+sw_encoder = amrnbenc, audio/x-raw, AMR_NB
+
+[amr_wb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrwb,   audio/AMR-WB, PCM_F32LE
+sw_encoder = , ,
+
+[vorbis]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = vorbisdec,   audio/x-vorbis, PCM_F32LE
+sw_encoder = , ,
+
+[flac]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_flac,   audio/x-flac, PCM_F32LE
+sw_encoder = , ,
+
+[wmav1]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav1,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmav2]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav2,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmapro]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmapro,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
diff --git a/media-config-target-hawkp/hal/etc/multimedia/mmfw_media_streamer.ini b/media-config-target-hawkp/hal/etc/multimedia/mmfw_media_streamer.ini
new file mode 100644 (file)
index 0000000..fa7e336
--- /dev/null
@@ -0,0 +1,123 @@
+[general]
+; generating dot file representing pipeline state
+generate dot = no
+dot dir =
+
+; decodebin will be used instead of decoder node
+use decodebin = yes
+
+; comma separated list of element names which
+; will not be used in autoplug mode
+exclude elements = v4l2video,v4l2h264,v4l2mpeg4,omx,sprd
+
+; comma separated list of element names which
+; will require resources in autoplug mode
+resource elements = omx,sprd
+
+; comma separated list of arguments
+; that will pass to gst_init
+gstreamer arguments = --gst-debug=2
+
+
+;MEDIA_STREAMER_NODE_TYPE_SRC
+[node type 1]
+audio capture = pulsesrc
+video capture = waylandsrc
+camera = camerasrc
+
+;MEDIA_STREAMER_NODE_TYPE_SINK
+[node type 2]
+audio = pulsesink
+overlay = tizenwlsink
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_ENCODER
+[node type 3]
+video/x-h263 = avenc_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DECODER
+[node type 4]
+video/x-h263 = avdec_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_ENCODER
+[node type 5]
+audio/AMR = amrnbenc
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DECODER
+[node type 6]
+audio/AMR = amrnbdec
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_CONVERTER
+[node type 7]
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_CONVERTER
+[node type 8]
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_RESAMPLE
+[node type 9]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_PAY
+[node type 10]
+video/x-h263 = rtph263pay
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_PAY
+[node type 11]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DEPAY
+[node type 12]
+video/x-h263 = rtph263depay
+video/x-h264 = rtph264depay
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DEPAY
+[node type 13]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_RATE
+[node type 14]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_SCALE
+[node type 15]
+
+;MEDIA_STREAMER_NODE_TYPE_TEXT_OVERLAY
+[node type 16]
+text/x-raw = textoverlay
+
+;MEDIA_STREAMER_NODE_TYPE_PARSER
+[node type 17]
+video/x-h263 = h263parse
+video/x-h264 = h264parse
+
+;MEDIA_STREAMER_NODE_TYPE_FILTER
+[node type 18]
+
+;MEDIA_STREAMER_NODE_TYPE_TEE
+[node type 19]
+
+;MEDIA_STREAMER_NODE_TYPE_QUEUE
+[node type 20]
+
+;MEDIA_STREAMER_NODE_TYPE_MQUEUE
+[node type 21]
+
+;MEDIA_STREAMER_NODE_TYPE_MUXER
+[node type 22]
+
+;MEDIA_STREAMER_NODE_TYPE_DEMUXER
+[node type 23]
+
+;MEDIA_STREAMER_NODE_TYPE_RTP
+[node type 24]
+
+;MEDIA_STREAMER_NODE_TYPE_INPUT_SELECTOR
+[node type 25]
+
+;MEDIA_STREAMER_NODE_TYPE_OUTPUT_SELECTOR
+[node type 26]
+
+;MEDIA_STREAMER_NODE_TYPE_INTERLEAVE
+[node type 27]
+
+;MEDIA_STREAMER_NODE_TYPE_DEINTERLEAVE
+[node type 28]
+
diff --git a/media-config-target-hawkp/hal/etc/multimedia/mmfw_player.ini b/media-config-target-hawkp/hal/etc/multimedia/mmfw_player.ini
new file mode 100644 (file)
index 0000000..01f0c65
--- /dev/null
@@ -0,0 +1,102 @@
+[general]
+
+disable segtrap = yes ; same effect with --gst-disable-segtrap
+
+; set default videosink element according to video surface type(X, EVAS, NULL)
+videosink element overlay = tizenwlsink
+videosink element fake = fakesink
+video converter element =
+
+; decoder element keyword for resource management.
+video codec element hw =      ; omx is included in this target but it is not verified.
+video codec element sw = avdec
+video codec default type = sw ; hw or sw
+
+audio codec element hw =
+audio codec element sw = avdec
+audio codec default type = sw ; hw or sw
+
+; support with HW audio codec
+support audio effect = no
+support pcm exporting = no
+support pitch control = no
+support replaygain control = no
+
+audiosink element = pulsesink
+
+; audio offload information
+audio offload sink element =
+audio offload device type =    ; builtin-speaker,bt-a2dp,audio-jack,usb-audio from pulse stream-map
+audio offload media format =   ; Use the format keyword of media_format_mimetype_e, MAX:10
+
+; supported input format of external media source stream
+; Use the format keyword of media_format_mimetype_e, MAX:10
+media stream input format = AAC,H264_SP,H264_MP,H264_HP
+
+; if yes. gstreamer will not update registry
+skip rescan = yes
+delay before repeat = 50 ; msec
+
+; comma separated list of tocken which elemnts has it in it's name will not be used
+; this works if 'use decodebin = yes'
+element exclude keyword = v4l2,omx
+
+; comma separated list of tocken
+; this works if 'use decodebin = yes'
+unsupported codec keyword = divx
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1 = --gst-debug=*:2
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; generating dot file representing pipeline state
+; DEFAULT MUST BE 'no'. If 'yes', mmplayer will set env-variable for it's session as "export GST_DEBUG_DUMP_DOT_DIR=/tmp/"
+generate dot = no
+
+; parameter is for only video to be determined
+; which clock will be used
+; if yes, system clock will be used
+; apart from this, audiosink is clock provider for audio
+use system clock = yes
+
+; allowed timeout for changing pipeline state
+live state change timeout = 30 ; sec
+localplayback state change timeout = 10 ; sec
+
+; delay in msec for sending EOS
+eos delay = 0 ; msec
+
+; extracted pcm buffer size
+pcm buffer size = 51200 ; 50Kbytes
+
+; max num of bo for sw codec
+video bo max = 10
+
+; video bo timeout (sec)
+video bo timeout = 10
+
+; setup pipeline with decodebin2
+use decodebin = no
+
+[http streaming]
+
+httpsrc element = souphttpsrc
+
+http buffering limit = 99.0 ; percent
+
+; if yes, use file for buffering.
+; if no, use memory for buffering.
+http use file buffer = no
+
+; ring buffer size when use mem buffer
+http ring buffer size = 20971520 ; 20MBytes
+
+http max size bytes = 1048576 ; bytes
+
+http buffering time = 1.2
+
+http timeout = 30 ; sec
diff --git a/media-config-target-hawkp/hal/etc/multimedia/mmfw_player_audio_effect.ini b/media-config-target-hawkp/hal/etc/multimedia/mmfw_player_audio_effect.ini
new file mode 100644 (file)
index 0000000..1394608
--- /dev/null
@@ -0,0 +1,17 @@
+[audio effect]
+; name of audio effect element
+audio effect element = audioeq
+
+; preset audio effect setting
+audio effect preset = no
+
+; custom audio effect setting (EQ/extension)
+audio effect custom = yes
+audio effect custom list = 0
+
+audio effect custom eq band num = 7 ; number of EQ bands
+audio effect custom eq band width = 33, 90, 242, 649, 1743, 4676, 12544 ; list of each EQ band width (Hz)
+audio effect custom eq band freq = 36, 98, 265, 711, 1907, 5117, 13727 ; list of each EQ band central frequency (Hz)
+
+audio effect custom min list = -12 ; list of minimum level value (the first element is for EQ, others for extension effect)
+audio effect custom max list = 12 ; list of maximum level value (the first element is for EQ, others for extension effect)
diff --git a/media-config-target-hawkp/hal/etc/multimedia/mmfw_resource_manager.ini b/media-config-target-hawkp/hal/etc/multimedia/mmfw_resource_manager.ini
new file mode 100644 (file)
index 0000000..082f297
--- /dev/null
@@ -0,0 +1,9 @@
+[max volume]
+video_overlay = -1
+video_decoder = -1
+video_encoder = -1
+camera = -1
+
+[priority]
+media = 10
+interrupt = 99
diff --git a/media-config-target-hawkp/hal/etc/multimedia/mmfw_streamrecorder.ini b/media-config-target-hawkp/hal/etc/multimedia/mmfw_streamrecorder.ini
new file mode 100644 (file)
index 0000000..2888707
--- /dev/null
@@ -0,0 +1,81 @@
+[general]
+;is encsink source is live
+encscink source is live = 0
+
+retrialcount = 10
+
+minimum frame = 5
+
+reset pause time = 0
+
+screen record = 1
+
+convert output buffer num = 6
+
+hw encoder supported = 0 ; 1 if supported and 'video codec element hw' should be formed.
+
+video codec element hw = ; sprd (if verified) or verified hw codec element
+
+[encodebin]
+;MM_STREAMRECORDER_ENCBIN_PROFILE_VIDEO = 0 MM_STREAMRECORDER_ENCBIN_PROFILE_AUDIO = 1
+;MM_STREAMRECORDER_ENCBIN_PROFILE_IMAGE = 2 MM_STREAMRECORDER_ENCBIN_PROFILE_NUM = 3
+encsink bin profile = 0
+
+encsink bin auto audio resample = 0
+
+encsink bin auto colorspace = 1
+
+encsink bin auto audio convert = 1
+
+encsink bin use video toggle = 0
+
+[pipeline]
+encsink bin source = appsrc
+
+name of audio src = pulsesrc
+
+h264 encoder =
+
+h263 encoder = avenc_h263p
+
+mpeg4 encoder = avenc_mpeg4
+
+name of audio encoder = avenc_aac
+
+use parser  =
+
+name of 3GP muxer = avmux_3gp
+
+name of MP4 muxer = avmux_mp4
+
+name of video converter = videoconvert
+
+name of sink = filesink
+
+[video param]
+;/*ms*/
+video frame wait time = 200000
+
+[audio param]
+audio frame minimum space = 102400
+
+audio frame wait time = 20000
+
+[attribute]
+supported height = 1080,720,480,240,288,144
+
+supported width = 1920,1280,640,320,352,176
+
+;/*AMR, AAC, VORBIS ,PCM*/
+supported audio encoders = AMR,AAC,PCM
+
+;/* H263 , H264 , MPEG4 */
+supported video encoders = H263,MPEG4
+
+;/*3GP , AMR, MP4 , WAV, ADTS*/
+supported file formats = 3GP,MP4,AMR,ADTS,WAV
+
+[debug]
+; generating dot file representing pipeline state
+; do export GST_DEBUG_DUMP_DOT_DIR=/tmp/ in the shell (also do export to '/etc/profile.d/mmf.sh')
+generate dot = no
diff --git a/media-config-target-hawkp/hal/etc/multimedia/mused.conf b/media-config-target-hawkp/hal/etc/multimedia/mused.conf
new file mode 100644 (file)
index 0000000..dc27fec
--- /dev/null
@@ -0,0 +1,62 @@
+[muse]
+; The 'hosts' parameter defines the modules,
+; which the user would like to connect to the muse.
+; If you want to add host, then write manually.
+hosts=player, camera, recorder
+logfile=/var/log/mused/muse-server
+lockfile=/tmp/.muse_core.lock
+min_timeout=5
+max_timeout=90
+;100MB=100000
+memory_threshold=100000
+enable_watch_external_storage=1
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1=--gst-debug=*:2
+gstparam2=--gst-disable-segtrap
+gstparam3=
+gstparam4=
+gstparam5=
+gstparam6=
+gstparam7=
+gstparam8=
+gstparam9=
+gstparam10=
+
+; gstparam#=--gst-plugin-load=/usr/lib/gstreamer-1.0/libgstcoreelements.so'
+; can be substituted with gstpreload=coreelements'
+gstpreload=
+
+[player]
+; The 'player' parameter represents the muse-player.
+; This module recovers the "capi-media-player".
+path=libmuse-player.so
+preloaded=no
+timeout=60
+disable_watchdog_api=-1
+;unlimited=-1
+max_instance=-1
+
+[camera]
+; The 'camera' parameter represents the muse-camera.
+; This module recovers the "capi-media-camera".
+path=libmuse-camera.so
+preloaded=no
+timeout=10
+;api 2 is camera_dispatcher_start_preview
+disable_watchdog_api=2
+;unlimited=-1
+max_instance=-1
+
+[recorder]
+; The 'recorder' parameter represents the muse-recorder.
+; This module recovers the "capi-media-recorder".
+; This one should be paired with the 'camera' module.
+path=libmuse-recorder.so
+preloaded=no
+timeout=10
+;api 5 is recorder_start
+disable_watchdog_api=5
+;unlimited=-1
+max_instance=-1
diff --git a/media-config-target-hawkp/hal/etc/murphy/murphy.lua b/media-config-target-hawkp/hal/etc/murphy/murphy.lua
new file mode 100644 (file)
index 0000000..14287c9
--- /dev/null
@@ -0,0 +1,99 @@
+m = murphy.get()
+
+-- load the dlog plugin
+m:try_load_plugin('dlog')
+
+-- load the console plugin
+m:try_load_plugin('console')
+
+-- load the dbus plugin
+-- if m:plugin_exists('dbus') then
+--     m:load_plugin('dbus')
+-- end
+
+-- load the native resource plugin
+if m:plugin_exists('resource-native') then
+    m:load_plugin('resource-native')
+    m:info("native resource plugin loaded")
+else
+    m:info("No native resource plugin found...")
+end
+
+-- load the dbus resource plugin
+m:try_load_plugin('resource-dbus', {
+    dbus_bus = "system",
+    dbus_service = "org.Murphy",
+    dbus_track = true,
+    default_zone = "driver",
+    default_class = "implicit"
+})
+
+-- load the domain control plugin
+if m:plugin_exists('domain-control') then
+    m:load_plugin('domain-control')
+else
+    m:info("No domain-control plugin found...")
+end
+
+if m:plugin_exists('glib') then
+    m:load_plugin('glib')
+else
+    m:info("No glib plugin found...")
+end
+
+-- define application classes
+application_class {
+    name     = "interrupt",
+    priority = 99,
+    modal    = false,
+    share    = false,
+    order    = "fifo"
+}
+
+application_class {
+    name     = "media",
+    priority = 10,
+    modal    = false,
+    share    = false,
+    order    = "lifo"
+}
+
+-- define zone attributes
+zone.attributes {
+    type = {mdb.string, "common", "rw"},
+    location = {mdb.string, "anywhere", "rw"}
+}
+
+-- define zones
+zone {
+     name = "driver",
+     attributes = {
+         type = "common",
+         location = "front-left"
+     }
+}
+
+-- define resource classes
+resource.class {
+     name = "video_overlay",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_decoder",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_encoder",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "camera",
+     shareable = false,
+     sync_release = true
+}
diff --git a/media-config-target-hawkp/hal/etc/profile.d/mmf.sh b/media-config-target-hawkp/hal/etc/profile.d/mmf.sh
new file mode 100644 (file)
index 0000000..7dac276
--- /dev/null
@@ -0,0 +1,6 @@
+#!/bin/sh
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+export GST_DEBUG=2
+export ORC_CODE=debug
+export ORC_DEBUG=5
+export GST_PLUGIN_PATH=@HAL_LIBDIR@/gstreamer-1.0
diff --git a/media-config-target-hawkp/hal/etc/pulse/client.conf b/media-config-target-hawkp/hal/etc/pulse/client.conf
new file mode 100644 (file)
index 0000000..3637b20
--- /dev/null
@@ -0,0 +1,37 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for PulseAudio clients. See pulse-client.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+; default-sink =
+; default-source =
+default-server = /var/run/pulse/native
+; default-dbus-server =
+
+autospawn = no
+; daemon-binary = /usr/bin/pulseaudio
+; extra-arguments = --log-target=syslog
+
+; cookie-file =
+
+enable-shm = no
+shm-size-bytes = 4194304 # setting this 0 will use the system-default, usually 64 MiB
+
+; auto-connect-localhost = no
+; auto-connect-display = no
diff --git a/media-config-target-hawkp/hal/etc/pulse/daemon.conf b/media-config-target-hawkp/hal/etc/pulse/daemon.conf
new file mode 100644 (file)
index 0000000..431e66b
--- /dev/null
@@ -0,0 +1,83 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for the PulseAudio daemon. See pulse-daemon.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+daemonize = yes
+; fail = yes
+; allow-module-loading = yes
+; allow-exit = yes
+; use-pid-file = yes
+system-instance = yes
+; local-server-type = user
+; enable-shm = yes
+; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
+; lock-memory = no
+; cpu-limit = no
+
+; high-priority = yes
+; nice-level = -11
+
+realtime-scheduling = yes
+realtime-priority = 5
+
+; exit-idle-time = 20
+; scache-idle-time = 20
+
+; dl-search-path = (depends on architecture)
+
+; load-default-script-file = yes
+; default-script-file = /etc/pulse/default.pa
+
+log-target = dlog
+log-level = info
+; log-meta = no
+; log-time = no
+; log-backtrace = 0
+
+resample-method = speex-fixed-3
+; enable-remixing = yes
+; enable-lfe-remixing = no
+
+flat-volumes = no
+
+; rlimit-fsize = -1
+; rlimit-data = -1
+; rlimit-stack = -1
+; rlimit-core = -1
+; rlimit-as = -1
+; rlimit-rss = -1
+; rlimit-nproc = -1
+; rlimit-nofile = 256
+; rlimit-memlock = -1
+; rlimit-locks = -1
+; rlimit-sigpending = -1
+; rlimit-msgqueue = -1
+; rlimit-nice = 31
+; rlimit-rtprio = 9
+; rlimit-rttime = 1000000
+
+; default-sample-format = s16le
+; default-sample-rate = 44100
+alternate-sample-rate = 44100
+; default-sample-channels = 2
+; default-channel-map = front-left,front-right
+
+; default-fragments = 4
+; default-fragment-size-msec = 25
diff --git a/media-config-target-hawkp/hal/etc/pulse/default.pa b/media-config-target-hawkp/hal/etc/pulse/default.pa
new file mode 100644 (file)
index 0000000..ef8f114
--- /dev/null
@@ -0,0 +1,149 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started per-user
+# (i.e. not in system mode)
+
+.nofail
+
+### Load something into the sample cache
+#load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
+#load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-access /usr/share/sounds/generic.wav
+
+.fail
+
+### Automatically restore the volume of streams and devices
+load-module module-device-restore
+load-module module-stream-restore
+load-module module-card-restore
+
+### Automatically augment property information from .desktop files
+### stored in /usr/share/application
+load-module module-augment-properties
+
+### Load audio drivers statically
+### (it's probably better to not load these drivers manually, but instead
+### use module-udev-detect -- see below -- for doing this automatically)
+#load-module module-alsa-sink
+#load-module module-alsa-source device=hw:1,0
+#load-module module-null-sink
+#load-module module-pipe-sink
+
+### Automatically load driver modules depending on the hardware available
+.ifexists module-udev-detect.so
+load-module module-udev-detect
+.else
+### Use the static hardware detection module (for systems that lack udev support)
+load-module module-detect
+.endif
+
+### Automatically connect sink and source if JACK server is present
+.ifexists module-jackdbus-detect.so
+.nofail
+load-module module-jackdbus-detect channels=2
+.fail
+.endif
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Load several protocols
+.ifexists module-esound-protocol-unix.so
+load-module module-esound-protocol-unix
+.endif
+load-module module-native-protocol-unix
+
+### Network access (may be configured with paprefs, so leave this commented
+### here if you plan to use paprefs)
+#load-module module-esound-protocol-tcp
+#load-module module-native-protocol-tcp
+
+### Load the RTP receiver module (also configured via paprefs, see above)
+#load-module module-rtp-recv
+
+### Load the RTP sender module (also configured via paprefs, see above)
+#load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
+#load-module module-rtp-send source=rtp.monitor
+
+### Load additional modules from GConf settings. This can be configured with the paprefs tool.
+### Please keep in mind that the modules configured by paprefs might conflict with manually
+### loaded modules.
+.ifexists module-gconf.so
+.nofail
+load-module module-gconf
+.fail
+.endif
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Honour intended role device property
+load-module module-intended-roles
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle
+
+### If autoexit on idle is enabled we want to make sure we only quit
+### when no local session needs us anymore.
+.ifexists module-console-kit.so
+load-module module-console-kit
+.endif
+.ifexists module-systemd-login.so
+load-module module-systemd-login
+.endif
+
+### Enable positioned event sounds
+load-module module-position-event-sounds
+
+### Cork music/video streams when a phone stream is active
+load-module module-role-cork
+
+### Modules to allow autoloading of filters (such as echo cancellation)
+### on demand. module-filter-heuristics tries to determine what filters
+### make sense, and module-filter-apply does the heavy-lifting of
+### loading modules and rerouting streams.
+load-module module-filter-heuristics
+load-module module-filter-apply
+
+### Load DBus protocol
+.ifexists module-dbus-protocol.so
+load-module module-dbus-protocol
+.endif
+
+
+load-module module-switch-on-port-available
+
+### Make some devices default
+#set-default-sink output
+#set-default-source input
diff --git a/media-config-target-hawkp/hal/etc/pulse/device-map.json b/media-config-target-hawkp/hal/etc/pulse/device-map.json
new file mode 100644 (file)
index 0000000..f583b34
--- /dev/null
@@ -0,0 +1,16 @@
+{
+       "device-types":[
+               {
+                       "device-type":"builtin-speaker",
+                       "playback-devices":{"normal":"alsa:0,1"}
+               }
+       ],
+       "device-files":{
+               "playback-devices":[
+                       {
+                               "device-string":"alsa:0,1",
+                               "role":{"normal":"mmap=0 tsched=0 rate=48000"}
+                       }
+               ]
+       }
+}
diff --git a/media-config-target-hawkp/hal/etc/pulse/stream-map.json b/media-config-target-hawkp/hal/etc/pulse/stream-map.json
new file mode 100644 (file)
index 0000000..c48442f
--- /dev/null
@@ -0,0 +1,246 @@
+{
+       "latencies":[
+               {
+                       "type":"low",
+                       "fragsize-ms":25,
+                       "minreq-ms":-1,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"mid",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"high",
+                       "fragsize-ms":75,
+                       "minreq-ms":-1,
+                       "tlength-ms":400,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"voip",
+                       "fragsize-ms":20,
+                       "minreq-ms":20,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":-1,
+                       "maxlength":-1
+               }
+       ],
+       "volumes":[
+               {
+                       "type":"master",
+                       "is-hal-volume":1
+               },
+               {
+                       "type":"media",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"system",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"alarm",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"notification",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voice",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"ringtone",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voip",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"call",
+                       "is-hal-volume":1
+               }
+       ],
+       "streams":[
+               {
+                       "role":"media",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["audio-jack","usb-audio","builtin-mic"],
+                       "avail-out-devices":["forwarding","audio-jack","builtin-speaker","bt-a2dp","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"system",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"system"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["forwarding","audio-jack","builtin-speaker","bt-a2dp","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"alarm",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"alarm"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-speaker","bt-a2dp","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"notification",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"notification"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-speaker","bt-a2dp","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"emergency",
+                       "priority" : 4,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["builtin-speaker","audio-jack","bt-a2dp","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-information",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"voice"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-speaker","bt-a2dp","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-recognition",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["audio-jack","usb-audio","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"voice-recognition-service",
+                       "priority" : 3,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["audio-jack","usb-audio","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"ringtone-voip",
+                       "priority" : 5,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-speaker","bt-a2dp","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","sound-manager"]
+               },
+               {
+                       "role":"ringtone-call",
+                       "priority" : 6,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-speaker","bt-a2dp","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voip",
+                       "priority" : 5,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"voip"},
+                       "avail-in-devices":["audio-jack","bt-sco","builtin-mic"],
+                       "avail-out-devices":["audio-jack","builtin-speaker","bt-sco"],
+                       "avail-frameworks":["audio-io","tone-player","sound-manager"]
+               },
+               {
+                       "role":"call-voice",
+                       "priority" : 6,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"call"},
+                       "avail-in-devices":["audio-jack","bt-sco","builtin-mic"],
+                       "avail-out-devices":["audio-jack","builtin-speaker","bt-sco"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"call-video",
+                       "priority" : 6,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"call"},
+                       "avail-in-devices":["audio-jack","bt-sco","builtin-mic"],
+                       "avail-out-devices":["audio-jack","builtin-speaker","bt-sco"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"radio",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-speaker"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"loopback",
+                       "priority" : 2,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["usb-audio"],
+                       "avail-out-devices":["builtin-speaker","usb-audio"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"loopback-mirroring",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["forwarding"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"ext-media",
+                       "priority" : 3,
+                       "route-type" : "manual-ext",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["usb-audio"],
+                       "avail-out-devices":["bt-a2dp","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"solo",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-speaker","bt-a2dp","usb-audio"],
+                       "avail-frameworks":["wav-player","tone-player","sound-manager"]
+               }
+       ]
+}
diff --git a/media-config-target-hawkp/hal/etc/pulse/system.pa b/media-config-target-hawkp/hal/etc/pulse/system.pa
new file mode 100644 (file)
index 0000000..aacc4b1
--- /dev/null
@@ -0,0 +1,64 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started in system
+# mode.
+
+### Automatically load driver modules depending on the hardware available
+#.ifexists module-udev-detect.so
+load-module module-udev-detect
+#.endif
+
+### Load several protocols
+load-module module-native-protocol-unix auth-anonymous=1
+
+### Load module-tizenaudio-policy
+load-module module-tizenaudio-policy
+
+### Sound Player module
+load-module module-sound-player
+load-module module-tone-player
+load-module module-role-ducking global=1 trigger_roles=solo/voice-information ducking_roles=media,system,alarm,notification,voice-information,ext-media/media,system,alarm,notification,ext-media volume=0%/30%
+
+### Automatically restore the volume of streams and devices
+#load-module module-stream-restore
+#load-module module-device-restore
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+.ifexists module-dbus-protocol.so
+### If you want to allow TCP connections, set access to "remote" or "local,remote".
+load-module module-dbus-protocol access=local
+.endif
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+#load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle timeout=1
+
+load-sample camera-shutter-01 /usr/share/sounds/mm-camcorder/capture_shutter_01.ogg
+load-sample camera-shutter-02 /usr/share/sounds/mm-camcorder/capture_shutter_02.ogg
+load-sample recording-start /usr/share/sounds/mm-camcorder/recording_start_01.ogg
+load-sample recording-stop /usr/share/sounds/mm-camcorder/recording_stop_01.ogg
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf
new file mode 100644 (file)
index 0000000..db78eb4
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'Aux' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf
new file mode 100644 (file)
index 0000000..baf674a
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'FM' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-radio
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+.include analog-input.conf.common
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf
new file mode 100644 (file)
index 0000000..4be5722
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf
new file mode 100644 (file)
index 0000000..f7f3085
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic/Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf
new file mode 100644 (file)
index 0000000..2a36f2f
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+name = analog-input-microphone
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common
new file mode 100644 (file)
index 0000000..b35e7af
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common element for all microphone inputs
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Mic Select'
+
+[Element Mic Select]
+enumeration = select
+
+[Option Mic Select:Mic1]
+name = input-microphone
+priority = 20
+
+[Option Mic Select:Mic2]
+name = input-microphone
+priority = 19
+
+;;; Various Boosts
+
+[Element Mic Boost (+20dB)]
+switch = select
+volume = merge
+
+[Option Mic Boost (+20dB):on]
+name = input-boost-on
+
+[Option Mic Boost (+20dB):off]
+name = input-boost-off
+
+[Element Mic Boost]
+switch = select
+volume = merge
+
+[Option Mic Boost:on]
+name = input-boost-on
+
+[Option Mic Boost:off]
+name = input-boost-off
+
+[Element Front Mic Boost]
+switch = select
+
+[Option Front Mic Boost:on]
+name = input-boost-on
+
+[Option Front Mic Boost:off]
+name = input-boost-off
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf
new file mode 100644 (file)
index 0000000..8531ec7
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'TV Tuner' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-video
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf
new file mode 100644 (file)
index 0000000..74c76f0
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Video' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf
new file mode 100644 (file)
index 0000000..5055f90
--- /dev/null
@@ -0,0 +1,54 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; A fallback for devices that lack seperate Mic/Line/Aux/Video/TV
+; Tuner/FM elements
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Capture]
+required = volume
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required-absent = any
+
+[Element Line]
+required-absent = any
+
+[Element Aux]
+required-absent = any
+
+[Element Video]
+required-absent = any
+
+[Element Mic/Line]
+required-absent = any
+
+[Element TV Tuner]
+required-absent = any
+
+[Element FM]
+required-absent = any
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common
new file mode 100644 (file)
index 0000000..951e11f
--- /dev/null
@@ -0,0 +1,294 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Mixer path for PulseAudio's ALSA backend, common elements for all
+; input paths. If multiple options by the same id are discovered they
+; will be suffixed with a number to distuingish them, in the same
+; order they appear here.
+;
+; Source selection should use the following names:
+;
+;       input                       -- If we don't know the exact kind of input
+;       input-microphone
+;       input-microphone-internal
+;       input-microphone-external
+;       input-linein
+;       input-video
+;       input-radio
+;       input-docking-microphone
+;       input-docking-linein
+;       input-docking
+;
+;  We explicitly don't want to wrap the following sources:
+;
+;       CD
+;       Synth/MIDI
+;       Phone
+;       Mix
+;       Digital/SPDIF
+;       Master
+;       PC Speaker
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Input Source Select'
+
+[Element Input Source Select]
+enumeration = select
+
+[Option Input Source Select:Input1]
+name = input
+priority = 10
+
+[Option Input Source Select:Input2]
+name = input
+priority = 5
+
+;;; 'Input Source'
+
+[Element Input Source]
+enumeration = select
+
+[Option Input Source:Mic]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Microphone]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Front Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Front Microphone]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Internal Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Line]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line-In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Docking-Station]
+name = input-docking
+priority = 17
+
+[Option Input Source:AUX IN]
+name = input
+priority = 10
+
+;;; 'Capture Source'
+
+[Element Capture Source]
+enumeration = select
+
+[Option Capture Source:TV Tuner]
+name = input-video
+
+[Option Capture Source:FM]
+name = input-radio
+
+[Option Capture Source:Mic/Line]
+name = input
+
+[Option Capture Source:Line/Mic]
+name = input
+
+[Option Capture Source:Mic]
+name = input-microphone
+
+[Option Capture Source:Microphone]
+name = input-microphone
+
+[Option Capture Source:Int Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Int DMic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Mic]
+name = input-microphone-internal
+
+[Option Capture Source:iMic]
+name = input-microphone-internal
+
+[Option Capture Source:i-Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Microphone]
+name = input-microphone-internal
+
+[Option Capture Source:Front Mic]
+name = input-microphone
+
+[Option Capture Source:Front Microphone]
+name = input-microphone
+
+[Option Capture Source:Rear Mic]
+name = input-microphone
+
+[Option Capture Source:Mic1]
+name = input-microphone
+
+[Option Capture Source:Mic2]
+name = input-microphone
+
+[Option Capture Source:D-Mic]
+name = input-microphone
+
+[Option Capture Source:IntMic]
+name = input-microphone-internal
+
+[Option Capture Source:ExtMic]
+name = input-microphone-external
+
+[Option Capture Source:Ext Mic]
+name = input-microphone-external
+
+[Option Capture Source:E-Mic]
+name = input-microphone-external
+
+[Option Capture Source:e-Mic]
+name = input-microphone-external
+
+[Option Capture Source:LineIn]
+name = input-linein
+
+[Option Capture Source:Analog]
+name = input
+
+[Option Capture Source:Line]
+name = input-linein
+
+[Option Capture Source:Line-In]
+name = input-linein
+
+[Option Capture Source:Line In]
+name = input-linein
+
+[Option Capture Source:Video]
+name = input-video
+
+[Option Capture Source:Aux]
+name = input
+
+[Option Capture Source:Aux0]
+name = input
+
+[Option Capture Source:Aux1]
+name = input
+
+[Option Capture Source:Aux2]
+name = input
+
+[Option Capture Source:Aux3]
+name = input
+
+[Option Capture Source:AUX IN]
+name = input
+
+[Option Capture Source:Aux In]
+name = input
+
+[Option Capture Source:AOUT]
+name = input
+
+[Option Capture Source:AUX]
+name = input
+
+[Option Capture Source:Cam Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 1]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 2]
+name = input-microphone
+
+[Option Capture Source:Analog Inputs]
+name = input
+
+[Option Capture Source:Unknown1]
+name = input
+
+[Option Capture Source:Unknown2]
+name = input
+
+[Option Capture Source:Docking-Station]
+name = input-docking
+
+[Option Capture Source:Dock Mic]
+name = input-docking-microphone
+
+;;; 'Mic Jack Mode'
+
+[Element Mic Jack Mode]
+enumeration = select
+
+[Option Mic Jack Mode:Mic In]
+name = input-microphone
+
+[Option Mic Jack Mode:Line In]
+name = input-linein
+
+;;; 'Digital Input Source'
+
+[Element Digital Input Source]
+enumeration = select
+
+[Option Digital Input Source:Analog Inputs]
+name = input
+
+[Option Digital Input Source:Digital Mic 1]
+name = input-microphone
+
+[Option Digital Input Source:Digital Mic 2]
+name = input-microphone
+
+;;; Various Boosts
+
+[Element Capture Boost]
+switch = select
+
+[Option Capture Boost:on]
+name = input-boost-on
+
+[Option Capture Boost:off]
+name = input-boost-off
+
+[Element Auto Gain Control]
+switch = select
+
+[Option Auto Gain Control:on]
+name = input-agc-on
+
+[Option Auto Gain Control:off]
+name = input-agc-off
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf
new file mode 100644 (file)
index 0000000..f2fd31c
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone2' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 89
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the second headphones, not
+; the first headphones. But it should not hurt if we leave the
+; headphone jack enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf
new file mode 100644 (file)
index 0000000..2131cfe
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+[Element Headphone]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the first headphones, not
+; the second headphones. But it should not hurt if we leave the second
+; headphone jack enabled nonetheless.
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf
new file mode 100644 (file)
index 0000000..0a43e27
--- /dev/null
@@ -0,0 +1,85 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage in laptops that have a seperate LFE speaker
+; connected to the Master mono connector
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 40
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all-no-lfe
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf
new file mode 100644 (file)
index 0000000..542edc4
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage on boards that have a seperate Mono output plug.
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 50
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = off
+volume = off
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf
new file mode 100644 (file)
index 0000000..aea7853
--- /dev/null
@@ -0,0 +1,94 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Speaker' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = mute
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = mute
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = mute
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf
new file mode 100644 (file)
index 0000000..fc30800
--- /dev/null
@@ -0,0 +1,92 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for the 'default' output. Note that a-o-speaker.conf has a
+; higher priority than this
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 99
+
+[Element Hardware Master]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = ignore
+volume = ignore
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the default output, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = ignore
+volume = zero
+
+[Element Headphone2]
+switch = ignore
+volume = zero
+
+[Element Speaker]
+switch = ignore
+volume = off
+
+[Element Front]
+switch = ignore
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = ignore
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = ignore
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = ignore
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common
new file mode 100644 (file)
index 0000000..3204846
--- /dev/null
@@ -0,0 +1,128 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common part of all paths
+
+; So here's generally how mixer paths are used by PA: PA goes through
+; a mixer path file from top to bottom and checks if a mixer element
+; described therein exists. If so it is added to the list of mixer
+; elements PA will control, keeping the order it read them in. If a
+; mixer element described here has set the required= or
+; required-absent= directives a path might not be accepted as valid
+; and is ignored in its entirety (see below). However usually if a
+; element listed here is missing this one element is ignored but not
+; the entire path.
+;
+; When a device shall be muted/unmuted *all* elements listed in a path
+; file with "switch = mute" will be toggled.
+;
+; When a device shall change its volume, PA will got through the list
+; of all elements with "volume = merge" and set the volume on the
+; first element. If that element does not support dB volumes, this is
+; where the story ends. If it does support dB volumes, PA divides the
+; requested volume by the volume that was set on this element, and
+; then go on to the next element with "volume = merge" and then set
+; that there, and so on.  That way the first volume element in the
+; path will be the one that does the 'biggest' part of the overall
+; volume adjustment, with the remaining elements usually being set to
+; some value next to 0dB. This logic makes sure we get the full range
+; over all volume sliders and a very high granularity of volumes
+; already in hardware.
+;
+; All switches and enumerations set to "select" are exposed via the
+; "port" functionality of sinks/sources. Basically every possible
+; switch setting and every possible enumeration setting will be
+; combined and made into a "port". So make sure you don't list too
+; many switches/enums for exposing, because the number of ports might
+; rise exponentially.
+;
+; Only one path can be selected at a time. All paths that are valid
+; for an audio device will be exposed as "port" for the sink/source.
+
+
+; [General]
+; priority = ...                         # Priority for this path
+; description = ...
+;
+; [Option ...:...]                       # For each option of an enumeration or switch element
+;                                        # that shall be exposed as a sink/source port. Needs to
+;                                        # be named after the Element, followed by a colon, followed
+;                                        # by the option name, resp. on/off if the element is a switch.
+; name = ...                             # Logical name to use in the path identifier
+; priority = ...                         # Priority if this is made into a device port
+;
+; [Element ...]                          # For each element that we shall control
+; required = ignore | switch | volume | enumeration | any     # If set, require this element to be of this kind and available,
+;                                                             # otherwise don't consider this path valid for the card
+; required-absent = ignore | switch | volume                  # If set, require this element to not be of this kind and not
+;                                                             # available, otherwise don't consider this path valid for the card
+;
+; switch = ignore | mute | off | on | select                  # What to do with this switch: ignore it, make it follow mute status,
+;                                                             # always set it to off, always to on, or make it selectable as port.
+;                                                             # If set to 'select' you need to define an Option section for on
+;                                                             # and off
+; volume = ignore | merge | off | zero   # What to do with this volume: ignore it, merge it into the device
+;                                        # volume slider, always set it to the lowest value possible, or always
+;                                        # set it to 0 dB (for whatever that means)
+; enumeration = ignore | select          # What to do with this enumeration, ignore it or make it selectable
+;                                        # via device ports. If set to 'select' you need to define an Option section
+;                                        # for each of the items you want to expose
+; direction = playback | capture         # Is this relevant only for playback or capture? If not set this will implicitly be
+;                                        # set the direction of the PCM device is opened as. Generally this doesn't need to be set
+;                                        # unless you have a broken driver that has playback controls marked for capture or vice
+;                                        # versa
+; direction-try-other = no | yes         # If the element does not supported what is requested, try the other direction, too?
+;
+; override-map.1 = ...                   # Override the channel mask of the mixer control if the control only exposes a single channel
+; override-map.2 = ...                   # Override the channel masks of the mixer control if the control only exposes two channels
+;                                        # Override maps should list for each element channel which high-level channels it controls via a
+;                                        # channel mask. A channel mask may either be the name of a single channel, or the words "all-left",
+;                                        # "all-right", "all-center", "all-front", "all-rear", and "all" to encode a specific subset of
+;                                        # channels in a mask
+
+[Element PCM]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element External Amplifier]
+switch = select
+
+[Option External Amplifier:on]
+name = output-amplifier-on
+priority = 10
+
+[Option External Amplifier:off]
+name = output-amplifier-off
+priority = 0
+
+;;; 'Analog Output'
+
+[Element Analog Output]
+enumeration = select
+
+[Option Analog Output:Speakers]
+name = output-speaker
+priority = 10
+
+[Option Analog Output:Headphones]
+name = output-headphones
+priority = 9
+
+[Option Analog Output:FP Headphones]
+name = output-headphones
+priority = 8
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf
new file mode 100644 (file)
index 0000000..9838138
--- /dev/null
@@ -0,0 +1,144 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned. (and should be good enough for the vast majority of
+; cards).  Use the udev property PULSE_PROFILE_SET to assign a
+; different profile set than this one to a device.  So what is this
+; about? Simply, what we do here is map ALSA devices to how they are
+; exposed in PA. We say which ALSA device string to use to open a
+; device, which channel mapping to use then, and which mixer path to
+; use. This is encoded in a 'mapping'. Multiple of these mappings can
+; be bound together in a 'profile' which is then directly exposed in
+; the UI as a card profile. Each mapping assigned to a profile will
+; result in one sink/source to be created if the profile is selected
+; for the card.
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+
+[General]
+auto-profiles = yes
+
+[Mapping analog-mono]
+device-strings = hw:0
+channel-map = mono
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 1
+
+[Mapping analog-stereo]
+device-strings = front:%f hw:0
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 10
+
+[Mapping analog-surround-40]
+device-strings = surround40:%f
+channel-map = front-left,front-right,rear-left,rear-right
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-41]
+device-strings = surround41:%f
+channel-map = front-left,front-right,rear-left,rear-right,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-50]
+device-strings = surround50:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-51]
+device-strings = surround51:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-71]
+device-strings = surround71:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+description = Analog Surround 7.1
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping iec958-stereo]
+device-strings = iec958:%f
+channel-map = left,right
+priority = 5
+
+[Mapping iec958-surround-40]
+device-strings = iec958:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 1
+
+[Mapping iec958-ac3-surround-40]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 2
+direction = output
+
+[Mapping iec958-ac3-surround-51]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 3
+direction = output
+
+[Mapping hdmi-stereo]
+device-strings = hdmi:%f
+channel-map = left,right
+priority = 4
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf
new file mode 100644 (file)
index 0000000..2b83530
--- /dev/null
@@ -0,0 +1,91 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 4 DJ
+;
+; This card has two stereo pairs of input and two stereo pairs of
+; output, named channels A and B. Channel B has an additional
+; Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b-output]
+description = Analog Stereo Channel B (Headphones)
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-b-input]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b-output
+input-mappings = analog-stereo-a analog-stereo-b-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+input-mappings = analog-stereo-b-input
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+priority = 6
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b-input
+priority = 1
+skip-probe = yes
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf
new file mode 100644 (file)
index 0000000..3fe3cc5
--- /dev/null
@@ -0,0 +1,162 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 8 DJ
+;
+; This card has four stereo pairs of input and four stereo pairs of
+; output, named channels A to D. Channel C has an additional Mic/Line
+; connector, channel D an additional Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+
+# Since we want to set a different description for channel C's/D's input
+# and output we define two seperate mappings for them
+[Mapping analog-stereo-c-output]
+description = Analog Stereo Channel C
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-c-input]
+description = Analog Stereo Channel C (Line/Mic)
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = input
+
+[Mapping analog-stereo-d-output]
+description = Analog Stereo Channel D (Headphones)
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-d-input]
+description = Analog Stereo Channel D
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B, C (Line/Mic), D (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-input analog-stereo-d-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-c]
+description = Analog Stereo Channel D (Headphones) Output, Channel C (Line/Mic) Input
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-c-input
+priority = 90
+skip-probe = yes
+
+[Profile output:analog-stereo-c-d+input:analog-stereo-c-d]
+description = Analog Stereo Duplex Channels C (Line/Mic), D (Line/Mic)
+output-mappings = analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-c-input analog-stereo-d-input
+priority = 80
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B
+output-mappings = analog-stereo-b
+input-mappings = analog-stereo-b
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-c+input:analog-stereo-c]
+description = Analog Stereo Duplex Channel C (Line/Mic)
+output-mappings = analog-stereo-c-output
+input-mappings = analog-stereo-c-input
+priority = 60
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-d]
+description = Analog Stereo Duplex Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-d-input
+priority = 70
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 6
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B
+output-mappings = analog-stereo-b
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-c]
+description = Analog Stereo Output Channel C
+output-mappings = analog-stereo-c-output
+priority = 7
+skip-probe = yes
+
+[Profile output:analog-stereo-d]
+description = Analog Stereo Output Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+priority = 8
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b
+priority = 1
+skip-probe = yes
+
+[Profile input:analog-stereo-c]
+description = Analog Stereo Input Channel C (Line/Mic)
+input-mappings = analog-stereo-c-input
+priority = 4
+skip-probe = yes
+
+[Profile input:analog-stereo-d]
+description = Analog Stereo Input Channel D
+input-mappings = analog-stereo-d-input
+priority = 3
+skip-probe = yes
diff --git a/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf b/media-config-target-hawkp/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf
new file mode 100644 (file)
index 0000000..6a8d08b
--- /dev/null
@@ -0,0 +1,127 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned (and should be good enough for the vast majority of
+; cards). If you want to assign a different profile set than this one
+; to a device, either set the udev property PULSE_PROFILE_SET for the
+; card, or use the "profile_set" module argument when loading
+; module-alsa-card.
+;
+; So what is this about? Simply, what we do here is map ALSA devices
+; to how they are exposed in PA. We say which ALSA device string to
+; use to open a device, which channel mapping to use then, and which
+; mixer path to use. This is encoded in a 'mapping'. Multiple of these
+; mappings can be bound together in a 'profile' which is then directly
+; exposed in the UI as a card profile. Each mapping assigned to a
+; profile will result in one sink/source to be created if the profile
+; is selected for the card.
+;
+; Additionally, the path set configuration files can describe the
+; decibel values assigned to the steps of the volume elements. This
+; can be used to work around situations when the alsa driver doesn't
+; provide any decibel information, or when the information is
+; incorrect.
+
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+;
+; [DecibelFix element]                      # Decibel fixes can be used to work around missing or incorrect dB
+;                                           # information from alsa. A decibel fix is a table that maps volume steps
+;                                           # to decibel values for one volume element. The "element" part in the
+;                                           # section title is the name of the volume element.
+;                                           #
+;                                           # NOTE: This feature is meant just as a help for figuring out the correct
+;                                           # decibel values. PulseAudio is not the correct place to maintain the
+;                                           # decibel mappings!
+;                                           #
+;                                           # If you need this feature, then you should make sure that when you have
+;                                           # the correct values figured out, the alsa driver developers get informed
+;                                           # too, so that they can fix the driver.
+;
+; db-values = ...                           # The option value consists of pairs of step numbers and decibel values.
+;                                           # The pairs are separated with whitespace, and steps are separated from
+;                                           # the corresponding decibel values with a colon. The values must be in an
+;                                           # increasing order. Here's an example of a valid string:
+;                                           #
+;                                           #     "0:-40.50  1:-38.70  3:-33.00  11:0"
+;                                           #
+;                                           # The lowest step imposes a lower limit for hardware volume and the
+;                                           # highest step correspondingly imposes a higher limit. That means that
+;                                           # that the mixer will never be set outside those values - the rest of the
+;                                           # volume scale is done using software volume.
+;                                           #
+;                                           # As can be seen in the example, you don't need to specify a dB value for
+;                                           # each step. The dB values for skipped steps will be linearly interpolated
+;                                           # using the nearest steps that are given.
+
+[General]
+auto-profiles = yes
+
+[Mapping analog-mono]
+device-strings = hw:%f
+channel-map = mono
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 1
+
+[Mapping usb-analog-stereo]
+device-strings = hw:%f
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 10
+
+[Mapping usb-analog-surround-51]
+device-strings = hw:%f
+;channel-map = front-left,front-right,front-center,lfe,rear-left,rear-right
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-lfe-on-mono
+priority = 180
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-n4.manifest b/media-config-target-n4.manifest
new file mode 100644 (file)
index 0000000..a76fdba
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+       <request>
+               <domain name="_" />
+       </request>
+</manifest>
diff --git a/media-config-target-n4/hal/etc/asound.conf b/media-config-target-n4/hal/etc/asound.conf
new file mode 100644 (file)
index 0000000..acaf318
--- /dev/null
@@ -0,0 +1,11 @@
+# default sound configuration
+
+pcm. !default {
+       type hw
+       card 0
+}
+
+ctl. !default {
+       type hw
+       card 0
+}
diff --git a/media-config-target-n4/hal/etc/inference/inference_engine.ini b/media-config-target-n4/hal/etc/inference/inference_engine.ini
new file mode 100644 (file)
index 0000000..54eddf2
--- /dev/null
@@ -0,0 +1,3 @@
+[inference backend]
+;/*OPENCV=0, Tensorflow-lite=1
+supported backend types = 0,1
diff --git a/media-config-target-n4/hal/etc/multimedia/mmfw_audio_pcm_dump.ini b/media-config-target-n4/hal/etc/multimedia/mmfw_audio_pcm_dump.ini
new file mode 100644 (file)
index 0000000..6e13b68
--- /dev/null
@@ -0,0 +1,8 @@
+[pcm_dump]
+;playback
+pa_sink = 0
+pa_sink_input = 0
+
+;capture
+pa_source = 0
+pa_source_output = 0
diff --git a/media-config-target-n4/hal/etc/multimedia/mmfw_audio_volume.ini b/media-config-target-n4/hal/etc/multimedia/mmfw_audio_volume.ini
new file mode 100644 (file)
index 0000000..09a9a97
--- /dev/null
@@ -0,0 +1,19 @@
+[volumes]
+system                         = 0, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 82, 84, 86, 88, 90
+notification                   = 0, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 95
+alarm                          = 0, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 90
+ringtone                       = 0, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 90
+media                          = 0, 44, 48, 52, 56, 61, 66, 70, 74, 78, 82, 85, 88, 91, 94, 97
+call                           = 60, 65, 70, 76, 82, 88, 94, 100
+voip                           = 60, 65, 70, 76, 82, 88, 94, 100
+voice                          = 0, 55, 58, 61, 64, 67, 70, 73, 76, 79, 82, 85, 88, 91, 94, 97
+gain_dialer                    = 1.00
+gain_touch                     = 1.00
+gain_af                        = 0.70
+gain_shutter1                  = 0.14
+gain_shutter2                  = 1.00
+gain_camcording                = 0.30
+gain_midi                      = 1.00
+gain_booting                   = 0.40
+gain_video                     = 0.90
+gain_tts                       = 1.00
diff --git a/media-config-target-n4/hal/etc/multimedia/mmfw_camcorder.ini b/media-config-target-n4/hal/etc/multimedia/mmfw_camcorder.ini
new file mode 100644 (file)
index 0000000..fc34208
--- /dev/null
@@ -0,0 +1,103 @@
+; < Camera/Camcorder Configure Main INI file >
+;
+; - Header List -
+; 1.  General
+; 2.  VideoInput
+; 3.  AudioInput
+; 4.  VideoOutput
+; 5.  Capture
+; 6.  Record
+; 7.  VideoEncoder
+; 8.  AudioEncoder
+; 9.  ImageEncoder
+; 10. Mux
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryMain"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[General]
+SyncStateChange = 1
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap || NOT-USE-DEFAULT_VALUE
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap --gst-debug=3 || NOT-USE-DEFAULT_VALUE
+ModelName = GT-TIZEN
+;DisabledAttributes = camera-optical-zoom camera-af-touch-x camera-af-touch-y camera-exposure-value camera-f-number camera-shutter-speed camera-hold-af-after-capturing filter-flip filter-hue display-src-x display-src-y display-src-width display-src-height tag-image-description strobe-control strobe-capabilities strobe-mode detect-mode detect-number detect-focus-select detect-select-number detect-status || NO_DEFAULT_VALUE
+
+[VideoInput]
+VideosrcElement = videotestsrc | 2,0 | do-timestamp,1 | is-live,1
+UseVideoscale = 1
+VideoscaleElement = videoscale | 3,0 | width,320 | height,240 | method,1
+UseZeroCopyFormat = 0
+DeviceCount = 2
+
+[AudioInput]
+AudioDevice = 0,1 || 0
+AudiosrcElement = pulsesrc | 1,0 | do-timestamp,1
+AudiomodemsrcElement = pulsesrc | 1,0 | do-timestamp,1
+
+[VideoOutput]
+; DisplayDevice
+;;; 0: MAIN LCD, 1: SUB LCD, 2:TV OUT, 3: MAIN LCD and SUB LCD, 4: MAIN LCD and TV OUT
+DisplayDevice = 0 || 0
+; DisplayMode
+;;; 0: Default, 1: Pri Video ON and Sec Video Full-Screen, 2: Pri Video OFF and Sec Video Full-Screen
+DisplayMode = 0,1,2 || 0
+; Videosink
+;;; 0: Overlay surface, 1: Evas surface, 2: GL surface, 3: NULL surface, 4: Remote
+Videosink = 0,3,4 || 3
+VideosinkElementOverlay = tizenwlsink | 7,0 | draw-borders,0 | force-aspect-ratio,1 | enable-last-sample,0 | qos,0 | sync,0 | show-preroll-frame,0 | use-tbm,1
+VideosinkElementRemote = shmsink | 5,0 | wait-for-connection,0 | perms,511 | enable-last-sample,0 | qos,0 | sync,0
+VideosinkElementNull = fakesink | 4,0 | qos,0 | sync,0 | enable-last-sample,0 | show-preroll-frame,0
+UseVideoscale = 1
+VideoscaleElement = fimcconvert | 1,0 | rotang,0
+;VideoscaleElement = videoscale
+
+[VideoEncoder]
+MPEG4 = avenc_mpeg4 | 0,0
+
+[AudioEncoder]
+AMR = amrnbenc | 0,0
+AAC = avenc_aac | 1,0 | compliance,-2
+WAVE = wavenc | 0,0
+
+[ImageEncoder]
+JPEG = jpegenc | 0,0
+;PNG = pngenc | 0,0
+
+[Capture]
+UseEncodebin = 1
+UseCaptureMode = 0
+VideoscaleElement = videoscale | 1,0 | method,1
+
+[Record]
+UseAudioEncoderQueue = 1
+UseVideoEncoderQueue = 0
+VideoProfile = 0
+VideoAutoAudioConvert = 1
+VideoAutoAudioResample = 0
+VideoAutoColorSpace = 1
+AudioProfile = 1
+AudioAutoAudioConvert = 1
+AudioAutoAudioResample = 0
+AudioAutoColorSpace = 0
+ImageProfile = 2
+ImageAutoAudioConvert = 0
+ImageAutoAudioResample = 0
+ImageAutoColorSpace = 1
+RecordsinkElement = filesink | 1,0 | async,0
+UseNoiseSuppressor = 0
+DropVideoFrame = 0
+PassFirstVideoFrame = 0
+
+[Mux]
+3GP = avmux_3gp | 0,0
+AMR = avmux_amr | 0,0
+MP4 = mp4mux | 0,0
+AVI = avimux | 0,0
+MATROSKA = matroskamux | 0,0
+WAV = wavenc | 0,0
+AAC = avmux_adts | 0,0
+M2TS = mpegtsmux | 0,0
+
diff --git a/media-config-target-n4/hal/etc/multimedia/mmfw_camcorder_camera0.ini b/media-config-target-n4/hal/etc/multimedia/mmfw_camcorder_camera0.ini
new file mode 100644 (file)
index 0000000..fd96f16
--- /dev/null
@@ -0,0 +1,206 @@
+; < Camera/Camcorder Configure Control INI file >
+;
+; - Header List -
+; 1.  Camera
+; 2.  Strobe
+; 3.  Effect
+; 4.  Photograph
+; 5.  Capture
+; 6.  Detect
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryControl"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[Camera]
+; Input index - real setting value
+;;; 0:PRIMARY_CAMERA, 1:SECONDARY_CAMERA
+; Input index - MSL value(convert array index)
+;;; -1:NONE, 0:CAMERA0, 1:CAMERA1
+InputIndex = 0,-255 || 0
+DeviceName = TEST_CAMERA_0
+PreviewResolution = 320,240 | 640,480 || 320,240
+CaptureResolution = 320,240 | 640,480 || 640,480
+VideoResolution = 320,240 | 640,480 || 640,480
+FPS0 = 0,15,30 || 15
+FPS1 = 0,15,30 || 15
+; PictureForamt - MSL value
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+PictureFormat = 7 || 7
+Overlay = 0,1 || 1
+; Recommend display rotation
+;;; 0:NONE, 1:90, 2:180, 3:270
+RecommendDisplayRotation = 0
+; Recommend preview format for capture
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatCapture = 7
+; Recommend preview format for record
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatRecord = 7
+; Recommend preview resolution
+;;; 0: NORMAL ratio(4:3), 1: WIDE ratio(16:9), 2: SQUARE ratio(1:1)
+RecommendPreviewResolution = 320,240 | 320,240 | 320,240 || 320,240
+; Camera facing direction
+;;; 0:REAR, 1:FRONT
+FacingDirection = 0
+
+
+[Strobe]
+;StrobeControl - Not support
+;StrobeCapabilities - Not support
+; Strobe mode - real setting value
+;;; 0:BASE, 1:OFF, 2:AUTO, 3:ON, 4:TORCH, 5:MAX
+; Strobe mode - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:REDEYE_REDUCTION, 4:SLOW_SYNC, 5:FRONT_CURTAIN, 6:REAR_CURTAIN, 7:PERMANENT
+StrobeMode = 1,3,2,-255,-255,-255,-255,4 || 2
+;StrobeStatus - Not support
+;StrobeEV - Not support
+
+
+[Effect]
+Brightness = 0,8 || 4
+;Contrast = 1,7 || 4
+;Saturation = 0,4 || 2
+;Sharpness = 0,4 || 2
+
+; White balance - real setting value
+;;; 0:AUTO, 1:DAYLIGHT, 2:CLOUDY, 3:TUNGSTEN, 4:FLUORESCENT
+; White balance - MSL value(convert array index)
+;;; 0:NONE, 1:AUTO, 2:DAYLIGHT, 3:CLOUDY, 4:FLUORESCENT, 5:INCANDESCENT, 6:SHADE, 7:HORIZON, 8:FLASH, 9:CUSTOM
+WhiteBalance = -255,0,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Color tone - real setting value
+;;; 1:NONE, 2:MONO, 3:SEPIA, 4:AQUA, 5:ANTIQUE, 6:NEGATIVE, 7:SHARPEN, 8:SKETCH, 9:WASHED, 10:VINTAGE_WARM
+;;; 11:VINTAGE_COLD, 12:SOLARIZE, 13:POSTERIZE, 14:POINT_BLUE, 15:POINT_RED_YELLOW, 16:POINT_COLOR_3, 17:POINT_GREEN, 18:POINT_RED, 19:POINT_YELLOW, 20:CARTOONIZE
+; Color tone - MSL value(convert array index)
+;;; 0:NONE, 1:MONO, 2:SEPIA, 3:NEGATIVE, 4:BLUE, 5:GREEN, 6:AQUA, 7:VIOLET, 8:ORANGE, 9:GRAY, 10:RED,
+;;; 11:ANTIQUE, 12:WARM, 13:PINK, 14:YELLOW, 15:PURPLE, 16:EMBOSS, 17:OUTLINE, 18:SOLARIZATION, 19:SKETCH, 20:WASHED,
+;;; 21:VINTAGE_WARM, 22:VINTAGE_COLD, 23:POSTERIZATION, 24:CARTOON, 25:SELECTIVE_RED, 26:SELECTIVE_GREEN, 27:SELECTIVE_BLUE, 28:SELECTIVE_YELLOW, 29:SELECTIVE_RED_YELLOW
+ColorTone = 1,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 1
+; Flip - real setting value
+;;; 0:NONE, 1:VERTICAL, 2:HORIZONTAL
+; Flip - MSL value(convert array index)
+;;; 0:HORIZONTAL, 1:VERTICAL, 2:NONE
+;Flip = 2,1,0 || 0
+
+; Wide Dynamic Range - real setting value
+;;; 0:OFF, 1:ON
+; Wide Dynamic Range - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO
+WDR = 0,-255,-255 || 0
+
+; Part color mode - real setting value
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+; Part color mode - MSL value(convert array index)
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+;PartColorMode = 0,1,2 || 0
+
+; Part color - real setting value
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+; Part color - MSL value(convert array index)
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT_BLUE, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+;PartColor = 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 || 0
+
+
+[Photograph]
+;LensInit = 0,1 || 0
+;DigitalZoom = 0,10 || 0
+;OpticalZoom = 0,0 || 0
+
+; Focus mode - real setting value
+;;; 0:AUTO, 1:MANUAL, 2:PAN, 3:TOUCH_AUTO, 4:CONTINUOUS
+; Focus mode - MSL value(convert array index)
+;;; 0:NONE, 1:PAN, 2:AUTO, 3:MANUAL, 4:TOUCH_AUTO, 5:CONTINUOUS
+FocusMode = 0,-255,-255,-255,-255,-255 || 0
+
+; Auto focus type - real setting value
+;;; 0:NORMAL, 1:MACRO, 2:FULL
+; Auto focus - MSL value(convert array index)
+;;; 0:NONE, 1:NORMAL, 2:MACRO, 3:FULL
+AFType = 0,-255,-255,-255 || 0
+
+; Auto exposure type - real setting value
+;;; 0:BASE, 1:MATRIX, 2:CENTER, 3:SPOT, 4:MAX
+; Auto exposure mode - MSL value(convert array index)
+;;; 0,OFF 1,ALL 2,CENTER1  3,CENTER2 4,CENTER3 5,SPOT1 6,SPOT2 7,CUSTOM1 8,CUSTOM2
+AEType = -255,0,-255,-255,-255,-255,-255,-255,-255 || 0
+
+;ExposureValue - Not support
+;FNumber - Not support
+;ShutterSpeed - Not support
+
+; ISO - real setting value
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600
+; ISO - MSL value(convert array index)
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600, 7:3200
+ISO = 0,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Program mode - real setting value
+;;; 1:NONE, 2:PORTRAIT, 3:NIGHTSHOT, 4:BACK_LIGHT, 5:LANDSCAPE, 6:SPORTS, 7:PARTY_INDOOR, 8:BEACH_SNOW, 9:SUNSET, 10:DUSK_DAWN,
+;;; 11:FALL_COLOR, 12:FIREWORKS, 13:TEXT, 14:CANDLE_LIGHT
+; Program mode - MSL value(convert array index)
+;;; 0:NORMAL, 1:PORTRAIT, 2:LANDSCAPE, 3:SPORTS, 4:PARTY_N_INDOOR, 5:BEACH_N_INDOOR, 6:SUNSET, 7:DUSK_N_DAWN, 8:FALL_COLOR, 9:NIGHT_SCENE,
+;;; 10:FIREWORK, 11:TEXT, 12:SHOW_WINDOW, 13:CANDLE_LIGHT, 14:BACKLIGHT
+ProgramMode = 0,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Anti-handshake - real setting value
+;;; 0:OFF, 1:ON
+; Anti-handshake - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:MOVIE_ON
+AntiHandshake = 0,-255,-255,-255 || 0
+
+; Video-stabilization - real setting value
+;;; 0:OFF, 1:ON
+; Video-stabilization - MSL value(convert array index)
+;;; 0:OFF, 1:ON
+VideoStabilization = 0 || 0
+
+; Face zoom mode
+;;; 0:OFF, 1:ON
+FaceZoomMode = 0 || 0
+; Face zoom level
+FaceZoomLevel = 0,0 || 0
+
+; PTZ(Pan Tilt Zoom) type
+;;; 0:Mechanical, 1:Electronic
+;PtzType = 0,1 || 1
+
+; Pan range for mechanical movement
+;PanMecha = -10,10
+
+; Pan range for electronic movement
+;PanElec = -10,10
+
+; Tilt range for mechanical movement
+;TiltMecha = -10,10
+
+; Tilt range for electronic movement
+;TiltElec = -10,10
+
+
+[Capture]
+; Output mode
+;;; No need to convert
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY
+OutputMode = 7,13 || 13
+JpegQuality = 0,100 || 90
+MultishotNumber = 1,1 || 1
+SensorEncodedCapture = 0
+; Support HDR
+;;; 0: OFF, 1: ON, 2: ON and Original
+SupportHDR = 0,-255,-255 || 0
+
+
+[Detect]
+; Detect mode
+;;; 0:OFF, 1:ON
+DetectMode = 0,-255 || 0
+;DetectNumber - Not support
+;DetectFocusSelect - Not support
+;DetectSelectNumber - Not support
+;DetectStatus - Not support
+
diff --git a/media-config-target-n4/hal/etc/multimedia/mmfw_camcorder_camera1.ini b/media-config-target-n4/hal/etc/multimedia/mmfw_camcorder_camera1.ini
new file mode 100644 (file)
index 0000000..a8d1a35
--- /dev/null
@@ -0,0 +1,206 @@
+; < Camera/Camcorder Configure Control INI file >
+;
+; - Header List -
+; 1.  Camera
+; 2.  Strobe
+; 3.  Effect
+; 4.  Photograph
+; 5.  Capture
+; 6.  Detect
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryControl"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[Camera]
+; Input index - real setting value
+;;; 0:PRIMARY_CAMERA, 1:SECONDARY_CAMERA
+; Input index - MSL value(convert array index)
+;;; -1:NONE, 0:CAMERA0, 1:CAMERA1
+InputIndex = 0,-255 || 0
+DeviceName = TEST_CAMERA_1
+PreviewResolution = 320,240 | 640,480 || 320,240
+CaptureResolution = 320,240 | 640,480 || 640,480
+VideoResolution = 320,240 | 640,480 || 640,480
+FPS0 = 0,15,30 || 15
+FPS1 = 0,15,30 || 15
+; PictureForamt - MSL value
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+PictureFormat = 7 || 7
+Overlay = 0,1 || 1
+; Recommend display rotation
+;;; 0:NONE, 1:90, 2:180, 3:270
+RecommendDisplayRotation = 0
+; Recommend preview format for capture
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatCapture = 7
+; Recommend preview format for record
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatRecord = 7
+; Recommend preview resolution
+;;; 0: NORMAL ratio(4:3), 1: WIDE ratio(16:9), 2: SQUARE ratio(1:1)
+RecommendPreviewResolution = 320,240 | 320,240 | 320,240 || 320,240
+; Camera facing direction
+;;; 0:REAR, 1:FRONT
+FacingDirection = 0
+
+
+[Strobe]
+;StrobeControl - Not support
+;StrobeCapabilities - Not support
+; Strobe mode - real setting value
+;;; 0:BASE, 1:OFF, 2:AUTO, 3:ON, 4:TORCH, 5:MAX
+; Strobe mode - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:REDEYE_REDUCTION, 4:SLOW_SYNC, 5:FRONT_CURTAIN, 6:REAR_CURTAIN, 7:PERMANENT
+StrobeMode = 1,3,2,-255,-255,-255,-255,4 || 2
+;StrobeStatus - Not support
+;StrobeEV - Not support
+
+
+[Effect]
+Brightness = 0,8 || 4
+;Contrast = 1,7 || 4
+;Saturation = 0,4 || 2
+;Sharpness = 0,4 || 2
+
+; White balance - real setting value
+;;; 0:AUTO, 1:DAYLIGHT, 2:CLOUDY, 3:TUNGSTEN, 4:FLUORESCENT
+; White balance - MSL value(convert array index)
+;;; 0:NONE, 1:AUTO, 2:DAYLIGHT, 3:CLOUDY, 4:FLUORESCENT, 5:INCANDESCENT, 6:SHADE, 7:HORIZON, 8:FLASH, 9:CUSTOM
+WhiteBalance = -255,0,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Color tone - real setting value
+;;; 1:NONE, 2:MONO, 3:SEPIA, 4:AQUA, 5:ANTIQUE, 6:NEGATIVE, 7:SHARPEN, 8:SKETCH, 9:WASHED, 10:VINTAGE_WARM
+;;; 11:VINTAGE_COLD, 12:SOLARIZE, 13:POSTERIZE, 14:POINT_BLUE, 15:POINT_RED_YELLOW, 16:POINT_COLOR_3, 17:POINT_GREEN, 18:POINT_RED, 19:POINT_YELLOW, 20:CARTOONIZE
+; Color tone - MSL value(convert array index)
+;;; 0:NONE, 1:MONO, 2:SEPIA, 3:NEGATIVE, 4:BLUE, 5:GREEN, 6:AQUA, 7:VIOLET, 8:ORANGE, 9:GRAY, 10:RED,
+;;; 11:ANTIQUE, 12:WARM, 13:PINK, 14:YELLOW, 15:PURPLE, 16:EMBOSS, 17:OUTLINE, 18:SOLARIZATION, 19:SKETCH, 20:WASHED,
+;;; 21:VINTAGE_WARM, 22:VINTAGE_COLD, 23:POSTERIZATION, 24:CARTOON, 25:SELECTIVE_RED, 26:SELECTIVE_GREEN, 27:SELECTIVE_BLUE, 28:SELECTIVE_YELLOW, 29:SELECTIVE_RED_YELLOW
+ColorTone = 1,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 1
+; Flip - real setting value
+;;; 0:NONE, 1:VERTICAL, 2:HORIZONTAL
+; Flip - MSL value(convert array index)
+;;; 0:HORIZONTAL, 1:VERTICAL, 2:NONE
+;Flip = 2,1,0 || 0
+
+; Wide Dynamic Range - real setting value
+;;; 0:OFF, 1:ON
+; Wide Dynamic Range - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO
+WDR = 0,-255,-255 || 0
+
+; Part color mode - real setting value
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+; Part color mode - MSL value(convert array index)
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+;PartColorMode = 0,1,2 || 0
+
+; Part color - real setting value
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+; Part color - MSL value(convert array index)
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT_BLUE, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+;PartColor = 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 || 0
+
+
+[Photograph]
+;LensInit = 0,1 || 0
+;DigitalZoom = 0,10 || 0
+;OpticalZoom = 0,0 || 0
+
+; Focus mode - real setting value
+;;; 0:AUTO, 1:MANUAL, 2:PAN, 3:TOUCH_AUTO, 4:CONTINUOUS
+; Focus mode - MSL value(convert array index)
+;;; 0:NONE, 1:PAN, 2:AUTO, 3:MANUAL, 4:TOUCH_AUTO, 5:CONTINUOUS
+FocusMode = 0,-255,-255,-255,-255,-255 || 0
+
+; Auto focus type - real setting value
+;;; 0:NORMAL, 1:MACRO, 2:FULL
+; Auto focus - MSL value(convert array index)
+;;; 0:NONE, 1:NORMAL, 2:MACRO, 3:FULL
+AFType = 0,-255,-255,-255 || 0
+
+; Auto exposure type - real setting value
+;;; 0:BASE, 1:MATRIX, 2:CENTER, 3:SPOT, 4:MAX
+; Auto exposure mode - MSL value(convert array index)
+;;; 0,OFF 1,ALL 2,CENTER1  3,CENTER2 4,CENTER3 5,SPOT1 6,SPOT2 7,CUSTOM1 8,CUSTOM2
+AEType = -255,0,-255,-255,-255,-255,-255,-255,-255 || 0
+
+;ExposureValue - Not support
+;FNumber - Not support
+;ShutterSpeed - Not support
+
+; ISO - real setting value
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600
+; ISO - MSL value(convert array index)
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600, 7:3200
+ISO = 0,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Program mode - real setting value
+;;; 1:NONE, 2:PORTRAIT, 3:NIGHTSHOT, 4:BACK_LIGHT, 5:LANDSCAPE, 6:SPORTS, 7:PARTY_INDOOR, 8:BEACH_SNOW, 9:SUNSET, 10:DUSK_DAWN,
+;;; 11:FALL_COLOR, 12:FIREWORKS, 13:TEXT, 14:CANDLE_LIGHT
+; Program mode - MSL value(convert array index)
+;;; 0:NORMAL, 1:PORTRAIT, 2:LANDSCAPE, 3:SPORTS, 4:PARTY_N_INDOOR, 5:BEACH_N_INDOOR, 6:SUNSET, 7:DUSK_N_DAWN, 8:FALL_COLOR, 9:NIGHT_SCENE,
+;;; 10:FIREWORK, 11:TEXT, 12:SHOW_WINDOW, 13:CANDLE_LIGHT, 14:BACKLIGHT
+ProgramMode = 0,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Anti-handshake - real setting value
+;;; 0:OFF, 1:ON
+; Anti-handshake - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:MOVIE_ON
+AntiHandshake = 0,-255,-255,-255 || 0
+
+; Video-stabilization - real setting value
+;;; 0:OFF, 1:ON
+; Video-stabilization - MSL value(convert array index)
+;;; 0:OFF, 1:ON
+VideoStabilization = 0 || 0
+
+; Face zoom mode
+;;; 0:OFF, 1:ON
+FaceZoomMode = 0 || 0
+; Face zoom level
+FaceZoomLevel = 0,0 || 0
+
+; PTZ(Pan Tilt Zoom) type
+;;; 0:Mechanical, 1:Electronic
+;PtzType = 0,1 || 1
+
+; Pan range for mechanical movement
+;PanMecha = -10,10
+
+; Pan range for electronic movement
+;PanElec = -10,10
+
+; Tilt range for mechanical movement
+;TiltMecha = -10,10
+
+; Tilt range for electronic movement
+;TiltElec = -10,10
+
+
+[Capture]
+; Output mode
+;;; No need to convert
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY
+OutputMode = 7,13 || 13
+JpegQuality = 0,100 || 90
+MultishotNumber = 1,1 || 1
+SensorEncodedCapture = 0
+; Support HDR
+;;; 0: OFF, 1: ON, 2: ON and Original
+SupportHDR = 0,-255,-255 || 0
+
+
+[Detect]
+; Detect mode
+;;; 0:OFF, 1:ON
+DetectMode = 0,-255 || 0
+;DetectNumber - Not support
+;DetectFocusSelect - Not support
+;DetectSelectNumber - Not support
+;DetectStatus - Not support
+
diff --git a/media-config-target-n4/hal/etc/multimedia/mmfw_media_codec.ini b/media-config-target-n4/hal/etc/multimedia/mmfw_media_codec.ini
new file mode 100644 (file)
index 0000000..9f2a5dd
--- /dev/null
@@ -0,0 +1,89 @@
+[h261]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = , ,
+sw_encoder = , ,
+
+[h263]
+hw_decoder = omxdec_h263, video/x-h263, NV12
+hw_encoder = omxenc_h263, video/x-raw,  H263
+sw_decoder = avdec_h263,   video/x-h263, I420
+sw_encoder = avenc_h263,   video/x-raw,  H263
+
+[h264]
+hw_decoder = omxdec_h264, video/x-h264, NV12
+hw_encoder = omxenc_h264, video/x-raw,  H264_SP
+sw_decoder = avdec_h264,   video/x-h264, I420
+sw_encoder = avenc_h264,   video/x-raw,  H264_SP
+
+[mpeg4]
+hw_decoder = omxdec_mpeg4, video/mpeg, NV12
+hw_encoder = omxenc_mpeg4, video/x-raw,  MPEG4_SP
+sw_decoder = avdec_mpeg4,   video/mpeg, I420
+sw_encoder = avenc_mpeg4,   video/x-raw,  MPEG4_SP
+
+[aac_lc]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = avenc_aac,   audio/x-raw, AAC_LC
+
+[aac_he]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[aac_he_ps]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[mp3]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_mp3,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[amr_nb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrnb,   audio/AMR, PCM_F32LE
+sw_encoder = amrnbenc, audio/x-raw, AMR_NB
+
+[amr_wb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrwb,   audio/AMR-WB, PCM_F32LE
+sw_encoder = , ,
+
+[vorbis]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = vorbisdec,   audio/x-vorbis, PCM_F32LE
+sw_encoder = , ,
+
+[flac]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_flac,   audio/x-flac, PCM_F32LE
+sw_encoder = , ,
+
+[wmav1]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav1,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmav2]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav2,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmapro]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmapro,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
diff --git a/media-config-target-n4/hal/etc/multimedia/mmfw_media_streamer.ini b/media-config-target-n4/hal/etc/multimedia/mmfw_media_streamer.ini
new file mode 100644 (file)
index 0000000..488d6a8
--- /dev/null
@@ -0,0 +1,124 @@
+[general]
+; generating dot file representing pipeline state
+generate dot = no
+dot dir =
+
+; decodebin will be used instead of decoder node
+use decodebin = yes
+
+; comma separated list of element names which
+; will not be used in autoplug mode
+exclude elements = v4l2video,v4l2h264,v4l2mpeg4,omx,sprd
+
+; comma separated list of element names which
+; will require resources in autoplug mode
+resource elements = omx,sprd
+
+; comma separated list of arguments
+; that will pass to gst_init
+gstreamer arguments = --gst-debug=2
+
+
+;MEDIA_STREAMER_NODE_TYPE_SRC
+[node type 1]
+audio capture = pulsesrc
+video capture = waylandsrc
+camera = camerasrc
+
+;MEDIA_STREAMER_NODE_TYPE_SINK
+[node type 2]
+audio = pulsesink
+overlay = tizenwlsink
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_ENCODER
+[node type 3]
+video/x-h263 = avenc_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DECODER
+[node type 4]
+video/x-h263 = avdec_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_ENCODER
+[node type 5]
+audio/AMR = amrnbenc
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DECODER
+[node type 6]
+audio/AMR = amrnbdec
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_CONVERTER
+[node type 7]
+video/x-raw = videoconvert
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_CONVERTER
+[node type 8]
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_RESAMPLE
+[node type 9]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_PAY
+[node type 10]
+video/x-h263 = rtph263pay
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_PAY
+[node type 11]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DEPAY
+[node type 12]
+video/x-h263 = rtph263depay
+video/x-h264 = rtph264depay
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DEPAY
+[node type 13]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_RATE
+[node type 14]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_SCALE
+[node type 15]
+
+;MEDIA_STREAMER_NODE_TYPE_TEXT_OVERLAY
+[node type 16]
+text/x-raw = textoverlay
+
+;MEDIA_STREAMER_NODE_TYPE_PARSER
+[node type 17]
+video/x-h263 = h263parse
+video/x-h264 = h264parse
+
+;MEDIA_STREAMER_NODE_TYPE_FILTER
+[node type 18]
+
+;MEDIA_STREAMER_NODE_TYPE_TEE
+[node type 19]
+
+;MEDIA_STREAMER_NODE_TYPE_QUEUE
+[node type 20]
+
+;MEDIA_STREAMER_NODE_TYPE_MQUEUE
+[node type 21]
+
+;MEDIA_STREAMER_NODE_TYPE_MUXER
+[node type 22]
+
+;MEDIA_STREAMER_NODE_TYPE_DEMUXER
+[node type 23]
+
+;MEDIA_STREAMER_NODE_TYPE_RTP
+[node type 24]
+
+;MEDIA_STREAMER_NODE_TYPE_INPUT_SELECTOR
+[node type 25]
+
+;MEDIA_STREAMER_NODE_TYPE_OUTPUT_SELECTOR
+[node type 26]
+
+;MEDIA_STREAMER_NODE_TYPE_INTERLEAVE
+[node type 27]
+
+;MEDIA_STREAMER_NODE_TYPE_DEINTERLEAVE
+[node type 28]
+
diff --git a/media-config-target-n4/hal/etc/multimedia/mmfw_player.ini b/media-config-target-n4/hal/etc/multimedia/mmfw_player.ini
new file mode 100644 (file)
index 0000000..e900636
--- /dev/null
@@ -0,0 +1,102 @@
+[general]
+
+disable segtrap = yes ; same effect with --gst-disable-segtrap
+
+; set default videosink element according to video surface type(X, EVAS, NULL)
+videosink element overlay = tizenwlsink
+videosink element fake = fakesink
+video converter element =
+
+; decoder element keyword for resource management.
+video codec element hw = omx
+video codec element sw = avdec
+video codec default type = hw ; hw or sw
+
+audio codec element hw =
+audio codec element sw = avdec
+audio codec default type = sw ; hw or sw
+
+; support with HW audio codec
+support audio effect = no
+support pcm exporting = no
+support pitch control = no
+support replaygain control = no
+
+audiosink element = pulsesink
+
+; audio offload information
+audio offload sink element =
+audio offload device type =    ; builtin-speaker,bt-a2dp,audio-jack,usb-audio from pulse stream-map
+audio offload media format =   ; Use the format keyword of media_format_mimetype_e, MAX:10
+
+; supported input format of external media source stream
+; Use the format keyword of media_format_mimetype_e, MAX:10
+media stream input format = AAC,H264_SP,H264_MP,H264_HP
+
+; if yes. gstreamer will not update registry
+skip rescan = yes
+delay before repeat = 50 ; msec
+
+; comma separated list of tocken which elemnts has it in it's name will not be used
+; this works if 'use decodebin = yes'
+element exclude keyword = v4l2
+
+; comma separated list of tocken
+; this works if 'use decodebin = yes'
+unsupported codec keyword = divx
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1 = --gst-debug=*:2
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; generating dot file representing pipeline state
+; DEFAULT MUST BE 'no'. If 'yes', mmplayer will set env-variable for it's session as "export GST_DEBUG_DUMP_DOT_DIR=/tmp/"
+generate dot = no
+
+; parameter is for only video to be determined
+; which clock will be used
+; if yes, system clock will be used
+; apart from this, audiosink is clock provider for audio
+use system clock = yes
+
+; allowed timeout for changing pipeline state
+live state change timeout = 30 ; sec
+localplayback state change timeout = 10 ; sec
+
+; delay in msec for sending EOS
+eos delay = 0 ; msec
+
+; extracted pcm buffer size
+pcm buffer size = 51200 ; 50Kbytes
+
+; max num of bo for sw codec
+video bo max = 10
+
+; video bo timeout (sec)
+video bo timeout = 10
+
+; setup pipeline with decodebin2
+use decodebin = no
+
+[http streaming]
+
+httpsrc element = souphttpsrc
+
+http buffering limit = 99.0 ; percent
+
+; if yes, use file for buffering.
+; if no, use memory for buffering.
+http use file buffer = no
+
+; ring buffer size when use mem buffer
+http ring buffer size = 20971520 ; 20MBytes
+
+http max size bytes = 1048576 ; bytes
+
+http buffering time = 1.2
+
+http timeout = 30 ; sec
diff --git a/media-config-target-n4/hal/etc/multimedia/mmfw_player_audio_effect.ini b/media-config-target-n4/hal/etc/multimedia/mmfw_player_audio_effect.ini
new file mode 100644 (file)
index 0000000..1394608
--- /dev/null
@@ -0,0 +1,17 @@
+[audio effect]
+; name of audio effect element
+audio effect element = audioeq
+
+; preset audio effect setting
+audio effect preset = no
+
+; custom audio effect setting (EQ/extension)
+audio effect custom = yes
+audio effect custom list = 0
+
+audio effect custom eq band num = 7 ; number of EQ bands
+audio effect custom eq band width = 33, 90, 242, 649, 1743, 4676, 12544 ; list of each EQ band width (Hz)
+audio effect custom eq band freq = 36, 98, 265, 711, 1907, 5117, 13727 ; list of each EQ band central frequency (Hz)
+
+audio effect custom min list = -12 ; list of minimum level value (the first element is for EQ, others for extension effect)
+audio effect custom max list = 12 ; list of maximum level value (the first element is for EQ, others for extension effect)
diff --git a/media-config-target-n4/hal/etc/multimedia/mmfw_resource_manager.ini b/media-config-target-n4/hal/etc/multimedia/mmfw_resource_manager.ini
new file mode 100644 (file)
index 0000000..082f297
--- /dev/null
@@ -0,0 +1,9 @@
+[max volume]
+video_overlay = -1
+video_decoder = -1
+video_encoder = -1
+camera = -1
+
+[priority]
+media = 10
+interrupt = 99
diff --git a/media-config-target-n4/hal/etc/multimedia/mmfw_streamrecorder.ini b/media-config-target-n4/hal/etc/multimedia/mmfw_streamrecorder.ini
new file mode 100644 (file)
index 0000000..2888707
--- /dev/null
@@ -0,0 +1,81 @@
+[general]
+;is encsink source is live
+encscink source is live = 0
+
+retrialcount = 10
+
+minimum frame = 5
+
+reset pause time = 0
+
+screen record = 1
+
+convert output buffer num = 6
+
+hw encoder supported = 0 ; 1 if supported and 'video codec element hw' should be formed.
+
+video codec element hw = ; sprd (if verified) or verified hw codec element
+
+[encodebin]
+;MM_STREAMRECORDER_ENCBIN_PROFILE_VIDEO = 0 MM_STREAMRECORDER_ENCBIN_PROFILE_AUDIO = 1
+;MM_STREAMRECORDER_ENCBIN_PROFILE_IMAGE = 2 MM_STREAMRECORDER_ENCBIN_PROFILE_NUM = 3
+encsink bin profile = 0
+
+encsink bin auto audio resample = 0
+
+encsink bin auto colorspace = 1
+
+encsink bin auto audio convert = 1
+
+encsink bin use video toggle = 0
+
+[pipeline]
+encsink bin source = appsrc
+
+name of audio src = pulsesrc
+
+h264 encoder =
+
+h263 encoder = avenc_h263p
+
+mpeg4 encoder = avenc_mpeg4
+
+name of audio encoder = avenc_aac
+
+use parser  =
+
+name of 3GP muxer = avmux_3gp
+
+name of MP4 muxer = avmux_mp4
+
+name of video converter = videoconvert
+
+name of sink = filesink
+
+[video param]
+;/*ms*/
+video frame wait time = 200000
+
+[audio param]
+audio frame minimum space = 102400
+
+audio frame wait time = 20000
+
+[attribute]
+supported height = 1080,720,480,240,288,144
+
+supported width = 1920,1280,640,320,352,176
+
+;/*AMR, AAC, VORBIS ,PCM*/
+supported audio encoders = AMR,AAC,PCM
+
+;/* H263 , H264 , MPEG4 */
+supported video encoders = H263,MPEG4
+
+;/*3GP , AMR, MP4 , WAV, ADTS*/
+supported file formats = 3GP,MP4,AMR,ADTS,WAV
+
+[debug]
+; generating dot file representing pipeline state
+; do export GST_DEBUG_DUMP_DOT_DIR=/tmp/ in the shell (also do export to '/etc/profile.d/mmf.sh')
+generate dot = no
diff --git a/media-config-target-n4/hal/etc/multimedia/mmfw_wfd_sink.ini b/media-config-target-n4/hal/etc/multimedia/mmfw_wfd_sink.ini
new file mode 100644 (file)
index 0000000..9d78b2b
--- /dev/null
@@ -0,0 +1,231 @@
+[general]
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=2,*wfd*:5)
+gstparam1 = --gst-debug=2,*wfd*:5,*wfdtsdemux:1,*wfdrtpbuffer:1
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; allowed timeout for changing pipeline state
+state change timeout = 5; sec
+
+; 0: default value set by wfdrtspsrc element, other: user define value.
+jitter buffer latency=10
+
+; for retransmission request enable = yes, disable = no
+enable retransmission = no
+
+; for reset basetime, enable = yes, disable = no
+enable reset basetime = yes
+
+; Maximum number of nanoseconds that a buffer can be late before it is dropped by videosink (-1 unlimited)
+video sink max lateness=20000000
+
+; nanoseconds to be added to buffertimestamp by sink elements
+sink ts offset=250000000
+
+; if no, go asynchronously to PAUSED without preroll
+audio sink async=no
+
+; if no, go asynchronously to PAUSED without preroll
+video sink async=no
+
+; user agent
+user agent =
+
+[debug]
+; generating dot file representing pipeline state
+; do export GST_DEBUG_DUMP_DOT_DIR=/tmp/ in the shell
+generate dot = no
+
+; set property to wfdsrc plugin for dumping rtsp message
+dump rtsp message = yes
+
+; enable tracing buffers using pad probe
+trace buffers = no
+
+; enable tracing first buffer
+trace first buffer = no
+
+; enable tracing buffers of wfdsrc
+trace buffers of wfdsrc = no
+
+; enable dumping ts data (eg. /var/tmp/*.ts)
+dump ts data = no
+
+; enable dumping rtp data (eg. /var/tmp/screenmirroring_sink_rtp.dump)
+dump rtp data = no
+
+
+[pipeline]
+wfdsrc element = wfdsrc
+
+tsdemux element = wfdtsdemux
+
+audio hdcp element =
+
+aac parser element = aacparse
+
+aac decoder element = avdec_aac
+
+ac3 parser element = ac3parse
+
+ac3 decoder element =
+
+lpcm converter element =
+
+lpcm filter element = capsfilter
+
+audio resampler element = audioconvert
+
+audio volume element =
+
+audio sinkbin queue element = ;queue
+
+audio sink element = pulsesink
+
+video hdcp element =
+
+video h264 parser element = h264parse
+
+video h265 parser element =
+
+video h264 decoder element = avdec_h264
+
+video h265 decoder element =
+
+video converter element =
+
+video filter element =
+
+video sink element = tizenwlsink
+
+video evas sink element = evaspixmapsink
+
+
+[wfd audio codecs]
+; 0x1: LPCM, 0x2: AAC, 0x4: AC3
+;default aac and LPCM
+audio codec=0x3
+
+audio latency=0x0
+
+;0x1 : 48000khz, 0x2: 44100khz
+audio sampling frequency=0x3
+
+; 0x1:2 channels, 0x2:4 channels, 0x4:6channels, 0x8:8channels
+audio channels=0x1
+
+
+[wfd video formats]
+; 0x0:not support, 0x1:H264
+video codec=0x1
+
+; 0x0:not supoort, 0x1: CHP, 0x2:CBP
+video profile=0x1
+
+video native resolution = 0x20
+
+video cea support=0x84ab;0x194ab
+
+video vesa support=0x1;0x5555555
+
+video hh support=0x555
+
+; 0x1:base, 0x2:high
+video profile=0x1
+
+; 0x1:level_3_1, 0x2:level_3_2, 0x4:level_4, 0x8:level_4_1, 0x10:level_4_2
+video level=0x2
+
+video latency=0x0
+
+video vertical resolution=720
+
+video horizontal resolution=1280
+
+video minimum slicesize=0
+
+video slice encoding params=200
+
+video framerate control support=11
+
+
+[wfd hdcp content protection]
+enable hdcp = no
+
+;0x0:none, 0x1:HDCP_2.0, 0x2:HDCP_2.1
+hdcp content protection=0x0
+
+hdcp port no=0
+
+
+[wfd2 video formats]
+;0x0:not support, 0x1:H264, 0x2:H265, 0x3:both
+video codec=0x3
+
+video native resolution = 0x20
+
+video non transcoding support=1
+
+[wfd2 h264 video format]
+video cea support=0x194ab
+
+video vesa support=0x5555555
+
+video hh support=0x555
+
+video profile=0x1
+
+video level=0x2
+
+video latency=0x0
+
+video vertical resolution=1080
+
+video horizontal resolution=1920
+
+video minimum slicesize=0
+
+video slice encoding params=200
+
+video framerate control support=0
+
+[wfd2 h265 video format]
+video cea support=394ab
+
+video vesa support=5555555
+
+video hh support=555
+
+; 0x1:WFD_H265_MAIN_PROFILE
+video profile=0x1
+
+; 0x1:WFD_H265_LEVEL_3_1
+video level=0x2
+
+video latency=0x0
+
+video vertical resolution=2360
+
+video horizontal resolution=3840
+
+video minimum slicesize=0
+
+video slice encoding params=200
+
+video framerate control support=0
+
+[wfd2 audio codecs]
+; 0x1: LPCM, 0x2: AAC, 0x4: AC3
+;default aac and LPCM
+audio codec=0x3
+
+;see mm_wfd_sink_wfd_enum.h
+audio lpcm mode=0x3
+
+audio aac mode=0x1
+
+audio ac3 mode=0x1
+
diff --git a/media-config-target-n4/hal/etc/multimedia/mused.conf b/media-config-target-n4/hal/etc/multimedia/mused.conf
new file mode 100644 (file)
index 0000000..38e07b8
--- /dev/null
@@ -0,0 +1,66 @@
+[muse]
+; The 'hosts' parameter defines the modules,
+; which the user would like to connect to the muse.
+; If you want to add host, then write manually.
+hosts=player, camera, recorder
+logfile=/var/log/mused/muse-server
+lockfile=/tmp/.muse_core.lock
+min_timeout=5
+max_timeout=90
+;100MB=100000
+memory_threshold=100000
+enable_watch_external_storage=1
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1=--gst-debug=*:2
+gstparam2=--gst-disable-segtrap
+gstparam3=
+gstparam4=
+gstparam5=
+gstparam6=
+gstparam7=
+gstparam8=
+gstparam9=
+gstparam10=
+
+; gstparam#=--gst-plugin-load=/usr/lib/gstreamer-1.0/libgstcoreelements.so'
+; can be substituted with gstpreload=coreelements'
+gstpreload=
+
+[player]
+; The 'player' parameter represents the muse-player.
+; This module recovers the "capi-media-player".
+path=libmuse-player.so
+preloaded=no
+timeout=60
+disable_watchdog_api=-1
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[camera]
+; The 'camera' parameter represents the muse-camera.
+; This module recovers the "capi-media-camera".
+path=libmuse-camera.so
+preloaded=no
+timeout=10
+;api 2 is camera_dispatcher_start_preview
+disable_watchdog_api=2
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[recorder]
+; The 'recorder' parameter represents the muse-recorder.
+; This module recovers the "capi-media-recorder".
+; This one should be paired with the 'camera' module.
+path=libmuse-recorder.so
+preloaded=no
+timeout=10
+;api 5 is recorder_start
+disable_watchdog_api=5
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
diff --git a/media-config-target-n4/hal/etc/multimedia/scmirroring_src.ini b/media-config-target-n4/hal/etc/multimedia/scmirroring_src.ini
new file mode 100644 (file)
index 0000000..6131d26
--- /dev/null
@@ -0,0 +1,114 @@
+
+[general]
+
+; set default video source element
+; 0: ximagesrc, 1: xvimagesrc, 2: camerasrc, 3: videotestsrc, 4:waylandsrc
+videosrc element = 4
+
+; set default video encoder element
+video encoder element = omxenc_h264
+
+disable segtrap = yes ; same effect with --gst-disable-segtrap
+
+mtu_size value = 1400
+
+video converter element =
+
+; if yes. gstreamer will not update registry
+skip rescan = yes
+
+; set default audio encoder element
+audio encoder aac name = avenc_aac
+audio encoder ac3 name = avenc_ac3
+
+; set audio codec for source
+; according to GstWFDAudioFormat
+; 0x1: LPCM, 0x2: AAC, 0x4: AC3
+; default aac and LPCM
+audio codec = 0x3
+
+; set exynos audiosrc property
+; exynosaudio device name = alsa_output.0.analog-stereo.monitor
+exynosaudio device name = alsa_output.hw_0_0.monitor
+audio properties name = props,media.role=loopback-mirroring
+
+exynosaudio buffer_time = 200000
+; set qcmsm audiosrc property
+qcmsmaudio device name = hw:0,8
+qcmsmaudio buffer_time = 1000
+
+audio latency_time = 10000
+audio do_timestamp = 0
+
+; set video codec for source
+; according to GstWFDVideoFormat
+; 0x0: Not supportted, 0x1: H264
+; default H.264
+video codec = 0x1
+
+; Video Resolutions supported need to be filled in 32 bits according to WFD spec
+video resolution_supported = 0x00000001
+
+; Bitrate range for different resolutions
+; Resolution Set 1: default
+; Resolution Set 2: 1920 x 1080
+; Resolution Set 3: 1280 x 720
+; Resolution Set 4: 960 x 540
+; Resolution Set 5: 854 x 480
+; Resolution Set 6: 640 x 360
+; Resolution Set 7: 720 Remote Touch
+; UDP bitrate settings
+INIT_UDP_resolution_set_1 = 1048576
+MIN_UDP_resolution_set_1 = 838861
+MAX_UDP_resolution_set_1 = 1572864
+
+INIT_UDP_resolution_set_2 = 5242880
+MIN_UDP_resolution_set_2 = 3670016
+MAX_UDP_resolution_set_2 = 6291456
+
+INIT_UDP_resolution_set_3 = 2621440
+MIN_UDP_resolution_set_3 = 1572864
+MAX_UDP_resolution_set_3 = 3145728
+
+INIT_UDP_resolution_set_4 = 2621440
+MIN_UDP_resolution_set_4 = 1572864
+MAX_UDP_resolution_set_4 = 3145728
+
+INIT_UDP_resolution_set_5 = 838861
+MIN_UDP_resolution_set_5 = 314573
+MAX_UDP_resolution_set_5 = 1048576
+
+INIT_UDP_resolution_set_6 = 838861
+MIN_UDP_resolution_set_6 = 314573
+MAX_UDP_resolution_set_6 = 838861
+
+INIT_UDP_resolution_set_7 = 1572864
+MIN_UDP_resolution_set_7 = 838861
+MAX_UDP_resolution_set_7 = 1572864
+
+
+; Native resolution supported  CEA resolution=0, VESA resolution=1, HH resolution=2
+video native_resolution = 0
+
+; HDCP encryption
+encryption HDCP_enabled = 1
+
+; UIBC Capability
+uibc UIBC_GEN_capability = 15
+
+; parameters for initializing gstreamer
+gstparam1 =
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; generating dot file representing pipeline state
+generate dot = no
+
+; parameter for clock provide in audiosink
+provide clock = yes
+
+;dumping ts stream to file
+dump ts = 0
+
diff --git a/media-config-target-n4/hal/etc/murphy/murphy.lua b/media-config-target-n4/hal/etc/murphy/murphy.lua
new file mode 100644 (file)
index 0000000..e7d832d
--- /dev/null
@@ -0,0 +1,99 @@
+m = murphy.get()
+
+-- load the dlog plugin
+m:try_load_plugin('dlog')
+
+-- load the console plugin
+-- m:try_load_plugin('console')
+
+-- load the dbus plugin
+-- if m:plugin_exists('dbus') then
+--     m:load_plugin('dbus')
+-- end
+
+-- load the native resource plugin
+if m:plugin_exists('resource-native') then
+    m:load_plugin('resource-native')
+    m:info("native resource plugin loaded")
+else
+    m:info("No native resource plugin found...")
+end
+
+-- load the dbus resource plugin
+m:try_load_plugin('resource-dbus', {
+    dbus_bus = "system",
+    dbus_service = "org.Murphy",
+    dbus_track = true,
+    default_zone = "driver",
+    default_class = "implicit"
+})
+
+-- load the domain control plugin
+if m:plugin_exists('domain-control') then
+    m:load_plugin('domain-control')
+else
+    m:info("No domain-control plugin found...")
+end
+
+if m:plugin_exists('glib') then
+    m:load_plugin('glib')
+else
+    m:info("No glib plugin found...")
+end
+
+-- define application classes
+application_class {
+    name     = "interrupt",
+    priority = 99,
+    modal    = false,
+    share    = false,
+    order    = "fifo"
+}
+
+application_class {
+    name     = "media",
+    priority = 10,
+    modal    = false,
+    share    = false,
+    order    = "lifo"
+}
+
+-- define zone attributes
+zone.attributes {
+    type = {mdb.string, "common", "rw"},
+    location = {mdb.string, "anywhere", "rw"}
+}
+
+-- define zones
+zone {
+     name = "driver",
+     attributes = {
+         type = "common",
+         location = "front-left"
+     }
+}
+
+-- define resource classes
+resource.class {
+     name = "video_overlay",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_decoder",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_encoder",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "camera",
+     shareable = false,
+     sync_release = true
+}
diff --git a/media-config-target-n4/hal/etc/profile.d/mmf.sh b/media-config-target-n4/hal/etc/profile.d/mmf.sh
new file mode 100644 (file)
index 0000000..9296ba2
--- /dev/null
@@ -0,0 +1,4 @@
+#!/bin/sh
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+export GST_DEBUG=2
+export GST_PLUGIN_PATH=@HAL_LIBDIR@/gstreamer-1.0
diff --git a/media-config-target-n4/hal/etc/pulse/client.conf b/media-config-target-n4/hal/etc/pulse/client.conf
new file mode 100644 (file)
index 0000000..3637b20
--- /dev/null
@@ -0,0 +1,37 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for PulseAudio clients. See pulse-client.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+; default-sink =
+; default-source =
+default-server = /var/run/pulse/native
+; default-dbus-server =
+
+autospawn = no
+; daemon-binary = /usr/bin/pulseaudio
+; extra-arguments = --log-target=syslog
+
+; cookie-file =
+
+enable-shm = no
+shm-size-bytes = 4194304 # setting this 0 will use the system-default, usually 64 MiB
+
+; auto-connect-localhost = no
+; auto-connect-display = no
diff --git a/media-config-target-n4/hal/etc/pulse/daemon.conf b/media-config-target-n4/hal/etc/pulse/daemon.conf
new file mode 100644 (file)
index 0000000..431e66b
--- /dev/null
@@ -0,0 +1,83 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for the PulseAudio daemon. See pulse-daemon.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+daemonize = yes
+; fail = yes
+; allow-module-loading = yes
+; allow-exit = yes
+; use-pid-file = yes
+system-instance = yes
+; local-server-type = user
+; enable-shm = yes
+; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
+; lock-memory = no
+; cpu-limit = no
+
+; high-priority = yes
+; nice-level = -11
+
+realtime-scheduling = yes
+realtime-priority = 5
+
+; exit-idle-time = 20
+; scache-idle-time = 20
+
+; dl-search-path = (depends on architecture)
+
+; load-default-script-file = yes
+; default-script-file = /etc/pulse/default.pa
+
+log-target = dlog
+log-level = info
+; log-meta = no
+; log-time = no
+; log-backtrace = 0
+
+resample-method = speex-fixed-3
+; enable-remixing = yes
+; enable-lfe-remixing = no
+
+flat-volumes = no
+
+; rlimit-fsize = -1
+; rlimit-data = -1
+; rlimit-stack = -1
+; rlimit-core = -1
+; rlimit-as = -1
+; rlimit-rss = -1
+; rlimit-nproc = -1
+; rlimit-nofile = 256
+; rlimit-memlock = -1
+; rlimit-locks = -1
+; rlimit-sigpending = -1
+; rlimit-msgqueue = -1
+; rlimit-nice = 31
+; rlimit-rtprio = 9
+; rlimit-rttime = 1000000
+
+; default-sample-format = s16le
+; default-sample-rate = 44100
+alternate-sample-rate = 44100
+; default-sample-channels = 2
+; default-channel-map = front-left,front-right
+
+; default-fragments = 4
+; default-fragment-size-msec = 25
diff --git a/media-config-target-n4/hal/etc/pulse/default.pa b/media-config-target-n4/hal/etc/pulse/default.pa
new file mode 100644 (file)
index 0000000..ef8f114
--- /dev/null
@@ -0,0 +1,149 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started per-user
+# (i.e. not in system mode)
+
+.nofail
+
+### Load something into the sample cache
+#load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
+#load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-access /usr/share/sounds/generic.wav
+
+.fail
+
+### Automatically restore the volume of streams and devices
+load-module module-device-restore
+load-module module-stream-restore
+load-module module-card-restore
+
+### Automatically augment property information from .desktop files
+### stored in /usr/share/application
+load-module module-augment-properties
+
+### Load audio drivers statically
+### (it's probably better to not load these drivers manually, but instead
+### use module-udev-detect -- see below -- for doing this automatically)
+#load-module module-alsa-sink
+#load-module module-alsa-source device=hw:1,0
+#load-module module-null-sink
+#load-module module-pipe-sink
+
+### Automatically load driver modules depending on the hardware available
+.ifexists module-udev-detect.so
+load-module module-udev-detect
+.else
+### Use the static hardware detection module (for systems that lack udev support)
+load-module module-detect
+.endif
+
+### Automatically connect sink and source if JACK server is present
+.ifexists module-jackdbus-detect.so
+.nofail
+load-module module-jackdbus-detect channels=2
+.fail
+.endif
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Load several protocols
+.ifexists module-esound-protocol-unix.so
+load-module module-esound-protocol-unix
+.endif
+load-module module-native-protocol-unix
+
+### Network access (may be configured with paprefs, so leave this commented
+### here if you plan to use paprefs)
+#load-module module-esound-protocol-tcp
+#load-module module-native-protocol-tcp
+
+### Load the RTP receiver module (also configured via paprefs, see above)
+#load-module module-rtp-recv
+
+### Load the RTP sender module (also configured via paprefs, see above)
+#load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
+#load-module module-rtp-send source=rtp.monitor
+
+### Load additional modules from GConf settings. This can be configured with the paprefs tool.
+### Please keep in mind that the modules configured by paprefs might conflict with manually
+### loaded modules.
+.ifexists module-gconf.so
+.nofail
+load-module module-gconf
+.fail
+.endif
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Honour intended role device property
+load-module module-intended-roles
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle
+
+### If autoexit on idle is enabled we want to make sure we only quit
+### when no local session needs us anymore.
+.ifexists module-console-kit.so
+load-module module-console-kit
+.endif
+.ifexists module-systemd-login.so
+load-module module-systemd-login
+.endif
+
+### Enable positioned event sounds
+load-module module-position-event-sounds
+
+### Cork music/video streams when a phone stream is active
+load-module module-role-cork
+
+### Modules to allow autoloading of filters (such as echo cancellation)
+### on demand. module-filter-heuristics tries to determine what filters
+### make sense, and module-filter-apply does the heavy-lifting of
+### loading modules and rerouting streams.
+load-module module-filter-heuristics
+load-module module-filter-apply
+
+### Load DBus protocol
+.ifexists module-dbus-protocol.so
+load-module module-dbus-protocol
+.endif
+
+
+load-module module-switch-on-port-available
+
+### Make some devices default
+#set-default-sink output
+#set-default-source input
diff --git a/media-config-target-n4/hal/etc/pulse/device-map.json b/media-config-target-n4/hal/etc/pulse/device-map.json
new file mode 100644 (file)
index 0000000..f7c7f0e
--- /dev/null
@@ -0,0 +1,44 @@
+{
+       "device-types":[
+               {
+                       "device-type":"builtin-speaker",
+                       "playback-devices":{"normal":"alsa:0,0"}
+               },
+               {
+                       "device-type":"builtin-receiver",
+                       "playback-devices":{"normal":"alsa:0,0"}
+               },
+               {
+                       "device-type":"builtin-mic",
+                       "capture-devices":{"normal":"alsa:0,0"}
+               },
+               {
+                       "device-type":"audio-jack",
+                       "playback-devices":{"normal":"alsa:0,0"},
+                       "capture-devices":{"normal":"alsa:0,0"}
+               },
+               {
+                       "device-type":"hdmi",
+                       "playback-devices":{"normal":"alsa:0,0"}
+               },
+               {
+                       "device-type":"bt-sco",
+                       "playback-devices":{"normal":"alsa:0,0"},
+                       "capture-devices":{"normal":"alsa:0,0"}
+               }
+       ],
+       "device-files":{
+               "playback-devices":[
+                       {
+                               "device-string":"alsa:0,0",
+                               "role":{"normal":"rate=44100"}
+                       }
+               ],
+               "capture-devices":[
+                       {
+                               "device-string":"alsa:0,0",
+                               "role":{"normal":"rate=44100"}
+                       }
+               ]
+       }
+}
diff --git a/media-config-target-n4/hal/etc/pulse/stream-map.json b/media-config-target-n4/hal/etc/pulse/stream-map.json
new file mode 100644 (file)
index 0000000..a68a1dc
--- /dev/null
@@ -0,0 +1,263 @@
+{
+       "latencies":[
+               {
+                       "type":"low",
+                       "fragsize-ms":25,
+                       "minreq-ms":-1,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"mid",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"high",
+                       "fragsize-ms":75,
+                       "minreq-ms":-1,
+                       "tlength-ms":400,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"voip",
+                       "fragsize-ms":20,
+                       "minreq-ms":20,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":-1,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default-async",
+                       "fragsize-ms":50,
+                       "minreq-ms":20,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+       ],
+       "volumes":[
+               {
+                       "type":"master",
+                       "is-hal-volume":1
+               },
+               {
+                       "type":"media",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"system",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"alarm",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"notification",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voice",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"ringtone",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voip",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"call",
+                       "is-hal-volume":1
+               }
+       ],
+       "streams":[
+               {
+                       "role":"media",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["audio-jack","builtin-mic"],
+                       "avail-out-devices":["forwarding","audio-jack","bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"system",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"system"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["forwarding","audio-jack","bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"alarm",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"alarm"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"notification",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"notification"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"emergency",
+                       "priority" : 4,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-information",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"voice"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-recognition",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["audio-jack","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"voice-recognition-service",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["audio-jack","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"ringtone-voip",
+                       "priority" : 5,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","sound-manager"]
+               },
+               {
+                       "role":"ringtone-call",
+                       "priority" : 6,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"ringbacktone-call",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"call"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","bt-a2dp","builtin-receiver","builtin-speaker"],
+                       "avail-frameworks":["wav-player","tone-player"]
+               },
+               {
+                       "role":"voip",
+                       "priority" : 5,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"voip"},
+                       "avail-in-devices":["builtin-mic","audio-jack","bt-sco"],
+                       "avail-out-devices":["builtin-receiver","builtin-speaker","audio-jack","bt-sco"],
+                       "avail-frameworks":["audio-io","tone-player","sound-manager"]
+               },
+               {
+                       "role":"call-voice",
+                       "priority" : 6,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"call"},
+                       "avail-in-devices":["builtin-mic","audio-jack","bt-sco"],
+                       "avail-out-devices":["builtin-receiver","builtin-speaker","audio-jack","bt-sco"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"call-video",
+                       "priority" : 6,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"call"},
+                       "avail-in-devices":["builtin-mic","audio-jack","bt-sco"],
+                       "avail-out-devices":["builtin-receiver","builtin-speaker","audio-jack","bt-sco"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"radio",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-speaker"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"loopback",
+                       "priority" : 2,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["builtin-mic","usb-audio"],
+                       "avail-out-devices":["builtin-speaker","usb-audio","bt-a2dp"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"loopback-mirroring",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["forwarding"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"ext-media",
+                       "priority" : 3,
+                       "route-type" : "manual-ext",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"solo",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["wav-player","tone-player"]
+               }
+       ]
+}
diff --git a/media-config-target-n4/hal/etc/pulse/system.pa b/media-config-target-n4/hal/etc/pulse/system.pa
new file mode 100644 (file)
index 0000000..0e92784
--- /dev/null
@@ -0,0 +1,74 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started in system
+# mode.
+
+### Automatically load driver modules depending on the hardware available
+#.ifexists module-udev-detect.so
+load-module module-udev-detect
+#.endif
+
+### Load several protocols
+load-module module-native-protocol-unix auth-anonymous=1
+
+### Load module-tizenaudio-policy
+load-module module-tizenaudio-policy
+
+### Sound Player module
+load-module module-sound-player
+load-module module-tone-player
+load-module module-role-ducking global=1 trigger_roles=solo/notification ducking_roles=media,system,alarm,notification,voice-information,ext-media/media,ext-media volume=0%/25% fade_in=0/1000 fade_out=0/1000
+load-module module-poweroff
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Automatically restore the volume of streams and devices
+#load-module module-stream-restore
+#load-module module-device-restore
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+.ifexists module-dbus-protocol.so
+### If you want to allow TCP connections, set access to "remote" or "local,remote".
+load-module module-dbus-protocol access=local
+.endif
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+#load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle timeout=1
+
+load-sample camera-shutter-01 /usr/share/sounds/mm-camcorder/capture_shutter_01.ogg
+load-sample camera-shutter-02 /usr/share/sounds/mm-camcorder/capture_shutter_02.ogg
+load-sample recording-start /usr/share/sounds/mm-camcorder/recording_start_01.ogg
+load-sample recording-stop /usr/share/sounds/mm-camcorder/recording_stop_01.ogg
diff --git a/media-config-target-n4/hal/etc/xdg/gstomx.conf b/media-config-target-n4/hal/etc/xdg/gstomx.conf
new file mode 100644 (file)
index 0000000..4533527
--- /dev/null
@@ -0,0 +1,78 @@
+[omxdec_mpeg2]
+type-name=GstOMXMPEG2VideoDec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.MPEG2.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxdec_mpeg4]
+type-name=GstOMXMPEG4VideoDec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.MPEG4.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxdec_h263]
+type-name=GstOMXH263Dec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.H263.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxdec_h264]
+type-name=GstOMXH264Dec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.AVC.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxenc_h264]
+type-name=GstOMXH264Enc
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.AVC.Encoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-disable-outport;no-component-role
+sink-template-caps=video/x-raw, format=(string)SN12, width=(int) [1,1920], height=(int) [1,1080], framerate=(fraction)[0/1, MAX]
+src-template-caps=video/x-h264, width=(int) [1,1920], height=(int) [1,1080], framerate=(fraction) [0/1, MAX], alignment=(string) au, stream-format = (string){ avc, byte-stream }
+
+[omxenc_mpeg4]
+type-name=GstOMXMPEG4VideoEnc
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.MPEG4.Encoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport
+
+[omxenc_h263]
+type-name=GstOMXH263Enc
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.H263.Encoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf
new file mode 100644 (file)
index 0000000..db78eb4
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'Aux' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf
new file mode 100644 (file)
index 0000000..baf674a
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'FM' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-radio
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+.include analog-input.conf.common
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf
new file mode 100644 (file)
index 0000000..4be5722
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf
new file mode 100644 (file)
index 0000000..f7f3085
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic/Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf
new file mode 100644 (file)
index 0000000..2a36f2f
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+name = analog-input-microphone
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common
new file mode 100644 (file)
index 0000000..b35e7af
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common element for all microphone inputs
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Mic Select'
+
+[Element Mic Select]
+enumeration = select
+
+[Option Mic Select:Mic1]
+name = input-microphone
+priority = 20
+
+[Option Mic Select:Mic2]
+name = input-microphone
+priority = 19
+
+;;; Various Boosts
+
+[Element Mic Boost (+20dB)]
+switch = select
+volume = merge
+
+[Option Mic Boost (+20dB):on]
+name = input-boost-on
+
+[Option Mic Boost (+20dB):off]
+name = input-boost-off
+
+[Element Mic Boost]
+switch = select
+volume = merge
+
+[Option Mic Boost:on]
+name = input-boost-on
+
+[Option Mic Boost:off]
+name = input-boost-off
+
+[Element Front Mic Boost]
+switch = select
+
+[Option Front Mic Boost:on]
+name = input-boost-on
+
+[Option Front Mic Boost:off]
+name = input-boost-off
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf
new file mode 100644 (file)
index 0000000..8531ec7
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'TV Tuner' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-video
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf
new file mode 100644 (file)
index 0000000..74c76f0
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Video' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf
new file mode 100644 (file)
index 0000000..5055f90
--- /dev/null
@@ -0,0 +1,54 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; A fallback for devices that lack seperate Mic/Line/Aux/Video/TV
+; Tuner/FM elements
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Capture]
+required = volume
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required-absent = any
+
+[Element Line]
+required-absent = any
+
+[Element Aux]
+required-absent = any
+
+[Element Video]
+required-absent = any
+
+[Element Mic/Line]
+required-absent = any
+
+[Element TV Tuner]
+required-absent = any
+
+[Element FM]
+required-absent = any
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common
new file mode 100644 (file)
index 0000000..951e11f
--- /dev/null
@@ -0,0 +1,294 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Mixer path for PulseAudio's ALSA backend, common elements for all
+; input paths. If multiple options by the same id are discovered they
+; will be suffixed with a number to distuingish them, in the same
+; order they appear here.
+;
+; Source selection should use the following names:
+;
+;       input                       -- If we don't know the exact kind of input
+;       input-microphone
+;       input-microphone-internal
+;       input-microphone-external
+;       input-linein
+;       input-video
+;       input-radio
+;       input-docking-microphone
+;       input-docking-linein
+;       input-docking
+;
+;  We explicitly don't want to wrap the following sources:
+;
+;       CD
+;       Synth/MIDI
+;       Phone
+;       Mix
+;       Digital/SPDIF
+;       Master
+;       PC Speaker
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Input Source Select'
+
+[Element Input Source Select]
+enumeration = select
+
+[Option Input Source Select:Input1]
+name = input
+priority = 10
+
+[Option Input Source Select:Input2]
+name = input
+priority = 5
+
+;;; 'Input Source'
+
+[Element Input Source]
+enumeration = select
+
+[Option Input Source:Mic]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Microphone]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Front Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Front Microphone]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Internal Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Line]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line-In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Docking-Station]
+name = input-docking
+priority = 17
+
+[Option Input Source:AUX IN]
+name = input
+priority = 10
+
+;;; 'Capture Source'
+
+[Element Capture Source]
+enumeration = select
+
+[Option Capture Source:TV Tuner]
+name = input-video
+
+[Option Capture Source:FM]
+name = input-radio
+
+[Option Capture Source:Mic/Line]
+name = input
+
+[Option Capture Source:Line/Mic]
+name = input
+
+[Option Capture Source:Mic]
+name = input-microphone
+
+[Option Capture Source:Microphone]
+name = input-microphone
+
+[Option Capture Source:Int Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Int DMic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Mic]
+name = input-microphone-internal
+
+[Option Capture Source:iMic]
+name = input-microphone-internal
+
+[Option Capture Source:i-Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Microphone]
+name = input-microphone-internal
+
+[Option Capture Source:Front Mic]
+name = input-microphone
+
+[Option Capture Source:Front Microphone]
+name = input-microphone
+
+[Option Capture Source:Rear Mic]
+name = input-microphone
+
+[Option Capture Source:Mic1]
+name = input-microphone
+
+[Option Capture Source:Mic2]
+name = input-microphone
+
+[Option Capture Source:D-Mic]
+name = input-microphone
+
+[Option Capture Source:IntMic]
+name = input-microphone-internal
+
+[Option Capture Source:ExtMic]
+name = input-microphone-external
+
+[Option Capture Source:Ext Mic]
+name = input-microphone-external
+
+[Option Capture Source:E-Mic]
+name = input-microphone-external
+
+[Option Capture Source:e-Mic]
+name = input-microphone-external
+
+[Option Capture Source:LineIn]
+name = input-linein
+
+[Option Capture Source:Analog]
+name = input
+
+[Option Capture Source:Line]
+name = input-linein
+
+[Option Capture Source:Line-In]
+name = input-linein
+
+[Option Capture Source:Line In]
+name = input-linein
+
+[Option Capture Source:Video]
+name = input-video
+
+[Option Capture Source:Aux]
+name = input
+
+[Option Capture Source:Aux0]
+name = input
+
+[Option Capture Source:Aux1]
+name = input
+
+[Option Capture Source:Aux2]
+name = input
+
+[Option Capture Source:Aux3]
+name = input
+
+[Option Capture Source:AUX IN]
+name = input
+
+[Option Capture Source:Aux In]
+name = input
+
+[Option Capture Source:AOUT]
+name = input
+
+[Option Capture Source:AUX]
+name = input
+
+[Option Capture Source:Cam Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 1]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 2]
+name = input-microphone
+
+[Option Capture Source:Analog Inputs]
+name = input
+
+[Option Capture Source:Unknown1]
+name = input
+
+[Option Capture Source:Unknown2]
+name = input
+
+[Option Capture Source:Docking-Station]
+name = input-docking
+
+[Option Capture Source:Dock Mic]
+name = input-docking-microphone
+
+;;; 'Mic Jack Mode'
+
+[Element Mic Jack Mode]
+enumeration = select
+
+[Option Mic Jack Mode:Mic In]
+name = input-microphone
+
+[Option Mic Jack Mode:Line In]
+name = input-linein
+
+;;; 'Digital Input Source'
+
+[Element Digital Input Source]
+enumeration = select
+
+[Option Digital Input Source:Analog Inputs]
+name = input
+
+[Option Digital Input Source:Digital Mic 1]
+name = input-microphone
+
+[Option Digital Input Source:Digital Mic 2]
+name = input-microphone
+
+;;; Various Boosts
+
+[Element Capture Boost]
+switch = select
+
+[Option Capture Boost:on]
+name = input-boost-on
+
+[Option Capture Boost:off]
+name = input-boost-off
+
+[Element Auto Gain Control]
+switch = select
+
+[Option Auto Gain Control:on]
+name = input-agc-on
+
+[Option Auto Gain Control:off]
+name = input-agc-off
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf
new file mode 100644 (file)
index 0000000..f2fd31c
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone2' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 89
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the second headphones, not
+; the first headphones. But it should not hurt if we leave the
+; headphone jack enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf
new file mode 100644 (file)
index 0000000..2131cfe
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+[Element Headphone]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the first headphones, not
+; the second headphones. But it should not hurt if we leave the second
+; headphone jack enabled nonetheless.
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf
new file mode 100644 (file)
index 0000000..0a43e27
--- /dev/null
@@ -0,0 +1,85 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage in laptops that have a seperate LFE speaker
+; connected to the Master mono connector
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 40
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all-no-lfe
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf
new file mode 100644 (file)
index 0000000..542edc4
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage on boards that have a seperate Mono output plug.
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 50
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = off
+volume = off
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf
new file mode 100644 (file)
index 0000000..aea7853
--- /dev/null
@@ -0,0 +1,94 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Speaker' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = mute
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = mute
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = mute
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf
new file mode 100644 (file)
index 0000000..fc30800
--- /dev/null
@@ -0,0 +1,92 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for the 'default' output. Note that a-o-speaker.conf has a
+; higher priority than this
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 99
+
+[Element Hardware Master]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = ignore
+volume = ignore
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the default output, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = ignore
+volume = zero
+
+[Element Headphone2]
+switch = ignore
+volume = zero
+
+[Element Speaker]
+switch = ignore
+volume = off
+
+[Element Front]
+switch = ignore
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = ignore
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = ignore
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = ignore
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common
new file mode 100644 (file)
index 0000000..3204846
--- /dev/null
@@ -0,0 +1,128 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common part of all paths
+
+; So here's generally how mixer paths are used by PA: PA goes through
+; a mixer path file from top to bottom and checks if a mixer element
+; described therein exists. If so it is added to the list of mixer
+; elements PA will control, keeping the order it read them in. If a
+; mixer element described here has set the required= or
+; required-absent= directives a path might not be accepted as valid
+; and is ignored in its entirety (see below). However usually if a
+; element listed here is missing this one element is ignored but not
+; the entire path.
+;
+; When a device shall be muted/unmuted *all* elements listed in a path
+; file with "switch = mute" will be toggled.
+;
+; When a device shall change its volume, PA will got through the list
+; of all elements with "volume = merge" and set the volume on the
+; first element. If that element does not support dB volumes, this is
+; where the story ends. If it does support dB volumes, PA divides the
+; requested volume by the volume that was set on this element, and
+; then go on to the next element with "volume = merge" and then set
+; that there, and so on.  That way the first volume element in the
+; path will be the one that does the 'biggest' part of the overall
+; volume adjustment, with the remaining elements usually being set to
+; some value next to 0dB. This logic makes sure we get the full range
+; over all volume sliders and a very high granularity of volumes
+; already in hardware.
+;
+; All switches and enumerations set to "select" are exposed via the
+; "port" functionality of sinks/sources. Basically every possible
+; switch setting and every possible enumeration setting will be
+; combined and made into a "port". So make sure you don't list too
+; many switches/enums for exposing, because the number of ports might
+; rise exponentially.
+;
+; Only one path can be selected at a time. All paths that are valid
+; for an audio device will be exposed as "port" for the sink/source.
+
+
+; [General]
+; priority = ...                         # Priority for this path
+; description = ...
+;
+; [Option ...:...]                       # For each option of an enumeration or switch element
+;                                        # that shall be exposed as a sink/source port. Needs to
+;                                        # be named after the Element, followed by a colon, followed
+;                                        # by the option name, resp. on/off if the element is a switch.
+; name = ...                             # Logical name to use in the path identifier
+; priority = ...                         # Priority if this is made into a device port
+;
+; [Element ...]                          # For each element that we shall control
+; required = ignore | switch | volume | enumeration | any     # If set, require this element to be of this kind and available,
+;                                                             # otherwise don't consider this path valid for the card
+; required-absent = ignore | switch | volume                  # If set, require this element to not be of this kind and not
+;                                                             # available, otherwise don't consider this path valid for the card
+;
+; switch = ignore | mute | off | on | select                  # What to do with this switch: ignore it, make it follow mute status,
+;                                                             # always set it to off, always to on, or make it selectable as port.
+;                                                             # If set to 'select' you need to define an Option section for on
+;                                                             # and off
+; volume = ignore | merge | off | zero   # What to do with this volume: ignore it, merge it into the device
+;                                        # volume slider, always set it to the lowest value possible, or always
+;                                        # set it to 0 dB (for whatever that means)
+; enumeration = ignore | select          # What to do with this enumeration, ignore it or make it selectable
+;                                        # via device ports. If set to 'select' you need to define an Option section
+;                                        # for each of the items you want to expose
+; direction = playback | capture         # Is this relevant only for playback or capture? If not set this will implicitly be
+;                                        # set the direction of the PCM device is opened as. Generally this doesn't need to be set
+;                                        # unless you have a broken driver that has playback controls marked for capture or vice
+;                                        # versa
+; direction-try-other = no | yes         # If the element does not supported what is requested, try the other direction, too?
+;
+; override-map.1 = ...                   # Override the channel mask of the mixer control if the control only exposes a single channel
+; override-map.2 = ...                   # Override the channel masks of the mixer control if the control only exposes two channels
+;                                        # Override maps should list for each element channel which high-level channels it controls via a
+;                                        # channel mask. A channel mask may either be the name of a single channel, or the words "all-left",
+;                                        # "all-right", "all-center", "all-front", "all-rear", and "all" to encode a specific subset of
+;                                        # channels in a mask
+
+[Element PCM]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element External Amplifier]
+switch = select
+
+[Option External Amplifier:on]
+name = output-amplifier-on
+priority = 10
+
+[Option External Amplifier:off]
+name = output-amplifier-off
+priority = 0
+
+;;; 'Analog Output'
+
+[Element Analog Output]
+enumeration = select
+
+[Option Analog Output:Speakers]
+name = output-speaker
+priority = 10
+
+[Option Analog Output:Headphones]
+name = output-headphones
+priority = 9
+
+[Option Analog Output:FP Headphones]
+name = output-headphones
+priority = 8
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf
new file mode 100644 (file)
index 0000000..9838138
--- /dev/null
@@ -0,0 +1,144 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned. (and should be good enough for the vast majority of
+; cards).  Use the udev property PULSE_PROFILE_SET to assign a
+; different profile set than this one to a device.  So what is this
+; about? Simply, what we do here is map ALSA devices to how they are
+; exposed in PA. We say which ALSA device string to use to open a
+; device, which channel mapping to use then, and which mixer path to
+; use. This is encoded in a 'mapping'. Multiple of these mappings can
+; be bound together in a 'profile' which is then directly exposed in
+; the UI as a card profile. Each mapping assigned to a profile will
+; result in one sink/source to be created if the profile is selected
+; for the card.
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+
+[General]
+auto-profiles = yes
+
+[Mapping analog-mono]
+device-strings = hw:0
+channel-map = mono
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 1
+
+[Mapping analog-stereo]
+device-strings = front:%f hw:0
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 10
+
+[Mapping analog-surround-40]
+device-strings = surround40:%f
+channel-map = front-left,front-right,rear-left,rear-right
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-41]
+device-strings = surround41:%f
+channel-map = front-left,front-right,rear-left,rear-right,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-50]
+device-strings = surround50:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-51]
+device-strings = surround51:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-71]
+device-strings = surround71:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+description = Analog Surround 7.1
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping iec958-stereo]
+device-strings = iec958:%f
+channel-map = left,right
+priority = 5
+
+[Mapping iec958-surround-40]
+device-strings = iec958:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 1
+
+[Mapping iec958-ac3-surround-40]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 2
+direction = output
+
+[Mapping iec958-ac3-surround-51]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 3
+direction = output
+
+[Mapping hdmi-stereo]
+device-strings = hdmi:%f
+channel-map = left,right
+priority = 4
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf
new file mode 100644 (file)
index 0000000..2b83530
--- /dev/null
@@ -0,0 +1,91 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 4 DJ
+;
+; This card has two stereo pairs of input and two stereo pairs of
+; output, named channels A and B. Channel B has an additional
+; Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b-output]
+description = Analog Stereo Channel B (Headphones)
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-b-input]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b-output
+input-mappings = analog-stereo-a analog-stereo-b-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+input-mappings = analog-stereo-b-input
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+priority = 6
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b-input
+priority = 1
+skip-probe = yes
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf
new file mode 100644 (file)
index 0000000..3fe3cc5
--- /dev/null
@@ -0,0 +1,162 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 8 DJ
+;
+; This card has four stereo pairs of input and four stereo pairs of
+; output, named channels A to D. Channel C has an additional Mic/Line
+; connector, channel D an additional Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+
+# Since we want to set a different description for channel C's/D's input
+# and output we define two seperate mappings for them
+[Mapping analog-stereo-c-output]
+description = Analog Stereo Channel C
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-c-input]
+description = Analog Stereo Channel C (Line/Mic)
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = input
+
+[Mapping analog-stereo-d-output]
+description = Analog Stereo Channel D (Headphones)
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-d-input]
+description = Analog Stereo Channel D
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B, C (Line/Mic), D (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-input analog-stereo-d-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-c]
+description = Analog Stereo Channel D (Headphones) Output, Channel C (Line/Mic) Input
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-c-input
+priority = 90
+skip-probe = yes
+
+[Profile output:analog-stereo-c-d+input:analog-stereo-c-d]
+description = Analog Stereo Duplex Channels C (Line/Mic), D (Line/Mic)
+output-mappings = analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-c-input analog-stereo-d-input
+priority = 80
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B
+output-mappings = analog-stereo-b
+input-mappings = analog-stereo-b
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-c+input:analog-stereo-c]
+description = Analog Stereo Duplex Channel C (Line/Mic)
+output-mappings = analog-stereo-c-output
+input-mappings = analog-stereo-c-input
+priority = 60
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-d]
+description = Analog Stereo Duplex Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-d-input
+priority = 70
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 6
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B
+output-mappings = analog-stereo-b
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-c]
+description = Analog Stereo Output Channel C
+output-mappings = analog-stereo-c-output
+priority = 7
+skip-probe = yes
+
+[Profile output:analog-stereo-d]
+description = Analog Stereo Output Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+priority = 8
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b
+priority = 1
+skip-probe = yes
+
+[Profile input:analog-stereo-c]
+description = Analog Stereo Input Channel C (Line/Mic)
+input-mappings = analog-stereo-c-input
+priority = 4
+skip-probe = yes
+
+[Profile input:analog-stereo-d]
+description = Analog Stereo Input Channel D
+input-mappings = analog-stereo-d-input
+priority = 3
+skip-probe = yes
diff --git a/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf b/media-config-target-n4/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf
new file mode 100644 (file)
index 0000000..6a7fd50
--- /dev/null
@@ -0,0 +1,119 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned (and should be good enough for the vast majority of
+; cards). If you want to assign a different profile set than this one
+; to a device, either set the udev property PULSE_PROFILE_SET for the
+; card, or use the "profile_set" module argument when loading
+; module-alsa-card.
+;
+; So what is this about? Simply, what we do here is map ALSA devices
+; to how they are exposed in PA. We say which ALSA device string to
+; use to open a device, which channel mapping to use then, and which
+; mixer path to use. This is encoded in a 'mapping'. Multiple of these
+; mappings can be bound together in a 'profile' which is then directly
+; exposed in the UI as a card profile. Each mapping assigned to a
+; profile will result in one sink/source to be created if the profile
+; is selected for the card.
+;
+; Additionally, the path set configuration files can describe the
+; decibel values assigned to the steps of the volume elements. This
+; can be used to work around situations when the alsa driver doesn't
+; provide any decibel information, or when the information is
+; incorrect.
+
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+;
+; [DecibelFix element]                      # Decibel fixes can be used to work around missing or incorrect dB
+;                                           # information from alsa. A decibel fix is a table that maps volume steps
+;                                           # to decibel values for one volume element. The "element" part in the
+;                                           # section title is the name of the volume element.
+;                                           #
+;                                           # NOTE: This feature is meant just as a help for figuring out the correct
+;                                           # decibel values. PulseAudio is not the correct place to maintain the
+;                                           # decibel mappings!
+;                                           #
+;                                           # If you need this feature, then you should make sure that when you have
+;                                           # the correct values figured out, the alsa driver developers get informed
+;                                           # too, so that they can fix the driver.
+;
+; db-values = ...                           # The option value consists of pairs of step numbers and decibel values.
+;                                           # The pairs are separated with whitespace, and steps are separated from
+;                                           # the corresponding decibel values with a colon. The values must be in an
+;                                           # increasing order. Here's an example of a valid string:
+;                                           #
+;                                           #     "0:-40.50  1:-38.70  3:-33.00  11:0"
+;                                           #
+;                                           # The lowest step imposes a lower limit for hardware volume and the
+;                                           # highest step correspondingly imposes a higher limit. That means that
+;                                           # that the mixer will never be set outside those values - the rest of the
+;                                           # volume scale is done using software volume.
+;                                           #
+;                                           # As can be seen in the example, you don't need to specify a dB value for
+;                                           # each step. The dB values for skipped steps will be linearly interpolated
+;                                           # using the nearest steps that are given.
+
+[General]
+auto-profiles = yes
+
+[Mapping usb-analog-stereo]
+device-strings = hw:%f
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+priority = 10
+
+[Mapping usb-analog-surround-51]
+device-strings = hw:%f
+;channel-map = front-left,front-right,front-center,lfe,rear-left,rear-right
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-lfe-on-mono
+priority = 180
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-rpi3-spk.manifest b/media-config-target-rpi3-spk.manifest
new file mode 100644 (file)
index 0000000..a76fdba
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+       <request>
+               <domain name="_" />
+       </request>
+</manifest>
diff --git a/media-config-target-rpi3-spk/hal/etc/asound.conf b/media-config-target-rpi3-spk/hal/etc/asound.conf
new file mode 100644 (file)
index 0000000..dc87ead
--- /dev/null
@@ -0,0 +1,16 @@
+# default sound configuration
+
+pcm. !default {
+       type hw
+       card ALSA
+}
+
+ctl. !default {
+       type hw
+       card ALSA
+}
+
+ctl. bcm2835 {
+       type hw
+       card ALSA
+}
diff --git a/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_audio_pcm_dump.ini b/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_audio_pcm_dump.ini
new file mode 100644 (file)
index 0000000..6e13b68
--- /dev/null
@@ -0,0 +1,8 @@
+[pcm_dump]
+;playback
+pa_sink = 0
+pa_sink_input = 0
+
+;capture
+pa_source = 0
+pa_source_output = 0
diff --git a/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_audio_volume.ini b/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_audio_volume.ini
new file mode 100644 (file)
index 0000000..ae7e635
--- /dev/null
@@ -0,0 +1,19 @@
+[volumes]
+system                         = 0, 72, 73, 74, 75, 76, 77, 78, 80, 81, 82, 84, 86, 88, 90, 94
+notification                   = 0, 68, 70, 72, 73, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 97
+alarm                          = 0, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 92
+ringtone                       = 0, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 92
+media                          = 0, 46, 50, 53, 58, 62, 68, 72, 76, 80, 84, 87, 90, 93, 96, 100
+call                           = 60, 65, 70, 76, 82, 88, 94, 100
+voip                           = 60, 65, 70, 76, 82, 88, 94, 100
+voice                          = 0, 55, 58, 61, 64, 67, 70, 75, 78, 82, 86, 89, 91, 94, 97, 100
+gain_dialer                    = 1.00
+gain_touch                     = 1.00
+gain_af                        = 0.70
+gain_shutter1                  = 0.14
+gain_shutter2                  = 1.00
+gain_camcording                = 0.30
+gain_midi                      = 1.00
+gain_booting                   = 0.40
+gain_video                     = 0.90
+gain_tts                       = 1.00
diff --git a/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_camcorder.ini b/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_camcorder.ini
new file mode 100644 (file)
index 0000000..2ce8bf3
--- /dev/null
@@ -0,0 +1,102 @@
+; < Camera/Camcorder Configure Main INI file >
+;
+; - Header List -
+; 1.  General
+; 2.  VideoInput
+; 3.  AudioInput
+; 4.  VideoOutput
+; 5.  Capture
+; 6.  Record
+; 7.  VideoEncoder
+; 8.  AudioEncoder
+; 9.  ImageEncoder
+; 10. Mux
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryMain"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[General]
+SyncStateChange = 1
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap || NOT-USE-DEFAULT_VALUE
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap --gst-debug=3 || NOT-USE-DEFAULT_VALUE
+ModelName = GT-TIZEN
+;DisabledAttributes = camera-optical-zoom camera-af-touch-x camera-af-touch-y camera-exposure-value camera-f-number camera-shutter-speed camera-hold-af-after-capturing filter-flip filter-hue display-src-x display-src-y display-src-width display-src-height tag-image-description strobe-control strobe-capabilities strobe-mode detect-mode detect-number detect-focus-select detect-select-number detect-status || NO_DEFAULT_VALUE
+
+[VideoInput]
+VideosrcElement = v4l2src | 1,0 | do-timestamp,1
+UseVideoscale = 1
+VideoscaleElement = videoscale | 3,0 | width,320 | height,240 | method,1
+UseZeroCopyFormat = 0
+DeviceCount = 1
+
+[AudioInput]
+AudioDevice = 0,1 || 0
+AudiosrcElement = pulsesrc | 1,0 | do-timestamp,1
+AudiomodemsrcElement = pulsesrc | 1,0 | do-timestamp,1
+
+[VideoOutput]
+; DisplayDevice
+;;; 0: MAIN LCD, 1: SUB LCD, 2:TV OUT, 3: MAIN LCD and SUB LCD, 4: MAIN LCD and TV OUT
+DisplayDevice = 0 || 0
+; DisplayMode
+;;; 0: Default, 1: Pri Video ON and Sec Video Full-Screen, 2: Pri Video OFF and Sec Video Full-Screen
+DisplayMode = 0,1,2 || 0
+; Videosink
+;;; 0: Overlay surface, 1: Evas surface, 2: GL surface, 3: NULL surface, 4: Remote
+Videosink = 0,3,4 || 3
+VideosinkElementOverlay = tizenwlsink | 7,0 | draw-borders,0 | force-aspect-ratio,1 | enable-last-sample,0 | qos,0 | sync,0 | show-preroll-frame,0 | use-tbm,0
+VideosinkElementRemote = shmsink | 5,0 | wait-for-connection,0 | perms,511 | enable-last-sample,0 | qos,0 | sync,0
+VideosinkElementNull = fakesink | 4,0 | qos,0 | sync,0 | enable-last-sample,0 | show-preroll-frame,0
+UseVideoconvert = 1
+VideoconvertElement = videoconvert | 0,0
+
+[VideoEncoder]
+MPEG4 = avenc_mpeg4 | 0,0
+
+[AudioEncoder]
+AMR = amrnbenc | 0,0
+AAC = avenc_aac | 1,0 | compliance,-2
+WAVE = wavenc | 0,0
+
+[ImageEncoder]
+JPEG = jpegenc | 0,0
+;PNG = pngenc | 0,0
+
+[Capture]
+UseEncodebin = 1
+UseCaptureMode = 0
+VideoscaleElement = videoscale | 1,0 | method,1
+
+[Record]
+UseAudioEncoderQueue = 1
+UseVideoEncoderQueue = 0
+VideoProfile = 0
+VideoAutoAudioConvert = 1
+VideoAutoAudioResample = 0
+VideoAutoColorSpace = 1
+AudioProfile = 1
+AudioAutoAudioConvert = 1
+AudioAutoAudioResample = 0
+AudioAutoColorSpace = 0
+ImageProfile = 2
+ImageAutoAudioConvert = 0
+ImageAutoAudioResample = 0
+ImageAutoColorSpace = 1
+RecordsinkElement = filesink | 1,0 | async,0
+UseNoiseSuppressor = 0
+DropVideoFrame = 0
+PassFirstVideoFrame = 0
+
+[Mux]
+3GP = 3gppmux | 0,0
+AMR = avmux_amr | 0,0
+MP4 = mp4mux | 0,0
+AVI = avimux | 0,0
+MATROSKA = matroskamux | 0,0
+WAV = wavenc | 0,0
+AAC = avmux_adts | 0,0
+M2TS = mpegtsmux | 0,0
+
diff --git a/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_camcorder_camera0.ini b/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_camcorder_camera0.ini
new file mode 100644 (file)
index 0000000..728196e
--- /dev/null
@@ -0,0 +1,208 @@
+; < Camera/Camcorder Configure Control INI file >
+;
+; - Header List -
+; 1.  Camera
+; 2.  Strobe
+; 3.  Effect
+; 4.  Photograph
+; 5.  Capture
+; 6.  Detect
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryControl"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[Camera]
+; Input index - real setting value
+;;; 0:PRIMARY_CAMERA, 1:SECONDARY_CAMERA
+; Input index - MSL value(convert array index)
+;;; -1:NONE, 0:CAMERA0, 1:CAMERA1
+InputIndex = 0,-255 || 0
+DeviceName = USB_CAMERA
+PreviewResolution = 320,240 | 640,480 || 320,240
+CaptureResolution = 320,240 | 640,480 || 640,480
+VideoResolution = 320,240 | 640,480 || 640,480
+FPS0 = 0,15,30 || 15
+FPS1 = 0,15,30 || 15
+; PictureForamt - MSL value
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+PictureFormat = 7 || 7
+Overlay = 0,1 || 1
+; Recommend display rotation
+;;; 0:NONE, 1:90, 2:180, 3:270
+RecommendDisplayRotation = 0
+; Recommend preview format for capture
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatCapture = 7
+; Recommend preview format for record
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatRecord = 7
+; Recommend preview resolution
+;;; 0: NORMAL ratio(4:3), 1: WIDE ratio(16:9), 2: SQUARE ratio(1:1)
+RecommendPreviewResolution = 320,240 | 320,240 | 320,240 || 320,240
+; Camera facing direction
+;;; 0:REAR, 1:FRONT
+FacingDirection = 0
+FrameStabilityCount = 1
+
+
+[Strobe]
+;StrobeControl - Not support
+;StrobeCapabilities - Not support
+; Strobe mode - real setting value
+;;; N/A
+; Strobe mode - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:REDEYE_REDUCTION, 4:SLOW_SYNC, 5:FRONT_CURTAIN, 6:REAR_CURTAIN, 7:PERMANENT
+StrobeMode = 0,-255,-255,-255,-255,-255,-255,-255 || 0
+;StrobeStatus - Not support
+;StrobeEV - Not support
+
+
+[Effect]
+Brightness = 0,8 || 4
+;Contrast = 1,7 || 4
+;Saturation = 0,4 || 2
+;Sharpness = 0,4 || 2
+
+; White balance - real setting value
+;;; 0:AUTO, 1:DAYLIGHT, 2:CLOUDY, 3:TUNGSTEN, 4:FLUORESCENT
+; White balance - MSL value(convert array index)
+;;; 0:NONE, 1:AUTO, 2:DAYLIGHT, 3:CLOUDY, 4:FLUORESCENT, 5:INCANDESCENT, 6:SHADE, 7:HORIZON, 8:FLASH, 9:CUSTOM
+WhiteBalance = -255,0,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Color tone - real setting value
+;;; 1:NONE, 2:MONO, 3:SEPIA, 4:AQUA, 5:ANTIQUE, 6:NEGATIVE, 7:SHARPEN, 8:SKETCH, 9:WASHED, 10:VINTAGE_WARM
+;;; 11:VINTAGE_COLD, 12:SOLARIZE, 13:POSTERIZE, 14:POINT_BLUE, 15:POINT_RED_YELLOW, 16:POINT_COLOR_3, 17:POINT_GREEN, 18:POINT_RED, 19:POINT_YELLOW, 20:CARTOONIZE
+; Color tone - MSL value(convert array index)
+;;; 0:NONE, 1:MONO, 2:SEPIA, 3:NEGATIVE, 4:BLUE, 5:GREEN, 6:AQUA, 7:VIOLET, 8:ORANGE, 9:GRAY, 10:RED,
+;;; 11:ANTIQUE, 12:WARM, 13:PINK, 14:YELLOW, 15:PURPLE, 16:EMBOSS, 17:OUTLINE, 18:SOLARIZATION, 19:SKETCH, 20:WASHED,
+;;; 21:VINTAGE_WARM, 22:VINTAGE_COLD, 23:POSTERIZATION, 24:CARTOON, 25:SELECTIVE_RED, 26:SELECTIVE_GREEN, 27:SELECTIVE_BLUE, 28:SELECTIVE_YELLOW, 29:SELECTIVE_RED_YELLOW
+ColorTone = 1,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 1
+; Flip - real setting value
+;;; 0:NONE, 1:VERTICAL, 2:HORIZONTAL
+; Flip - MSL value(convert array index)
+;;; 0:HORIZONTAL, 1:VERTICAL, 2:NONE
+;Flip = 2,1,0 || 0
+
+; Wide Dynamic Range - real setting value
+;;; 0:OFF, 1:ON
+; Wide Dynamic Range - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO
+WDR = 0,-255,-255 || 0
+
+; Part color mode - real setting value
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+; Part color mode - MSL value(convert array index)
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+;PartColorMode = 0,1,2 || 0
+
+; Part color - real setting value
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+; Part color - MSL value(convert array index)
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT_BLUE, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+;PartColor = 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 || 0
+
+
+[Photograph]
+;LensInit = 0,1 || 0
+;DigitalZoom = 0,10 || 0
+;OpticalZoom = 0,0 || 0
+
+; Focus mode - real setting value
+;;; 0:AUTO, 1:MANUAL, 2:PAN, 3:TOUCH_AUTO, 4:CONTINUOUS
+; Focus mode - MSL value(convert array index)
+;;; 0:NONE, 1:PAN, 2:AUTO, 3:MANUAL, 4:TOUCH_AUTO, 5:CONTINUOUS
+FocusMode = 0,-255,-255,-255,-255,-255 || 0
+
+; Auto focus type - real setting value
+;;; 0:NORMAL, 1:MACRO, 2:FULL
+; Auto focus - MSL value(convert array index)
+;;; 0:NONE, 1:NORMAL, 2:MACRO, 3:FULL
+AFType = 0,-255,-255,-255 || 0
+
+; Auto exposure type - real setting value
+;;; 0:BASE, 1:MATRIX, 2:CENTER, 3:SPOT, 4:MAX
+; Auto exposure mode - MSL value(convert array index)
+;;; 0,OFF 1,ALL 2,CENTER1  3,CENTER2 4,CENTER3 5,SPOT1 6,SPOT2 7,CUSTOM1 8,CUSTOM2
+AEType = -255,0,-255,-255,-255,-255,-255,-255,-255 || 0
+
+;ExposureValue - Not support
+;FNumber - Not support
+;ShutterSpeed - Not support
+
+; ISO - real setting value
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600
+; ISO - MSL value(convert array index)
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600, 7:3200
+ISO = 0,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Program mode - real setting value
+;;; 1:NONE, 2:PORTRAIT, 3:NIGHTSHOT, 4:BACK_LIGHT, 5:LANDSCAPE, 6:SPORTS, 7:PARTY_INDOOR, 8:BEACH_SNOW, 9:SUNSET, 10:DUSK_DAWN,
+;;; 11:FALL_COLOR, 12:FIREWORKS, 13:TEXT, 14:CANDLE_LIGHT
+; Program mode - MSL value(convert array index)
+;;; 0:NORMAL, 1:PORTRAIT, 2:LANDSCAPE, 3:SPORTS, 4:PARTY_N_INDOOR, 5:BEACH_N_INDOOR, 6:SUNSET, 7:DUSK_N_DAWN, 8:FALL_COLOR, 9:NIGHT_SCENE,
+;;; 10:FIREWORK, 11:TEXT, 12:SHOW_WINDOW, 13:CANDLE_LIGHT, 14:BACKLIGHT
+ProgramMode = 0,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Anti-handshake - real setting value
+;;; 0:OFF, 1:ON
+; Anti-handshake - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:MOVIE_ON
+AntiHandshake = 0,-255,-255,-255 || 0
+
+; Video-stabilization - real setting value
+;;; 0:OFF, 1:ON
+; Video-stabilization - MSL value(convert array index)
+;;; 0:OFF, 1:ON
+VideoStabilization = 0 || 0
+
+; Face zoom mode
+;;; 0:OFF, 1:ON
+FaceZoomMode = 0 || 0
+; Face zoom level
+FaceZoomLevel = 0,0 || 0
+
+; PTZ(Pan Tilt Zoom) type
+;;; 0:Mechanical, 1:Electronic
+;PtzType = 0,1 || 1
+
+; Pan range for mechanical movement
+;PanMecha = -10,10
+
+; Pan range for electronic movement
+;PanElec = -10,10
+
+; Tilt range for mechanical movement
+;TiltMecha = -10,10
+
+; Tilt range for electronic movement
+;TiltElec = -10,10
+
+
+[Capture]
+; Output mode
+;;; No need to convert
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY
+OutputMode = 7,13 || 13
+JpegQuality = 0,100 || 90
+MultishotNumber = 1,1 || 1
+SensorEncodedCapture = 0
+; Support HDR
+;;; 0: OFF, 1: ON, 2: ON and Original
+SupportHDR = 0,-255,-255 || 0
+FrameStabilityCount = 2
+
+
+[Detect]
+; Detect mode
+;;; 0:OFF, 1:ON
+DetectMode = 0,-255 || 0
+;DetectNumber - Not support
+;DetectFocusSelect - Not support
+;DetectSelectNumber - Not support
+;DetectStatus - Not support
+
diff --git a/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_media_codec.ini b/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_media_codec.ini
new file mode 100644 (file)
index 0000000..9f2a5dd
--- /dev/null
@@ -0,0 +1,89 @@
+[h261]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = , ,
+sw_encoder = , ,
+
+[h263]
+hw_decoder = omxdec_h263, video/x-h263, NV12
+hw_encoder = omxenc_h263, video/x-raw,  H263
+sw_decoder = avdec_h263,   video/x-h263, I420
+sw_encoder = avenc_h263,   video/x-raw,  H263
+
+[h264]
+hw_decoder = omxdec_h264, video/x-h264, NV12
+hw_encoder = omxenc_h264, video/x-raw,  H264_SP
+sw_decoder = avdec_h264,   video/x-h264, I420
+sw_encoder = avenc_h264,   video/x-raw,  H264_SP
+
+[mpeg4]
+hw_decoder = omxdec_mpeg4, video/mpeg, NV12
+hw_encoder = omxenc_mpeg4, video/x-raw,  MPEG4_SP
+sw_decoder = avdec_mpeg4,   video/mpeg, I420
+sw_encoder = avenc_mpeg4,   video/x-raw,  MPEG4_SP
+
+[aac_lc]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = avenc_aac,   audio/x-raw, AAC_LC
+
+[aac_he]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[aac_he_ps]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[mp3]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_mp3,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[amr_nb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrnb,   audio/AMR, PCM_F32LE
+sw_encoder = amrnbenc, audio/x-raw, AMR_NB
+
+[amr_wb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrwb,   audio/AMR-WB, PCM_F32LE
+sw_encoder = , ,
+
+[vorbis]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = vorbisdec,   audio/x-vorbis, PCM_F32LE
+sw_encoder = , ,
+
+[flac]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_flac,   audio/x-flac, PCM_F32LE
+sw_encoder = , ,
+
+[wmav1]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav1,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmav2]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav2,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmapro]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmapro,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
diff --git a/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_media_streamer.ini b/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_media_streamer.ini
new file mode 100644 (file)
index 0000000..527ab99
--- /dev/null
@@ -0,0 +1,124 @@
+[general]
+; generating dot file representing pipeline state
+generate dot = no
+dot dir =
+
+; decodebin will be used instead of decoder node
+use decodebin = yes
+
+; comma separated list of element names which
+; will not be used in autoplug mode
+exclude elements = v4l2video,v4l2h264,v4l2mpeg4,omx,sprd
+
+; comma separated list of element names which
+; will require resources in autoplug mode
+resource elements = omx,sprd
+
+; comma separated list of arguments
+; that will pass to gst_init
+gstreamer arguments = --gst-debug=2
+
+
+;MEDIA_STREAMER_NODE_TYPE_SRC
+[node type 1]
+audio capture = pulsesrc
+video capture = waylandsrc
+camera = v4l2src
+
+;MEDIA_STREAMER_NODE_TYPE_SINK
+[node type 2]
+audio = pulsesink
+overlay = tizenwlsink
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_ENCODER
+[node type 3]
+video/x-h263 = avenc_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DECODER
+[node type 4]
+video/x-h263 = avdec_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_ENCODER
+[node type 5]
+audio/AMR = amrnbenc
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DECODER
+[node type 6]
+audio/AMR = amrnbdec
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_CONVERTER
+[node type 7]
+video/x-raw = videoconvert
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_CONVERTER
+[node type 8]
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_RESAMPLE
+[node type 9]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_PAY
+[node type 10]
+video/x-h263 = rtph263pay
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_PAY
+[node type 11]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DEPAY
+[node type 12]
+video/x-h263 = rtph263depay
+video/x-h264 = rtph264depay
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DEPAY
+[node type 13]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_RATE
+[node type 14]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_SCALE
+[node type 15]
+
+;MEDIA_STREAMER_NODE_TYPE_TEXT_OVERLAY
+[node type 16]
+text/x-raw = textoverlay
+
+;MEDIA_STREAMER_NODE_TYPE_PARSER
+[node type 17]
+video/x-h263 = h263parse
+video/x-h264 = h264parse
+
+;MEDIA_STREAMER_NODE_TYPE_FILTER
+[node type 18]
+
+;MEDIA_STREAMER_NODE_TYPE_TEE
+[node type 19]
+
+;MEDIA_STREAMER_NODE_TYPE_QUEUE
+[node type 20]
+
+;MEDIA_STREAMER_NODE_TYPE_MQUEUE
+[node type 21]
+
+;MEDIA_STREAMER_NODE_TYPE_MUXER
+[node type 22]
+
+;MEDIA_STREAMER_NODE_TYPE_DEMUXER
+[node type 23]
+
+;MEDIA_STREAMER_NODE_TYPE_RTP
+[node type 24]
+
+;MEDIA_STREAMER_NODE_TYPE_INPUT_SELECTOR
+[node type 25]
+
+;MEDIA_STREAMER_NODE_TYPE_OUTPUT_SELECTOR
+[node type 26]
+
+;MEDIA_STREAMER_NODE_TYPE_INTERLEAVE
+[node type 27]
+
+;MEDIA_STREAMER_NODE_TYPE_DEINTERLEAVE
+[node type 28]
+
diff --git a/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_player.ini b/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_player.ini
new file mode 100644 (file)
index 0000000..a4fbc50
--- /dev/null
@@ -0,0 +1,102 @@
+[general]
+
+disable segtrap = yes ; same effect with --gst-disable-segtrap
+
+; set default videosink element according to video surface type(X, EVAS, NULL)
+videosink element overlay = tizenwlsink
+videosink element fake = fakesink
+video converter element =
+
+; decoder element keyword for resource management.
+video codec element hw =
+video codec element sw = avdec
+video codec default type = sw ; hw or sw
+
+audio codec element hw =
+audio codec element sw = avdec
+audio codec default type = sw ; hw or sw
+
+; support with HW audio codec
+support audio effect = no
+support pcm exporting = no
+support pitch control = no
+support replaygain control = no
+
+audiosink element = pulsesink
+
+; audio offload information
+audio offload sink element =
+audio offload device type =    ; builtin-speaker,bt-a2dp,audio-jack,usb-audio from pulse stream-map
+audio offload media format =   ; Use the format keyword of media_format_mimetype_e, MAX:10
+
+; supported input format of external media source stream
+; Use the format keyword of media_format_mimetype_e, MAX:10
+media stream input format = AAC,H264_SP,H264_MP,H264_HP
+
+; if yes. gstreamer will not update registry
+skip rescan = yes
+delay before repeat = 50 ; msec
+
+; comma separated list of tocken which elemnts has it in it's name will not be used
+; this works if 'use decodebin = yes'
+element exclude keyword = v4l2,omx
+
+; comma separated list of tocken
+; this works if 'use decodebin = yes'
+unsupported codec keyword = divx
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1 = --gst-debug=*:2
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; generating dot file representing pipeline state
+; DEFAULT MUST BE 'no'. If 'yes', mmplayer will set env-variable for it's session as "export GST_DEBUG_DUMP_DOT_DIR=/tmp/"
+generate dot = no
+
+; parameter is for only video to be determined
+; which clock will be used
+; if yes, system clock will be used
+; apart from this, audiosink is clock provider for audio
+use system clock = yes
+
+; allowed timeout for changing pipeline state
+live state change timeout = 30 ; sec
+localplayback state change timeout = 10 ; sec
+
+; delay in msec for sending EOS
+eos delay = 0 ; msec
+
+; extracted pcm buffer size
+pcm buffer size = 51200 ; 50Kbytes
+
+; max num of bo for sw codec
+video bo max = 10
+
+; video bo timeout (sec)
+video bo timeout = 10
+
+; setup pipeline with decodebin2
+use decodebin = no
+
+[http streaming]
+
+httpsrc element = souphttpsrc
+
+http buffering limit = 99.0 ; percent
+
+; if yes, use file for buffering.
+; if no, use memory for buffering.
+http use file buffer = no
+
+; ring buffer size when use mem buffer
+http ring buffer size = 20971520 ; 20MBytes
+
+http max size bytes = 1048576 ; bytes
+
+http buffering time = 1.2
+
+http timeout = 30 ; sec
diff --git a/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_player_audio_effect.ini b/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_player_audio_effect.ini
new file mode 100644 (file)
index 0000000..1394608
--- /dev/null
@@ -0,0 +1,17 @@
+[audio effect]
+; name of audio effect element
+audio effect element = audioeq
+
+; preset audio effect setting
+audio effect preset = no
+
+; custom audio effect setting (EQ/extension)
+audio effect custom = yes
+audio effect custom list = 0
+
+audio effect custom eq band num = 7 ; number of EQ bands
+audio effect custom eq band width = 33, 90, 242, 649, 1743, 4676, 12544 ; list of each EQ band width (Hz)
+audio effect custom eq band freq = 36, 98, 265, 711, 1907, 5117, 13727 ; list of each EQ band central frequency (Hz)
+
+audio effect custom min list = -12 ; list of minimum level value (the first element is for EQ, others for extension effect)
+audio effect custom max list = 12 ; list of maximum level value (the first element is for EQ, others for extension effect)
diff --git a/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_resource_manager.ini b/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_resource_manager.ini
new file mode 100644 (file)
index 0000000..082f297
--- /dev/null
@@ -0,0 +1,9 @@
+[max volume]
+video_overlay = -1
+video_decoder = -1
+video_encoder = -1
+camera = -1
+
+[priority]
+media = 10
+interrupt = 99
diff --git a/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_streamrecorder.ini b/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_streamrecorder.ini
new file mode 100644 (file)
index 0000000..2888707
--- /dev/null
@@ -0,0 +1,81 @@
+[general]
+;is encsink source is live
+encscink source is live = 0
+
+retrialcount = 10
+
+minimum frame = 5
+
+reset pause time = 0
+
+screen record = 1
+
+convert output buffer num = 6
+
+hw encoder supported = 0 ; 1 if supported and 'video codec element hw' should be formed.
+
+video codec element hw = ; sprd (if verified) or verified hw codec element
+
+[encodebin]
+;MM_STREAMRECORDER_ENCBIN_PROFILE_VIDEO = 0 MM_STREAMRECORDER_ENCBIN_PROFILE_AUDIO = 1
+;MM_STREAMRECORDER_ENCBIN_PROFILE_IMAGE = 2 MM_STREAMRECORDER_ENCBIN_PROFILE_NUM = 3
+encsink bin profile = 0
+
+encsink bin auto audio resample = 0
+
+encsink bin auto colorspace = 1
+
+encsink bin auto audio convert = 1
+
+encsink bin use video toggle = 0
+
+[pipeline]
+encsink bin source = appsrc
+
+name of audio src = pulsesrc
+
+h264 encoder =
+
+h263 encoder = avenc_h263p
+
+mpeg4 encoder = avenc_mpeg4
+
+name of audio encoder = avenc_aac
+
+use parser  =
+
+name of 3GP muxer = avmux_3gp
+
+name of MP4 muxer = avmux_mp4
+
+name of video converter = videoconvert
+
+name of sink = filesink
+
+[video param]
+;/*ms*/
+video frame wait time = 200000
+
+[audio param]
+audio frame minimum space = 102400
+
+audio frame wait time = 20000
+
+[attribute]
+supported height = 1080,720,480,240,288,144
+
+supported width = 1920,1280,640,320,352,176
+
+;/*AMR, AAC, VORBIS ,PCM*/
+supported audio encoders = AMR,AAC,PCM
+
+;/* H263 , H264 , MPEG4 */
+supported video encoders = H263,MPEG4
+
+;/*3GP , AMR, MP4 , WAV, ADTS*/
+supported file formats = 3GP,MP4,AMR,ADTS,WAV
+
+[debug]
+; generating dot file representing pipeline state
+; do export GST_DEBUG_DUMP_DOT_DIR=/tmp/ in the shell (also do export to '/etc/profile.d/mmf.sh')
+generate dot = no
diff --git a/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_wfd_sink.ini b/media-config-target-rpi3-spk/hal/etc/multimedia/mmfw_wfd_sink.ini
new file mode 100644 (file)
index 0000000..9d78b2b
--- /dev/null
@@ -0,0 +1,231 @@
+[general]
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=2,*wfd*:5)
+gstparam1 = --gst-debug=2,*wfd*:5,*wfdtsdemux:1,*wfdrtpbuffer:1
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; allowed timeout for changing pipeline state
+state change timeout = 5; sec
+
+; 0: default value set by wfdrtspsrc element, other: user define value.
+jitter buffer latency=10
+
+; for retransmission request enable = yes, disable = no
+enable retransmission = no
+
+; for reset basetime, enable = yes, disable = no
+enable reset basetime = yes
+
+; Maximum number of nanoseconds that a buffer can be late before it is dropped by videosink (-1 unlimited)
+video sink max lateness=20000000
+
+; nanoseconds to be added to buffertimestamp by sink elements
+sink ts offset=250000000
+
+; if no, go asynchronously to PAUSED without preroll
+audio sink async=no
+
+; if no, go asynchronously to PAUSED without preroll
+video sink async=no
+
+; user agent
+user agent =
+
+[debug]
+; generating dot file representing pipeline state
+; do export GST_DEBUG_DUMP_DOT_DIR=/tmp/ in the shell
+generate dot = no
+
+; set property to wfdsrc plugin for dumping rtsp message
+dump rtsp message = yes
+
+; enable tracing buffers using pad probe
+trace buffers = no
+
+; enable tracing first buffer
+trace first buffer = no
+
+; enable tracing buffers of wfdsrc
+trace buffers of wfdsrc = no
+
+; enable dumping ts data (eg. /var/tmp/*.ts)
+dump ts data = no
+
+; enable dumping rtp data (eg. /var/tmp/screenmirroring_sink_rtp.dump)
+dump rtp data = no
+
+
+[pipeline]
+wfdsrc element = wfdsrc
+
+tsdemux element = wfdtsdemux
+
+audio hdcp element =
+
+aac parser element = aacparse
+
+aac decoder element = avdec_aac
+
+ac3 parser element = ac3parse
+
+ac3 decoder element =
+
+lpcm converter element =
+
+lpcm filter element = capsfilter
+
+audio resampler element = audioconvert
+
+audio volume element =
+
+audio sinkbin queue element = ;queue
+
+audio sink element = pulsesink
+
+video hdcp element =
+
+video h264 parser element = h264parse
+
+video h265 parser element =
+
+video h264 decoder element = avdec_h264
+
+video h265 decoder element =
+
+video converter element =
+
+video filter element =
+
+video sink element = tizenwlsink
+
+video evas sink element = evaspixmapsink
+
+
+[wfd audio codecs]
+; 0x1: LPCM, 0x2: AAC, 0x4: AC3
+;default aac and LPCM
+audio codec=0x3
+
+audio latency=0x0
+
+;0x1 : 48000khz, 0x2: 44100khz
+audio sampling frequency=0x3
+
+; 0x1:2 channels, 0x2:4 channels, 0x4:6channels, 0x8:8channels
+audio channels=0x1
+
+
+[wfd video formats]
+; 0x0:not support, 0x1:H264
+video codec=0x1
+
+; 0x0:not supoort, 0x1: CHP, 0x2:CBP
+video profile=0x1
+
+video native resolution = 0x20
+
+video cea support=0x84ab;0x194ab
+
+video vesa support=0x1;0x5555555
+
+video hh support=0x555
+
+; 0x1:base, 0x2:high
+video profile=0x1
+
+; 0x1:level_3_1, 0x2:level_3_2, 0x4:level_4, 0x8:level_4_1, 0x10:level_4_2
+video level=0x2
+
+video latency=0x0
+
+video vertical resolution=720
+
+video horizontal resolution=1280
+
+video minimum slicesize=0
+
+video slice encoding params=200
+
+video framerate control support=11
+
+
+[wfd hdcp content protection]
+enable hdcp = no
+
+;0x0:none, 0x1:HDCP_2.0, 0x2:HDCP_2.1
+hdcp content protection=0x0
+
+hdcp port no=0
+
+
+[wfd2 video formats]
+;0x0:not support, 0x1:H264, 0x2:H265, 0x3:both
+video codec=0x3
+
+video native resolution = 0x20
+
+video non transcoding support=1
+
+[wfd2 h264 video format]
+video cea support=0x194ab
+
+video vesa support=0x5555555
+
+video hh support=0x555
+
+video profile=0x1
+
+video level=0x2
+
+video latency=0x0
+
+video vertical resolution=1080
+
+video horizontal resolution=1920
+
+video minimum slicesize=0
+
+video slice encoding params=200
+
+video framerate control support=0
+
+[wfd2 h265 video format]
+video cea support=394ab
+
+video vesa support=5555555
+
+video hh support=555
+
+; 0x1:WFD_H265_MAIN_PROFILE
+video profile=0x1
+
+; 0x1:WFD_H265_LEVEL_3_1
+video level=0x2
+
+video latency=0x0
+
+video vertical resolution=2360
+
+video horizontal resolution=3840
+
+video minimum slicesize=0
+
+video slice encoding params=200
+
+video framerate control support=0
+
+[wfd2 audio codecs]
+; 0x1: LPCM, 0x2: AAC, 0x4: AC3
+;default aac and LPCM
+audio codec=0x3
+
+;see mm_wfd_sink_wfd_enum.h
+audio lpcm mode=0x3
+
+audio aac mode=0x1
+
+audio ac3 mode=0x1
+
diff --git a/media-config-target-rpi3-spk/hal/etc/multimedia/mused.conf b/media-config-target-rpi3-spk/hal/etc/multimedia/mused.conf
new file mode 100644 (file)
index 0000000..38e07b8
--- /dev/null
@@ -0,0 +1,66 @@
+[muse]
+; The 'hosts' parameter defines the modules,
+; which the user would like to connect to the muse.
+; If you want to add host, then write manually.
+hosts=player, camera, recorder
+logfile=/var/log/mused/muse-server
+lockfile=/tmp/.muse_core.lock
+min_timeout=5
+max_timeout=90
+;100MB=100000
+memory_threshold=100000
+enable_watch_external_storage=1
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1=--gst-debug=*:2
+gstparam2=--gst-disable-segtrap
+gstparam3=
+gstparam4=
+gstparam5=
+gstparam6=
+gstparam7=
+gstparam8=
+gstparam9=
+gstparam10=
+
+; gstparam#=--gst-plugin-load=/usr/lib/gstreamer-1.0/libgstcoreelements.so'
+; can be substituted with gstpreload=coreelements'
+gstpreload=
+
+[player]
+; The 'player' parameter represents the muse-player.
+; This module recovers the "capi-media-player".
+path=libmuse-player.so
+preloaded=no
+timeout=60
+disable_watchdog_api=-1
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[camera]
+; The 'camera' parameter represents the muse-camera.
+; This module recovers the "capi-media-camera".
+path=libmuse-camera.so
+preloaded=no
+timeout=10
+;api 2 is camera_dispatcher_start_preview
+disable_watchdog_api=2
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[recorder]
+; The 'recorder' parameter represents the muse-recorder.
+; This module recovers the "capi-media-recorder".
+; This one should be paired with the 'camera' module.
+path=libmuse-recorder.so
+preloaded=no
+timeout=10
+;api 5 is recorder_start
+disable_watchdog_api=5
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
diff --git a/media-config-target-rpi3-spk/hal/etc/multimedia/scmirroring_src.ini b/media-config-target-rpi3-spk/hal/etc/multimedia/scmirroring_src.ini
new file mode 100644 (file)
index 0000000..68103c5
--- /dev/null
@@ -0,0 +1,114 @@
+
+[general]
+
+; set default video source element
+; 0: ximagesrc, 1: xvimagesrc, 2: camerasrc, 3: videotestsrc, 4:waylandsrc
+videosrc element = 4
+
+; set default video encoder element
+video encoder element = omxh264enc
+
+disable segtrap = yes ; same effect with --gst-disable-segtrap
+
+mtu_size value = 1400
+
+video converter element =
+
+; if yes. gstreamer will not update registry
+skip rescan = yes
+
+; set default audio encoder element
+audio encoder aac name = avenc_aac
+audio encoder ac3 name = avenc_ac3
+
+; set audio codec for source
+; according to GstWFDAudioFormat
+; 0x1: LPCM, 0x2: AAC, 0x4: AC3
+; default aac and LPCM
+audio codec = 0x3
+
+; set exynos audiosrc property
+; exynosaudio device name = alsa_output.0.analog-stereo.monitor
+exynosaudio device name = alsa_output.hw_0_0.monitor
+audio properties name = props,media.role=loopback-mirroring
+
+exynosaudio buffer_time = 200000
+; set qcmsm audiosrc property
+qcmsmaudio device name = hw:0,8
+qcmsmaudio buffer_time = 1000
+
+audio latency_time = 10000
+audio do_timestamp = 0
+
+; set video codec for source
+; according to GstWFDVideoFormat
+; 0x0: Not supportted, 0x1: H264
+; default H.264
+video codec = 0x1
+
+; Video Resolutions supported need to be filled in 32 bits according to WFD spec
+video resolution_supported = 0x00000001
+
+; Bitrate range for different resolutions
+; Resolution Set 1: default
+; Resolution Set 2: 1920 x 1080
+; Resolution Set 3: 1280 x 720
+; Resolution Set 4: 960 x 540
+; Resolution Set 5: 854 x 480
+; Resolution Set 6: 640 x 360
+; Resolution Set 7: 720 Remote Touch
+; UDP bitrate settings
+INIT_UDP_resolution_set_1 = 1048576
+MIN_UDP_resolution_set_1 = 838861
+MAX_UDP_resolution_set_1 = 1572864
+
+INIT_UDP_resolution_set_2 = 5242880
+MIN_UDP_resolution_set_2 = 3670016
+MAX_UDP_resolution_set_2 = 6291456
+
+INIT_UDP_resolution_set_3 = 2621440
+MIN_UDP_resolution_set_3 = 1572864
+MAX_UDP_resolution_set_3 = 3145728
+
+INIT_UDP_resolution_set_4 = 2621440
+MIN_UDP_resolution_set_4 = 1572864
+MAX_UDP_resolution_set_4 = 3145728
+
+INIT_UDP_resolution_set_5 = 838861
+MIN_UDP_resolution_set_5 = 314573
+MAX_UDP_resolution_set_5 = 1048576
+
+INIT_UDP_resolution_set_6 = 838861
+MIN_UDP_resolution_set_6 = 314573
+MAX_UDP_resolution_set_6 = 838861
+
+INIT_UDP_resolution_set_7 = 1572864
+MIN_UDP_resolution_set_7 = 838861
+MAX_UDP_resolution_set_7 = 1572864
+
+
+; Native resolution supported  CEA resolution=0, VESA resolution=1, HH resolution=2
+video native_resolution = 0
+
+; HDCP encryption
+encryption HDCP_enabled = 1
+
+; UIBC Capability
+uibc UIBC_GEN_capability = 15
+
+; parameters for initializing gstreamer
+gstparam1 =
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; generating dot file representing pipeline state
+generate dot = no
+
+; parameter for clock provide in audiosink
+provide clock = yes
+
+;dumping ts stream to file
+dump ts = 0
+
diff --git a/media-config-target-rpi3-spk/hal/etc/murphy/murphy.lua b/media-config-target-rpi3-spk/hal/etc/murphy/murphy.lua
new file mode 100644 (file)
index 0000000..9675961
--- /dev/null
@@ -0,0 +1,99 @@
+m = murphy.get()
+
+-- load the dlog plugin
+m:try_load_plugin('dlog')
+
+-- load the console plugin
+-- m:try_load_plugin('console')
+
+-- load the dbus plugin
+-- if m:plugin_exists('dbus') then
+--    m:load_plugin('dbus')
+-- end
+
+-- load the native resource plugin
+if m:plugin_exists('resource-native') then
+    m:load_plugin('resource-native')
+    m:info("native resource plugin loaded")
+else
+    m:info("No native resource plugin found...")
+end
+
+-- load the dbus resource plugin
+m:try_load_plugin('resource-dbus', {
+    dbus_bus = "system",
+    dbus_service = "org.Murphy",
+    dbus_track = true,
+    default_zone = "driver",
+    default_class = "implicit"
+})
+
+-- load the domain control plugin
+if m:plugin_exists('domain-control') then
+    m:load_plugin('domain-control')
+else
+    m:info("No domain-control plugin found...")
+end
+
+if m:plugin_exists('glib') then
+    m:load_plugin('glib')
+else
+    m:info("No glib plugin found...")
+end
+
+-- define application classes
+application_class {
+    name     = "interrupt",
+    priority = 99,
+    modal    = false,
+    share    = false,
+    order    = "fifo"
+}
+
+application_class {
+    name     = "media",
+    priority = 10,
+    modal    = false,
+    share    = false,
+    order    = "lifo"
+}
+
+-- define zone attributes
+zone.attributes {
+    type = {mdb.string, "common", "rw"},
+    location = {mdb.string, "anywhere", "rw"}
+}
+
+-- define zones
+zone {
+     name = "driver",
+     attributes = {
+         type = "common",
+         location = "front-left"
+     }
+}
+
+-- define resource classes
+resource.class {
+     name = "video_overlay",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_decoder",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_encoder",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "camera",
+     shareable = false,
+     sync_release = true
+}
diff --git a/media-config-target-rpi3-spk/hal/etc/profile.d/mmf.sh b/media-config-target-rpi3-spk/hal/etc/profile.d/mmf.sh
new file mode 100644 (file)
index 0000000..7dac276
--- /dev/null
@@ -0,0 +1,6 @@
+#!/bin/sh
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+export GST_DEBUG=2
+export ORC_CODE=debug
+export ORC_DEBUG=5
+export GST_PLUGIN_PATH=@HAL_LIBDIR@/gstreamer-1.0
diff --git a/media-config-target-rpi3-spk/hal/etc/pulse/client.conf b/media-config-target-rpi3-spk/hal/etc/pulse/client.conf
new file mode 100644 (file)
index 0000000..3637b20
--- /dev/null
@@ -0,0 +1,37 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for PulseAudio clients. See pulse-client.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+; default-sink =
+; default-source =
+default-server = /var/run/pulse/native
+; default-dbus-server =
+
+autospawn = no
+; daemon-binary = /usr/bin/pulseaudio
+; extra-arguments = --log-target=syslog
+
+; cookie-file =
+
+enable-shm = no
+shm-size-bytes = 4194304 # setting this 0 will use the system-default, usually 64 MiB
+
+; auto-connect-localhost = no
+; auto-connect-display = no
diff --git a/media-config-target-rpi3-spk/hal/etc/pulse/daemon.conf b/media-config-target-rpi3-spk/hal/etc/pulse/daemon.conf
new file mode 100644 (file)
index 0000000..431e66b
--- /dev/null
@@ -0,0 +1,83 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for the PulseAudio daemon. See pulse-daemon.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+daemonize = yes
+; fail = yes
+; allow-module-loading = yes
+; allow-exit = yes
+; use-pid-file = yes
+system-instance = yes
+; local-server-type = user
+; enable-shm = yes
+; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
+; lock-memory = no
+; cpu-limit = no
+
+; high-priority = yes
+; nice-level = -11
+
+realtime-scheduling = yes
+realtime-priority = 5
+
+; exit-idle-time = 20
+; scache-idle-time = 20
+
+; dl-search-path = (depends on architecture)
+
+; load-default-script-file = yes
+; default-script-file = /etc/pulse/default.pa
+
+log-target = dlog
+log-level = info
+; log-meta = no
+; log-time = no
+; log-backtrace = 0
+
+resample-method = speex-fixed-3
+; enable-remixing = yes
+; enable-lfe-remixing = no
+
+flat-volumes = no
+
+; rlimit-fsize = -1
+; rlimit-data = -1
+; rlimit-stack = -1
+; rlimit-core = -1
+; rlimit-as = -1
+; rlimit-rss = -1
+; rlimit-nproc = -1
+; rlimit-nofile = 256
+; rlimit-memlock = -1
+; rlimit-locks = -1
+; rlimit-sigpending = -1
+; rlimit-msgqueue = -1
+; rlimit-nice = 31
+; rlimit-rtprio = 9
+; rlimit-rttime = 1000000
+
+; default-sample-format = s16le
+; default-sample-rate = 44100
+alternate-sample-rate = 44100
+; default-sample-channels = 2
+; default-channel-map = front-left,front-right
+
+; default-fragments = 4
+; default-fragment-size-msec = 25
diff --git a/media-config-target-rpi3-spk/hal/etc/pulse/default.pa b/media-config-target-rpi3-spk/hal/etc/pulse/default.pa
new file mode 100644 (file)
index 0000000..ef8f114
--- /dev/null
@@ -0,0 +1,149 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started per-user
+# (i.e. not in system mode)
+
+.nofail
+
+### Load something into the sample cache
+#load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
+#load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-access /usr/share/sounds/generic.wav
+
+.fail
+
+### Automatically restore the volume of streams and devices
+load-module module-device-restore
+load-module module-stream-restore
+load-module module-card-restore
+
+### Automatically augment property information from .desktop files
+### stored in /usr/share/application
+load-module module-augment-properties
+
+### Load audio drivers statically
+### (it's probably better to not load these drivers manually, but instead
+### use module-udev-detect -- see below -- for doing this automatically)
+#load-module module-alsa-sink
+#load-module module-alsa-source device=hw:1,0
+#load-module module-null-sink
+#load-module module-pipe-sink
+
+### Automatically load driver modules depending on the hardware available
+.ifexists module-udev-detect.so
+load-module module-udev-detect
+.else
+### Use the static hardware detection module (for systems that lack udev support)
+load-module module-detect
+.endif
+
+### Automatically connect sink and source if JACK server is present
+.ifexists module-jackdbus-detect.so
+.nofail
+load-module module-jackdbus-detect channels=2
+.fail
+.endif
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Load several protocols
+.ifexists module-esound-protocol-unix.so
+load-module module-esound-protocol-unix
+.endif
+load-module module-native-protocol-unix
+
+### Network access (may be configured with paprefs, so leave this commented
+### here if you plan to use paprefs)
+#load-module module-esound-protocol-tcp
+#load-module module-native-protocol-tcp
+
+### Load the RTP receiver module (also configured via paprefs, see above)
+#load-module module-rtp-recv
+
+### Load the RTP sender module (also configured via paprefs, see above)
+#load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
+#load-module module-rtp-send source=rtp.monitor
+
+### Load additional modules from GConf settings. This can be configured with the paprefs tool.
+### Please keep in mind that the modules configured by paprefs might conflict with manually
+### loaded modules.
+.ifexists module-gconf.so
+.nofail
+load-module module-gconf
+.fail
+.endif
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Honour intended role device property
+load-module module-intended-roles
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle
+
+### If autoexit on idle is enabled we want to make sure we only quit
+### when no local session needs us anymore.
+.ifexists module-console-kit.so
+load-module module-console-kit
+.endif
+.ifexists module-systemd-login.so
+load-module module-systemd-login
+.endif
+
+### Enable positioned event sounds
+load-module module-position-event-sounds
+
+### Cork music/video streams when a phone stream is active
+load-module module-role-cork
+
+### Modules to allow autoloading of filters (such as echo cancellation)
+### on demand. module-filter-heuristics tries to determine what filters
+### make sense, and module-filter-apply does the heavy-lifting of
+### loading modules and rerouting streams.
+load-module module-filter-heuristics
+load-module module-filter-apply
+
+### Load DBus protocol
+.ifexists module-dbus-protocol.so
+load-module module-dbus-protocol
+.endif
+
+
+load-module module-switch-on-port-available
+
+### Make some devices default
+#set-default-sink output
+#set-default-source input
diff --git a/media-config-target-rpi3-spk/hal/etc/pulse/device-map.json b/media-config-target-rpi3-spk/hal/etc/pulse/device-map.json
new file mode 100644 (file)
index 0000000..d9d3499
--- /dev/null
@@ -0,0 +1,34 @@
+{
+       "device-types":[
+               {
+                       "device-type":"builtin-speaker",
+                       "playback-devices":{"normal":"alsa:ALSA,0"}
+               },
+               {
+                       "device-type":"builtin-mic",
+                       "capture-devices":{"normal":"alsa:seeed4micvoicec,0"}
+               },
+               {
+                       "device-type":"network",
+                       "playback-devices":{"acm":"acm"}
+               }
+       ],
+       "device-files":{
+               "playback-devices":[
+                       {
+                               "device-string":"alsa:ALSA,0",
+                               "role":{"normal":"mmap=0 tsched=0 rate=44100"}
+                       },
+                       {
+                               "device-string":"acm",
+                               "role":{"acm":"format=s16le rate=48000 channels=2 channel_map=left,right"}
+                       }
+               ],
+               "capture-devices":[
+                       {
+                               "device-string":"alsa:seeed4micvoicec,0",
+                               "role":{"normal":"mmap=0 tsched=0 rate=48000"}
+                       }
+               ]
+       }
+}
diff --git a/media-config-target-rpi3-spk/hal/etc/pulse/stream-map.json b/media-config-target-rpi3-spk/hal/etc/pulse/stream-map.json
new file mode 100644 (file)
index 0000000..e186c2c
--- /dev/null
@@ -0,0 +1,209 @@
+{
+       "latencies":[
+               {
+                       "type":"low",
+                       "fragsize-ms":25,
+                       "minreq-ms":-1,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"mid",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"high",
+                       "fragsize-ms":75,
+                       "minreq-ms":-1,
+                       "tlength-ms":400,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"voip",
+                       "fragsize-ms":20,
+                       "minreq-ms":20,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":-1,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default-async",
+                       "fragsize-ms":50,
+                       "minreq-ms":20,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+       ],
+       "volumes":[
+               {
+                       "type":"master",
+                       "is-hal-volume":1
+               },
+               {
+                       "type":"media",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"system",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"alarm",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"notification",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voice",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"ringtone",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voip",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"call",
+                       "is-hal-volume":1
+               }
+       ],
+       "streams":[
+               {
+                       "role":"media",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["usb-audio","builtin-mic"],
+                       "avail-out-devices":["network","bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"system",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"system"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"alarm",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"alarm"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["builtin-speaker","bt-a2dp","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"notification",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"notification"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["builtin-speaker","bt-a2dp","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"emergency",
+                       "priority" : 4,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-information",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"voice"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-recognition",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["usb-audio","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"voice-recognition-service",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["usb-audio","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"ringtone-voip",
+                       "priority" : 5,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","sound-manager"]
+               },
+               {
+                       "role":"ringtone-call",
+                       "priority" : 6,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voip",
+                       "priority" : 5,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"voip"},
+                       "avail-in-devices":["usb-audio","builtin-mic"],
+                       "avail-out-devices":["builtin-speaker","usb-audio"],
+                       "avail-frameworks":["audio-io","tone-player","sound-manager"]
+               },
+               {
+                       "role":"ext-media",
+                       "priority" : 3,
+                       "route-type" : "manual-ext",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["usb-audio"],
+                       "avail-out-devices":["bt-a2dp","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"network-source-media",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["audio-io"]
+               }
+       ]
+}
diff --git a/media-config-target-rpi3-spk/hal/etc/pulse/system.pa b/media-config-target-rpi3-spk/hal/etc/pulse/system.pa
new file mode 100644 (file)
index 0000000..72704a4
--- /dev/null
@@ -0,0 +1,74 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started in system
+# mode.
+
+### Automatically load driver modules depending on the hardware available
+### Load several protocols
+load-module module-native-protocol-unix auth-anonymous=1
+
+### Load module-tizenaudio-policy
+load-module module-tizenaudio-policy
+
+#.ifexists module-udev-detect.so
+load-module module-udev-detect
+#.endif
+
+### Sound Player module
+load-module module-sound-player
+load-module module-tone-player
+load-module module-role-ducking global=1 trigger_roles=solo/notification,voice-information ducking_roles=media,system,alarm,notification,voice-information,ext-media,network-source-media/media,ext-media,network-source-media volume=0%/25% fade_in=0/1000 fade_out=0/1000 skip_sinks=ACM_Sink
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+
+### Automatically restore the volume of streams and devices
+#load-module module-stream-restore
+#load-module module-device-restore
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+.ifexists module-dbus-protocol.so
+### If you want to allow TCP connections, set access to "remote" or "local,remote".
+load-module module-dbus-protocol access=local
+.endif
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+#load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle timeout=1
+
+load-sample camera-shutter-01 /usr/share/sounds/mm-camcorder/capture_shutter_01.ogg
+load-sample camera-shutter-02 /usr/share/sounds/mm-camcorder/capture_shutter_02.ogg
+load-sample recording-start /usr/share/sounds/mm-camcorder/recording_start_01.ogg
+load-sample recording-stop /usr/share/sounds/mm-camcorder/recording_stop_01.ogg
diff --git a/media-config-target-rpi3-spk/hal/etc/xdg/gstomx.conf b/media-config-target-rpi3-spk/hal/etc/xdg/gstomx.conf
new file mode 100644 (file)
index 0000000..7a92953
--- /dev/null
@@ -0,0 +1,84 @@
+[omxmpeg2videodec]
+type-name=GstOMXMPEG2VideoDec
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.video_decode
+rank=257
+in-port-index=130
+out-port-index=131
+hacks=no-component-role
+
+[omxmpeg4videodec]
+type-name=GstOMXMPEG4VideoDec
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.video_decode
+rank=257
+in-port-index=130
+out-port-index=131
+hacks=no-component-role
+
+[omxh263dec]
+type-name=GstOMXH263Dec
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.video_decode
+rank=257
+in-port-index=130
+out-port-index=131
+hacks=no-component-role
+
+[omxh264dec]
+type-name=GstOMXH264Dec
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.video_decode
+rank=257
+in-port-index=130
+out-port-index=131
+hacks=no-component-role
+
+[omxmjpegdec]
+type-name=GstOMXMJPEGDec
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.video_decode
+rank=257
+in-port-index=130
+out-port-index=131
+hacks=no-component-role
+
+[omxvc1dec]
+type-name=GstOMXWMVDec
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.video_decode
+rank=257
+in-port-index=130
+out-port-index=131
+hacks=no-component-role
+sink-template-caps=video/x-wmv,wmvversion=(int)3,format=(string){WMV3,WVC1},width=(int)[1,MAX],height=(int)[1,MAX]
+
+[omxh264enc]
+type-name=GstOMXH264Enc
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.video_encode
+rank=257
+in-port-index=200
+out-port-index=201
+hacks=no-component-role
+
+[omxanalogaudiosink]
+type-name=GstOMXAnalogAudioSink
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.audio_render
+rank=257
+in-port-index=100
+out-port-index=101
+hacks=no-component-role
+sink-template-caps=audio/x-raw,format=(string){S16LE,S32LE},layout=(string)interleaved,rate=(int){8000,11025,16000,22050,24000,32000,44100,48000,88200,96000,176400,192000},channels=(int)[1,2]
+
+[omxhdmiaudiosink]
+type-name=GstOMXHdmiAudioSink
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.audio_render
+rank=258
+in-port-index=100
+out-port-index=101
+hacks=no-component-role
+sink-template-caps=audio/x-raw,format=(string){S16LE,S32LE},layout=(string)interleaved,rate=(int){8000,11025,16000,22050,24000,32000,44100,48000,88200,96000,176400,192000},channels=(int)[1,8];audio/x-ac3,framed=(boolean)true;audio/x-dts,framed=(boolean)true,block-size=(int){512,1024,2048}
+
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf
new file mode 100644 (file)
index 0000000..db78eb4
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'Aux' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf
new file mode 100644 (file)
index 0000000..baf674a
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'FM' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-radio
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+.include analog-input.conf.common
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf
new file mode 100644 (file)
index 0000000..4be5722
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf
new file mode 100644 (file)
index 0000000..f7f3085
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic/Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf
new file mode 100644 (file)
index 0000000..2a36f2f
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+name = analog-input-microphone
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common
new file mode 100644 (file)
index 0000000..b35e7af
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common element for all microphone inputs
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Mic Select'
+
+[Element Mic Select]
+enumeration = select
+
+[Option Mic Select:Mic1]
+name = input-microphone
+priority = 20
+
+[Option Mic Select:Mic2]
+name = input-microphone
+priority = 19
+
+;;; Various Boosts
+
+[Element Mic Boost (+20dB)]
+switch = select
+volume = merge
+
+[Option Mic Boost (+20dB):on]
+name = input-boost-on
+
+[Option Mic Boost (+20dB):off]
+name = input-boost-off
+
+[Element Mic Boost]
+switch = select
+volume = merge
+
+[Option Mic Boost:on]
+name = input-boost-on
+
+[Option Mic Boost:off]
+name = input-boost-off
+
+[Element Front Mic Boost]
+switch = select
+
+[Option Front Mic Boost:on]
+name = input-boost-on
+
+[Option Front Mic Boost:off]
+name = input-boost-off
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf
new file mode 100644 (file)
index 0000000..8531ec7
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'TV Tuner' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-video
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf
new file mode 100644 (file)
index 0000000..74c76f0
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Video' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf
new file mode 100644 (file)
index 0000000..5055f90
--- /dev/null
@@ -0,0 +1,54 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; A fallback for devices that lack seperate Mic/Line/Aux/Video/TV
+; Tuner/FM elements
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Capture]
+required = volume
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required-absent = any
+
+[Element Line]
+required-absent = any
+
+[Element Aux]
+required-absent = any
+
+[Element Video]
+required-absent = any
+
+[Element Mic/Line]
+required-absent = any
+
+[Element TV Tuner]
+required-absent = any
+
+[Element FM]
+required-absent = any
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common
new file mode 100644 (file)
index 0000000..951e11f
--- /dev/null
@@ -0,0 +1,294 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Mixer path for PulseAudio's ALSA backend, common elements for all
+; input paths. If multiple options by the same id are discovered they
+; will be suffixed with a number to distuingish them, in the same
+; order they appear here.
+;
+; Source selection should use the following names:
+;
+;       input                       -- If we don't know the exact kind of input
+;       input-microphone
+;       input-microphone-internal
+;       input-microphone-external
+;       input-linein
+;       input-video
+;       input-radio
+;       input-docking-microphone
+;       input-docking-linein
+;       input-docking
+;
+;  We explicitly don't want to wrap the following sources:
+;
+;       CD
+;       Synth/MIDI
+;       Phone
+;       Mix
+;       Digital/SPDIF
+;       Master
+;       PC Speaker
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Input Source Select'
+
+[Element Input Source Select]
+enumeration = select
+
+[Option Input Source Select:Input1]
+name = input
+priority = 10
+
+[Option Input Source Select:Input2]
+name = input
+priority = 5
+
+;;; 'Input Source'
+
+[Element Input Source]
+enumeration = select
+
+[Option Input Source:Mic]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Microphone]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Front Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Front Microphone]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Internal Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Line]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line-In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Docking-Station]
+name = input-docking
+priority = 17
+
+[Option Input Source:AUX IN]
+name = input
+priority = 10
+
+;;; 'Capture Source'
+
+[Element Capture Source]
+enumeration = select
+
+[Option Capture Source:TV Tuner]
+name = input-video
+
+[Option Capture Source:FM]
+name = input-radio
+
+[Option Capture Source:Mic/Line]
+name = input
+
+[Option Capture Source:Line/Mic]
+name = input
+
+[Option Capture Source:Mic]
+name = input-microphone
+
+[Option Capture Source:Microphone]
+name = input-microphone
+
+[Option Capture Source:Int Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Int DMic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Mic]
+name = input-microphone-internal
+
+[Option Capture Source:iMic]
+name = input-microphone-internal
+
+[Option Capture Source:i-Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Microphone]
+name = input-microphone-internal
+
+[Option Capture Source:Front Mic]
+name = input-microphone
+
+[Option Capture Source:Front Microphone]
+name = input-microphone
+
+[Option Capture Source:Rear Mic]
+name = input-microphone
+
+[Option Capture Source:Mic1]
+name = input-microphone
+
+[Option Capture Source:Mic2]
+name = input-microphone
+
+[Option Capture Source:D-Mic]
+name = input-microphone
+
+[Option Capture Source:IntMic]
+name = input-microphone-internal
+
+[Option Capture Source:ExtMic]
+name = input-microphone-external
+
+[Option Capture Source:Ext Mic]
+name = input-microphone-external
+
+[Option Capture Source:E-Mic]
+name = input-microphone-external
+
+[Option Capture Source:e-Mic]
+name = input-microphone-external
+
+[Option Capture Source:LineIn]
+name = input-linein
+
+[Option Capture Source:Analog]
+name = input
+
+[Option Capture Source:Line]
+name = input-linein
+
+[Option Capture Source:Line-In]
+name = input-linein
+
+[Option Capture Source:Line In]
+name = input-linein
+
+[Option Capture Source:Video]
+name = input-video
+
+[Option Capture Source:Aux]
+name = input
+
+[Option Capture Source:Aux0]
+name = input
+
+[Option Capture Source:Aux1]
+name = input
+
+[Option Capture Source:Aux2]
+name = input
+
+[Option Capture Source:Aux3]
+name = input
+
+[Option Capture Source:AUX IN]
+name = input
+
+[Option Capture Source:Aux In]
+name = input
+
+[Option Capture Source:AOUT]
+name = input
+
+[Option Capture Source:AUX]
+name = input
+
+[Option Capture Source:Cam Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 1]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 2]
+name = input-microphone
+
+[Option Capture Source:Analog Inputs]
+name = input
+
+[Option Capture Source:Unknown1]
+name = input
+
+[Option Capture Source:Unknown2]
+name = input
+
+[Option Capture Source:Docking-Station]
+name = input-docking
+
+[Option Capture Source:Dock Mic]
+name = input-docking-microphone
+
+;;; 'Mic Jack Mode'
+
+[Element Mic Jack Mode]
+enumeration = select
+
+[Option Mic Jack Mode:Mic In]
+name = input-microphone
+
+[Option Mic Jack Mode:Line In]
+name = input-linein
+
+;;; 'Digital Input Source'
+
+[Element Digital Input Source]
+enumeration = select
+
+[Option Digital Input Source:Analog Inputs]
+name = input
+
+[Option Digital Input Source:Digital Mic 1]
+name = input-microphone
+
+[Option Digital Input Source:Digital Mic 2]
+name = input-microphone
+
+;;; Various Boosts
+
+[Element Capture Boost]
+switch = select
+
+[Option Capture Boost:on]
+name = input-boost-on
+
+[Option Capture Boost:off]
+name = input-boost-off
+
+[Element Auto Gain Control]
+switch = select
+
+[Option Auto Gain Control:on]
+name = input-agc-on
+
+[Option Auto Gain Control:off]
+name = input-agc-off
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf
new file mode 100644 (file)
index 0000000..f2fd31c
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone2' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 89
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the second headphones, not
+; the first headphones. But it should not hurt if we leave the
+; headphone jack enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf
new file mode 100644 (file)
index 0000000..2131cfe
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+[Element Headphone]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the first headphones, not
+; the second headphones. But it should not hurt if we leave the second
+; headphone jack enabled nonetheless.
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf
new file mode 100644 (file)
index 0000000..0a43e27
--- /dev/null
@@ -0,0 +1,85 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage in laptops that have a seperate LFE speaker
+; connected to the Master mono connector
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 40
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all-no-lfe
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf
new file mode 100644 (file)
index 0000000..542edc4
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage on boards that have a seperate Mono output plug.
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 50
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = off
+volume = off
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf
new file mode 100644 (file)
index 0000000..aea7853
--- /dev/null
@@ -0,0 +1,94 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Speaker' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = mute
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = mute
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = mute
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf
new file mode 100644 (file)
index 0000000..fc30800
--- /dev/null
@@ -0,0 +1,92 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for the 'default' output. Note that a-o-speaker.conf has a
+; higher priority than this
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 99
+
+[Element Hardware Master]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = ignore
+volume = ignore
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the default output, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = ignore
+volume = zero
+
+[Element Headphone2]
+switch = ignore
+volume = zero
+
+[Element Speaker]
+switch = ignore
+volume = off
+
+[Element Front]
+switch = ignore
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = ignore
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = ignore
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = ignore
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common
new file mode 100644 (file)
index 0000000..3204846
--- /dev/null
@@ -0,0 +1,128 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common part of all paths
+
+; So here's generally how mixer paths are used by PA: PA goes through
+; a mixer path file from top to bottom and checks if a mixer element
+; described therein exists. If so it is added to the list of mixer
+; elements PA will control, keeping the order it read them in. If a
+; mixer element described here has set the required= or
+; required-absent= directives a path might not be accepted as valid
+; and is ignored in its entirety (see below). However usually if a
+; element listed here is missing this one element is ignored but not
+; the entire path.
+;
+; When a device shall be muted/unmuted *all* elements listed in a path
+; file with "switch = mute" will be toggled.
+;
+; When a device shall change its volume, PA will got through the list
+; of all elements with "volume = merge" and set the volume on the
+; first element. If that element does not support dB volumes, this is
+; where the story ends. If it does support dB volumes, PA divides the
+; requested volume by the volume that was set on this element, and
+; then go on to the next element with "volume = merge" and then set
+; that there, and so on.  That way the first volume element in the
+; path will be the one that does the 'biggest' part of the overall
+; volume adjustment, with the remaining elements usually being set to
+; some value next to 0dB. This logic makes sure we get the full range
+; over all volume sliders and a very high granularity of volumes
+; already in hardware.
+;
+; All switches and enumerations set to "select" are exposed via the
+; "port" functionality of sinks/sources. Basically every possible
+; switch setting and every possible enumeration setting will be
+; combined and made into a "port". So make sure you don't list too
+; many switches/enums for exposing, because the number of ports might
+; rise exponentially.
+;
+; Only one path can be selected at a time. All paths that are valid
+; for an audio device will be exposed as "port" for the sink/source.
+
+
+; [General]
+; priority = ...                         # Priority for this path
+; description = ...
+;
+; [Option ...:...]                       # For each option of an enumeration or switch element
+;                                        # that shall be exposed as a sink/source port. Needs to
+;                                        # be named after the Element, followed by a colon, followed
+;                                        # by the option name, resp. on/off if the element is a switch.
+; name = ...                             # Logical name to use in the path identifier
+; priority = ...                         # Priority if this is made into a device port
+;
+; [Element ...]                          # For each element that we shall control
+; required = ignore | switch | volume | enumeration | any     # If set, require this element to be of this kind and available,
+;                                                             # otherwise don't consider this path valid for the card
+; required-absent = ignore | switch | volume                  # If set, require this element to not be of this kind and not
+;                                                             # available, otherwise don't consider this path valid for the card
+;
+; switch = ignore | mute | off | on | select                  # What to do with this switch: ignore it, make it follow mute status,
+;                                                             # always set it to off, always to on, or make it selectable as port.
+;                                                             # If set to 'select' you need to define an Option section for on
+;                                                             # and off
+; volume = ignore | merge | off | zero   # What to do with this volume: ignore it, merge it into the device
+;                                        # volume slider, always set it to the lowest value possible, or always
+;                                        # set it to 0 dB (for whatever that means)
+; enumeration = ignore | select          # What to do with this enumeration, ignore it or make it selectable
+;                                        # via device ports. If set to 'select' you need to define an Option section
+;                                        # for each of the items you want to expose
+; direction = playback | capture         # Is this relevant only for playback or capture? If not set this will implicitly be
+;                                        # set the direction of the PCM device is opened as. Generally this doesn't need to be set
+;                                        # unless you have a broken driver that has playback controls marked for capture or vice
+;                                        # versa
+; direction-try-other = no | yes         # If the element does not supported what is requested, try the other direction, too?
+;
+; override-map.1 = ...                   # Override the channel mask of the mixer control if the control only exposes a single channel
+; override-map.2 = ...                   # Override the channel masks of the mixer control if the control only exposes two channels
+;                                        # Override maps should list for each element channel which high-level channels it controls via a
+;                                        # channel mask. A channel mask may either be the name of a single channel, or the words "all-left",
+;                                        # "all-right", "all-center", "all-front", "all-rear", and "all" to encode a specific subset of
+;                                        # channels in a mask
+
+[Element PCM]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element External Amplifier]
+switch = select
+
+[Option External Amplifier:on]
+name = output-amplifier-on
+priority = 10
+
+[Option External Amplifier:off]
+name = output-amplifier-off
+priority = 0
+
+;;; 'Analog Output'
+
+[Element Analog Output]
+enumeration = select
+
+[Option Analog Output:Speakers]
+name = output-speaker
+priority = 10
+
+[Option Analog Output:Headphones]
+name = output-headphones
+priority = 9
+
+[Option Analog Output:FP Headphones]
+name = output-headphones
+priority = 8
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf
new file mode 100644 (file)
index 0000000..9838138
--- /dev/null
@@ -0,0 +1,144 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned. (and should be good enough for the vast majority of
+; cards).  Use the udev property PULSE_PROFILE_SET to assign a
+; different profile set than this one to a device.  So what is this
+; about? Simply, what we do here is map ALSA devices to how they are
+; exposed in PA. We say which ALSA device string to use to open a
+; device, which channel mapping to use then, and which mixer path to
+; use. This is encoded in a 'mapping'. Multiple of these mappings can
+; be bound together in a 'profile' which is then directly exposed in
+; the UI as a card profile. Each mapping assigned to a profile will
+; result in one sink/source to be created if the profile is selected
+; for the card.
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+
+[General]
+auto-profiles = yes
+
+[Mapping analog-mono]
+device-strings = hw:0
+channel-map = mono
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 1
+
+[Mapping analog-stereo]
+device-strings = front:%f hw:0
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 10
+
+[Mapping analog-surround-40]
+device-strings = surround40:%f
+channel-map = front-left,front-right,rear-left,rear-right
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-41]
+device-strings = surround41:%f
+channel-map = front-left,front-right,rear-left,rear-right,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-50]
+device-strings = surround50:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-51]
+device-strings = surround51:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-71]
+device-strings = surround71:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+description = Analog Surround 7.1
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping iec958-stereo]
+device-strings = iec958:%f
+channel-map = left,right
+priority = 5
+
+[Mapping iec958-surround-40]
+device-strings = iec958:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 1
+
+[Mapping iec958-ac3-surround-40]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 2
+direction = output
+
+[Mapping iec958-ac3-surround-51]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 3
+direction = output
+
+[Mapping hdmi-stereo]
+device-strings = hdmi:%f
+channel-map = left,right
+priority = 4
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf
new file mode 100644 (file)
index 0000000..2b83530
--- /dev/null
@@ -0,0 +1,91 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 4 DJ
+;
+; This card has two stereo pairs of input and two stereo pairs of
+; output, named channels A and B. Channel B has an additional
+; Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b-output]
+description = Analog Stereo Channel B (Headphones)
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-b-input]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b-output
+input-mappings = analog-stereo-a analog-stereo-b-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+input-mappings = analog-stereo-b-input
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+priority = 6
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b-input
+priority = 1
+skip-probe = yes
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf
new file mode 100644 (file)
index 0000000..3fe3cc5
--- /dev/null
@@ -0,0 +1,162 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 8 DJ
+;
+; This card has four stereo pairs of input and four stereo pairs of
+; output, named channels A to D. Channel C has an additional Mic/Line
+; connector, channel D an additional Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+
+# Since we want to set a different description for channel C's/D's input
+# and output we define two seperate mappings for them
+[Mapping analog-stereo-c-output]
+description = Analog Stereo Channel C
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-c-input]
+description = Analog Stereo Channel C (Line/Mic)
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = input
+
+[Mapping analog-stereo-d-output]
+description = Analog Stereo Channel D (Headphones)
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-d-input]
+description = Analog Stereo Channel D
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B, C (Line/Mic), D (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-input analog-stereo-d-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-c]
+description = Analog Stereo Channel D (Headphones) Output, Channel C (Line/Mic) Input
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-c-input
+priority = 90
+skip-probe = yes
+
+[Profile output:analog-stereo-c-d+input:analog-stereo-c-d]
+description = Analog Stereo Duplex Channels C (Line/Mic), D (Line/Mic)
+output-mappings = analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-c-input analog-stereo-d-input
+priority = 80
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B
+output-mappings = analog-stereo-b
+input-mappings = analog-stereo-b
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-c+input:analog-stereo-c]
+description = Analog Stereo Duplex Channel C (Line/Mic)
+output-mappings = analog-stereo-c-output
+input-mappings = analog-stereo-c-input
+priority = 60
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-d]
+description = Analog Stereo Duplex Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-d-input
+priority = 70
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 6
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B
+output-mappings = analog-stereo-b
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-c]
+description = Analog Stereo Output Channel C
+output-mappings = analog-stereo-c-output
+priority = 7
+skip-probe = yes
+
+[Profile output:analog-stereo-d]
+description = Analog Stereo Output Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+priority = 8
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b
+priority = 1
+skip-probe = yes
+
+[Profile input:analog-stereo-c]
+description = Analog Stereo Input Channel C (Line/Mic)
+input-mappings = analog-stereo-c-input
+priority = 4
+skip-probe = yes
+
+[Profile input:analog-stereo-d]
+description = Analog Stereo Input Channel D
+input-mappings = analog-stereo-d-input
+priority = 3
+skip-probe = yes
diff --git a/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf b/media-config-target-rpi3-spk/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf
new file mode 100644 (file)
index 0000000..6a8d08b
--- /dev/null
@@ -0,0 +1,127 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned (and should be good enough for the vast majority of
+; cards). If you want to assign a different profile set than this one
+; to a device, either set the udev property PULSE_PROFILE_SET for the
+; card, or use the "profile_set" module argument when loading
+; module-alsa-card.
+;
+; So what is this about? Simply, what we do here is map ALSA devices
+; to how they are exposed in PA. We say which ALSA device string to
+; use to open a device, which channel mapping to use then, and which
+; mixer path to use. This is encoded in a 'mapping'. Multiple of these
+; mappings can be bound together in a 'profile' which is then directly
+; exposed in the UI as a card profile. Each mapping assigned to a
+; profile will result in one sink/source to be created if the profile
+; is selected for the card.
+;
+; Additionally, the path set configuration files can describe the
+; decibel values assigned to the steps of the volume elements. This
+; can be used to work around situations when the alsa driver doesn't
+; provide any decibel information, or when the information is
+; incorrect.
+
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+;
+; [DecibelFix element]                      # Decibel fixes can be used to work around missing or incorrect dB
+;                                           # information from alsa. A decibel fix is a table that maps volume steps
+;                                           # to decibel values for one volume element. The "element" part in the
+;                                           # section title is the name of the volume element.
+;                                           #
+;                                           # NOTE: This feature is meant just as a help for figuring out the correct
+;                                           # decibel values. PulseAudio is not the correct place to maintain the
+;                                           # decibel mappings!
+;                                           #
+;                                           # If you need this feature, then you should make sure that when you have
+;                                           # the correct values figured out, the alsa driver developers get informed
+;                                           # too, so that they can fix the driver.
+;
+; db-values = ...                           # The option value consists of pairs of step numbers and decibel values.
+;                                           # The pairs are separated with whitespace, and steps are separated from
+;                                           # the corresponding decibel values with a colon. The values must be in an
+;                                           # increasing order. Here's an example of a valid string:
+;                                           #
+;                                           #     "0:-40.50  1:-38.70  3:-33.00  11:0"
+;                                           #
+;                                           # The lowest step imposes a lower limit for hardware volume and the
+;                                           # highest step correspondingly imposes a higher limit. That means that
+;                                           # that the mixer will never be set outside those values - the rest of the
+;                                           # volume scale is done using software volume.
+;                                           #
+;                                           # As can be seen in the example, you don't need to specify a dB value for
+;                                           # each step. The dB values for skipped steps will be linearly interpolated
+;                                           # using the nearest steps that are given.
+
+[General]
+auto-profiles = yes
+
+[Mapping analog-mono]
+device-strings = hw:%f
+channel-map = mono
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 1
+
+[Mapping usb-analog-stereo]
+device-strings = hw:%f
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 10
+
+[Mapping usb-analog-surround-51]
+device-strings = hw:%f
+;channel-map = front-left,front-right,front-center,lfe,rear-left,rear-right
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-lfe-on-mono
+priority = 180
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-rpi3.manifest b/media-config-target-rpi3.manifest
new file mode 100644 (file)
index 0000000..a76fdba
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+       <request>
+               <domain name="_" />
+       </request>
+</manifest>
diff --git a/media-config-target-rpi3/hal/etc/asound.conf b/media-config-target-rpi3/hal/etc/asound.conf
new file mode 100644 (file)
index 0000000..dc87ead
--- /dev/null
@@ -0,0 +1,16 @@
+# default sound configuration
+
+pcm. !default {
+       type hw
+       card ALSA
+}
+
+ctl. !default {
+       type hw
+       card ALSA
+}
+
+ctl. bcm2835 {
+       type hw
+       card ALSA
+}
diff --git a/media-config-target-rpi3/hal/etc/inference/inference_engine.ini b/media-config-target-rpi3/hal/etc/inference/inference_engine.ini
new file mode 100644 (file)
index 0000000..54eddf2
--- /dev/null
@@ -0,0 +1,3 @@
+[inference backend]
+;/*OPENCV=0, Tensorflow-lite=1
+supported backend types = 0,1
diff --git a/media-config-target-rpi3/hal/etc/multimedia/mmfw_audio_pcm_dump.ini b/media-config-target-rpi3/hal/etc/multimedia/mmfw_audio_pcm_dump.ini
new file mode 100644 (file)
index 0000000..6e13b68
--- /dev/null
@@ -0,0 +1,8 @@
+[pcm_dump]
+;playback
+pa_sink = 0
+pa_sink_input = 0
+
+;capture
+pa_source = 0
+pa_source_output = 0
diff --git a/media-config-target-rpi3/hal/etc/multimedia/mmfw_audio_volume.ini b/media-config-target-rpi3/hal/etc/multimedia/mmfw_audio_volume.ini
new file mode 100644 (file)
index 0000000..ae7e635
--- /dev/null
@@ -0,0 +1,19 @@
+[volumes]
+system                         = 0, 72, 73, 74, 75, 76, 77, 78, 80, 81, 82, 84, 86, 88, 90, 94
+notification                   = 0, 68, 70, 72, 73, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 97
+alarm                          = 0, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 92
+ringtone                       = 0, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 92
+media                          = 0, 46, 50, 53, 58, 62, 68, 72, 76, 80, 84, 87, 90, 93, 96, 100
+call                           = 60, 65, 70, 76, 82, 88, 94, 100
+voip                           = 60, 65, 70, 76, 82, 88, 94, 100
+voice                          = 0, 55, 58, 61, 64, 67, 70, 75, 78, 82, 86, 89, 91, 94, 97, 100
+gain_dialer                    = 1.00
+gain_touch                     = 1.00
+gain_af                        = 0.70
+gain_shutter1                  = 0.14
+gain_shutter2                  = 1.00
+gain_camcording                = 0.30
+gain_midi                      = 1.00
+gain_booting                   = 0.40
+gain_video                     = 0.90
+gain_tts                       = 1.00
diff --git a/media-config-target-rpi3/hal/etc/multimedia/mmfw_camcorder.ini b/media-config-target-rpi3/hal/etc/multimedia/mmfw_camcorder.ini
new file mode 100644 (file)
index 0000000..0d139a2
--- /dev/null
@@ -0,0 +1,103 @@
+; < Camera/Camcorder Configure Main INI file >
+;
+; - Header List -
+; 1.  General
+; 2.  VideoInput
+; 3.  AudioInput
+; 4.  VideoOutput
+; 5.  Capture
+; 6.  Record
+; 7.  VideoEncoder
+; 8.  AudioEncoder
+; 9.  ImageEncoder
+; 10. Mux
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryMain"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[General]
+SyncStateChange = 1
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap || NOT-USE-DEFAULT_VALUE
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap --gst-debug=3 || NOT-USE-DEFAULT_VALUE
+ModelName = GT-TIZEN
+;DisabledAttributes = camera-optical-zoom camera-af-touch-x camera-af-touch-y camera-exposure-value camera-f-number camera-shutter-speed camera-hold-af-after-capturing filter-flip filter-hue display-src-x display-src-y display-src-width display-src-height tag-image-description strobe-control strobe-capabilities strobe-mode detect-mode detect-number detect-focus-select detect-select-number detect-status || NO_DEFAULT_VALUE
+
+[VideoInput]
+VideosrcElement = v4l2src | 1,0 | do-timestamp,1
+UseVideoscale = 1
+VideoscaleElement = videoscale | 3,0 | width,320 | height,240 | method,1
+UseZeroCopyFormat = 0
+DeviceCount = 1
+SupportMediaPacketPreviewCb = 1
+
+[AudioInput]
+AudioDevice = 0,1 || 0
+AudiosrcElement = pulsesrc | 1,0 | do-timestamp,1
+AudiomodemsrcElement = pulsesrc | 1,0 | do-timestamp,1
+
+[VideoOutput]
+; DisplayDevice
+;;; 0: MAIN LCD, 1: SUB LCD, 2:TV OUT, 3: MAIN LCD and SUB LCD, 4: MAIN LCD and TV OUT
+DisplayDevice = 0 || 0
+; DisplayMode
+;;; 0: Default, 1: Pri Video ON and Sec Video Full-Screen, 2: Pri Video OFF and Sec Video Full-Screen
+DisplayMode = 0,1,2 || 0
+; Videosink
+;;; 0: Overlay surface, 1: Evas surface, 2: GL surface, 3: NULL surface, 4: Remote
+Videosink = 0,3,4 || 3
+VideosinkElementOverlay = tizenwlsink | 7,0 | draw-borders,0 | force-aspect-ratio,1 | enable-last-sample,0 | qos,0 | sync,0 | show-preroll-frame,0 | use-tbm,0
+VideosinkElementRemote = shmsink | 5,0 | wait-for-connection,0 | perms,511 | enable-last-sample,0 | qos,0 | sync,0
+VideosinkElementNull = fakesink | 4,0 | qos,0 | sync,0 | enable-last-sample,0 | show-preroll-frame,0
+UseVideoconvert = 1
+VideoconvertElement = videoconvert | 0,0
+
+[VideoEncoder]
+MPEG4 = avenc_mpeg4 | 0,0
+
+[AudioEncoder]
+AMR = amrnbenc | 0,0
+AAC = avenc_aac | 1,0 | compliance,-2
+WAVE = wavenc | 0,0
+
+[ImageEncoder]
+JPEG = jpegenc | 0,0
+;PNG = pngenc | 0,0
+
+[Capture]
+UseEncodebin = 1
+UseCaptureMode = 0
+VideoscaleElement = videoscale | 1,0 | method,1
+
+[Record]
+UseAudioEncoderQueue = 1
+UseVideoEncoderQueue = 0
+VideoProfile = 0
+VideoAutoAudioConvert = 1
+VideoAutoAudioResample = 0
+VideoAutoColorSpace = 1
+AudioProfile = 1
+AudioAutoAudioConvert = 1
+AudioAutoAudioResample = 0
+AudioAutoColorSpace = 0
+ImageProfile = 2
+ImageAutoAudioConvert = 0
+ImageAutoAudioResample = 0
+ImageAutoColorSpace = 1
+RecordsinkElement = filesink | 1,0 | async,0
+UseNoiseSuppressor = 0
+DropVideoFrame = 0
+PassFirstVideoFrame = 0
+
+[Mux]
+3GP = 3gppmux | 0,0
+AMR = avmux_amr | 0,0
+MP4 = mp4mux | 0,0
+AVI = avimux | 0,0
+MATROSKA = matroskamux | 0,0
+WAV = wavenc | 0,0
+AAC = avmux_adts | 0,0
+M2TS = mpegtsmux | 0,0
+
diff --git a/media-config-target-rpi3/hal/etc/multimedia/mmfw_camcorder_camera0.ini b/media-config-target-rpi3/hal/etc/multimedia/mmfw_camcorder_camera0.ini
new file mode 100644 (file)
index 0000000..dea154c
--- /dev/null
@@ -0,0 +1,208 @@
+; < Camera/Camcorder Configure Control INI file >
+;
+; - Header List -
+; 1.  Camera
+; 2.  Strobe
+; 3.  Effect
+; 4.  Photograph
+; 5.  Capture
+; 6.  Detect
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryControl"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[Camera]
+; Input index - real setting value
+;;; 0:PRIMARY_CAMERA, 1:SECONDARY_CAMERA
+; Input index - MSL value(convert array index)
+;;; -1:NONE, 0:CAMERA0, 1:CAMERA1
+InputIndex = 0,-255 || 0
+DeviceName = USB_CAMERA
+PreviewResolution = 320,240 | 640,480 || 640,480
+CaptureResolution = 320,240 | 640,480 || 640,480
+VideoResolution = 320,240 | 640,480 || 640,480
+FPS0 = 0,15,30 || 15
+FPS1 = 0,15,30 || 15
+; PictureForamt - MSL value
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+PictureFormat = 7 || 7
+Overlay = 0,1 || 1
+; Recommend display rotation
+;;; 0:NONE, 1:90, 2:180, 3:270
+RecommendDisplayRotation = 0
+; Recommend preview format for capture
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatCapture = 7
+; Recommend preview format for record
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatRecord = 7
+; Recommend preview resolution
+;;; 0: NORMAL ratio(4:3), 1: WIDE ratio(16:9), 2: SQUARE ratio(1:1)
+RecommendPreviewResolution = 640,480 | 640,480 | 640,480 || 640,480
+; Camera facing direction
+;;; 0:REAR, 1:FRONT
+FacingDirection = 0
+FrameStabilityCount = 1
+
+
+[Strobe]
+;StrobeControl - Not support
+;StrobeCapabilities - Not support
+; Strobe mode - real setting value
+;;; N/A
+; Strobe mode - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:REDEYE_REDUCTION, 4:SLOW_SYNC, 5:FRONT_CURTAIN, 6:REAR_CURTAIN, 7:PERMANENT
+StrobeMode = 0,-255,-255,-255,-255,-255,-255,-255 || 0
+;StrobeStatus - Not support
+;StrobeEV - Not support
+
+
+[Effect]
+Brightness = 0,8 || 4
+;Contrast = 1,7 || 4
+;Saturation = 0,4 || 2
+;Sharpness = 0,4 || 2
+
+; White balance - real setting value
+;;; 0:AUTO, 1:DAYLIGHT, 2:CLOUDY, 3:TUNGSTEN, 4:FLUORESCENT
+; White balance - MSL value(convert array index)
+;;; 0:NONE, 1:AUTO, 2:DAYLIGHT, 3:CLOUDY, 4:FLUORESCENT, 5:INCANDESCENT, 6:SHADE, 7:HORIZON, 8:FLASH, 9:CUSTOM
+WhiteBalance = -255,0,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Color tone - real setting value
+;;; 1:NONE, 2:MONO, 3:SEPIA, 4:AQUA, 5:ANTIQUE, 6:NEGATIVE, 7:SHARPEN, 8:SKETCH, 9:WASHED, 10:VINTAGE_WARM
+;;; 11:VINTAGE_COLD, 12:SOLARIZE, 13:POSTERIZE, 14:POINT_BLUE, 15:POINT_RED_YELLOW, 16:POINT_COLOR_3, 17:POINT_GREEN, 18:POINT_RED, 19:POINT_YELLOW, 20:CARTOONIZE
+; Color tone - MSL value(convert array index)
+;;; 0:NONE, 1:MONO, 2:SEPIA, 3:NEGATIVE, 4:BLUE, 5:GREEN, 6:AQUA, 7:VIOLET, 8:ORANGE, 9:GRAY, 10:RED,
+;;; 11:ANTIQUE, 12:WARM, 13:PINK, 14:YELLOW, 15:PURPLE, 16:EMBOSS, 17:OUTLINE, 18:SOLARIZATION, 19:SKETCH, 20:WASHED,
+;;; 21:VINTAGE_WARM, 22:VINTAGE_COLD, 23:POSTERIZATION, 24:CARTOON, 25:SELECTIVE_RED, 26:SELECTIVE_GREEN, 27:SELECTIVE_BLUE, 28:SELECTIVE_YELLOW, 29:SELECTIVE_RED_YELLOW
+ColorTone = 1,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 1
+; Flip - real setting value
+;;; 0:NONE, 1:VERTICAL, 2:HORIZONTAL
+; Flip - MSL value(convert array index)
+;;; 0:HORIZONTAL, 1:VERTICAL, 2:NONE
+;Flip = 2,1,0 || 0
+
+; Wide Dynamic Range - real setting value
+;;; 0:OFF, 1:ON
+; Wide Dynamic Range - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO
+WDR = 0,-255,-255 || 0
+
+; Part color mode - real setting value
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+; Part color mode - MSL value(convert array index)
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+;PartColorMode = 0,1,2 || 0
+
+; Part color - real setting value
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+; Part color - MSL value(convert array index)
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT_BLUE, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+;PartColor = 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 || 0
+
+
+[Photograph]
+;LensInit = 0,1 || 0
+;DigitalZoom = 0,10 || 0
+;OpticalZoom = 0,0 || 0
+
+; Focus mode - real setting value
+;;; 0:AUTO, 1:MANUAL, 2:PAN, 3:TOUCH_AUTO, 4:CONTINUOUS
+; Focus mode - MSL value(convert array index)
+;;; 0:NONE, 1:PAN, 2:AUTO, 3:MANUAL, 4:TOUCH_AUTO, 5:CONTINUOUS
+FocusMode = 0,-255,-255,-255,-255,-255 || 0
+
+; Auto focus type - real setting value
+;;; 0:NORMAL, 1:MACRO, 2:FULL
+; Auto focus - MSL value(convert array index)
+;;; 0:NONE, 1:NORMAL, 2:MACRO, 3:FULL
+AFType = 0,-255,-255,-255 || 0
+
+; Auto exposure type - real setting value
+;;; 0:BASE, 1:MATRIX, 2:CENTER, 3:SPOT, 4:MAX
+; Auto exposure mode - MSL value(convert array index)
+;;; 0,OFF 1,ALL 2,CENTER1  3,CENTER2 4,CENTER3 5,SPOT1 6,SPOT2 7,CUSTOM1 8,CUSTOM2
+AEType = -255,0,-255,-255,-255,-255,-255,-255,-255 || 0
+
+;ExposureValue - Not support
+;FNumber - Not support
+;ShutterSpeed - Not support
+
+; ISO - real setting value
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600
+; ISO - MSL value(convert array index)
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600, 7:3200
+ISO = 0,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Program mode - real setting value
+;;; 1:NONE, 2:PORTRAIT, 3:NIGHTSHOT, 4:BACK_LIGHT, 5:LANDSCAPE, 6:SPORTS, 7:PARTY_INDOOR, 8:BEACH_SNOW, 9:SUNSET, 10:DUSK_DAWN,
+;;; 11:FALL_COLOR, 12:FIREWORKS, 13:TEXT, 14:CANDLE_LIGHT
+; Program mode - MSL value(convert array index)
+;;; 0:NORMAL, 1:PORTRAIT, 2:LANDSCAPE, 3:SPORTS, 4:PARTY_N_INDOOR, 5:BEACH_N_INDOOR, 6:SUNSET, 7:DUSK_N_DAWN, 8:FALL_COLOR, 9:NIGHT_SCENE,
+;;; 10:FIREWORK, 11:TEXT, 12:SHOW_WINDOW, 13:CANDLE_LIGHT, 14:BACKLIGHT
+ProgramMode = 0,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Anti-handshake - real setting value
+;;; 0:OFF, 1:ON
+; Anti-handshake - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:MOVIE_ON
+AntiHandshake = 0,-255,-255,-255 || 0
+
+; Video-stabilization - real setting value
+;;; 0:OFF, 1:ON
+; Video-stabilization - MSL value(convert array index)
+;;; 0:OFF, 1:ON
+VideoStabilization = 0 || 0
+
+; Face zoom mode
+;;; 0:OFF, 1:ON
+FaceZoomMode = 0 || 0
+; Face zoom level
+FaceZoomLevel = 0,0 || 0
+
+; PTZ(Pan Tilt Zoom) type
+;;; 0:Mechanical, 1:Electronic
+;PtzType = 0,1 || 1
+
+; Pan range for mechanical movement
+;PanMecha = -10,10
+
+; Pan range for electronic movement
+;PanElec = -10,10
+
+; Tilt range for mechanical movement
+;TiltMecha = -10,10
+
+; Tilt range for electronic movement
+;TiltElec = -10,10
+
+
+[Capture]
+; Output mode
+;;; No need to convert
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY
+OutputMode = 7,13 || 13
+JpegQuality = 0,100 || 90
+MultishotNumber = 1,1 || 1
+SensorEncodedCapture = 0
+; Support HDR
+;;; 0: OFF, 1: ON, 2: ON and Original
+SupportHDR = 0,-255,-255 || 0
+FrameStabilityCount = 2
+
+
+[Detect]
+; Detect mode
+;;; 0:OFF, 1:ON
+DetectMode = 0,-255 || 0
+;DetectNumber - Not support
+;DetectFocusSelect - Not support
+;DetectSelectNumber - Not support
+;DetectStatus - Not support
+
diff --git a/media-config-target-rpi3/hal/etc/multimedia/mmfw_media_codec.ini b/media-config-target-rpi3/hal/etc/multimedia/mmfw_media_codec.ini
new file mode 100644 (file)
index 0000000..9f2a5dd
--- /dev/null
@@ -0,0 +1,89 @@
+[h261]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = , ,
+sw_encoder = , ,
+
+[h263]
+hw_decoder = omxdec_h263, video/x-h263, NV12
+hw_encoder = omxenc_h263, video/x-raw,  H263
+sw_decoder = avdec_h263,   video/x-h263, I420
+sw_encoder = avenc_h263,   video/x-raw,  H263
+
+[h264]
+hw_decoder = omxdec_h264, video/x-h264, NV12
+hw_encoder = omxenc_h264, video/x-raw,  H264_SP
+sw_decoder = avdec_h264,   video/x-h264, I420
+sw_encoder = avenc_h264,   video/x-raw,  H264_SP
+
+[mpeg4]
+hw_decoder = omxdec_mpeg4, video/mpeg, NV12
+hw_encoder = omxenc_mpeg4, video/x-raw,  MPEG4_SP
+sw_decoder = avdec_mpeg4,   video/mpeg, I420
+sw_encoder = avenc_mpeg4,   video/x-raw,  MPEG4_SP
+
+[aac_lc]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = avenc_aac,   audio/x-raw, AAC_LC
+
+[aac_he]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[aac_he_ps]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[mp3]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_mp3,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[amr_nb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrnb,   audio/AMR, PCM_F32LE
+sw_encoder = amrnbenc, audio/x-raw, AMR_NB
+
+[amr_wb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrwb,   audio/AMR-WB, PCM_F32LE
+sw_encoder = , ,
+
+[vorbis]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = vorbisdec,   audio/x-vorbis, PCM_F32LE
+sw_encoder = , ,
+
+[flac]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_flac,   audio/x-flac, PCM_F32LE
+sw_encoder = , ,
+
+[wmav1]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav1,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmav2]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav2,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmapro]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmapro,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
diff --git a/media-config-target-rpi3/hal/etc/multimedia/mmfw_media_streamer.ini b/media-config-target-rpi3/hal/etc/multimedia/mmfw_media_streamer.ini
new file mode 100644 (file)
index 0000000..527ab99
--- /dev/null
@@ -0,0 +1,124 @@
+[general]
+; generating dot file representing pipeline state
+generate dot = no
+dot dir =
+
+; decodebin will be used instead of decoder node
+use decodebin = yes
+
+; comma separated list of element names which
+; will not be used in autoplug mode
+exclude elements = v4l2video,v4l2h264,v4l2mpeg4,omx,sprd
+
+; comma separated list of element names which
+; will require resources in autoplug mode
+resource elements = omx,sprd
+
+; comma separated list of arguments
+; that will pass to gst_init
+gstreamer arguments = --gst-debug=2
+
+
+;MEDIA_STREAMER_NODE_TYPE_SRC
+[node type 1]
+audio capture = pulsesrc
+video capture = waylandsrc
+camera = v4l2src
+
+;MEDIA_STREAMER_NODE_TYPE_SINK
+[node type 2]
+audio = pulsesink
+overlay = tizenwlsink
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_ENCODER
+[node type 3]
+video/x-h263 = avenc_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DECODER
+[node type 4]
+video/x-h263 = avdec_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_ENCODER
+[node type 5]
+audio/AMR = amrnbenc
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DECODER
+[node type 6]
+audio/AMR = amrnbdec
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_CONVERTER
+[node type 7]
+video/x-raw = videoconvert
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_CONVERTER
+[node type 8]
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_RESAMPLE
+[node type 9]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_PAY
+[node type 10]
+video/x-h263 = rtph263pay
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_PAY
+[node type 11]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DEPAY
+[node type 12]
+video/x-h263 = rtph263depay
+video/x-h264 = rtph264depay
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DEPAY
+[node type 13]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_RATE
+[node type 14]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_SCALE
+[node type 15]
+
+;MEDIA_STREAMER_NODE_TYPE_TEXT_OVERLAY
+[node type 16]
+text/x-raw = textoverlay
+
+;MEDIA_STREAMER_NODE_TYPE_PARSER
+[node type 17]
+video/x-h263 = h263parse
+video/x-h264 = h264parse
+
+;MEDIA_STREAMER_NODE_TYPE_FILTER
+[node type 18]
+
+;MEDIA_STREAMER_NODE_TYPE_TEE
+[node type 19]
+
+;MEDIA_STREAMER_NODE_TYPE_QUEUE
+[node type 20]
+
+;MEDIA_STREAMER_NODE_TYPE_MQUEUE
+[node type 21]
+
+;MEDIA_STREAMER_NODE_TYPE_MUXER
+[node type 22]
+
+;MEDIA_STREAMER_NODE_TYPE_DEMUXER
+[node type 23]
+
+;MEDIA_STREAMER_NODE_TYPE_RTP
+[node type 24]
+
+;MEDIA_STREAMER_NODE_TYPE_INPUT_SELECTOR
+[node type 25]
+
+;MEDIA_STREAMER_NODE_TYPE_OUTPUT_SELECTOR
+[node type 26]
+
+;MEDIA_STREAMER_NODE_TYPE_INTERLEAVE
+[node type 27]
+
+;MEDIA_STREAMER_NODE_TYPE_DEINTERLEAVE
+[node type 28]
+
diff --git a/media-config-target-rpi3/hal/etc/multimedia/mmfw_player.ini b/media-config-target-rpi3/hal/etc/multimedia/mmfw_player.ini
new file mode 100644 (file)
index 0000000..dfbe5e6
--- /dev/null
@@ -0,0 +1,102 @@
+[general]
+
+disable segtrap = yes ; same effect with --gst-disable-segtrap
+
+; set default videosink element according to video surface type(X, EVAS, NULL)
+videosink element overlay = tizenwlsink
+videosink element fake = fakesink
+video converter element =
+
+; decoder element keyword for resource management.
+video codec element hw = v4l2
+video codec element sw = avdec
+video codec default type = hw ; hw or sw
+
+audio codec element hw =
+audio codec element sw = avdec
+audio codec default type = sw ; hw or sw
+
+; support with HW audio codec
+support audio effect = no
+support pcm exporting = no
+support pitch control = no
+support replaygain control = no
+
+audiosink element = pulsesink
+
+; audio offload information
+audio offload sink element =
+audio offload device type =    ; builtin-speaker,bt-a2dp,audio-jack,usb-audio from pulse stream-map
+audio offload media format =   ; Use the format keyword of media_format_mimetype_e, MAX:10
+
+; supported input format of external media source stream
+; Use the format keyword of media_format_mimetype_e, MAX:10
+media stream input format = AAC,H264_SP,H264_MP,H264_HP
+
+; if yes. gstreamer will not update registry
+skip rescan = yes
+delay before repeat = 50 ; msec
+
+; comma separated list of tocken which elemnts has it in it's name will not be used
+; this works if 'use decodebin = yes'
+element exclude keyword = omx
+
+; comma separated list of tocken
+; this works if 'use decodebin = yes'
+unsupported codec keyword = divx
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1 = --gst-debug=*:2
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; generating dot file representing pipeline state
+; DEFAULT MUST BE 'no'. If 'yes', mmplayer will set env-variable for it's session as "export GST_DEBUG_DUMP_DOT_DIR=/tmp/"
+generate dot = no
+
+; parameter is for only video to be determined
+; which clock will be used
+; if yes, system clock will be used
+; apart from this, audiosink is clock provider for audio
+use system clock = yes
+
+; allowed timeout for changing pipeline state
+live state change timeout = 30 ; sec
+localplayback state change timeout = 10 ; sec
+
+; delay in msec for sending EOS
+eos delay = 0 ; msec
+
+; extracted pcm buffer size
+pcm buffer size = 51200 ; 50Kbytes
+
+; max num of bo for sw codec
+video bo max = 10
+
+; video bo timeout (sec)
+video bo timeout = 10
+
+; setup pipeline with decodebin2
+use decodebin = no
+
+[http streaming]
+
+httpsrc element = souphttpsrc
+
+http buffering limit = 99.0 ; percent
+
+; if yes, use file for buffering.
+; if no, use memory for buffering.
+http use file buffer = no
+
+; ring buffer size when use mem buffer
+http ring buffer size = 20971520 ; 20MBytes
+
+http max size bytes = 1048576 ; bytes
+
+http buffering time = 1.2
+
+http timeout = 30 ; sec
diff --git a/media-config-target-rpi3/hal/etc/multimedia/mmfw_player_audio_effect.ini b/media-config-target-rpi3/hal/etc/multimedia/mmfw_player_audio_effect.ini
new file mode 100644 (file)
index 0000000..1394608
--- /dev/null
@@ -0,0 +1,17 @@
+[audio effect]
+; name of audio effect element
+audio effect element = audioeq
+
+; preset audio effect setting
+audio effect preset = no
+
+; custom audio effect setting (EQ/extension)
+audio effect custom = yes
+audio effect custom list = 0
+
+audio effect custom eq band num = 7 ; number of EQ bands
+audio effect custom eq band width = 33, 90, 242, 649, 1743, 4676, 12544 ; list of each EQ band width (Hz)
+audio effect custom eq band freq = 36, 98, 265, 711, 1907, 5117, 13727 ; list of each EQ band central frequency (Hz)
+
+audio effect custom min list = -12 ; list of minimum level value (the first element is for EQ, others for extension effect)
+audio effect custom max list = 12 ; list of maximum level value (the first element is for EQ, others for extension effect)
diff --git a/media-config-target-rpi3/hal/etc/multimedia/mmfw_resource_manager.ini b/media-config-target-rpi3/hal/etc/multimedia/mmfw_resource_manager.ini
new file mode 100644 (file)
index 0000000..082f297
--- /dev/null
@@ -0,0 +1,9 @@
+[max volume]
+video_overlay = -1
+video_decoder = -1
+video_encoder = -1
+camera = -1
+
+[priority]
+media = 10
+interrupt = 99
diff --git a/media-config-target-rpi3/hal/etc/multimedia/mmfw_streamrecorder.ini b/media-config-target-rpi3/hal/etc/multimedia/mmfw_streamrecorder.ini
new file mode 100644 (file)
index 0000000..7c12c66
--- /dev/null
@@ -0,0 +1,81 @@
+[general]
+;is encsink source is live
+encscink source is live = 0
+
+retrialcount = 10
+
+minimum frame = 5
+
+reset pause time = 0
+
+screen record = 1
+
+convert output buffer num = 6
+
+hw encoder supported = 0 ; 1 if supported and 'video codec element hw' should be formed.
+
+video codec element hw = ; sprd (if verified) or verified hw codec element
+
+[encodebin]
+;MM_STREAMRECORDER_ENCBIN_PROFILE_VIDEO = 0 MM_STREAMRECORDER_ENCBIN_PROFILE_AUDIO = 1
+;MM_STREAMRECORDER_ENCBIN_PROFILE_IMAGE = 2 MM_STREAMRECORDER_ENCBIN_PROFILE_NUM = 3
+encsink bin profile = 0
+
+encsink bin auto audio resample = 0
+
+encsink bin auto colorspace = 1
+
+encsink bin auto audio convert = 1
+
+encsink bin use video toggle = 0
+
+[pipeline]
+encsink bin source = appsrc
+
+name of audio src = pulsesrc
+
+h264 encoder =
+
+h263 encoder = avenc_h263p
+
+mpeg4 encoder = avenc_mpeg4
+
+name of audio encoder = avenc_aac
+
+use parser  =
+
+name of 3GP muxer = gppmux
+
+name of MP4 muxer = mp4mux
+
+name of video converter = videoconvert
+
+name of sink = filesink
+
+[video param]
+;/*ms*/
+video frame wait time = 200000
+
+[audio param]
+audio frame minimum space = 102400
+
+audio frame wait time = 20000
+
+[attribute]
+supported height = 1080,720,480,240,288,144
+
+supported width = 1920,1280,640,320,352,176
+
+;/*AMR, AAC, VORBIS ,PCM*/
+supported audio encoders = AMR,AAC,PCM
+
+;/* H263 , H264 , MPEG4 */
+supported video encoders = H263,MPEG4
+
+;/*3GP , AMR, MP4 , WAV, ADTS*/
+supported file formats = 3GP,MP4,AMR,ADTS,WAV
+
+[debug]
+; generating dot file representing pipeline state
+; do export GST_DEBUG_DUMP_DOT_DIR=/tmp/ in the shell (also do export to '/etc/profile.d/mmf.sh')
+generate dot = no
diff --git a/media-config-target-rpi3/hal/etc/multimedia/mmfw_wfd_sink.ini b/media-config-target-rpi3/hal/etc/multimedia/mmfw_wfd_sink.ini
new file mode 100644 (file)
index 0000000..9981dec
--- /dev/null
@@ -0,0 +1,231 @@
+[general]
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=2,*wfd*:5)
+gstparam1 = --gst-debug=2,*wfd*:5,*wfdtsdemux:1,*wfdrtpbuffer:1
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; allowed timeout for changing pipeline state
+state change timeout = 5; sec
+
+; 0: default value set by wfdrtspsrc element, other: user define value.
+jitter buffer latency=10
+
+; for retransmission request enable = yes, disable = no
+enable retransmission = no
+
+; for reset basetime, enable = yes, disable = no
+enable reset basetime = yes
+
+; Maximum number of nanoseconds that a buffer can be late before it is dropped by videosink (-1 unlimited)
+video sink max lateness=20000000
+
+; nanoseconds to be added to buffertimestamp by sink elements
+sink ts offset=250000000
+
+; if no, go asynchronously to PAUSED without preroll
+audio sink async=no
+
+; if no, go asynchronously to PAUSED without preroll
+video sink async=no
+
+; user agent
+user agent =
+
+[debug]
+; generating dot file representing pipeline state
+; do export GST_DEBUG_DUMP_DOT_DIR=/tmp/ in the shell
+generate dot = no
+
+; set property to wfdsrc plugin for dumping rtsp message
+dump rtsp message = yes
+
+; enable tracing buffers using pad probe
+trace buffers = no
+
+; enable tracing first buffer
+trace first buffer = no
+
+; enable tracing buffers of wfdsrc
+trace buffers of wfdsrc = no
+
+; enable dumping ts data (eg. /var/tmp/*.ts)
+dump ts data = no
+
+; enable dumping rtp data (eg. /var/tmp/screenmirroring_sink_rtp.dump)
+dump rtp data = no
+
+
+[pipeline]
+wfdsrc element = wfdsrc
+
+tsdemux element = wfdtsdemux
+
+audio hdcp element =
+
+aac parser element = aacparse
+
+aac decoder element = avdec_aac
+
+ac3 parser element = ac3parse
+
+ac3 decoder element =
+
+lpcm converter element =
+
+lpcm filter element = capsfilter
+
+audio resampler element = audioconvert
+
+audio volume element =
+
+audio sinkbin queue element = ;queue
+
+audio sink element = pulsesink
+
+video hdcp element =
+
+video h264 parser element = h264parse
+
+video h265 parser element =
+
+video h264 decoder element = avdec_h264
+
+video h265 decoder element =
+
+video converter element = videoconvert
+
+video filter element =
+
+video sink element = tizenwlsink
+
+video evas sink element = evaspixmapsink
+
+
+[wfd audio codecs]
+; 0x1: LPCM, 0x2: AAC, 0x4: AC3
+;default aac and LPCM
+audio codec=0x3
+
+audio latency=0x0
+
+;0x1 : 48000khz, 0x2: 44100khz
+audio sampling frequency=0x3
+
+; 0x1:2 channels, 0x2:4 channels, 0x4:6channels, 0x8:8channels
+audio channels=0x1
+
+
+[wfd video formats]
+; 0x0:not support, 0x1:H264
+video codec=0x1
+
+; 0x0:not supoort, 0x1: CHP, 0x2:CBP
+video profile=0x1
+
+video native resolution = 0x20
+
+video cea support=0x84ab;0x194ab
+
+video vesa support=0x1;0x5555555
+
+video hh support=0x555
+
+; 0x1:base, 0x2:high
+video profile=0x1
+
+; 0x1:level_3_1, 0x2:level_3_2, 0x4:level_4, 0x8:level_4_1, 0x10:level_4_2
+video level=0x2
+
+video latency=0x0
+
+video vertical resolution=720
+
+video horizontal resolution=1280
+
+video minimum slicesize=0
+
+video slice encoding params=200
+
+video framerate control support=11
+
+
+[wfd hdcp content protection]
+enable hdcp = no
+
+;0x0:none, 0x1:HDCP_2.0, 0x2:HDCP_2.1
+hdcp content protection=0x0
+
+hdcp port no=0
+
+
+[wfd2 video formats]
+;0x0:not support, 0x1:H264, 0x2:H265, 0x3:both
+video codec=0x3
+
+video native resolution = 0x20
+
+video non transcoding support=1
+
+[wfd2 h264 video format]
+video cea support=0x194ab
+
+video vesa support=0x5555555
+
+video hh support=0x555
+
+video profile=0x1
+
+video level=0x2
+
+video latency=0x0
+
+video vertical resolution=1080
+
+video horizontal resolution=1920
+
+video minimum slicesize=0
+
+video slice encoding params=200
+
+video framerate control support=0
+
+[wfd2 h265 video format]
+video cea support=394ab
+
+video vesa support=5555555
+
+video hh support=555
+
+; 0x1:WFD_H265_MAIN_PROFILE
+video profile=0x1
+
+; 0x1:WFD_H265_LEVEL_3_1
+video level=0x2
+
+video latency=0x0
+
+video vertical resolution=2360
+
+video horizontal resolution=3840
+
+video minimum slicesize=0
+
+video slice encoding params=200
+
+video framerate control support=0
+
+[wfd2 audio codecs]
+; 0x1: LPCM, 0x2: AAC, 0x4: AC3
+;default aac and LPCM
+audio codec=0x3
+
+;see mm_wfd_sink_wfd_enum.h
+audio lpcm mode=0x3
+
+audio aac mode=0x1
+
+audio ac3 mode=0x1
+
diff --git a/media-config-target-rpi3/hal/etc/multimedia/mused.conf b/media-config-target-rpi3/hal/etc/multimedia/mused.conf
new file mode 100644 (file)
index 0000000..38e07b8
--- /dev/null
@@ -0,0 +1,66 @@
+[muse]
+; The 'hosts' parameter defines the modules,
+; which the user would like to connect to the muse.
+; If you want to add host, then write manually.
+hosts=player, camera, recorder
+logfile=/var/log/mused/muse-server
+lockfile=/tmp/.muse_core.lock
+min_timeout=5
+max_timeout=90
+;100MB=100000
+memory_threshold=100000
+enable_watch_external_storage=1
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1=--gst-debug=*:2
+gstparam2=--gst-disable-segtrap
+gstparam3=
+gstparam4=
+gstparam5=
+gstparam6=
+gstparam7=
+gstparam8=
+gstparam9=
+gstparam10=
+
+; gstparam#=--gst-plugin-load=/usr/lib/gstreamer-1.0/libgstcoreelements.so'
+; can be substituted with gstpreload=coreelements'
+gstpreload=
+
+[player]
+; The 'player' parameter represents the muse-player.
+; This module recovers the "capi-media-player".
+path=libmuse-player.so
+preloaded=no
+timeout=60
+disable_watchdog_api=-1
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[camera]
+; The 'camera' parameter represents the muse-camera.
+; This module recovers the "capi-media-camera".
+path=libmuse-camera.so
+preloaded=no
+timeout=10
+;api 2 is camera_dispatcher_start_preview
+disable_watchdog_api=2
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[recorder]
+; The 'recorder' parameter represents the muse-recorder.
+; This module recovers the "capi-media-recorder".
+; This one should be paired with the 'camera' module.
+path=libmuse-recorder.so
+preloaded=no
+timeout=10
+;api 5 is recorder_start
+disable_watchdog_api=5
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
diff --git a/media-config-target-rpi3/hal/etc/multimedia/scmirroring_src.ini b/media-config-target-rpi3/hal/etc/multimedia/scmirroring_src.ini
new file mode 100644 (file)
index 0000000..68103c5
--- /dev/null
@@ -0,0 +1,114 @@
+
+[general]
+
+; set default video source element
+; 0: ximagesrc, 1: xvimagesrc, 2: camerasrc, 3: videotestsrc, 4:waylandsrc
+videosrc element = 4
+
+; set default video encoder element
+video encoder element = omxh264enc
+
+disable segtrap = yes ; same effect with --gst-disable-segtrap
+
+mtu_size value = 1400
+
+video converter element =
+
+; if yes. gstreamer will not update registry
+skip rescan = yes
+
+; set default audio encoder element
+audio encoder aac name = avenc_aac
+audio encoder ac3 name = avenc_ac3
+
+; set audio codec for source
+; according to GstWFDAudioFormat
+; 0x1: LPCM, 0x2: AAC, 0x4: AC3
+; default aac and LPCM
+audio codec = 0x3
+
+; set exynos audiosrc property
+; exynosaudio device name = alsa_output.0.analog-stereo.monitor
+exynosaudio device name = alsa_output.hw_0_0.monitor
+audio properties name = props,media.role=loopback-mirroring
+
+exynosaudio buffer_time = 200000
+; set qcmsm audiosrc property
+qcmsmaudio device name = hw:0,8
+qcmsmaudio buffer_time = 1000
+
+audio latency_time = 10000
+audio do_timestamp = 0
+
+; set video codec for source
+; according to GstWFDVideoFormat
+; 0x0: Not supportted, 0x1: H264
+; default H.264
+video codec = 0x1
+
+; Video Resolutions supported need to be filled in 32 bits according to WFD spec
+video resolution_supported = 0x00000001
+
+; Bitrate range for different resolutions
+; Resolution Set 1: default
+; Resolution Set 2: 1920 x 1080
+; Resolution Set 3: 1280 x 720
+; Resolution Set 4: 960 x 540
+; Resolution Set 5: 854 x 480
+; Resolution Set 6: 640 x 360
+; Resolution Set 7: 720 Remote Touch
+; UDP bitrate settings
+INIT_UDP_resolution_set_1 = 1048576
+MIN_UDP_resolution_set_1 = 838861
+MAX_UDP_resolution_set_1 = 1572864
+
+INIT_UDP_resolution_set_2 = 5242880
+MIN_UDP_resolution_set_2 = 3670016
+MAX_UDP_resolution_set_2 = 6291456
+
+INIT_UDP_resolution_set_3 = 2621440
+MIN_UDP_resolution_set_3 = 1572864
+MAX_UDP_resolution_set_3 = 3145728
+
+INIT_UDP_resolution_set_4 = 2621440
+MIN_UDP_resolution_set_4 = 1572864
+MAX_UDP_resolution_set_4 = 3145728
+
+INIT_UDP_resolution_set_5 = 838861
+MIN_UDP_resolution_set_5 = 314573
+MAX_UDP_resolution_set_5 = 1048576
+
+INIT_UDP_resolution_set_6 = 838861
+MIN_UDP_resolution_set_6 = 314573
+MAX_UDP_resolution_set_6 = 838861
+
+INIT_UDP_resolution_set_7 = 1572864
+MIN_UDP_resolution_set_7 = 838861
+MAX_UDP_resolution_set_7 = 1572864
+
+
+; Native resolution supported  CEA resolution=0, VESA resolution=1, HH resolution=2
+video native_resolution = 0
+
+; HDCP encryption
+encryption HDCP_enabled = 1
+
+; UIBC Capability
+uibc UIBC_GEN_capability = 15
+
+; parameters for initializing gstreamer
+gstparam1 =
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; generating dot file representing pipeline state
+generate dot = no
+
+; parameter for clock provide in audiosink
+provide clock = yes
+
+;dumping ts stream to file
+dump ts = 0
+
diff --git a/media-config-target-rpi3/hal/etc/murphy/murphy.lua b/media-config-target-rpi3/hal/etc/murphy/murphy.lua
new file mode 100644 (file)
index 0000000..9675961
--- /dev/null
@@ -0,0 +1,99 @@
+m = murphy.get()
+
+-- load the dlog plugin
+m:try_load_plugin('dlog')
+
+-- load the console plugin
+-- m:try_load_plugin('console')
+
+-- load the dbus plugin
+-- if m:plugin_exists('dbus') then
+--    m:load_plugin('dbus')
+-- end
+
+-- load the native resource plugin
+if m:plugin_exists('resource-native') then
+    m:load_plugin('resource-native')
+    m:info("native resource plugin loaded")
+else
+    m:info("No native resource plugin found...")
+end
+
+-- load the dbus resource plugin
+m:try_load_plugin('resource-dbus', {
+    dbus_bus = "system",
+    dbus_service = "org.Murphy",
+    dbus_track = true,
+    default_zone = "driver",
+    default_class = "implicit"
+})
+
+-- load the domain control plugin
+if m:plugin_exists('domain-control') then
+    m:load_plugin('domain-control')
+else
+    m:info("No domain-control plugin found...")
+end
+
+if m:plugin_exists('glib') then
+    m:load_plugin('glib')
+else
+    m:info("No glib plugin found...")
+end
+
+-- define application classes
+application_class {
+    name     = "interrupt",
+    priority = 99,
+    modal    = false,
+    share    = false,
+    order    = "fifo"
+}
+
+application_class {
+    name     = "media",
+    priority = 10,
+    modal    = false,
+    share    = false,
+    order    = "lifo"
+}
+
+-- define zone attributes
+zone.attributes {
+    type = {mdb.string, "common", "rw"},
+    location = {mdb.string, "anywhere", "rw"}
+}
+
+-- define zones
+zone {
+     name = "driver",
+     attributes = {
+         type = "common",
+         location = "front-left"
+     }
+}
+
+-- define resource classes
+resource.class {
+     name = "video_overlay",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_decoder",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_encoder",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "camera",
+     shareable = false,
+     sync_release = true
+}
diff --git a/media-config-target-rpi3/hal/etc/profile.d/mmf.sh b/media-config-target-rpi3/hal/etc/profile.d/mmf.sh
new file mode 100644 (file)
index 0000000..7dac276
--- /dev/null
@@ -0,0 +1,6 @@
+#!/bin/sh
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+export GST_DEBUG=2
+export ORC_CODE=debug
+export ORC_DEBUG=5
+export GST_PLUGIN_PATH=@HAL_LIBDIR@/gstreamer-1.0
diff --git a/media-config-target-rpi3/hal/etc/pulse/client.conf b/media-config-target-rpi3/hal/etc/pulse/client.conf
new file mode 100644 (file)
index 0000000..3637b20
--- /dev/null
@@ -0,0 +1,37 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for PulseAudio clients. See pulse-client.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+; default-sink =
+; default-source =
+default-server = /var/run/pulse/native
+; default-dbus-server =
+
+autospawn = no
+; daemon-binary = /usr/bin/pulseaudio
+; extra-arguments = --log-target=syslog
+
+; cookie-file =
+
+enable-shm = no
+shm-size-bytes = 4194304 # setting this 0 will use the system-default, usually 64 MiB
+
+; auto-connect-localhost = no
+; auto-connect-display = no
diff --git a/media-config-target-rpi3/hal/etc/pulse/daemon.conf b/media-config-target-rpi3/hal/etc/pulse/daemon.conf
new file mode 100644 (file)
index 0000000..431e66b
--- /dev/null
@@ -0,0 +1,83 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for the PulseAudio daemon. See pulse-daemon.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+daemonize = yes
+; fail = yes
+; allow-module-loading = yes
+; allow-exit = yes
+; use-pid-file = yes
+system-instance = yes
+; local-server-type = user
+; enable-shm = yes
+; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
+; lock-memory = no
+; cpu-limit = no
+
+; high-priority = yes
+; nice-level = -11
+
+realtime-scheduling = yes
+realtime-priority = 5
+
+; exit-idle-time = 20
+; scache-idle-time = 20
+
+; dl-search-path = (depends on architecture)
+
+; load-default-script-file = yes
+; default-script-file = /etc/pulse/default.pa
+
+log-target = dlog
+log-level = info
+; log-meta = no
+; log-time = no
+; log-backtrace = 0
+
+resample-method = speex-fixed-3
+; enable-remixing = yes
+; enable-lfe-remixing = no
+
+flat-volumes = no
+
+; rlimit-fsize = -1
+; rlimit-data = -1
+; rlimit-stack = -1
+; rlimit-core = -1
+; rlimit-as = -1
+; rlimit-rss = -1
+; rlimit-nproc = -1
+; rlimit-nofile = 256
+; rlimit-memlock = -1
+; rlimit-locks = -1
+; rlimit-sigpending = -1
+; rlimit-msgqueue = -1
+; rlimit-nice = 31
+; rlimit-rtprio = 9
+; rlimit-rttime = 1000000
+
+; default-sample-format = s16le
+; default-sample-rate = 44100
+alternate-sample-rate = 44100
+; default-sample-channels = 2
+; default-channel-map = front-left,front-right
+
+; default-fragments = 4
+; default-fragment-size-msec = 25
diff --git a/media-config-target-rpi3/hal/etc/pulse/default.pa b/media-config-target-rpi3/hal/etc/pulse/default.pa
new file mode 100644 (file)
index 0000000..ef8f114
--- /dev/null
@@ -0,0 +1,149 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started per-user
+# (i.e. not in system mode)
+
+.nofail
+
+### Load something into the sample cache
+#load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
+#load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-access /usr/share/sounds/generic.wav
+
+.fail
+
+### Automatically restore the volume of streams and devices
+load-module module-device-restore
+load-module module-stream-restore
+load-module module-card-restore
+
+### Automatically augment property information from .desktop files
+### stored in /usr/share/application
+load-module module-augment-properties
+
+### Load audio drivers statically
+### (it's probably better to not load these drivers manually, but instead
+### use module-udev-detect -- see below -- for doing this automatically)
+#load-module module-alsa-sink
+#load-module module-alsa-source device=hw:1,0
+#load-module module-null-sink
+#load-module module-pipe-sink
+
+### Automatically load driver modules depending on the hardware available
+.ifexists module-udev-detect.so
+load-module module-udev-detect
+.else
+### Use the static hardware detection module (for systems that lack udev support)
+load-module module-detect
+.endif
+
+### Automatically connect sink and source if JACK server is present
+.ifexists module-jackdbus-detect.so
+.nofail
+load-module module-jackdbus-detect channels=2
+.fail
+.endif
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Load several protocols
+.ifexists module-esound-protocol-unix.so
+load-module module-esound-protocol-unix
+.endif
+load-module module-native-protocol-unix
+
+### Network access (may be configured with paprefs, so leave this commented
+### here if you plan to use paprefs)
+#load-module module-esound-protocol-tcp
+#load-module module-native-protocol-tcp
+
+### Load the RTP receiver module (also configured via paprefs, see above)
+#load-module module-rtp-recv
+
+### Load the RTP sender module (also configured via paprefs, see above)
+#load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
+#load-module module-rtp-send source=rtp.monitor
+
+### Load additional modules from GConf settings. This can be configured with the paprefs tool.
+### Please keep in mind that the modules configured by paprefs might conflict with manually
+### loaded modules.
+.ifexists module-gconf.so
+.nofail
+load-module module-gconf
+.fail
+.endif
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Honour intended role device property
+load-module module-intended-roles
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle
+
+### If autoexit on idle is enabled we want to make sure we only quit
+### when no local session needs us anymore.
+.ifexists module-console-kit.so
+load-module module-console-kit
+.endif
+.ifexists module-systemd-login.so
+load-module module-systemd-login
+.endif
+
+### Enable positioned event sounds
+load-module module-position-event-sounds
+
+### Cork music/video streams when a phone stream is active
+load-module module-role-cork
+
+### Modules to allow autoloading of filters (such as echo cancellation)
+### on demand. module-filter-heuristics tries to determine what filters
+### make sense, and module-filter-apply does the heavy-lifting of
+### loading modules and rerouting streams.
+load-module module-filter-heuristics
+load-module module-filter-apply
+
+### Load DBus protocol
+.ifexists module-dbus-protocol.so
+load-module module-dbus-protocol
+.endif
+
+
+load-module module-switch-on-port-available
+
+### Make some devices default
+#set-default-sink output
+#set-default-source input
diff --git a/media-config-target-rpi3/hal/etc/pulse/device-map.json b/media-config-target-rpi3/hal/etc/pulse/device-map.json
new file mode 100644 (file)
index 0000000..fe3f3a4
--- /dev/null
@@ -0,0 +1,16 @@
+{
+       "device-types":[
+               {
+                       "device-type":"builtin-speaker",
+                       "playback-devices":{"normal":"alsa:ALSA,0"}
+               }
+       ],
+       "device-files":{
+               "playback-devices":[
+                       {
+                               "device-string":"alsa:ALSA,0",
+                               "role":{"normal":"mmap=0 tsched=0 rate=44100"}
+                       }
+               ]
+       }
+}
diff --git a/media-config-target-rpi3/hal/etc/pulse/stream-map.json b/media-config-target-rpi3/hal/etc/pulse/stream-map.json
new file mode 100644 (file)
index 0000000..e06d929
--- /dev/null
@@ -0,0 +1,191 @@
+{
+       "latencies":[
+               {
+                       "type":"low",
+                       "fragsize-ms":25,
+                       "minreq-ms":-1,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"mid",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"high",
+                       "fragsize-ms":75,
+                       "minreq-ms":-1,
+                       "tlength-ms":400,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"voip",
+                       "fragsize-ms":20,
+                       "minreq-ms":20,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":-1,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default-async",
+                       "fragsize-ms":50,
+                       "minreq-ms":20,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+       ],
+       "volumes":[
+               {
+                       "type":"master",
+                       "is-hal-volume":1
+               },
+               {
+                       "type":"media",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"system",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"alarm",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"notification",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voice",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"ringtone",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voip",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"call",
+                       "is-hal-volume":1
+               }
+       ],
+       "streams":[
+               {
+                       "role":"media",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["usb-audio","network"],
+                       "avail-out-devices":["bt-a2dp","usb-audio","network","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"system",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"system"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"alarm",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"alarm"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["builtin-speaker","bt-a2dp","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"notification",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"notification"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["builtin-speaker","bt-a2dp","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"emergency",
+                       "priority" : 4,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-information",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"voice"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-recognition",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["usb-audio"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"voice-recognition-service",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["usb-audio"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"ringtone-voip",
+                       "priority" : 5,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","sound-manager"]
+               },
+               {
+                       "role":"voip",
+                       "priority" : 5,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"voip"},
+                       "avail-in-devices":["usb-audio"],
+                       "avail-out-devices":["builtin-speaker","usb-audio"],
+                       "avail-frameworks":["audio-io","tone-player","sound-manager"]
+               },
+               {
+                       "role":"ext-media",
+                       "priority" : 3,
+                       "route-type" : "manual-ext",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["usb-audio","network"],
+                       "avail-out-devices":["bt-a2dp","usb-audio","network"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+       ]
+}
diff --git a/media-config-target-rpi3/hal/etc/pulse/system.pa b/media-config-target-rpi3/hal/etc/pulse/system.pa
new file mode 100644 (file)
index 0000000..1cbca96
--- /dev/null
@@ -0,0 +1,74 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started in system
+# mode.
+
+### Automatically load driver modules depending on the hardware available
+### Load several protocols
+load-module module-native-protocol-unix auth-anonymous=1
+
+### Load module-tizenaudio-policy
+load-module module-tizenaudio-policy
+
+#.ifexists module-udev-detect.so
+load-module module-udev-detect
+#.endif
+
+### Sound Player module
+load-module module-sound-player
+load-module module-tone-player
+load-module module-role-ducking global=1 trigger_roles=solo/notification,voice-information ducking_roles=media,system,alarm,notification,voice-information,ext-media/media,ext-media volume=0%/25% fade_in=0/1000 fade_out=0/1000
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+
+### Automatically restore the volume of streams and devices
+#load-module module-stream-restore
+#load-module module-device-restore
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+.ifexists module-dbus-protocol.so
+### If you want to allow TCP connections, set access to "remote" or "local,remote".
+load-module module-dbus-protocol access=local
+.endif
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+#load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle timeout=1
+
+load-sample camera-shutter-01 /usr/share/sounds/mm-camcorder/capture_shutter_01.ogg
+load-sample camera-shutter-02 /usr/share/sounds/mm-camcorder/capture_shutter_02.ogg
+load-sample recording-start /usr/share/sounds/mm-camcorder/recording_start_01.ogg
+load-sample recording-stop /usr/share/sounds/mm-camcorder/recording_stop_01.ogg
diff --git a/media-config-target-rpi3/hal/etc/xdg/gstomx.conf b/media-config-target-rpi3/hal/etc/xdg/gstomx.conf
new file mode 100644 (file)
index 0000000..7a92953
--- /dev/null
@@ -0,0 +1,84 @@
+[omxmpeg2videodec]
+type-name=GstOMXMPEG2VideoDec
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.video_decode
+rank=257
+in-port-index=130
+out-port-index=131
+hacks=no-component-role
+
+[omxmpeg4videodec]
+type-name=GstOMXMPEG4VideoDec
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.video_decode
+rank=257
+in-port-index=130
+out-port-index=131
+hacks=no-component-role
+
+[omxh263dec]
+type-name=GstOMXH263Dec
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.video_decode
+rank=257
+in-port-index=130
+out-port-index=131
+hacks=no-component-role
+
+[omxh264dec]
+type-name=GstOMXH264Dec
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.video_decode
+rank=257
+in-port-index=130
+out-port-index=131
+hacks=no-component-role
+
+[omxmjpegdec]
+type-name=GstOMXMJPEGDec
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.video_decode
+rank=257
+in-port-index=130
+out-port-index=131
+hacks=no-component-role
+
+[omxvc1dec]
+type-name=GstOMXWMVDec
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.video_decode
+rank=257
+in-port-index=130
+out-port-index=131
+hacks=no-component-role
+sink-template-caps=video/x-wmv,wmvversion=(int)3,format=(string){WMV3,WVC1},width=(int)[1,MAX],height=(int)[1,MAX]
+
+[omxh264enc]
+type-name=GstOMXH264Enc
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.video_encode
+rank=257
+in-port-index=200
+out-port-index=201
+hacks=no-component-role
+
+[omxanalogaudiosink]
+type-name=GstOMXAnalogAudioSink
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.audio_render
+rank=257
+in-port-index=100
+out-port-index=101
+hacks=no-component-role
+sink-template-caps=audio/x-raw,format=(string){S16LE,S32LE},layout=(string)interleaved,rate=(int){8000,11025,16000,22050,24000,32000,44100,48000,88200,96000,176400,192000},channels=(int)[1,2]
+
+[omxhdmiaudiosink]
+type-name=GstOMXHdmiAudioSink
+core-name=/opt/vc/lib/libopenmaxil.so
+component-name=OMX.broadcom.audio_render
+rank=258
+in-port-index=100
+out-port-index=101
+hacks=no-component-role
+sink-template-caps=audio/x-raw,format=(string){S16LE,S32LE},layout=(string)interleaved,rate=(int){8000,11025,16000,22050,24000,32000,44100,48000,88200,96000,176400,192000},channels=(int)[1,8];audio/x-ac3,framed=(boolean)true;audio/x-dts,framed=(boolean)true,block-size=(int){512,1024,2048}
+
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf
new file mode 100644 (file)
index 0000000..db78eb4
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'Aux' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf
new file mode 100644 (file)
index 0000000..baf674a
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'FM' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-radio
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+.include analog-input.conf.common
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf
new file mode 100644 (file)
index 0000000..4be5722
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf
new file mode 100644 (file)
index 0000000..f7f3085
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic/Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf
new file mode 100644 (file)
index 0000000..2a36f2f
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+name = analog-input-microphone
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common
new file mode 100644 (file)
index 0000000..b35e7af
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common element for all microphone inputs
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Mic Select'
+
+[Element Mic Select]
+enumeration = select
+
+[Option Mic Select:Mic1]
+name = input-microphone
+priority = 20
+
+[Option Mic Select:Mic2]
+name = input-microphone
+priority = 19
+
+;;; Various Boosts
+
+[Element Mic Boost (+20dB)]
+switch = select
+volume = merge
+
+[Option Mic Boost (+20dB):on]
+name = input-boost-on
+
+[Option Mic Boost (+20dB):off]
+name = input-boost-off
+
+[Element Mic Boost]
+switch = select
+volume = merge
+
+[Option Mic Boost:on]
+name = input-boost-on
+
+[Option Mic Boost:off]
+name = input-boost-off
+
+[Element Front Mic Boost]
+switch = select
+
+[Option Front Mic Boost:on]
+name = input-boost-on
+
+[Option Front Mic Boost:off]
+name = input-boost-off
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf
new file mode 100644 (file)
index 0000000..8531ec7
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'TV Tuner' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-video
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf
new file mode 100644 (file)
index 0000000..74c76f0
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Video' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf
new file mode 100644 (file)
index 0000000..5055f90
--- /dev/null
@@ -0,0 +1,54 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; A fallback for devices that lack seperate Mic/Line/Aux/Video/TV
+; Tuner/FM elements
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Capture]
+required = volume
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required-absent = any
+
+[Element Line]
+required-absent = any
+
+[Element Aux]
+required-absent = any
+
+[Element Video]
+required-absent = any
+
+[Element Mic/Line]
+required-absent = any
+
+[Element TV Tuner]
+required-absent = any
+
+[Element FM]
+required-absent = any
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common
new file mode 100644 (file)
index 0000000..951e11f
--- /dev/null
@@ -0,0 +1,294 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Mixer path for PulseAudio's ALSA backend, common elements for all
+; input paths. If multiple options by the same id are discovered they
+; will be suffixed with a number to distuingish them, in the same
+; order they appear here.
+;
+; Source selection should use the following names:
+;
+;       input                       -- If we don't know the exact kind of input
+;       input-microphone
+;       input-microphone-internal
+;       input-microphone-external
+;       input-linein
+;       input-video
+;       input-radio
+;       input-docking-microphone
+;       input-docking-linein
+;       input-docking
+;
+;  We explicitly don't want to wrap the following sources:
+;
+;       CD
+;       Synth/MIDI
+;       Phone
+;       Mix
+;       Digital/SPDIF
+;       Master
+;       PC Speaker
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Input Source Select'
+
+[Element Input Source Select]
+enumeration = select
+
+[Option Input Source Select:Input1]
+name = input
+priority = 10
+
+[Option Input Source Select:Input2]
+name = input
+priority = 5
+
+;;; 'Input Source'
+
+[Element Input Source]
+enumeration = select
+
+[Option Input Source:Mic]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Microphone]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Front Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Front Microphone]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Internal Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Line]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line-In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Docking-Station]
+name = input-docking
+priority = 17
+
+[Option Input Source:AUX IN]
+name = input
+priority = 10
+
+;;; 'Capture Source'
+
+[Element Capture Source]
+enumeration = select
+
+[Option Capture Source:TV Tuner]
+name = input-video
+
+[Option Capture Source:FM]
+name = input-radio
+
+[Option Capture Source:Mic/Line]
+name = input
+
+[Option Capture Source:Line/Mic]
+name = input
+
+[Option Capture Source:Mic]
+name = input-microphone
+
+[Option Capture Source:Microphone]
+name = input-microphone
+
+[Option Capture Source:Int Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Int DMic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Mic]
+name = input-microphone-internal
+
+[Option Capture Source:iMic]
+name = input-microphone-internal
+
+[Option Capture Source:i-Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Microphone]
+name = input-microphone-internal
+
+[Option Capture Source:Front Mic]
+name = input-microphone
+
+[Option Capture Source:Front Microphone]
+name = input-microphone
+
+[Option Capture Source:Rear Mic]
+name = input-microphone
+
+[Option Capture Source:Mic1]
+name = input-microphone
+
+[Option Capture Source:Mic2]
+name = input-microphone
+
+[Option Capture Source:D-Mic]
+name = input-microphone
+
+[Option Capture Source:IntMic]
+name = input-microphone-internal
+
+[Option Capture Source:ExtMic]
+name = input-microphone-external
+
+[Option Capture Source:Ext Mic]
+name = input-microphone-external
+
+[Option Capture Source:E-Mic]
+name = input-microphone-external
+
+[Option Capture Source:e-Mic]
+name = input-microphone-external
+
+[Option Capture Source:LineIn]
+name = input-linein
+
+[Option Capture Source:Analog]
+name = input
+
+[Option Capture Source:Line]
+name = input-linein
+
+[Option Capture Source:Line-In]
+name = input-linein
+
+[Option Capture Source:Line In]
+name = input-linein
+
+[Option Capture Source:Video]
+name = input-video
+
+[Option Capture Source:Aux]
+name = input
+
+[Option Capture Source:Aux0]
+name = input
+
+[Option Capture Source:Aux1]
+name = input
+
+[Option Capture Source:Aux2]
+name = input
+
+[Option Capture Source:Aux3]
+name = input
+
+[Option Capture Source:AUX IN]
+name = input
+
+[Option Capture Source:Aux In]
+name = input
+
+[Option Capture Source:AOUT]
+name = input
+
+[Option Capture Source:AUX]
+name = input
+
+[Option Capture Source:Cam Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 1]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 2]
+name = input-microphone
+
+[Option Capture Source:Analog Inputs]
+name = input
+
+[Option Capture Source:Unknown1]
+name = input
+
+[Option Capture Source:Unknown2]
+name = input
+
+[Option Capture Source:Docking-Station]
+name = input-docking
+
+[Option Capture Source:Dock Mic]
+name = input-docking-microphone
+
+;;; 'Mic Jack Mode'
+
+[Element Mic Jack Mode]
+enumeration = select
+
+[Option Mic Jack Mode:Mic In]
+name = input-microphone
+
+[Option Mic Jack Mode:Line In]
+name = input-linein
+
+;;; 'Digital Input Source'
+
+[Element Digital Input Source]
+enumeration = select
+
+[Option Digital Input Source:Analog Inputs]
+name = input
+
+[Option Digital Input Source:Digital Mic 1]
+name = input-microphone
+
+[Option Digital Input Source:Digital Mic 2]
+name = input-microphone
+
+;;; Various Boosts
+
+[Element Capture Boost]
+switch = select
+
+[Option Capture Boost:on]
+name = input-boost-on
+
+[Option Capture Boost:off]
+name = input-boost-off
+
+[Element Auto Gain Control]
+switch = select
+
+[Option Auto Gain Control:on]
+name = input-agc-on
+
+[Option Auto Gain Control:off]
+name = input-agc-off
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf
new file mode 100644 (file)
index 0000000..f2fd31c
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone2' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 89
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the second headphones, not
+; the first headphones. But it should not hurt if we leave the
+; headphone jack enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf
new file mode 100644 (file)
index 0000000..2131cfe
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+[Element Headphone]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the first headphones, not
+; the second headphones. But it should not hurt if we leave the second
+; headphone jack enabled nonetheless.
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf
new file mode 100644 (file)
index 0000000..0a43e27
--- /dev/null
@@ -0,0 +1,85 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage in laptops that have a seperate LFE speaker
+; connected to the Master mono connector
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 40
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all-no-lfe
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf
new file mode 100644 (file)
index 0000000..542edc4
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage on boards that have a seperate Mono output plug.
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 50
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = off
+volume = off
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf
new file mode 100644 (file)
index 0000000..aea7853
--- /dev/null
@@ -0,0 +1,94 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Speaker' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = mute
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = mute
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = mute
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf
new file mode 100644 (file)
index 0000000..fc30800
--- /dev/null
@@ -0,0 +1,92 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for the 'default' output. Note that a-o-speaker.conf has a
+; higher priority than this
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 99
+
+[Element Hardware Master]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = ignore
+volume = ignore
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the default output, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = ignore
+volume = zero
+
+[Element Headphone2]
+switch = ignore
+volume = zero
+
+[Element Speaker]
+switch = ignore
+volume = off
+
+[Element Front]
+switch = ignore
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = ignore
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = ignore
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = ignore
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common
new file mode 100644 (file)
index 0000000..3204846
--- /dev/null
@@ -0,0 +1,128 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common part of all paths
+
+; So here's generally how mixer paths are used by PA: PA goes through
+; a mixer path file from top to bottom and checks if a mixer element
+; described therein exists. If so it is added to the list of mixer
+; elements PA will control, keeping the order it read them in. If a
+; mixer element described here has set the required= or
+; required-absent= directives a path might not be accepted as valid
+; and is ignored in its entirety (see below). However usually if a
+; element listed here is missing this one element is ignored but not
+; the entire path.
+;
+; When a device shall be muted/unmuted *all* elements listed in a path
+; file with "switch = mute" will be toggled.
+;
+; When a device shall change its volume, PA will got through the list
+; of all elements with "volume = merge" and set the volume on the
+; first element. If that element does not support dB volumes, this is
+; where the story ends. If it does support dB volumes, PA divides the
+; requested volume by the volume that was set on this element, and
+; then go on to the next element with "volume = merge" and then set
+; that there, and so on.  That way the first volume element in the
+; path will be the one that does the 'biggest' part of the overall
+; volume adjustment, with the remaining elements usually being set to
+; some value next to 0dB. This logic makes sure we get the full range
+; over all volume sliders and a very high granularity of volumes
+; already in hardware.
+;
+; All switches and enumerations set to "select" are exposed via the
+; "port" functionality of sinks/sources. Basically every possible
+; switch setting and every possible enumeration setting will be
+; combined and made into a "port". So make sure you don't list too
+; many switches/enums for exposing, because the number of ports might
+; rise exponentially.
+;
+; Only one path can be selected at a time. All paths that are valid
+; for an audio device will be exposed as "port" for the sink/source.
+
+
+; [General]
+; priority = ...                         # Priority for this path
+; description = ...
+;
+; [Option ...:...]                       # For each option of an enumeration or switch element
+;                                        # that shall be exposed as a sink/source port. Needs to
+;                                        # be named after the Element, followed by a colon, followed
+;                                        # by the option name, resp. on/off if the element is a switch.
+; name = ...                             # Logical name to use in the path identifier
+; priority = ...                         # Priority if this is made into a device port
+;
+; [Element ...]                          # For each element that we shall control
+; required = ignore | switch | volume | enumeration | any     # If set, require this element to be of this kind and available,
+;                                                             # otherwise don't consider this path valid for the card
+; required-absent = ignore | switch | volume                  # If set, require this element to not be of this kind and not
+;                                                             # available, otherwise don't consider this path valid for the card
+;
+; switch = ignore | mute | off | on | select                  # What to do with this switch: ignore it, make it follow mute status,
+;                                                             # always set it to off, always to on, or make it selectable as port.
+;                                                             # If set to 'select' you need to define an Option section for on
+;                                                             # and off
+; volume = ignore | merge | off | zero   # What to do with this volume: ignore it, merge it into the device
+;                                        # volume slider, always set it to the lowest value possible, or always
+;                                        # set it to 0 dB (for whatever that means)
+; enumeration = ignore | select          # What to do with this enumeration, ignore it or make it selectable
+;                                        # via device ports. If set to 'select' you need to define an Option section
+;                                        # for each of the items you want to expose
+; direction = playback | capture         # Is this relevant only for playback or capture? If not set this will implicitly be
+;                                        # set the direction of the PCM device is opened as. Generally this doesn't need to be set
+;                                        # unless you have a broken driver that has playback controls marked for capture or vice
+;                                        # versa
+; direction-try-other = no | yes         # If the element does not supported what is requested, try the other direction, too?
+;
+; override-map.1 = ...                   # Override the channel mask of the mixer control if the control only exposes a single channel
+; override-map.2 = ...                   # Override the channel masks of the mixer control if the control only exposes two channels
+;                                        # Override maps should list for each element channel which high-level channels it controls via a
+;                                        # channel mask. A channel mask may either be the name of a single channel, or the words "all-left",
+;                                        # "all-right", "all-center", "all-front", "all-rear", and "all" to encode a specific subset of
+;                                        # channels in a mask
+
+[Element PCM]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element External Amplifier]
+switch = select
+
+[Option External Amplifier:on]
+name = output-amplifier-on
+priority = 10
+
+[Option External Amplifier:off]
+name = output-amplifier-off
+priority = 0
+
+;;; 'Analog Output'
+
+[Element Analog Output]
+enumeration = select
+
+[Option Analog Output:Speakers]
+name = output-speaker
+priority = 10
+
+[Option Analog Output:Headphones]
+name = output-headphones
+priority = 9
+
+[Option Analog Output:FP Headphones]
+name = output-headphones
+priority = 8
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf
new file mode 100644 (file)
index 0000000..9838138
--- /dev/null
@@ -0,0 +1,144 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned. (and should be good enough for the vast majority of
+; cards).  Use the udev property PULSE_PROFILE_SET to assign a
+; different profile set than this one to a device.  So what is this
+; about? Simply, what we do here is map ALSA devices to how they are
+; exposed in PA. We say which ALSA device string to use to open a
+; device, which channel mapping to use then, and which mixer path to
+; use. This is encoded in a 'mapping'. Multiple of these mappings can
+; be bound together in a 'profile' which is then directly exposed in
+; the UI as a card profile. Each mapping assigned to a profile will
+; result in one sink/source to be created if the profile is selected
+; for the card.
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+
+[General]
+auto-profiles = yes
+
+[Mapping analog-mono]
+device-strings = hw:0
+channel-map = mono
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 1
+
+[Mapping analog-stereo]
+device-strings = front:%f hw:0
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 10
+
+[Mapping analog-surround-40]
+device-strings = surround40:%f
+channel-map = front-left,front-right,rear-left,rear-right
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-41]
+device-strings = surround41:%f
+channel-map = front-left,front-right,rear-left,rear-right,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-50]
+device-strings = surround50:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-51]
+device-strings = surround51:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-71]
+device-strings = surround71:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+description = Analog Surround 7.1
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping iec958-stereo]
+device-strings = iec958:%f
+channel-map = left,right
+priority = 5
+
+[Mapping iec958-surround-40]
+device-strings = iec958:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 1
+
+[Mapping iec958-ac3-surround-40]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 2
+direction = output
+
+[Mapping iec958-ac3-surround-51]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 3
+direction = output
+
+[Mapping hdmi-stereo]
+device-strings = hdmi:%f
+channel-map = left,right
+priority = 4
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf
new file mode 100644 (file)
index 0000000..2b83530
--- /dev/null
@@ -0,0 +1,91 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 4 DJ
+;
+; This card has two stereo pairs of input and two stereo pairs of
+; output, named channels A and B. Channel B has an additional
+; Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b-output]
+description = Analog Stereo Channel B (Headphones)
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-b-input]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b-output
+input-mappings = analog-stereo-a analog-stereo-b-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+input-mappings = analog-stereo-b-input
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+priority = 6
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b-input
+priority = 1
+skip-probe = yes
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf
new file mode 100644 (file)
index 0000000..3fe3cc5
--- /dev/null
@@ -0,0 +1,162 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 8 DJ
+;
+; This card has four stereo pairs of input and four stereo pairs of
+; output, named channels A to D. Channel C has an additional Mic/Line
+; connector, channel D an additional Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+
+# Since we want to set a different description for channel C's/D's input
+# and output we define two seperate mappings for them
+[Mapping analog-stereo-c-output]
+description = Analog Stereo Channel C
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-c-input]
+description = Analog Stereo Channel C (Line/Mic)
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = input
+
+[Mapping analog-stereo-d-output]
+description = Analog Stereo Channel D (Headphones)
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-d-input]
+description = Analog Stereo Channel D
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B, C (Line/Mic), D (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-input analog-stereo-d-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-c]
+description = Analog Stereo Channel D (Headphones) Output, Channel C (Line/Mic) Input
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-c-input
+priority = 90
+skip-probe = yes
+
+[Profile output:analog-stereo-c-d+input:analog-stereo-c-d]
+description = Analog Stereo Duplex Channels C (Line/Mic), D (Line/Mic)
+output-mappings = analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-c-input analog-stereo-d-input
+priority = 80
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B
+output-mappings = analog-stereo-b
+input-mappings = analog-stereo-b
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-c+input:analog-stereo-c]
+description = Analog Stereo Duplex Channel C (Line/Mic)
+output-mappings = analog-stereo-c-output
+input-mappings = analog-stereo-c-input
+priority = 60
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-d]
+description = Analog Stereo Duplex Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-d-input
+priority = 70
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 6
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B
+output-mappings = analog-stereo-b
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-c]
+description = Analog Stereo Output Channel C
+output-mappings = analog-stereo-c-output
+priority = 7
+skip-probe = yes
+
+[Profile output:analog-stereo-d]
+description = Analog Stereo Output Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+priority = 8
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b
+priority = 1
+skip-probe = yes
+
+[Profile input:analog-stereo-c]
+description = Analog Stereo Input Channel C (Line/Mic)
+input-mappings = analog-stereo-c-input
+priority = 4
+skip-probe = yes
+
+[Profile input:analog-stereo-d]
+description = Analog Stereo Input Channel D
+input-mappings = analog-stereo-d-input
+priority = 3
+skip-probe = yes
diff --git a/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf b/media-config-target-rpi3/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf
new file mode 100644 (file)
index 0000000..6a8d08b
--- /dev/null
@@ -0,0 +1,127 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned (and should be good enough for the vast majority of
+; cards). If you want to assign a different profile set than this one
+; to a device, either set the udev property PULSE_PROFILE_SET for the
+; card, or use the "profile_set" module argument when loading
+; module-alsa-card.
+;
+; So what is this about? Simply, what we do here is map ALSA devices
+; to how they are exposed in PA. We say which ALSA device string to
+; use to open a device, which channel mapping to use then, and which
+; mixer path to use. This is encoded in a 'mapping'. Multiple of these
+; mappings can be bound together in a 'profile' which is then directly
+; exposed in the UI as a card profile. Each mapping assigned to a
+; profile will result in one sink/source to be created if the profile
+; is selected for the card.
+;
+; Additionally, the path set configuration files can describe the
+; decibel values assigned to the steps of the volume elements. This
+; can be used to work around situations when the alsa driver doesn't
+; provide any decibel information, or when the information is
+; incorrect.
+
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+;
+; [DecibelFix element]                      # Decibel fixes can be used to work around missing or incorrect dB
+;                                           # information from alsa. A decibel fix is a table that maps volume steps
+;                                           # to decibel values for one volume element. The "element" part in the
+;                                           # section title is the name of the volume element.
+;                                           #
+;                                           # NOTE: This feature is meant just as a help for figuring out the correct
+;                                           # decibel values. PulseAudio is not the correct place to maintain the
+;                                           # decibel mappings!
+;                                           #
+;                                           # If you need this feature, then you should make sure that when you have
+;                                           # the correct values figured out, the alsa driver developers get informed
+;                                           # too, so that they can fix the driver.
+;
+; db-values = ...                           # The option value consists of pairs of step numbers and decibel values.
+;                                           # The pairs are separated with whitespace, and steps are separated from
+;                                           # the corresponding decibel values with a colon. The values must be in an
+;                                           # increasing order. Here's an example of a valid string:
+;                                           #
+;                                           #     "0:-40.50  1:-38.70  3:-33.00  11:0"
+;                                           #
+;                                           # The lowest step imposes a lower limit for hardware volume and the
+;                                           # highest step correspondingly imposes a higher limit. That means that
+;                                           # that the mixer will never be set outside those values - the rest of the
+;                                           # volume scale is done using software volume.
+;                                           #
+;                                           # As can be seen in the example, you don't need to specify a dB value for
+;                                           # each step. The dB values for skipped steps will be linearly interpolated
+;                                           # using the nearest steps that are given.
+
+[General]
+auto-profiles = yes
+
+[Mapping analog-mono]
+device-strings = hw:%f
+channel-map = mono
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 1
+
+[Mapping usb-analog-stereo]
+device-strings = hw:%f
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 10
+
+[Mapping usb-analog-surround-51]
+device-strings = hw:%f
+;channel-map = front-left,front-right,front-center,lfe,rear-left,rear-right
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-lfe-on-mono
+priority = 180
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-tm1.manifest b/media-config-target-tm1.manifest
new file mode 100644 (file)
index 0000000..a76fdba
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+       <request>
+               <domain name="_" />
+       </request>
+</manifest>
diff --git a/media-config-target-tm1/hal/etc/asound.conf b/media-config-target-tm1/hal/etc/asound.conf
new file mode 100644 (file)
index 0000000..289d7d1
--- /dev/null
@@ -0,0 +1,17 @@
+# default sound configuration for sprd6820
+
+pcm. !default {
+       type hw
+       card sprdphone
+       device 0
+}
+
+ctl. !default {
+       type hw
+       card sprdphone
+}
+
+ctl. sprdphone {
+       type hw
+       card sprdphone
+}
diff --git a/media-config-target-tm1/hal/etc/inference/inference_engine.ini b/media-config-target-tm1/hal/etc/inference/inference_engine.ini
new file mode 100644 (file)
index 0000000..54eddf2
--- /dev/null
@@ -0,0 +1,3 @@
+[inference backend]
+;/*OPENCV=0, Tensorflow-lite=1
+supported backend types = 0,1
diff --git a/media-config-target-tm1/hal/etc/inference/inference_engine_backend_path.ini b/media-config-target-tm1/hal/etc/inference/inference_engine_backend_path.ini
new file mode 100644 (file)
index 0000000..97b4f0e
--- /dev/null
@@ -0,0 +1,24 @@
+; This ini file describes,
+; 1. which NPU backend to be used for user-given INFERENCE_ENGINE_CUSTOM type. As for NPU device, we will use ML Single API.
+; 2. which API framework to be used for a given backend engine such as TFLITE, ARMNN, and OPENCV.
+;    In default, Mediavision internal API will be used. If you want to use ML Single API then set 'MLAPI' to 'API framework' of each backend section.
+
+; Available NPU backends : VIVANTE, TRIV2
+; Available backend engine sections : TFLITE, ARMNN, ONE, OPENCV
+; Available external inference engine API framework : MLAPI
+
+[NPU backend]
+; Writing rule = [VIVANTE|TRIV2]
+type = VIVANTE
+
+[TFLITE]
+; Writing rule = [MLAPI]
+API framework = MLAPI
+
+[ARMNN]
+; Writing rule = [MLAPI]
+API framework =
+
+[OPENCV]
+; Writing rule = [MLAPI]
+API framework =
diff --git a/media-config-target-tm1/hal/etc/multimedia/audio_hw.xml b/media-config-target-tm1/hal/etc/multimedia/audio_hw.xml
new file mode 100644 (file)
index 0000000..a49df9f
--- /dev/null
@@ -0,0 +1,51 @@
+<!-- SPRD audio params configuration file,include cp,mocor,pcm config -->
+<audio device="sc7727s-audio">
+<!-- the profile -->
+<modem num="2">
+       <cp name="w" pipe="/dev/spipe_w6" vbchannel="0" />
+       <cp name="t" pipe="/dev/spipe_td6" vbchannel="1" />
+</modem>
+
+<voip modem="t" pipe="/dev/spipe_td4" vbchannel="1" enable="1" />
+<voip modem="w" pipe="/dev/spipe_w4" vbchannel="0" enable="1" />
+
+<i2s_for_btcall index="0"
+               switch="1"
+                dst="external"
+               cp0_ctl_file="/proc/pin_switch/iis0_sys_sel/cp0_iis0"
+               cp1_ctl_file="/proc/pin_switch/iis0_sys_sel/cp1_iis0"
+               cp2_ctl_file="/proc/pin_switch/iis0_sys_sel/cp2_iis0"
+               ap_ctl_file="/proc/pin_switch/iis0_sys_sel/ap_iis0"
+               cp0_bt_ctl_file="/proc/pin_switch/bt_iis_sys_sel/cp0_iis0"
+               cp1_bt_ctl_file="/proc/pin_switch/bt_iis_sys_sel/cp1_iis0"
+               cp2_bt_ctl_file="/proc/pin_switch/bt_iis_sys_sel/cp2_iis0"
+               ap_bt_ctl_file="/proc/pin_switch/bt_iis_sys_sel/ap_iis0"
+               bt_con_eb_file="/proc/pin_switch/bt_iis_con_eb"
+/>
+
+<i2s_for_extspeaker index="1" switch="0" dst="external" cp0_ctl_file="/d/pin_switch/iis-1" cp1_ctl_file="/d/pin_switch/iis-1"  cp2_ctl_file="/d/pin_switch/iis-1" ap_ctl_file="/d/pin_switch/iis-1" />
+
+<audiomode num="4">
+       <item name="Headset" index="0" />
+       <item name="Headfree" index="1" />
+       <item name="Handset" index="2" />
+       <item name="Handsfree" index="3" />
+</audiomode>
+
+<debug enable="1">
+<debuginfo sleepdeltatimegate="2000" />
+<debuginfo pcmwritetimegate="200000" />
+<debuginfo lastthiswritetimegate="200000" />
+</debug>
+
+<dumpmusic  num="16"  dump_switch = "0x0" dump_path="/data/local/media/" total_switch="ON">
+       <dump_play  index="0" item_name ="music.dump0"  dump_file_name ="dump0.pcm"  switch="0" />
+       <dump_play  index="1" item_name ="music.dump1"  dump_file_name ="dump1.pcm"  switch="0" />
+
+       <dump_record index="8" item_name ="record.dump0" dump_file_name ="dump_r0.pcm" switch="0" />
+       <dump_record index="9" item_name ="record.dump1" dump_file_name ="dump_r1.pcm" switch="0" />
+
+</dumpmusic>
+</audio>
+
+
diff --git a/media-config-target-tm1/hal/etc/multimedia/mmfw_audio_pcm_dump.ini b/media-config-target-tm1/hal/etc/multimedia/mmfw_audio_pcm_dump.ini
new file mode 100644 (file)
index 0000000..6e13b68
--- /dev/null
@@ -0,0 +1,8 @@
+[pcm_dump]
+;playback
+pa_sink = 0
+pa_sink_input = 0
+
+;capture
+pa_source = 0
+pa_source_output = 0
diff --git a/media-config-target-tm1/hal/etc/multimedia/mmfw_audio_volume.ini b/media-config-target-tm1/hal/etc/multimedia/mmfw_audio_volume.ini
new file mode 100644 (file)
index 0000000..09a9a97
--- /dev/null
@@ -0,0 +1,19 @@
+[volumes]
+system                         = 0, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 82, 84, 86, 88, 90
+notification                   = 0, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 95
+alarm                          = 0, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 90
+ringtone                       = 0, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 90
+media                          = 0, 44, 48, 52, 56, 61, 66, 70, 74, 78, 82, 85, 88, 91, 94, 97
+call                           = 60, 65, 70, 76, 82, 88, 94, 100
+voip                           = 60, 65, 70, 76, 82, 88, 94, 100
+voice                          = 0, 55, 58, 61, 64, 67, 70, 73, 76, 79, 82, 85, 88, 91, 94, 97
+gain_dialer                    = 1.00
+gain_touch                     = 1.00
+gain_af                        = 0.70
+gain_shutter1                  = 0.14
+gain_shutter2                  = 1.00
+gain_camcording                = 0.30
+gain_midi                      = 1.00
+gain_booting                   = 0.40
+gain_video                     = 0.90
+gain_tts                       = 1.00
diff --git a/media-config-target-tm1/hal/etc/multimedia/mmfw_camcorder.ini b/media-config-target-tm1/hal/etc/multimedia/mmfw_camcorder.ini
new file mode 100644 (file)
index 0000000..205fb15
--- /dev/null
@@ -0,0 +1,106 @@
+; < Camera/Camcorder Configure Main INI file >
+;
+; - Header List -
+; 1.  General
+; 2.  VideoInput
+; 3.  AudioInput
+; 4.  VideoOutput
+; 5.  Capture
+; 6.  Record
+; 7.  VideoEncoder
+; 8.  AudioEncoder
+; 9.  ImageEncoder
+; 10. Mux
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryMain"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[General]
+SyncStateChange = 1
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap || NOT-USE-DEFAULT_VALUE
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap --gst-debug=3 || NOT-USE-DEFAULT_VALUE
+ModelName = TM1
+;DisabledAttributes = camera-optical-zoom camera-af-touch-x camera-af-touch-y camera-exposure-value camera-f-number camera-shutter-speed camera-hold-af-after-capturing filter-flip filter-hue display-src-x display-src-y display-src-width display-src-height tag-image-description strobe-control strobe-capabilities strobe-mode detect-mode detect-number detect-focus-select detect-select-number detect-status || NO_DEFAULT_VALUE
+
+[VideoInput]
+VideosrcElement = camerasrc | 2,0 | do-timestamp,1 | num-alloc-buf,7
+UseVideoscale = 0
+VideoscaleElement = videoscale | 3,0 | width,320 | height,240 | method,1
+UseZeroCopyFormat = 1
+DeviceCount = 2
+SupportMediaPacketPreviewCb = 1
+
+[AudioInput]
+AudioDevice = 0,1 || 0
+AudiosrcElement = pulsesrc | 1,0 | do-timestamp,1
+AudiomodemsrcElement = pulsesrc | 1,0 | do-timestamp,1
+
+[VideoOutput]
+; DisplayDevice
+;;; 0: MAIN LCD, 1: SUB LCD, 2:TV OUT, 3: MAIN LCD and SUB LCD, 4: MAIN LCD and TV OUT
+DisplayDevice = 0 || 0
+; DisplayMode
+;;; 0: Default, 1: Pri Video ON and Sec Video Full-Screen, 2: Pri Video OFF and Sec Video Full-Screen
+DisplayMode = 0,1,2 || 0
+; Videosink
+;;; 0: Overlay surface, 1: Evas surface, 2: GL surface, 3: NULL surface, 4: Remote
+Videosink = 0,3,4 || 3
+VideosinkElementOverlay = tizenwlsink | 7,0 | draw-borders,0 | force-aspect-ratio,1 | enable-last-sample,0 | qos,0 | sync,0 | show-preroll-frame,0 | use-tbm,1
+VideosinkElementRemote = tizenipcsink | 4,0 | permissions,511 | enable-last-sample,0 | qos,0 | sync,0
+VideosinkElementNull = fakesink | 4,0 | qos,0 | sync,0 | enable-last-sample,0 | show-preroll-frame,0
+UseVideoscale = 0
+VideoscaleElement = videoscale | 1,0 | rotang,90
+
+[VideoEncoder]
+H263 = sprdenc_h263 | 0,0
+H264 = sprdenc_h264 | 0,0
+MPEG4 = sprdenc_mpeg4 | 0,0
+
+[AudioEncoder]
+AMR = amrnbenc | 0,0
+AAC = avenc_aac | 1,0 | compliance,-2
+WAVE = wavenc | 0,0
+
+[ImageEncoder]
+JPEG = jpegenc | 0,0
+;PNG = pngenc | 0,0
+
+[Capture]
+UseEncodebin = 0
+UseCaptureMode = 0
+VideoscaleElement = videoscale | 1,0 | method,1
+
+[Record]
+UseAudioEncoderQueue = 1
+UseVideoEncoderQueue = 1
+VideoProfile = 0
+VideoAutoAudioConvert = 1
+VideoAutoAudioResample = 0
+VideoAutoColorSpace = 0
+AudioProfile = 1
+AudioAutoAudioConvert = 1
+AudioAutoAudioResample = 0
+AudioAutoColorSpace = 0
+ImageProfile = 2
+ImageAutoAudioConvert = 0
+ImageAutoAudioResample = 0
+ImageAutoColorSpace = 1
+RecordsinkElement = filesink | 1,0 | async,0
+SupportDualStream = 0
+UseNoiseSuppressor = 0
+DropVideoFrame = 0
+PassFirstVideoFrame = 0
+
+[Mux]
+3GP = 3gppmux | 0,0
+AMR = avmux_amr | 0,0
+MP4 = mp4mux | 0,0
+AVI = avimux | 0,0
+MATROSKA = matroskamux | 0,0
+WAV = wavenc | 0,0
+AAC = avmux_adts | 0,0
+M2TS = mpegtsmux | 0,0
+
diff --git a/media-config-target-tm1/hal/etc/multimedia/mmfw_camcorder_camera0.ini b/media-config-target-tm1/hal/etc/multimedia/mmfw_camcorder_camera0.ini
new file mode 100644 (file)
index 0000000..62cd39f
--- /dev/null
@@ -0,0 +1,210 @@
+; < Camera/Camcorder Configure Control INI file >
+;
+; - Header List -
+; 1.  Camera
+; 2.  Strobe
+; 3.  Effect
+; 4.  Photograph
+; 5.  Capture
+; 6.  Detect
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryControl"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[Camera]
+; Input index - real setting value
+;;; 0:PRIMARY_CAMERA, 1:SECONDARY_CAMERA
+; Input index - MSL value(convert array index)
+;;; -1:NONE, 0:CAMERA0, 1:CAMERA1
+InputIndex = 0,-255 || 0
+DeviceName = S5K4H5YB
+PreviewResolution = 176,144 | 320,240 | 480,360 | 480,480 | 640,480 | 720,720 | 960,720 | 1280,720 || 960,720
+CaptureResolution = 640,480 | 800,480 | 1280,720 | 1536,1536 | 1600,960 | 1600,1200 | 2048,1152 | 2048,1232 | 2048,1536 | 2448,2448 | 3264,1836| 3264,2448 || 3264,2448
+VideoResolution = 176,144 | 320,240 | 640,480 | 1280,720 || 640,480
+FPS0 = 0,30 || 30
+FPS1 = 0,30 || 30
+FPS2 = 0,30 || 30
+FPS3 = 0,30 || 30
+FPS4 = 0,30 || 30
+FPS5 = 0,30 || 30
+FPS6 = 0,30 || 30
+FPS7 = 0,30 || 30
+; PictureForamt - MSL value
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+PictureFormat = 0 || 0
+Overlay = 0,1 || 1
+; Recommend display rotation
+;;; 0:NONE, 1:90, 2:180, 3:270
+RecommendDisplayRotation = 3
+; Recommend preview format for capture
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatCapture = 0
+; Recommend preview format for record
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatRecord = 0
+; Recommend preview resolution
+;;; 0: NORMAL ratio(4:3), 1: WIDE ratio(16:9), 2: SQUARE ratio(1:1)
+RecommendPreviewResolution = 960,720 | 1280,720 | 720,720 || 960,720
+; Camera facing direction
+;;; 0:REAR, 1:FRONT
+FacingDirection = 0
+
+
+[Strobe]
+;StrobeControl - Not support
+;StrobeCapabilities - Not support
+; Strobe mode - real setting value
+;;; 0:OFF, 1:ON, 2:TORCH, 3:AUTO, 4:MAX
+; Strobe mode - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:REDEYE_REDUCTION, 4:SLOW_SYNC, 5:FRONT_CURTAIN, 6:REAR_CURTAIN, 7:PERMANENT
+StrobeMode = 0,1,3,-255,-255,-255,-255,2 || 0
+;StrobeStatus - Not support
+;StrobeEV - Not support
+
+
+[Effect]
+Brightness = 0,8 || 4
+;Contrast = -2,2 || 0
+;Saturation = 0,4 || 2
+;Sharpness = 0,4 || 2
+
+; White balance - real setting value
+;;; 0:AUTO, 1:INCANDESCENT, 4:FLUORESCENT, 5:DAYLIGHT, 6:CLOUDY_DAYLIGHT
+; White balance - MSL value(convert array index)
+;;; 0:NONE, 1:AUTO, 2:DAYLIGHT, 3:CLOUDY, 4:FLUORESCENT, 5:INCANDESCENT, 6:SHADE, 7:HORIZON, 8:FLASH, 9:CUSTOM
+WhiteBalance = -255,0,5,6,4,1,-255,-255,-255,-255 || 0
+
+; Color tone - real setting value
+;;; 0:NONE, 1:MONO, 6:NEGATIVE, 7:SEPIA, 4:COLD
+; Color tone - MSL value(convert array index)
+;;; 0:NONE, 1:MONO, 2:SEPIA, 3:NEGATIVE, 4:BLUE, 5:GREEN, 6:AQUA, 7:VIOLET, 8:ORANGE, 9:GRAY, 10:RED,
+;;; 11:ANTIQUE, 12:WARM, 13:PINK, 14:YELLOW, 15:PURPLE, 16:EMBOSS, 17:OUTLINE, 18:SOLARIZATION, 19:SKETCH, 20:WASHED,
+;;; 21:VINTAGE_WARM, 22:VINTAGE_COLD, 23:POSTERIZATION, 24:CARTOON, 25:SELECTIVE_RED, 26:SELECTIVE_GREEN, 27:SELECTIVE_BLUE, 28:SELECTIVE_YELLOW, 29:SELECTIVE_RED_YELLOW, 30:GRAPHICS
+ColorTone = 0,1,7,6,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Flip - MSL value(convert array index)
+;;; 0:NONE, 1:HORIZONTAL, 2:VERTICAL, 3:BOTH
+Flip = 0,-255,-255,-255 || 0
+
+; Wide Dynamic Range - real setting value
+;;; N/A
+; Wide Dynamic Range - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO
+WDR = 0,-255,-255 || 0
+
+; Part color mode - real setting value
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+; Part color mode - MSL value(convert array index)
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+;PartColorMode = 0,1,2 || 0
+
+; Part color - real setting value
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+; Part color - MSL value(convert array index)
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT_BLUE, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+;PartColor = 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 || 0
+
+
+[Photograph]
+;LensInit = 0,1 || 0
+DigitalZoom = 0,30 || 0
+OpticalZoom = 0,0 || 0
+
+; Focus mode - real setting value
+;;; 0:AUTO, 1:MANUAL, 2:PAN, 3:TOUCH_AUTO, 4:CONTINUOUS
+; Focus mode - MSL value(convert array index)
+;;; 0:NONE, 1:PAN, 2:AUTO, 3:MANUAL, 4:TOUCH_AUTO, 5:CONTINUOUS
+FocusMode = -255,-255,0,-255,3,4 || 3
+
+; Auto focus type - real setting value
+;;; 0:NORMAL, 1:MACRO, 2:FULL
+; Auto focus - MSL value(convert array index)
+;;; 0:NONE, 1:NORMAL, 2:MACRO, 3:FULL
+AFType = -255,0,1,-255 || 0
+
+; Auto exposure type - real setting value
+;;; 0:MATRIX, 1:CENTER, 2:SPOT, 3.MAX
+; Auto exposure mode - MSL value(convert array index)
+;;; 0,OFF 1,ALL 2,CENTER1  3,CENTER2 4,CENTER3 5,SPOT1 6,SPOT2 7,CUSTOM1 8,CUSTOM2
+AEType = -255,0,1,-255,-255,2,-255,-255,-255 || 0
+
+;ExposureValue - Not support
+;FNumber - Not support
+;ShutterSpeed - Not support
+
+; ISO - real setting value
+;;; 0:AUTO, 1:100, 2:200, 3:400, 4:800
+; ISO - MSL value(convert array index)
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600, 7:3200
+ISO = 0,-255,1,2,3,4,-255,-255 || 0
+
+; Program mode - real setting value
+;;; 1:NONE, 2:PORTRAIT, 3:NIGHTSHOT, 4:BACK_LIGHT, 5:LANDSCAPE, 6:SPORTS, 7:PARTY_INDOOR, 8:BEACH_SNOW, 9:SUNSET, 10:DUSK_DAWN,
+;;; 11:FALL_COLOR, 12:FIREWORKS, 13:TEXT, 14:CANDLE_LIGHT
+; Program mode - MSL value(convert array index)
+;;; 0:NORMAL, 1:PORTRAIT, 2:LANDSCAPE, 3:SPORTS, 4:PARTY_N_INDOOR, 5:BEACH_N_INDOOR, 6:SUNSET, 7:DUSK_N_DAWN, 8:FALL_COLOR, 9:NIGHT_SCENE,
+;;; 10:FIREWORK, 11:TEXT, 12:SHOW_WINDOW, 13:CANDLE_LIGHT, 14:BACKLIGHT
+ProgramMode = 0,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Anti-handshake - real setting value
+;;; N/A
+; Anti-handshake - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:MOVIE_ON
+AntiHandshake = 0,-255,-255,-255 || 0
+
+; Video-stabilization - real setting value
+;;; 0:OFF, 1:ON
+; Video-stabilization - MSL value(convert array index)
+;;; 0:OFF, 1:ON
+VideoStabilization = 0 || 0
+
+; Face zoom mode
+;;; 0:OFF, 1:ON
+FaceZoomMode = 0 || 0
+; Face zoom level
+FaceZoomLevel = 0,0 || 0
+
+; PTZ(Pan Tilt Zoom) type
+;;; 0:Mechanical, 1:Electronic
+;PtzType = 0,1 || 1
+
+; Pan range for mechanical movement
+;PanMecha = -10,10
+
+; Pan range for electronic movement
+;PanElec = -10,10
+
+; Tilt range for mechanical movement
+;TiltMecha = -10,10
+
+; Tilt range for electronic movement
+;TiltElec = -10,10
+
+
+[Capture]
+; Output mode
+;;; No need to convert
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY
+OutputMode = 0,13 || 13
+JpegQuality = 0,100 || 95
+MultishotNumber = 1,1024 || 1
+SensorEncodedCapture = 1
+; Support HDR
+;;; 0: OFF, 1: ON, 2: ON and Original
+SupportHDR = 0,-255,-255 || 0
+SupportZSL = 1
+
+[Detect]
+; Detect mode
+;;; 0:OFF, 1:ON
+DetectMode = 0,1 || 0
+;DetectNumber - Not support
+;DetectFocusSelect - Not support
+;DetectSelectNumber - Not support
+;DetectStatus - Not support
+
diff --git a/media-config-target-tm1/hal/etc/multimedia/mmfw_camcorder_camera1.ini b/media-config-target-tm1/hal/etc/multimedia/mmfw_camcorder_camera1.ini
new file mode 100644 (file)
index 0000000..e443d1c
--- /dev/null
@@ -0,0 +1,212 @@
+; < Camera/Camcorder Configure Control INI file >
+;
+; - Header List -
+; 1.  Camera
+; 2.  Strobe
+; 3.  Effect
+; 4.  Photograph
+; 5.  Capture
+; 6.  Detect
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryControl"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[Camera]
+; Input index - real setting value
+;;; 0:PRIMARY_CAMERA, 1:SECONDARY_CAMERA
+; Input index - MSL value(convert array index)
+;;; -1:NONE, 0:CAMERA0, 1:CAMERA1
+InputIndex = -255,1 || 1
+DeviceName = S5K5E3YX
+PreviewResolution = 176,144 | 320,240 | 480,360 | 640,480 | 720,720 | 880,720 | 960,720 | 1280,720 || 960,720
+CaptureResolution = 480,480 | 640,480 | 1440, 1080 | 1920,1080 | 1920,1920 | 2048,1152 | 2048,1536 | 2560,1440 | 2576,1932 || 640,480
+VideoResolution = 176,144 | 320,240 | 640,480 | 1280,720 || 640,480
+FPS0 = 0,30 || 30
+FPS1 = 0,30 || 30
+FPS2 = 0,30 || 30
+FPS3 = 0,30 || 30
+FPS4 = 0,30 || 30
+FPS5 = 0,30 || 30
+FPS6 = 0,30 || 30
+FPS7 = 0,30 || 30
+; PictureForamt - MSL value
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+PictureFormat = 0 || 0
+Overlay = 0,1 || 1
+; Recommend display rotation
+;;; 0:NONE, 1:90, 2:180, 3:270
+RecommendDisplayRotation = 3
+; Recommend preview format for capture
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatCapture = 0
+; Recommend preview format for record
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatRecord = 0
+; Recommend preview resolution
+;;; 0: NORMAL ratio(4:3), 1: WIDE ratio(16:9), 2: SQUARE ratio(1:1)
+RecommendPreviewResolution = 960,720 | 1280,720 | 720,720 || 960,720
+; Camera facing direction
+;;; 0:REAR, 1:FRONT
+FacingDirection = 1
+
+
+[Strobe]
+;StrobeControl - Not support
+;StrobeCapabilities - Not support
+; Strobe mode - real setting value
+;;; N/A
+; Strobe mode - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:REDEYE_REDUCTION, 4:SLOW_SYNC, 5:FRONT_CURTAIN, 6:REAR_CURTAIN, 7:PERMANENT
+StrobeMode = 0,-255,-255,-255,-255,-255,-255,-255 || 0
+;StrobeStatus - Not support
+;StrobeEV - Not support
+
+
+[Effect]
+Brightness = 0,8 || 4
+;Contrast = -2,2 || 0
+;Saturation = 0,4 || 2
+;Sharpness = 0,4 || 2
+
+; White balance - real setting value
+;;; 0:AUTO, 1:INCANDESCENT, 4:FLUORESCENT, 5:DAYLIGHT, 6:CLOUDY_DAYLIGHT
+; White balance - MSL value(convert array index)
+;;; 0:NONE, 1:AUTO, 2:DAYLIGHT, 3:CLOUDY, 4:FLUORESCENT, 5:INCANDESCENT, 6:SHADE, 7:HORIZON, 8:FLASH, 9:CUSTOM
+WhiteBalance = -255,0,5,6,4,1,-255,-255,-255,-255 || 0
+
+; Color tone - real setting value
+;;; 0:NONE, 1:MONO, 6:NEGATIVE, 7:SEPIA, 4:COLD
+; Color tone - MSL value(convert array index)
+;;; 0:NONE, 1:MONO, 2:SEPIA, 3:NEGATIVE, 4:BLUE, 5:GREEN, 6:AQUA, 7:VIOLET, 8:ORANGE, 9:GRAY, 10:RED,
+;;; 11:ANTIQUE, 12:WARM, 13:PINK, 14:YELLOW, 15:PURPLE, 16:EMBOSS, 17:OUTLINE, 18:SOLARIZATION, 19:SKETCH, 20:WASHED,
+;;; 21:VINTAGE_WARM, 22:VINTAGE_COLD, 23:POSTERIZATION, 24:CARTOON, 25:SELECTIVE_RED, 26:SELECTIVE_GREEN, 27:SELECTIVE_BLUE, 28:SELECTIVE_YELLOW, 29:SELECTIVE_RED_YELLOW, 30:GRAPHICS
+ColorTone = 0,1,7,6,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Flip - MSL value(convert array index)
+;;; 0:NONE, 1:HORIZONTAL, 2:VERTICAL, 3:BOTH
+Flip = 0,1,2,3 || 0
+
+
+
+; Wide Dynamic Range - real setting value
+;;; N/A
+; Wide Dynamic Range - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO
+WDR = 0,-255,-255 || 0
+
+; Part color mode - real setting value
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+; Part color mode - MSL value(convert array index)
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+;PartColorMode = 0,1,2 || 0
+
+; Part color - real setting value
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+; Part color - MSL value(convert array index)
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT_BLUE, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+;PartColor = 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 || 0
+
+
+[Photograph]
+;LensInit = 0,1 || 0
+DigitalZoom = 0,0 || 0
+OpticalZoom = 0,0 || 0
+
+; Focus mode - real setting value
+;;; Not Support, no need to convert
+; Focus mode - MSL value(convert array index)
+;;; 0:NONE, 1:PAN, 2:AUTO, 3:MANUAL, 4:TOUCH_AUTO, 5:CONTINUOUS
+FocusMode = -255,0,-255,-255,-255,-255 || 0
+
+; Auto focus type - real setting value
+;;; 0:NORMAL, 1:MACRO, 2:FULL
+; Auto focus - MSL value(convert array index)
+;;; 0:NONE, 1:NORMAL, 2:MACRO, 3:FULL
+AFType = 0,-255,-255,-255 || 0
+
+; Auto exposure type - real setting value
+;;; 0:CENTER, 1:MATRIX, 2:SPOT, 3.MAX
+; Auto exposure mode - MSL value(convert array index)
+;;; 0,OFF 1,ALL 2,CENTER1  3,CENTER2 4,CENTER3 5,SPOT1 6,SPOT2 7,CUSTOM1 8,CUSTOM2
+AEType = -255,-255,0,-255,-255,-255,-255,-255,-255 || 0
+
+;ExposureValue - Not support
+;FNumber - Not support
+;ShutterSpeed - Not support
+
+; ISO - real setting value
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600
+; ISO - MSL value(convert array index)
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600, 7:3200
+ISO = 0,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Program mode - real setting value
+;;; 1:NONE, 2:PORTRAIT, 3:NIGHTSHOT, 4:BACK_LIGHT, 5:LANDSCAPE, 6:SPORTS, 7:PARTY_INDOOR, 8:BEACH_SNOW, 9:SUNSET, 10:DUSK_DAWN,
+;;; 11:FALL_COLOR, 12:FIREWORKS, 13:TEXT, 14:CANDLE_LIGHT
+; Program mode - MSL value(convert array index)
+;;; 0:NORMAL, 1:PORTRAIT, 2:LANDSCAPE, 3:SPORTS, 4:PARTY_N_INDOOR, 5:BEACH_N_INDOOR, 6:SUNSET, 7:DUSK_N_DAWN, 8:FALL_COLOR, 9:NIGHT_SCENE,
+;;; 10:FIREWORK, 11:TEXT, 12:SHOW_WINDOW, 13:CANDLE_LIGHT, 14:BACKLIGHT
+ProgramMode = 0,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Anti-handshake - real setting value
+;;; N/A
+; Anti-handshake - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:MOVIE_ON
+AntiHandshake = 0,-255,-255,-255 || 0
+
+; Video-stabilization - real setting value
+;;; 0:OFF, 1:ON
+; Video-stabilization - MSL value(convert array index)
+;;; 0:OFF, 1:ON
+VideoStabilization = 0 || 0
+
+; Face zoom mode
+;;; 0:OFF, 1:ON
+FaceZoomMode = 0 || 0
+; Face zoom level
+FaceZoomLevel = 0,0 || 0
+
+; PTZ(Pan Tilt Zoom) type
+;;; 0:Mechanical, 1:Electronic
+;PtzType = 0,1 || 1
+
+; Pan range for mechanical movement
+;PanMecha = -10,10
+
+; Pan range for electronic movement
+;PanElec = -10,10
+
+; Tilt range for mechanical movement
+;TiltMecha = -10,10
+
+; Tilt range for electronic movement
+;TiltElec = -10,10
+
+
+[Capture]
+; Output mode
+;;; No need to convert
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY
+OutputMode = 0,13 || 13
+JpegQuality = 0,100 || 95
+MultishotNumber = 1,1 || 1
+SensorEncodedCapture = 1
+; Support HDR
+;;; 0: OFF, 1: ON, 2: ON and Original
+SupportHDR = 0,-255,-255 || 0
+SupportZSL = 1
+
+[Detect]
+; Detect mode
+;;; 0:OFF, 1:ON
+DetectMode = 0,1 || 0
+;DetectNumber - Not support
+;DetectFocusSelect - Not support
+;DetectSelectNumber - Not support
+;DetectStatus - Not support
+
diff --git a/media-config-target-tm1/hal/etc/multimedia/mmfw_fmradio.ini b/media-config-target-tm1/hal/etc/multimedia/mmfw_fmradio.ini
new file mode 100644 (file)
index 0000000..7e075fe
--- /dev/null
@@ -0,0 +1,25 @@
+[tuning]
+enable = n
+
+[fmradio]
+
+mmfw_fmradio_rssi_threshold = 110
+mmfw_fmradio_noise_power = 0
+mmfw_fmradio_pilot_power = 0
+mmfw_fmradio_frequency_offset = 0
+
+mmfw_fmradio_softmute_enable = 0
+
+mmfw_fmradio_snr_threshold = 3
+mmfw_fmradio_cnt_threshold = 0
+mmfw_fmradio_softmute_start_snr = 37
+mmfw_fmradio_softmute_stop_snr = 0
+mmfw_fmradio_softmute_start_rssi = 0
+mmfw_fmradio_softmute_stop_rssi = 0
+mmfw_fmradio_softmute_start_mute = 12
+mmfw_fmradio_softmute_stop_atten = 0
+mmfw_fmradio_softmute_mute_rate = 0
+mmfw_fmradio_softmute_snr40 = 0
+
+volume_levels = 16
+volume_table = 127, 121, 115, 109, 103, 97, 91, 85, 79, 73, 67, 61, 55, 49, 43, 37
diff --git a/media-config-target-tm1/hal/etc/multimedia/mmfw_media_codec.ini b/media-config-target-tm1/hal/etc/multimedia/mmfw_media_codec.ini
new file mode 100644 (file)
index 0000000..6c6a91c
--- /dev/null
@@ -0,0 +1,89 @@
+[h261]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = , ,
+sw_encoder = , ,
+
+[h263]
+hw_decoder = sprddec_h263, video/x-h263, NV12
+hw_encoder = sprdenc_h263, video/x-raw,  H263
+sw_decoder = avdec_h263,   video/x-h263, I420
+sw_encoder = avenc_h263,   video/x-raw,  H263
+
+[h264]
+hw_decoder = sprddec_h264, video/x-h264, NV12
+hw_encoder = sprdenc_h264, video/x-raw,  H264_SP
+sw_decoder = avdec_h264,   video/x-h264, I420
+sw_encoder = avenc_h264,   video/x-raw,  H264_SP
+
+[mpeg4]
+hw_decoder = sprddec_mpeg4, video/mpeg, NV12
+hw_encoder = sprdenc_mpeg4, video/x-raw,  MPEG4_SP
+sw_decoder = avdec_mpeg4,   video/mpeg, I420
+sw_encoder = avenc_mpeg4,   video/x-raw,  MPEG4_SP
+
+[aac_lc]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = avenc_aac,   audio/x-raw, AAC_LC
+
+[aac_he]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[aac_he_ps]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[mp3]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_mp3,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[amr_nb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrnb,   audio/AMR, PCM_F32LE
+sw_encoder = amrnbenc, audio/x-raw, AMR_NB
+
+[amr_wb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrwb,   audio/AMR-WB, PCM_F32LE
+sw_encoder = , ,
+
+[vorbis]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = vorbisdec,   audio/x-vorbis, PCM_F32LE
+sw_encoder = , ,
+
+[flac]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_flac,   audio/x-flac, PCM_F32LE
+sw_encoder = , ,
+
+[wmav1]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav1,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmav2]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav2,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmapro]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmapro,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
diff --git a/media-config-target-tm1/hal/etc/multimedia/mmfw_media_streamer.ini b/media-config-target-tm1/hal/etc/multimedia/mmfw_media_streamer.ini
new file mode 100644 (file)
index 0000000..d366ede
--- /dev/null
@@ -0,0 +1,132 @@
+[general]
+; generating dot file representing pipeline state
+generate dot = no
+dot dir =
+
+; decodebin will be used instead of decoder node
+use decodebin = yes
+
+; comma separated list of element names which
+; will not be used in autoplug mode
+exclude elements = v4l2video,v4l2h264,v4l2mpeg4,omx
+
+; comma separated list of element names which
+; will require resources in autoplug mode
+resource elements = omx,sprd
+
+; comma separated list of arguments
+; that will pass to gst_init
+gstreamer arguments = --gst-debug=2
+
+; zero copy format will be used if both conditions(node name and format) are satisfied
+use zerocopy = yes
+
+; comma separated list of node names
+zerocopy node names = video_encoder,capsfilter
+
+; comma separated list of formats
+zerocopy formats = SN12
+
+;MEDIA_STREAMER_NODE_TYPE_SRC
+[node type 1]
+audio capture = pulsesrc
+video capture = waylandsrc
+camera = camerasrc
+
+;MEDIA_STREAMER_NODE_TYPE_SINK
+[node type 2]
+audio = pulsesink
+overlay = tizenwlsink
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_ENCODER
+[node type 3]
+video/x-h263 = avenc_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DECODER
+[node type 4]
+video/x-h263 = avdec_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_ENCODER
+[node type 5]
+audio/AMR = amrnbenc
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DECODER
+[node type 6]
+audio/AMR = amrnbdec
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_CONVERTER
+[node type 7]
+video/x-raw = videoconvert
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_CONVERTER
+[node type 8]
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_RESAMPLE
+[node type 9]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_PAY
+[node type 10]
+video/x-h263 = rtph263pay
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_PAY
+[node type 11]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DEPAY
+[node type 12]
+video/x-h263 = rtph263depay
+video/x-h264 = rtph264depay
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DEPAY
+[node type 13]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_RATE
+[node type 14]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_SCALE
+[node type 15]
+
+;MEDIA_STREAMER_NODE_TYPE_TEXT_OVERLAY
+[node type 16]
+text/x-raw = textoverlay
+
+;MEDIA_STREAMER_NODE_TYPE_PARSER
+[node type 17]
+video/x-h263 = h263parse
+video/x-h264 = h264parse
+
+;MEDIA_STREAMER_NODE_TYPE_FILTER
+[node type 18]
+
+;MEDIA_STREAMER_NODE_TYPE_TEE
+[node type 19]
+
+;MEDIA_STREAMER_NODE_TYPE_QUEUE
+[node type 20]
+
+;MEDIA_STREAMER_NODE_TYPE_MQUEUE
+[node type 21]
+
+;MEDIA_STREAMER_NODE_TYPE_MUXER
+[node type 22]
+
+;MEDIA_STREAMER_NODE_TYPE_DEMUXER
+[node type 23]
+
+;MEDIA_STREAMER_NODE_TYPE_RTP
+[node type 24]
+
+;MEDIA_STREAMER_NODE_TYPE_INPUT_SELECTOR
+[node type 25]
+
+;MEDIA_STREAMER_NODE_TYPE_OUTPUT_SELECTOR
+[node type 26]
+
+;MEDIA_STREAMER_NODE_TYPE_INTERLEAVE
+[node type 27]
+
+;MEDIA_STREAMER_NODE_TYPE_DEINTERLEAVE
+[node type 28]
+
diff --git a/media-config-target-tm1/hal/etc/multimedia/mmfw_player.ini b/media-config-target-tm1/hal/etc/multimedia/mmfw_player.ini
new file mode 100644 (file)
index 0000000..674f6b3
--- /dev/null
@@ -0,0 +1,102 @@
+[general]
+
+disable segtrap = yes ; same effect with --gst-disable-segtrap
+
+; set default videosink element according to video surface type(X, EVAS, NULL)
+videosink element overlay = tizenwlsink
+videosink element fake = fakesink
+video converter element =
+
+; decoder element keyword for resource management.
+video codec element hw = sprd
+video codec element sw = avdec
+video codec default type = hw ; hw or sw
+
+audio codec element hw =
+audio codec element sw = avdec
+audio codec default type = sw ; hw or sw
+
+; support with HW audio codec
+support audio effect = no
+support pcm exporting = no
+support pitch control = no
+support replaygain control = no
+
+audiosink element = pulsesink
+
+; audio offload information
+audio offload sink element =
+audio offload device type =    ; builtin-speaker,bt-a2dp,audio-jack,usb-audio from pulse stream-map
+audio offload media format =   ; Use the format keyword of media_format_mimetype_e, MAX:10
+
+; supported input format of external media source stream
+; Use the format keyword of media_format_mimetype_e, MAX:10
+media stream input format = AAC,H264_SP,H264_MP,H264_HP
+
+; if yes. gstreamer will not update registry
+skip rescan = yes
+delay before repeat = 50 ; msec
+
+; comma separated list of tocken which elemnts has it in it's name will not be used
+; this works if 'use decodebin = yes'
+element exclude keyword = v4l2
+
+; comma separated list of tocken
+; this works if 'use decodebin = yes'
+unsupported codec keyword = divx
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1 = --gst-debug=*:2
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; generating dot file representing pipeline state
+; DEFAULT MUST BE 'no'. If 'yes', mmplayer will set env-variable for it's session as "export GST_DEBUG_DUMP_DOT_DIR=/tmp/"
+generate dot = no
+
+; parameter is for only video to be determined
+; which clock will be used
+; if yes, system clock will be used
+; apart from this, audiosink is clock provider for audio
+use system clock = yes
+
+; allowed timeout for changing pipeline state
+live state change timeout = 30 ; sec
+localplayback state change timeout = 10 ; sec
+
+; delay in msec for sending EOS
+eos delay = 0 ; msec
+
+; extracted pcm buffer size
+pcm buffer size = 51200 ; 50Kbytes
+
+; max num of bo for sw codec
+video bo max = 10
+
+; video bo timeout (sec)
+video bo timeout = 10
+
+; setup pipeline with decodebin2
+use decodebin = no
+
+[http streaming]
+
+httpsrc element = souphttpsrc
+
+http buffering limit = 99.0 ; percent
+
+; if yes, use file for buffering.
+; if no, use memory for buffering.
+http use file buffer = no
+
+; ring buffer size when use mem buffer
+http ring buffer size = 20971520 ; 20MBytes
+
+http max size bytes = 1048576 ; bytes
+
+http buffering time = 1.2
+
+http timeout = 30 ; sec
diff --git a/media-config-target-tm1/hal/etc/multimedia/mmfw_player_audio_effect.ini b/media-config-target-tm1/hal/etc/multimedia/mmfw_player_audio_effect.ini
new file mode 100644 (file)
index 0000000..1394608
--- /dev/null
@@ -0,0 +1,17 @@
+[audio effect]
+; name of audio effect element
+audio effect element = audioeq
+
+; preset audio effect setting
+audio effect preset = no
+
+; custom audio effect setting (EQ/extension)
+audio effect custom = yes
+audio effect custom list = 0
+
+audio effect custom eq band num = 7 ; number of EQ bands
+audio effect custom eq band width = 33, 90, 242, 649, 1743, 4676, 12544 ; list of each EQ band width (Hz)
+audio effect custom eq band freq = 36, 98, 265, 711, 1907, 5117, 13727 ; list of each EQ band central frequency (Hz)
+
+audio effect custom min list = -12 ; list of minimum level value (the first element is for EQ, others for extension effect)
+audio effect custom max list = 12 ; list of maximum level value (the first element is for EQ, others for extension effect)
diff --git a/media-config-target-tm1/hal/etc/multimedia/mmfw_resource_manager.ini b/media-config-target-tm1/hal/etc/multimedia/mmfw_resource_manager.ini
new file mode 100644 (file)
index 0000000..e9ffdd5
--- /dev/null
@@ -0,0 +1,10 @@
+[max volume]
+video_overlay = -1
+video_decoder = -1
+video_encoder = -1
+camera = -1
+radio = -1
+
+[priority]
+media = 10
+interrupt = 99
diff --git a/media-config-target-tm1/hal/etc/multimedia/mmfw_streamrecorder.ini b/media-config-target-tm1/hal/etc/multimedia/mmfw_streamrecorder.ini
new file mode 100644 (file)
index 0000000..f9c1b82
--- /dev/null
@@ -0,0 +1,81 @@
+[general]
+;is encsink source is live
+encscink source is live = 0
+
+retrialcount = 10
+
+minimum frame = 5
+
+reset pause time = 0
+
+screen record = 1
+
+convert output buffer num = 6
+
+hw encoder supported = 1 ; 1 if supported and 'video codec element hw' should be formed.
+
+video codec element hw = sprd ; sprd (if verified) or verified hw codec element
+
+[encodebin]
+;MM_STREAMRECORDER_ENCBIN_PROFILE_VIDEO = 0 MM_STREAMRECORDER_ENCBIN_PROFILE_AUDIO = 1
+;MM_STREAMRECORDER_ENCBIN_PROFILE_IMAGE = 2 MM_STREAMRECORDER_ENCBIN_PROFILE_NUM = 3
+encsink bin profile = 0
+
+encsink bin auto audio resample = 0
+
+encsink bin auto colorspace = 1
+
+encsink bin auto audio convert = 1
+
+encsink bin use video toggle = 0
+
+[pipeline]
+encsink bin source = appsrc
+
+name of audio src = pulsesrc
+
+h264 encoder =
+
+h263 encoder = avenc_h263p
+
+mpeg4 encoder = avenc_mpeg4
+
+name of audio encoder = avenc_aac
+
+use parser  =
+
+name of 3GP muxer = avmux_3gp
+
+name of MP4 muxer = avmux_mp4
+
+name of video converter = videoconvert
+
+name of sink = filesink
+
+[video param]
+;/*ms*/
+video frame wait time = 200000
+
+[audio param]
+audio frame minimum space = 102400
+
+audio frame wait time = 20000
+
+[attribute]
+supported height = 1080,720,480,240,288,144
+
+supported width = 1920,1280,640,320,352,176
+
+;/*AMR, AAC, VORBIS ,PCM*/
+supported audio encoders = AMR,AAC,PCM
+
+;/* H263 , H264 , MPEG4 */
+supported video encoders = H263,MPEG4
+
+;/*3GP , AMR, MP4 , WAV, ADTS*/
+supported file formats = 3GP,MP4,AMR,ADTS,WAV
+
+[debug]
+; generating dot file representing pipeline state
+; do export GST_DEBUG_DUMP_DOT_DIR=/tmp/ in the shell (also do export to '/etc/profile.d/mmf.sh')
+generate dot = no
diff --git a/media-config-target-tm1/hal/etc/multimedia/mmfw_wfd_sink.ini b/media-config-target-tm1/hal/etc/multimedia/mmfw_wfd_sink.ini
new file mode 100644 (file)
index 0000000..9981dec
--- /dev/null
@@ -0,0 +1,231 @@
+[general]
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=2,*wfd*:5)
+gstparam1 = --gst-debug=2,*wfd*:5,*wfdtsdemux:1,*wfdrtpbuffer:1
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; allowed timeout for changing pipeline state
+state change timeout = 5; sec
+
+; 0: default value set by wfdrtspsrc element, other: user define value.
+jitter buffer latency=10
+
+; for retransmission request enable = yes, disable = no
+enable retransmission = no
+
+; for reset basetime, enable = yes, disable = no
+enable reset basetime = yes
+
+; Maximum number of nanoseconds that a buffer can be late before it is dropped by videosink (-1 unlimited)
+video sink max lateness=20000000
+
+; nanoseconds to be added to buffertimestamp by sink elements
+sink ts offset=250000000
+
+; if no, go asynchronously to PAUSED without preroll
+audio sink async=no
+
+; if no, go asynchronously to PAUSED without preroll
+video sink async=no
+
+; user agent
+user agent =
+
+[debug]
+; generating dot file representing pipeline state
+; do export GST_DEBUG_DUMP_DOT_DIR=/tmp/ in the shell
+generate dot = no
+
+; set property to wfdsrc plugin for dumping rtsp message
+dump rtsp message = yes
+
+; enable tracing buffers using pad probe
+trace buffers = no
+
+; enable tracing first buffer
+trace first buffer = no
+
+; enable tracing buffers of wfdsrc
+trace buffers of wfdsrc = no
+
+; enable dumping ts data (eg. /var/tmp/*.ts)
+dump ts data = no
+
+; enable dumping rtp data (eg. /var/tmp/screenmirroring_sink_rtp.dump)
+dump rtp data = no
+
+
+[pipeline]
+wfdsrc element = wfdsrc
+
+tsdemux element = wfdtsdemux
+
+audio hdcp element =
+
+aac parser element = aacparse
+
+aac decoder element = avdec_aac
+
+ac3 parser element = ac3parse
+
+ac3 decoder element =
+
+lpcm converter element =
+
+lpcm filter element = capsfilter
+
+audio resampler element = audioconvert
+
+audio volume element =
+
+audio sinkbin queue element = ;queue
+
+audio sink element = pulsesink
+
+video hdcp element =
+
+video h264 parser element = h264parse
+
+video h265 parser element =
+
+video h264 decoder element = avdec_h264
+
+video h265 decoder element =
+
+video converter element = videoconvert
+
+video filter element =
+
+video sink element = tizenwlsink
+
+video evas sink element = evaspixmapsink
+
+
+[wfd audio codecs]
+; 0x1: LPCM, 0x2: AAC, 0x4: AC3
+;default aac and LPCM
+audio codec=0x3
+
+audio latency=0x0
+
+;0x1 : 48000khz, 0x2: 44100khz
+audio sampling frequency=0x3
+
+; 0x1:2 channels, 0x2:4 channels, 0x4:6channels, 0x8:8channels
+audio channels=0x1
+
+
+[wfd video formats]
+; 0x0:not support, 0x1:H264
+video codec=0x1
+
+; 0x0:not supoort, 0x1: CHP, 0x2:CBP
+video profile=0x1
+
+video native resolution = 0x20
+
+video cea support=0x84ab;0x194ab
+
+video vesa support=0x1;0x5555555
+
+video hh support=0x555
+
+; 0x1:base, 0x2:high
+video profile=0x1
+
+; 0x1:level_3_1, 0x2:level_3_2, 0x4:level_4, 0x8:level_4_1, 0x10:level_4_2
+video level=0x2
+
+video latency=0x0
+
+video vertical resolution=720
+
+video horizontal resolution=1280
+
+video minimum slicesize=0
+
+video slice encoding params=200
+
+video framerate control support=11
+
+
+[wfd hdcp content protection]
+enable hdcp = no
+
+;0x0:none, 0x1:HDCP_2.0, 0x2:HDCP_2.1
+hdcp content protection=0x0
+
+hdcp port no=0
+
+
+[wfd2 video formats]
+;0x0:not support, 0x1:H264, 0x2:H265, 0x3:both
+video codec=0x3
+
+video native resolution = 0x20
+
+video non transcoding support=1
+
+[wfd2 h264 video format]
+video cea support=0x194ab
+
+video vesa support=0x5555555
+
+video hh support=0x555
+
+video profile=0x1
+
+video level=0x2
+
+video latency=0x0
+
+video vertical resolution=1080
+
+video horizontal resolution=1920
+
+video minimum slicesize=0
+
+video slice encoding params=200
+
+video framerate control support=0
+
+[wfd2 h265 video format]
+video cea support=394ab
+
+video vesa support=5555555
+
+video hh support=555
+
+; 0x1:WFD_H265_MAIN_PROFILE
+video profile=0x1
+
+; 0x1:WFD_H265_LEVEL_3_1
+video level=0x2
+
+video latency=0x0
+
+video vertical resolution=2360
+
+video horizontal resolution=3840
+
+video minimum slicesize=0
+
+video slice encoding params=200
+
+video framerate control support=0
+
+[wfd2 audio codecs]
+; 0x1: LPCM, 0x2: AAC, 0x4: AC3
+;default aac and LPCM
+audio codec=0x3
+
+;see mm_wfd_sink_wfd_enum.h
+audio lpcm mode=0x3
+
+audio aac mode=0x1
+
+audio ac3 mode=0x1
+
diff --git a/media-config-target-tm1/hal/etc/multimedia/mused.conf b/media-config-target-tm1/hal/etc/multimedia/mused.conf
new file mode 100644 (file)
index 0000000..4c2d5cc
--- /dev/null
@@ -0,0 +1,66 @@
+[muse]
+; The 'hosts' parameter defines the modules,
+; which the user would like to connect to the muse.
+; If you want to add host, then write manually.
+hosts=player, camera, recorder
+logfile=/var/log/mused/muse-server
+lockfile=/tmp/.muse_core.lock
+min_timeout=5
+max_timeout=90
+;100MB=100000
+memory_threshold=100000
+enable_watch_external_storage=1
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1=--gst-debug=*:2,*STATE*:4,*pulse*:4,*audiobasesink:4
+gstparam2=--gst-disable-segtrap
+gstparam3=
+gstparam4=
+gstparam5=
+gstparam6=
+gstparam7=
+gstparam8=
+gstparam9=
+gstparam10=
+
+; gstparam#=--gst-plugin-load=/usr/lib/gstreamer-1.0/libgstcoreelements.so'
+; can be substituted with gstpreload=coreelements'
+gstpreload=
+
+[player]
+; The 'player' parameter represents the muse-player.
+; This module recovers the "capi-media-player".
+path=libmuse-player.so
+preloaded=no
+timeout=60
+disable_watchdog_api=-1
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[camera]
+; The 'camera' parameter represents the muse-camera.
+; This module recovers the "capi-media-camera".
+path=libmuse-camera.so
+preloaded=no
+timeout=10
+;api 2 is camera_dispatcher_start_preview
+disable_watchdog_api=2
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[recorder]
+; The 'recorder' parameter represents the muse-recorder.
+; This module recovers the "capi-media-recorder".
+; This one should be paired with the 'camera' module.
+path=libmuse-recorder.so
+preloaded=no
+timeout=10
+;api 5 is recorder_start
+disable_watchdog_api=5
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
diff --git a/media-config-target-tm1/hal/etc/multimedia/scmirroring_src.ini b/media-config-target-tm1/hal/etc/multimedia/scmirroring_src.ini
new file mode 100644 (file)
index 0000000..1fe727d
--- /dev/null
@@ -0,0 +1,117 @@
+
+[general]
+
+; set default video source element
+; 0: ximagesrc, 1: xvimagesrc, 2: camerasrc, 3: videotestsrc, 4:waylandsrc
+videosrc element = 4
+
+; set default video encoder element
+video encoder element = sprdenc_h264
+
+disable segtrap = yes ; same effect with --gst-disable-segtrap
+
+mtu_size value = 1400
+
+video converter element =
+
+; if yes. gstreamer will not update registry
+skip rescan = yes
+
+; set default audio encoder element
+audio encoder aac name = avenc_aac
+audio encoder ac3 name = avenc_ac3
+
+; set audio codec for source
+; according to GstWFDAudioFormat
+; 0x1: LPCM, 0x2: AAC, 0x4: AC3
+; default aac and LPCM
+audio codec = 0x3
+
+; set exynos audiosrc property
+; exynosaudio device name = alsa_output.0.analog-stereo.monitor
+exynosaudio device name = alsa_output.hw_0_0.monitor
+audio properties name = props,media.role=loopback-mirroring
+
+exynosaudio buffer_time = 200000
+; set qcmsm audiosrc property
+qcmsmaudio device name = hw:0,8
+qcmsmaudio buffer_time = 1000
+
+audio latency_time = 10000
+audio do_timestamp = 0
+
+; set video codec for source
+; according to GstWFDVideoFormat
+; 0x0: Not supportted, 0x1: H264
+; default H.264
+video codec = 0x1
+
+; Video Resolutions supported need to be filled in 32 bits according to WFD spec
+video resolution_supported = 0x00000001
+
+; Bitrate range for different resolutions
+; Resolution Set 1: default
+; Resolution Set 2: 1920 x 1080
+; Resolution Set 3: 1280 x 720
+; Resolution Set 4: 960 x 540
+; Resolution Set 5: 854 x 480
+; Resolution Set 6: 640 x 360
+; Resolution Set 7: 720 Remote Touch
+; UDP bitrate settings
+INIT_UDP_resolution_set_1 = 1048576
+MIN_UDP_resolution_set_1 = 838861
+MAX_UDP_resolution_set_1 = 1572864
+
+INIT_UDP_resolution_set_2 = 5242880
+MIN_UDP_resolution_set_2 = 3670016
+MAX_UDP_resolution_set_2 = 6291456
+
+INIT_UDP_resolution_set_3 = 2621440
+MIN_UDP_resolution_set_3 = 1572864
+MAX_UDP_resolution_set_3 = 3145728
+
+INIT_UDP_resolution_set_4 = 2621440
+MIN_UDP_resolution_set_4 = 1572864
+MAX_UDP_resolution_set_4 = 3145728
+
+INIT_UDP_resolution_set_5 = 838861
+MIN_UDP_resolution_set_5 = 314573
+MAX_UDP_resolution_set_5 = 1048576
+
+INIT_UDP_resolution_set_6 = 838861
+MIN_UDP_resolution_set_6 = 314573
+MAX_UDP_resolution_set_6 = 838861
+
+INIT_UDP_resolution_set_7 = 1572864
+MIN_UDP_resolution_set_7 = 838861
+MAX_UDP_resolution_set_7 = 1572864
+
+
+; Native resolution supported  CEA resolution=0, VESA resolution=1, HH resolution=2
+video native_resolution = 0
+
+; HDCP encryption
+encryption HDCP_enabled = 1
+
+; UIBC Capability
+uibc UIBC_GEN_capability = 15
+
+; parameters for initializing gstreamer
+gstparam1 =
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; generating dot file representing pipeline state
+generate dot = no
+
+; parameter for clock provide in audiosink
+provide clock = yes
+
+;dumping ts stream to file
+dump ts = 0
+
+; set R2 feature enable
+; 0: disable, 1: enable
+wfd2 wfd2_supported = 1
diff --git a/media-config-target-tm1/hal/etc/murphy/murphy.lua b/media-config-target-tm1/hal/etc/murphy/murphy.lua
new file mode 100644 (file)
index 0000000..b670e67
--- /dev/null
@@ -0,0 +1,105 @@
+m = murphy.get()
+
+-- load the dlog plugin
+m:try_load_plugin('dlog')
+
+-- load the console plugin
+-- m:try_load_plugin('console')
+
+-- load the dbus plugin
+-- if m:plugin_exists('dbus') then
+--     m:load_plugin('dbus')
+-- end
+
+-- load the native resource plugin
+if m:plugin_exists('resource-native') then
+    m:load_plugin('resource-native')
+    m:info("native resource plugin loaded")
+else
+    m:info("No native resource plugin found...")
+end
+
+-- load the dbus resource plugin
+m:try_load_plugin('resource-dbus', {
+    dbus_bus = "system",
+    dbus_service = "org.Murphy",
+    dbus_track = true,
+    default_zone = "driver",
+    default_class = "implicit"
+})
+
+-- load the domain control plugin
+if m:plugin_exists('domain-control') then
+    m:load_plugin('domain-control')
+else
+    m:info("No domain-control plugin found...")
+end
+
+if m:plugin_exists('glib') then
+    m:load_plugin('glib')
+else
+    m:info("No glib plugin found...")
+end
+
+-- define application classes
+application_class {
+    name     = "interrupt",
+    priority = 99,
+    modal    = false,
+    share    = false,
+    order    = "fifo"
+}
+
+application_class {
+    name     = "media",
+    priority = 10,
+    modal    = false,
+    share    = false,
+    order    = "lifo"
+}
+
+-- define zone attributes
+zone.attributes {
+    type = {mdb.string, "common", "rw"},
+    location = {mdb.string, "anywhere", "rw"}
+}
+
+-- define zones
+zone {
+     name = "driver",
+     attributes = {
+         type = "common",
+         location = "front-left"
+     }
+}
+
+-- define resource classes
+resource.class {
+     name = "video_overlay",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_decoder",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_encoder",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "camera",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "radio",
+     shareable = false,
+     sync_release = true
+}
diff --git a/media-config-target-tm1/hal/etc/profile.d/mmf.sh b/media-config-target-tm1/hal/etc/profile.d/mmf.sh
new file mode 100644 (file)
index 0000000..7dac276
--- /dev/null
@@ -0,0 +1,6 @@
+#!/bin/sh
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+export GST_DEBUG=2
+export ORC_CODE=debug
+export ORC_DEBUG=5
+export GST_PLUGIN_PATH=@HAL_LIBDIR@/gstreamer-1.0
diff --git a/media-config-target-tm1/hal/etc/pulse/client.conf b/media-config-target-tm1/hal/etc/pulse/client.conf
new file mode 100644 (file)
index 0000000..3637b20
--- /dev/null
@@ -0,0 +1,37 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for PulseAudio clients. See pulse-client.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+; default-sink =
+; default-source =
+default-server = /var/run/pulse/native
+; default-dbus-server =
+
+autospawn = no
+; daemon-binary = /usr/bin/pulseaudio
+; extra-arguments = --log-target=syslog
+
+; cookie-file =
+
+enable-shm = no
+shm-size-bytes = 4194304 # setting this 0 will use the system-default, usually 64 MiB
+
+; auto-connect-localhost = no
+; auto-connect-display = no
diff --git a/media-config-target-tm1/hal/etc/pulse/daemon.conf b/media-config-target-tm1/hal/etc/pulse/daemon.conf
new file mode 100644 (file)
index 0000000..431e66b
--- /dev/null
@@ -0,0 +1,83 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for the PulseAudio daemon. See pulse-daemon.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+daemonize = yes
+; fail = yes
+; allow-module-loading = yes
+; allow-exit = yes
+; use-pid-file = yes
+system-instance = yes
+; local-server-type = user
+; enable-shm = yes
+; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
+; lock-memory = no
+; cpu-limit = no
+
+; high-priority = yes
+; nice-level = -11
+
+realtime-scheduling = yes
+realtime-priority = 5
+
+; exit-idle-time = 20
+; scache-idle-time = 20
+
+; dl-search-path = (depends on architecture)
+
+; load-default-script-file = yes
+; default-script-file = /etc/pulse/default.pa
+
+log-target = dlog
+log-level = info
+; log-meta = no
+; log-time = no
+; log-backtrace = 0
+
+resample-method = speex-fixed-3
+; enable-remixing = yes
+; enable-lfe-remixing = no
+
+flat-volumes = no
+
+; rlimit-fsize = -1
+; rlimit-data = -1
+; rlimit-stack = -1
+; rlimit-core = -1
+; rlimit-as = -1
+; rlimit-rss = -1
+; rlimit-nproc = -1
+; rlimit-nofile = 256
+; rlimit-memlock = -1
+; rlimit-locks = -1
+; rlimit-sigpending = -1
+; rlimit-msgqueue = -1
+; rlimit-nice = 31
+; rlimit-rtprio = 9
+; rlimit-rttime = 1000000
+
+; default-sample-format = s16le
+; default-sample-rate = 44100
+alternate-sample-rate = 44100
+; default-sample-channels = 2
+; default-channel-map = front-left,front-right
+
+; default-fragments = 4
+; default-fragment-size-msec = 25
diff --git a/media-config-target-tm1/hal/etc/pulse/default.pa b/media-config-target-tm1/hal/etc/pulse/default.pa
new file mode 100644 (file)
index 0000000..ef8f114
--- /dev/null
@@ -0,0 +1,149 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started per-user
+# (i.e. not in system mode)
+
+.nofail
+
+### Load something into the sample cache
+#load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
+#load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-access /usr/share/sounds/generic.wav
+
+.fail
+
+### Automatically restore the volume of streams and devices
+load-module module-device-restore
+load-module module-stream-restore
+load-module module-card-restore
+
+### Automatically augment property information from .desktop files
+### stored in /usr/share/application
+load-module module-augment-properties
+
+### Load audio drivers statically
+### (it's probably better to not load these drivers manually, but instead
+### use module-udev-detect -- see below -- for doing this automatically)
+#load-module module-alsa-sink
+#load-module module-alsa-source device=hw:1,0
+#load-module module-null-sink
+#load-module module-pipe-sink
+
+### Automatically load driver modules depending on the hardware available
+.ifexists module-udev-detect.so
+load-module module-udev-detect
+.else
+### Use the static hardware detection module (for systems that lack udev support)
+load-module module-detect
+.endif
+
+### Automatically connect sink and source if JACK server is present
+.ifexists module-jackdbus-detect.so
+.nofail
+load-module module-jackdbus-detect channels=2
+.fail
+.endif
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Load several protocols
+.ifexists module-esound-protocol-unix.so
+load-module module-esound-protocol-unix
+.endif
+load-module module-native-protocol-unix
+
+### Network access (may be configured with paprefs, so leave this commented
+### here if you plan to use paprefs)
+#load-module module-esound-protocol-tcp
+#load-module module-native-protocol-tcp
+
+### Load the RTP receiver module (also configured via paprefs, see above)
+#load-module module-rtp-recv
+
+### Load the RTP sender module (also configured via paprefs, see above)
+#load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
+#load-module module-rtp-send source=rtp.monitor
+
+### Load additional modules from GConf settings. This can be configured with the paprefs tool.
+### Please keep in mind that the modules configured by paprefs might conflict with manually
+### loaded modules.
+.ifexists module-gconf.so
+.nofail
+load-module module-gconf
+.fail
+.endif
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Honour intended role device property
+load-module module-intended-roles
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle
+
+### If autoexit on idle is enabled we want to make sure we only quit
+### when no local session needs us anymore.
+.ifexists module-console-kit.so
+load-module module-console-kit
+.endif
+.ifexists module-systemd-login.so
+load-module module-systemd-login
+.endif
+
+### Enable positioned event sounds
+load-module module-position-event-sounds
+
+### Cork music/video streams when a phone stream is active
+load-module module-role-cork
+
+### Modules to allow autoloading of filters (such as echo cancellation)
+### on demand. module-filter-heuristics tries to determine what filters
+### make sense, and module-filter-apply does the heavy-lifting of
+### loading modules and rerouting streams.
+load-module module-filter-heuristics
+load-module module-filter-apply
+
+### Load DBus protocol
+.ifexists module-dbus-protocol.so
+load-module module-dbus-protocol
+.endif
+
+
+load-module module-switch-on-port-available
+
+### Make some devices default
+#set-default-sink output
+#set-default-source input
diff --git a/media-config-target-tm1/hal/etc/pulse/device-map.json b/media-config-target-tm1/hal/etc/pulse/device-map.json
new file mode 100644 (file)
index 0000000..c12086a
--- /dev/null
@@ -0,0 +1,49 @@
+{
+       "device-types":[
+               {
+                       "device-type":"builtin-speaker",
+                       "playback-devices":{"normal":"alsa:sprdphone,0", "call-voice":"alsa:VIRTUALAUDIOW,0"}
+               },
+               {
+                       "device-type":"builtin-receiver",
+                       "playback-devices":{"normal":"alsa:sprdphone,0", "call-voice":"alsa:VIRTUALAUDIOW,0"}
+               },
+               {
+                       "device-type":"builtin-mic",
+                       "capture-devices":{"normal":"alsa:sprdphone,0"}
+               },
+               {
+                       "device-type":"audio-jack",
+                       "playback-devices":{"normal":"alsa:sprdphone,0", "call-voice":"alsa:VIRTUALAUDIOW,0"},
+                       "capture-devices":{"normal":"alsa:sprdphone,0"}
+               },
+               {
+                       "device-type":"hdmi",
+                       "playback-devices":{"normal":"alsa:sprdphone,0"}
+               },
+               {
+                       "device-type":"bt-sco",
+                       "playback-devices":{"normal":"alsa:sprdphone,0", "call-voice":"alsa:VIRTUALAUDIOW,0"},
+                       "capture-devices":{"normal":"alsa:sprdphone,0"}
+               }
+       ],
+       "device-files":{
+               "playback-devices":[
+                       {
+                               "device-string":"alsa:sprdphone,0",
+                               "role":{"normal":"rate=44100"
+                               }
+                       },
+                       {
+                               "device-string":"alsa:VIRTUALAUDIOW,0",
+                               "role":{"call-voice":"rate=16000 channels=1 tsched=0 alternate_rate=16000"}
+                       }
+               ],
+               "capture-devices":[
+                       {
+                               "device-string":"alsa:sprdphone,0",
+                               "role":{"normal":"rate=44100"}
+                       }
+               ]
+       }
+}
diff --git a/media-config-target-tm1/hal/etc/pulse/stream-map.json b/media-config-target-tm1/hal/etc/pulse/stream-map.json
new file mode 100644 (file)
index 0000000..f492620
--- /dev/null
@@ -0,0 +1,263 @@
+{
+       "latencies":[
+               {
+                       "type":"low",
+                       "fragsize-ms":25,
+                       "minreq-ms":-1,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"mid",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"high",
+                       "fragsize-ms":75,
+                       "minreq-ms":-1,
+                       "tlength-ms":400,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"voip",
+                       "fragsize-ms":20,
+                       "minreq-ms":20,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":-1,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default-async",
+                       "fragsize-ms":50,
+                       "minreq-ms":20,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+       ],
+       "volumes":[
+               {
+                       "type":"master",
+                       "is-hal-volume":1
+               },
+               {
+                       "type":"media",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"system",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"alarm",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"notification",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voice",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"ringtone",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voip",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"call",
+                       "is-hal-volume":1
+               }
+       ],
+       "streams":[
+               {
+                       "role":"media",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["audio-jack","network","builtin-mic"],
+                       "avail-out-devices":["forwarding","audio-jack","bt-a2dp","usb-audio","network","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"system",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"system"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["forwarding","audio-jack","bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"alarm",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"alarm"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"notification",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"notification"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"emergency",
+                       "priority" : 4,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-information",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"voice"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-recognition",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["audio-jack","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"voice-recognition-service",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["audio-jack","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"ringtone-voip",
+                       "priority" : 5,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","sound-manager"]
+               },
+               {
+                       "role":"ringtone-call",
+                       "priority" : 6,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"ringbacktone-call",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"call"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","bt-a2dp","builtin-receiver","builtin-speaker"],
+                       "avail-frameworks":["wav-player","tone-player"]
+               },
+               {
+                       "role":"voip",
+                       "priority" : 5,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"voip"},
+                       "avail-in-devices":["builtin-mic","audio-jack","bt-sco"],
+                       "avail-out-devices":["builtin-receiver","builtin-speaker","audio-jack","bt-sco"],
+                       "avail-frameworks":["audio-io","tone-player","sound-manager"]
+               },
+               {
+                       "role":"call-voice",
+                       "priority" : 6,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"call"},
+                       "avail-in-devices":["builtin-mic","audio-jack","bt-sco"],
+                       "avail-out-devices":["builtin-receiver","builtin-speaker","audio-jack","bt-sco"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"call-video",
+                       "priority" : 6,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"call"},
+                       "avail-in-devices":["builtin-mic","audio-jack","bt-sco"],
+                       "avail-out-devices":["builtin-receiver","builtin-speaker","audio-jack","bt-sco"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"radio",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","builtin-speaker"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"loopback",
+                       "priority" : 2,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["builtin-mic","usb-audio"],
+                       "avail-out-devices":["builtin-speaker","usb-audio","bt-a2dp"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"loopback-mirroring",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["forwarding"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"ext-media",
+                       "priority" : 3,
+                       "route-type" : "manual-ext",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["network"],
+                       "avail-out-devices":["bt-a2dp", "usb-audio","network"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"solo",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["audio-jack","bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["wav-player","tone-player"]
+               }
+       ]
+}
diff --git a/media-config-target-tm1/hal/etc/pulse/system.pa b/media-config-target-tm1/hal/etc/pulse/system.pa
new file mode 100644 (file)
index 0000000..0e92784
--- /dev/null
@@ -0,0 +1,74 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started in system
+# mode.
+
+### Automatically load driver modules depending on the hardware available
+#.ifexists module-udev-detect.so
+load-module module-udev-detect
+#.endif
+
+### Load several protocols
+load-module module-native-protocol-unix auth-anonymous=1
+
+### Load module-tizenaudio-policy
+load-module module-tizenaudio-policy
+
+### Sound Player module
+load-module module-sound-player
+load-module module-tone-player
+load-module module-role-ducking global=1 trigger_roles=solo/notification ducking_roles=media,system,alarm,notification,voice-information,ext-media/media,ext-media volume=0%/25% fade_in=0/1000 fade_out=0/1000
+load-module module-poweroff
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Automatically restore the volume of streams and devices
+#load-module module-stream-restore
+#load-module module-device-restore
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+.ifexists module-dbus-protocol.so
+### If you want to allow TCP connections, set access to "remote" or "local,remote".
+load-module module-dbus-protocol access=local
+.endif
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+#load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle timeout=1
+
+load-sample camera-shutter-01 /usr/share/sounds/mm-camcorder/capture_shutter_01.ogg
+load-sample camera-shutter-02 /usr/share/sounds/mm-camcorder/capture_shutter_02.ogg
+load-sample recording-start /usr/share/sounds/mm-camcorder/recording_start_01.ogg
+load-sample recording-stop /usr/share/sounds/mm-camcorder/recording_stop_01.ogg
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf
new file mode 100644 (file)
index 0000000..db78eb4
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'Aux' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf
new file mode 100644 (file)
index 0000000..baf674a
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'FM' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-radio
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+.include analog-input.conf.common
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf
new file mode 100644 (file)
index 0000000..4be5722
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf
new file mode 100644 (file)
index 0000000..f7f3085
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic/Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf
new file mode 100644 (file)
index 0000000..2a36f2f
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+name = analog-input-microphone
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common
new file mode 100644 (file)
index 0000000..b35e7af
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common element for all microphone inputs
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Mic Select'
+
+[Element Mic Select]
+enumeration = select
+
+[Option Mic Select:Mic1]
+name = input-microphone
+priority = 20
+
+[Option Mic Select:Mic2]
+name = input-microphone
+priority = 19
+
+;;; Various Boosts
+
+[Element Mic Boost (+20dB)]
+switch = select
+volume = merge
+
+[Option Mic Boost (+20dB):on]
+name = input-boost-on
+
+[Option Mic Boost (+20dB):off]
+name = input-boost-off
+
+[Element Mic Boost]
+switch = select
+volume = merge
+
+[Option Mic Boost:on]
+name = input-boost-on
+
+[Option Mic Boost:off]
+name = input-boost-off
+
+[Element Front Mic Boost]
+switch = select
+
+[Option Front Mic Boost:on]
+name = input-boost-on
+
+[Option Front Mic Boost:off]
+name = input-boost-off
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf
new file mode 100644 (file)
index 0000000..8531ec7
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'TV Tuner' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-video
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf
new file mode 100644 (file)
index 0000000..74c76f0
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Video' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf
new file mode 100644 (file)
index 0000000..5055f90
--- /dev/null
@@ -0,0 +1,54 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; A fallback for devices that lack seperate Mic/Line/Aux/Video/TV
+; Tuner/FM elements
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Capture]
+required = volume
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required-absent = any
+
+[Element Line]
+required-absent = any
+
+[Element Aux]
+required-absent = any
+
+[Element Video]
+required-absent = any
+
+[Element Mic/Line]
+required-absent = any
+
+[Element TV Tuner]
+required-absent = any
+
+[Element FM]
+required-absent = any
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common
new file mode 100644 (file)
index 0000000..951e11f
--- /dev/null
@@ -0,0 +1,294 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Mixer path for PulseAudio's ALSA backend, common elements for all
+; input paths. If multiple options by the same id are discovered they
+; will be suffixed with a number to distuingish them, in the same
+; order they appear here.
+;
+; Source selection should use the following names:
+;
+;       input                       -- If we don't know the exact kind of input
+;       input-microphone
+;       input-microphone-internal
+;       input-microphone-external
+;       input-linein
+;       input-video
+;       input-radio
+;       input-docking-microphone
+;       input-docking-linein
+;       input-docking
+;
+;  We explicitly don't want to wrap the following sources:
+;
+;       CD
+;       Synth/MIDI
+;       Phone
+;       Mix
+;       Digital/SPDIF
+;       Master
+;       PC Speaker
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Input Source Select'
+
+[Element Input Source Select]
+enumeration = select
+
+[Option Input Source Select:Input1]
+name = input
+priority = 10
+
+[Option Input Source Select:Input2]
+name = input
+priority = 5
+
+;;; 'Input Source'
+
+[Element Input Source]
+enumeration = select
+
+[Option Input Source:Mic]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Microphone]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Front Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Front Microphone]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Internal Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Line]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line-In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Docking-Station]
+name = input-docking
+priority = 17
+
+[Option Input Source:AUX IN]
+name = input
+priority = 10
+
+;;; 'Capture Source'
+
+[Element Capture Source]
+enumeration = select
+
+[Option Capture Source:TV Tuner]
+name = input-video
+
+[Option Capture Source:FM]
+name = input-radio
+
+[Option Capture Source:Mic/Line]
+name = input
+
+[Option Capture Source:Line/Mic]
+name = input
+
+[Option Capture Source:Mic]
+name = input-microphone
+
+[Option Capture Source:Microphone]
+name = input-microphone
+
+[Option Capture Source:Int Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Int DMic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Mic]
+name = input-microphone-internal
+
+[Option Capture Source:iMic]
+name = input-microphone-internal
+
+[Option Capture Source:i-Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Microphone]
+name = input-microphone-internal
+
+[Option Capture Source:Front Mic]
+name = input-microphone
+
+[Option Capture Source:Front Microphone]
+name = input-microphone
+
+[Option Capture Source:Rear Mic]
+name = input-microphone
+
+[Option Capture Source:Mic1]
+name = input-microphone
+
+[Option Capture Source:Mic2]
+name = input-microphone
+
+[Option Capture Source:D-Mic]
+name = input-microphone
+
+[Option Capture Source:IntMic]
+name = input-microphone-internal
+
+[Option Capture Source:ExtMic]
+name = input-microphone-external
+
+[Option Capture Source:Ext Mic]
+name = input-microphone-external
+
+[Option Capture Source:E-Mic]
+name = input-microphone-external
+
+[Option Capture Source:e-Mic]
+name = input-microphone-external
+
+[Option Capture Source:LineIn]
+name = input-linein
+
+[Option Capture Source:Analog]
+name = input
+
+[Option Capture Source:Line]
+name = input-linein
+
+[Option Capture Source:Line-In]
+name = input-linein
+
+[Option Capture Source:Line In]
+name = input-linein
+
+[Option Capture Source:Video]
+name = input-video
+
+[Option Capture Source:Aux]
+name = input
+
+[Option Capture Source:Aux0]
+name = input
+
+[Option Capture Source:Aux1]
+name = input
+
+[Option Capture Source:Aux2]
+name = input
+
+[Option Capture Source:Aux3]
+name = input
+
+[Option Capture Source:AUX IN]
+name = input
+
+[Option Capture Source:Aux In]
+name = input
+
+[Option Capture Source:AOUT]
+name = input
+
+[Option Capture Source:AUX]
+name = input
+
+[Option Capture Source:Cam Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 1]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 2]
+name = input-microphone
+
+[Option Capture Source:Analog Inputs]
+name = input
+
+[Option Capture Source:Unknown1]
+name = input
+
+[Option Capture Source:Unknown2]
+name = input
+
+[Option Capture Source:Docking-Station]
+name = input-docking
+
+[Option Capture Source:Dock Mic]
+name = input-docking-microphone
+
+;;; 'Mic Jack Mode'
+
+[Element Mic Jack Mode]
+enumeration = select
+
+[Option Mic Jack Mode:Mic In]
+name = input-microphone
+
+[Option Mic Jack Mode:Line In]
+name = input-linein
+
+;;; 'Digital Input Source'
+
+[Element Digital Input Source]
+enumeration = select
+
+[Option Digital Input Source:Analog Inputs]
+name = input
+
+[Option Digital Input Source:Digital Mic 1]
+name = input-microphone
+
+[Option Digital Input Source:Digital Mic 2]
+name = input-microphone
+
+;;; Various Boosts
+
+[Element Capture Boost]
+switch = select
+
+[Option Capture Boost:on]
+name = input-boost-on
+
+[Option Capture Boost:off]
+name = input-boost-off
+
+[Element Auto Gain Control]
+switch = select
+
+[Option Auto Gain Control:on]
+name = input-agc-on
+
+[Option Auto Gain Control:off]
+name = input-agc-off
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf
new file mode 100644 (file)
index 0000000..f2fd31c
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone2' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 89
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the second headphones, not
+; the first headphones. But it should not hurt if we leave the
+; headphone jack enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf
new file mode 100644 (file)
index 0000000..2131cfe
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+[Element Headphone]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the first headphones, not
+; the second headphones. But it should not hurt if we leave the second
+; headphone jack enabled nonetheless.
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf
new file mode 100644 (file)
index 0000000..0a43e27
--- /dev/null
@@ -0,0 +1,85 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage in laptops that have a seperate LFE speaker
+; connected to the Master mono connector
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 40
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all-no-lfe
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf
new file mode 100644 (file)
index 0000000..542edc4
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage on boards that have a seperate Mono output plug.
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 50
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = off
+volume = off
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf
new file mode 100644 (file)
index 0000000..aea7853
--- /dev/null
@@ -0,0 +1,94 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Speaker' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = mute
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = mute
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = mute
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf
new file mode 100644 (file)
index 0000000..fc30800
--- /dev/null
@@ -0,0 +1,92 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for the 'default' output. Note that a-o-speaker.conf has a
+; higher priority than this
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 99
+
+[Element Hardware Master]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = ignore
+volume = ignore
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the default output, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = ignore
+volume = zero
+
+[Element Headphone2]
+switch = ignore
+volume = zero
+
+[Element Speaker]
+switch = ignore
+volume = off
+
+[Element Front]
+switch = ignore
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = ignore
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = ignore
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = ignore
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common
new file mode 100644 (file)
index 0000000..3204846
--- /dev/null
@@ -0,0 +1,128 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common part of all paths
+
+; So here's generally how mixer paths are used by PA: PA goes through
+; a mixer path file from top to bottom and checks if a mixer element
+; described therein exists. If so it is added to the list of mixer
+; elements PA will control, keeping the order it read them in. If a
+; mixer element described here has set the required= or
+; required-absent= directives a path might not be accepted as valid
+; and is ignored in its entirety (see below). However usually if a
+; element listed here is missing this one element is ignored but not
+; the entire path.
+;
+; When a device shall be muted/unmuted *all* elements listed in a path
+; file with "switch = mute" will be toggled.
+;
+; When a device shall change its volume, PA will got through the list
+; of all elements with "volume = merge" and set the volume on the
+; first element. If that element does not support dB volumes, this is
+; where the story ends. If it does support dB volumes, PA divides the
+; requested volume by the volume that was set on this element, and
+; then go on to the next element with "volume = merge" and then set
+; that there, and so on.  That way the first volume element in the
+; path will be the one that does the 'biggest' part of the overall
+; volume adjustment, with the remaining elements usually being set to
+; some value next to 0dB. This logic makes sure we get the full range
+; over all volume sliders and a very high granularity of volumes
+; already in hardware.
+;
+; All switches and enumerations set to "select" are exposed via the
+; "port" functionality of sinks/sources. Basically every possible
+; switch setting and every possible enumeration setting will be
+; combined and made into a "port". So make sure you don't list too
+; many switches/enums for exposing, because the number of ports might
+; rise exponentially.
+;
+; Only one path can be selected at a time. All paths that are valid
+; for an audio device will be exposed as "port" for the sink/source.
+
+
+; [General]
+; priority = ...                         # Priority for this path
+; description = ...
+;
+; [Option ...:...]                       # For each option of an enumeration or switch element
+;                                        # that shall be exposed as a sink/source port. Needs to
+;                                        # be named after the Element, followed by a colon, followed
+;                                        # by the option name, resp. on/off if the element is a switch.
+; name = ...                             # Logical name to use in the path identifier
+; priority = ...                         # Priority if this is made into a device port
+;
+; [Element ...]                          # For each element that we shall control
+; required = ignore | switch | volume | enumeration | any     # If set, require this element to be of this kind and available,
+;                                                             # otherwise don't consider this path valid for the card
+; required-absent = ignore | switch | volume                  # If set, require this element to not be of this kind and not
+;                                                             # available, otherwise don't consider this path valid for the card
+;
+; switch = ignore | mute | off | on | select                  # What to do with this switch: ignore it, make it follow mute status,
+;                                                             # always set it to off, always to on, or make it selectable as port.
+;                                                             # If set to 'select' you need to define an Option section for on
+;                                                             # and off
+; volume = ignore | merge | off | zero   # What to do with this volume: ignore it, merge it into the device
+;                                        # volume slider, always set it to the lowest value possible, or always
+;                                        # set it to 0 dB (for whatever that means)
+; enumeration = ignore | select          # What to do with this enumeration, ignore it or make it selectable
+;                                        # via device ports. If set to 'select' you need to define an Option section
+;                                        # for each of the items you want to expose
+; direction = playback | capture         # Is this relevant only for playback or capture? If not set this will implicitly be
+;                                        # set the direction of the PCM device is opened as. Generally this doesn't need to be set
+;                                        # unless you have a broken driver that has playback controls marked for capture or vice
+;                                        # versa
+; direction-try-other = no | yes         # If the element does not supported what is requested, try the other direction, too?
+;
+; override-map.1 = ...                   # Override the channel mask of the mixer control if the control only exposes a single channel
+; override-map.2 = ...                   # Override the channel masks of the mixer control if the control only exposes two channels
+;                                        # Override maps should list for each element channel which high-level channels it controls via a
+;                                        # channel mask. A channel mask may either be the name of a single channel, or the words "all-left",
+;                                        # "all-right", "all-center", "all-front", "all-rear", and "all" to encode a specific subset of
+;                                        # channels in a mask
+
+[Element PCM]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element External Amplifier]
+switch = select
+
+[Option External Amplifier:on]
+name = output-amplifier-on
+priority = 10
+
+[Option External Amplifier:off]
+name = output-amplifier-off
+priority = 0
+
+;;; 'Analog Output'
+
+[Element Analog Output]
+enumeration = select
+
+[Option Analog Output:Speakers]
+name = output-speaker
+priority = 10
+
+[Option Analog Output:Headphones]
+name = output-headphones
+priority = 9
+
+[Option Analog Output:FP Headphones]
+name = output-headphones
+priority = 8
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf
new file mode 100644 (file)
index 0000000..9838138
--- /dev/null
@@ -0,0 +1,144 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned. (and should be good enough for the vast majority of
+; cards).  Use the udev property PULSE_PROFILE_SET to assign a
+; different profile set than this one to a device.  So what is this
+; about? Simply, what we do here is map ALSA devices to how they are
+; exposed in PA. We say which ALSA device string to use to open a
+; device, which channel mapping to use then, and which mixer path to
+; use. This is encoded in a 'mapping'. Multiple of these mappings can
+; be bound together in a 'profile' which is then directly exposed in
+; the UI as a card profile. Each mapping assigned to a profile will
+; result in one sink/source to be created if the profile is selected
+; for the card.
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+
+[General]
+auto-profiles = yes
+
+[Mapping analog-mono]
+device-strings = hw:0
+channel-map = mono
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 1
+
+[Mapping analog-stereo]
+device-strings = front:%f hw:0
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 10
+
+[Mapping analog-surround-40]
+device-strings = surround40:%f
+channel-map = front-left,front-right,rear-left,rear-right
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-41]
+device-strings = surround41:%f
+channel-map = front-left,front-right,rear-left,rear-right,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-50]
+device-strings = surround50:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-51]
+device-strings = surround51:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-71]
+device-strings = surround71:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+description = Analog Surround 7.1
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping iec958-stereo]
+device-strings = iec958:%f
+channel-map = left,right
+priority = 5
+
+[Mapping iec958-surround-40]
+device-strings = iec958:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 1
+
+[Mapping iec958-ac3-surround-40]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 2
+direction = output
+
+[Mapping iec958-ac3-surround-51]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 3
+direction = output
+
+[Mapping hdmi-stereo]
+device-strings = hdmi:%f
+channel-map = left,right
+priority = 4
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf
new file mode 100644 (file)
index 0000000..2b83530
--- /dev/null
@@ -0,0 +1,91 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 4 DJ
+;
+; This card has two stereo pairs of input and two stereo pairs of
+; output, named channels A and B. Channel B has an additional
+; Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b-output]
+description = Analog Stereo Channel B (Headphones)
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-b-input]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b-output
+input-mappings = analog-stereo-a analog-stereo-b-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+input-mappings = analog-stereo-b-input
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+priority = 6
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b-input
+priority = 1
+skip-probe = yes
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf
new file mode 100644 (file)
index 0000000..3fe3cc5
--- /dev/null
@@ -0,0 +1,162 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 8 DJ
+;
+; This card has four stereo pairs of input and four stereo pairs of
+; output, named channels A to D. Channel C has an additional Mic/Line
+; connector, channel D an additional Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+
+# Since we want to set a different description for channel C's/D's input
+# and output we define two seperate mappings for them
+[Mapping analog-stereo-c-output]
+description = Analog Stereo Channel C
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-c-input]
+description = Analog Stereo Channel C (Line/Mic)
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = input
+
+[Mapping analog-stereo-d-output]
+description = Analog Stereo Channel D (Headphones)
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-d-input]
+description = Analog Stereo Channel D
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B, C (Line/Mic), D (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-input analog-stereo-d-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-c]
+description = Analog Stereo Channel D (Headphones) Output, Channel C (Line/Mic) Input
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-c-input
+priority = 90
+skip-probe = yes
+
+[Profile output:analog-stereo-c-d+input:analog-stereo-c-d]
+description = Analog Stereo Duplex Channels C (Line/Mic), D (Line/Mic)
+output-mappings = analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-c-input analog-stereo-d-input
+priority = 80
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B
+output-mappings = analog-stereo-b
+input-mappings = analog-stereo-b
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-c+input:analog-stereo-c]
+description = Analog Stereo Duplex Channel C (Line/Mic)
+output-mappings = analog-stereo-c-output
+input-mappings = analog-stereo-c-input
+priority = 60
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-d]
+description = Analog Stereo Duplex Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-d-input
+priority = 70
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 6
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B
+output-mappings = analog-stereo-b
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-c]
+description = Analog Stereo Output Channel C
+output-mappings = analog-stereo-c-output
+priority = 7
+skip-probe = yes
+
+[Profile output:analog-stereo-d]
+description = Analog Stereo Output Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+priority = 8
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b
+priority = 1
+skip-probe = yes
+
+[Profile input:analog-stereo-c]
+description = Analog Stereo Input Channel C (Line/Mic)
+input-mappings = analog-stereo-c-input
+priority = 4
+skip-probe = yes
+
+[Profile input:analog-stereo-d]
+description = Analog Stereo Input Channel D
+input-mappings = analog-stereo-d-input
+priority = 3
+skip-probe = yes
diff --git a/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf b/media-config-target-tm1/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf
new file mode 100644 (file)
index 0000000..6a7fd50
--- /dev/null
@@ -0,0 +1,119 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned (and should be good enough for the vast majority of
+; cards). If you want to assign a different profile set than this one
+; to a device, either set the udev property PULSE_PROFILE_SET for the
+; card, or use the "profile_set" module argument when loading
+; module-alsa-card.
+;
+; So what is this about? Simply, what we do here is map ALSA devices
+; to how they are exposed in PA. We say which ALSA device string to
+; use to open a device, which channel mapping to use then, and which
+; mixer path to use. This is encoded in a 'mapping'. Multiple of these
+; mappings can be bound together in a 'profile' which is then directly
+; exposed in the UI as a card profile. Each mapping assigned to a
+; profile will result in one sink/source to be created if the profile
+; is selected for the card.
+;
+; Additionally, the path set configuration files can describe the
+; decibel values assigned to the steps of the volume elements. This
+; can be used to work around situations when the alsa driver doesn't
+; provide any decibel information, or when the information is
+; incorrect.
+
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+;
+; [DecibelFix element]                      # Decibel fixes can be used to work around missing or incorrect dB
+;                                           # information from alsa. A decibel fix is a table that maps volume steps
+;                                           # to decibel values for one volume element. The "element" part in the
+;                                           # section title is the name of the volume element.
+;                                           #
+;                                           # NOTE: This feature is meant just as a help for figuring out the correct
+;                                           # decibel values. PulseAudio is not the correct place to maintain the
+;                                           # decibel mappings!
+;                                           #
+;                                           # If you need this feature, then you should make sure that when you have
+;                                           # the correct values figured out, the alsa driver developers get informed
+;                                           # too, so that they can fix the driver.
+;
+; db-values = ...                           # The option value consists of pairs of step numbers and decibel values.
+;                                           # The pairs are separated with whitespace, and steps are separated from
+;                                           # the corresponding decibel values with a colon. The values must be in an
+;                                           # increasing order. Here's an example of a valid string:
+;                                           #
+;                                           #     "0:-40.50  1:-38.70  3:-33.00  11:0"
+;                                           #
+;                                           # The lowest step imposes a lower limit for hardware volume and the
+;                                           # highest step correspondingly imposes a higher limit. That means that
+;                                           # that the mixer will never be set outside those values - the rest of the
+;                                           # volume scale is done using software volume.
+;                                           #
+;                                           # As can be seen in the example, you don't need to specify a dB value for
+;                                           # each step. The dB values for skipped steps will be linearly interpolated
+;                                           # using the nearest steps that are given.
+
+[General]
+auto-profiles = yes
+
+[Mapping usb-analog-stereo]
+device-strings = hw:%f
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+priority = 10
+
+[Mapping usb-analog-surround-51]
+device-strings = hw:%f
+;channel-map = front-left,front-right,front-center,lfe,rear-left,rear-right
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-lfe-on-mono
+priority = 180
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-tw1.manifest b/media-config-target-tw1.manifest
new file mode 100644 (file)
index 0000000..a76fdba
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+       <request>
+               <domain name="_" />
+       </request>
+</manifest>
diff --git a/media-config-target-tw1/hal/etc/asound.conf b/media-config-target-tw1/hal/etc/asound.conf
new file mode 100644 (file)
index 0000000..acaf318
--- /dev/null
@@ -0,0 +1,11 @@
+# default sound configuration
+
+pcm. !default {
+       type hw
+       card 0
+}
+
+ctl. !default {
+       type hw
+       card 0
+}
diff --git a/media-config-target-tw1/hal/etc/multimedia/mmfw_audio_pcm_dump.ini b/media-config-target-tw1/hal/etc/multimedia/mmfw_audio_pcm_dump.ini
new file mode 100644 (file)
index 0000000..6e13b68
--- /dev/null
@@ -0,0 +1,8 @@
+[pcm_dump]
+;playback
+pa_sink = 0
+pa_sink_input = 0
+
+;capture
+pa_source = 0
+pa_source_output = 0
diff --git a/media-config-target-tw1/hal/etc/multimedia/mmfw_audio_volume.ini b/media-config-target-tw1/hal/etc/multimedia/mmfw_audio_volume.ini
new file mode 100644 (file)
index 0000000..ae7e635
--- /dev/null
@@ -0,0 +1,19 @@
+[volumes]
+system                         = 0, 72, 73, 74, 75, 76, 77, 78, 80, 81, 82, 84, 86, 88, 90, 94
+notification                   = 0, 68, 70, 72, 73, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 97
+alarm                          = 0, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 92
+ringtone                       = 0, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 92
+media                          = 0, 46, 50, 53, 58, 62, 68, 72, 76, 80, 84, 87, 90, 93, 96, 100
+call                           = 60, 65, 70, 76, 82, 88, 94, 100
+voip                           = 60, 65, 70, 76, 82, 88, 94, 100
+voice                          = 0, 55, 58, 61, 64, 67, 70, 75, 78, 82, 86, 89, 91, 94, 97, 100
+gain_dialer                    = 1.00
+gain_touch                     = 1.00
+gain_af                        = 0.70
+gain_shutter1                  = 0.14
+gain_shutter2                  = 1.00
+gain_camcording                = 0.30
+gain_midi                      = 1.00
+gain_booting                   = 0.40
+gain_video                     = 0.90
+gain_tts                       = 1.00
diff --git a/media-config-target-tw1/hal/etc/multimedia/mmfw_camcorder.ini b/media-config-target-tw1/hal/etc/multimedia/mmfw_camcorder.ini
new file mode 100644 (file)
index 0000000..0740a69
--- /dev/null
@@ -0,0 +1,103 @@
+; < Camera/Camcorder Configure Main INI file >
+;
+; - Header List -
+; 1.  General
+; 2.  VideoInput
+; 3.  AudioInput
+; 4.  VideoOutput
+; 5.  Capture
+; 6.  Record
+; 7.  VideoEncoder
+; 8.  AudioEncoder
+; 9.  ImageEncoder
+; 10. Mux
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryMain"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[General]
+SyncStateChange = 1
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap || NOT-USE-DEFAULT_VALUE
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap --gst-debug=3 || NOT-USE-DEFAULT_VALUE
+ModelName = TW1
+;DisabledAttributes = camera-optical-zoom camera-af-touch-x camera-af-touch-y camera-exposure-value camera-f-number camera-shutter-speed camera-hold-af-after-capturing filter-flip filter-hue display-src-x display-src-y display-src-width display-src-height tag-image-description strobe-control strobe-capabilities strobe-mode detect-mode detect-number detect-focus-select detect-select-number detect-status || NO_DEFAULT_VALUE
+
+[VideoInput]
+;VideosrcElement = v4l2src | 1,0 | do-timestamp,1
+UseVideoscale = 1
+VideoscaleElement = videoscale | 3,0 | width,320 | height,240 | method,1
+UseZeroCopyFormat = 0
+DeviceCount = 0
+
+[AudioInput]
+AudioDevice = 0,1 || 0
+AudiosrcElement = pulsesrc | 3,0 | do-timestamp,1 | slave-method,3 | latency,0
+AudiomodemsrcElement = pulsesrc | 3,0 | do-timestamp,1 | slave-method,3 | latency,0
+
+[VideoOutput]
+; DisplayDevice
+;;; 0: MAIN LCD, 1: SUB LCD, 2:TV OUT, 3: MAIN LCD and SUB LCD, 4: MAIN LCD and TV OUT
+DisplayDevice = 0 || 0
+; DisplayMode
+;;; 0: Default, 1: Pri Video ON and Sec Video Full-Screen, 2: Pri Video OFF and Sec Video Full-Screen
+DisplayMode = 0,1,2 || 0
+; Videosink
+;;; 0: Overlay surface, 1: Evas surface, 2: GL surface, 3: NULL surface, 4: Remote
+Videosink = 0,3,4 || 3
+VideosinkElementOverlay = tizenwlsink | 7,0 | draw-borders,0 | force-aspect-ratio,1 | enable-last-sample,0 | qos,0 | sync,0 | show-preroll-frame,0 | use-tbm,1
+VideosinkElementRemote = tizenipcsink | 4,0 | permissions,511 | enable-last-sample,0 | qos,0 | sync,0
+VideosinkElementNull = fakesink | 4,0 | qos,0 | sync,0 | enable-last-sample,0 | show-preroll-frame,0
+UseVideoscale = 0
+VideoscaleElement = videoscale | 1,0 | rotang,90
+
+[VideoEncoder]
+MPEG4 = avenc_mpeg4 | 0,0
+
+[AudioEncoder]
+AMR = amrnbenc | 0,0
+AAC = avenc_aac | 1,0 | compliance,-2
+WAVE = wavenc | 0,0
+
+[ImageEncoder]
+JPEG = jpegenc | 0,0
+;PNG = pngenc | 0,0
+
+[Capture]
+UseEncodebin = 0
+UseCaptureMode = 0
+VideoscaleElement = videoscale | 1,0 | method,1
+
+[Record]
+UseAudioEncoderQueue = 1
+UseVideoEncoderQueue = 1
+VideoProfile = 0
+VideoAutoAudioConvert = 1
+VideoAutoAudioResample = 0
+VideoAutoColorSpace = 0
+AudioProfile = 1
+AudioAutoAudioConvert = 1
+AudioAutoAudioResample = 0
+AudioAutoColorSpace = 0
+ImageProfile = 2
+ImageAutoAudioConvert = 0
+ImageAutoAudioResample = 0
+ImageAutoColorSpace = 1
+RecordsinkElement = filesink | 1,0 | async,0
+SupportDualStream = 0
+UseNoiseSuppressor = 0
+DropVideoFrame = 0
+PassFirstVideoFrame = 0
+
+[Mux]
+3GP = 3gppmux | 0,0
+AMR = avmux_amr | 0,0
+MP4 = mp4mux | 0,0
+AVI = avimux | 0,0
+MATROSKA = matroskamux | 0,0
+WAV = wavenc | 0,0
+AAC = avmux_adts | 0,0
+M2TS = mpegtsmux | 0,0
+
diff --git a/media-config-target-tw1/hal/etc/multimedia/mmfw_media_codec.ini b/media-config-target-tw1/hal/etc/multimedia/mmfw_media_codec.ini
new file mode 100644 (file)
index 0000000..9f2a5dd
--- /dev/null
@@ -0,0 +1,89 @@
+[h261]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = , ,
+sw_encoder = , ,
+
+[h263]
+hw_decoder = omxdec_h263, video/x-h263, NV12
+hw_encoder = omxenc_h263, video/x-raw,  H263
+sw_decoder = avdec_h263,   video/x-h263, I420
+sw_encoder = avenc_h263,   video/x-raw,  H263
+
+[h264]
+hw_decoder = omxdec_h264, video/x-h264, NV12
+hw_encoder = omxenc_h264, video/x-raw,  H264_SP
+sw_decoder = avdec_h264,   video/x-h264, I420
+sw_encoder = avenc_h264,   video/x-raw,  H264_SP
+
+[mpeg4]
+hw_decoder = omxdec_mpeg4, video/mpeg, NV12
+hw_encoder = omxenc_mpeg4, video/x-raw,  MPEG4_SP
+sw_decoder = avdec_mpeg4,   video/mpeg, I420
+sw_encoder = avenc_mpeg4,   video/x-raw,  MPEG4_SP
+
+[aac_lc]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = avenc_aac,   audio/x-raw, AAC_LC
+
+[aac_he]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[aac_he_ps]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[mp3]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_mp3,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[amr_nb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrnb,   audio/AMR, PCM_F32LE
+sw_encoder = amrnbenc, audio/x-raw, AMR_NB
+
+[amr_wb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrwb,   audio/AMR-WB, PCM_F32LE
+sw_encoder = , ,
+
+[vorbis]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = vorbisdec,   audio/x-vorbis, PCM_F32LE
+sw_encoder = , ,
+
+[flac]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_flac,   audio/x-flac, PCM_F32LE
+sw_encoder = , ,
+
+[wmav1]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav1,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmav2]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav2,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmapro]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmapro,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
diff --git a/media-config-target-tw1/hal/etc/multimedia/mmfw_media_streamer.ini b/media-config-target-tw1/hal/etc/multimedia/mmfw_media_streamer.ini
new file mode 100644 (file)
index 0000000..488d6a8
--- /dev/null
@@ -0,0 +1,124 @@
+[general]
+; generating dot file representing pipeline state
+generate dot = no
+dot dir =
+
+; decodebin will be used instead of decoder node
+use decodebin = yes
+
+; comma separated list of element names which
+; will not be used in autoplug mode
+exclude elements = v4l2video,v4l2h264,v4l2mpeg4,omx,sprd
+
+; comma separated list of element names which
+; will require resources in autoplug mode
+resource elements = omx,sprd
+
+; comma separated list of arguments
+; that will pass to gst_init
+gstreamer arguments = --gst-debug=2
+
+
+;MEDIA_STREAMER_NODE_TYPE_SRC
+[node type 1]
+audio capture = pulsesrc
+video capture = waylandsrc
+camera = camerasrc
+
+;MEDIA_STREAMER_NODE_TYPE_SINK
+[node type 2]
+audio = pulsesink
+overlay = tizenwlsink
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_ENCODER
+[node type 3]
+video/x-h263 = avenc_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DECODER
+[node type 4]
+video/x-h263 = avdec_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_ENCODER
+[node type 5]
+audio/AMR = amrnbenc
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DECODER
+[node type 6]
+audio/AMR = amrnbdec
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_CONVERTER
+[node type 7]
+video/x-raw = videoconvert
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_CONVERTER
+[node type 8]
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_RESAMPLE
+[node type 9]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_PAY
+[node type 10]
+video/x-h263 = rtph263pay
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_PAY
+[node type 11]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DEPAY
+[node type 12]
+video/x-h263 = rtph263depay
+video/x-h264 = rtph264depay
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DEPAY
+[node type 13]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_RATE
+[node type 14]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_SCALE
+[node type 15]
+
+;MEDIA_STREAMER_NODE_TYPE_TEXT_OVERLAY
+[node type 16]
+text/x-raw = textoverlay
+
+;MEDIA_STREAMER_NODE_TYPE_PARSER
+[node type 17]
+video/x-h263 = h263parse
+video/x-h264 = h264parse
+
+;MEDIA_STREAMER_NODE_TYPE_FILTER
+[node type 18]
+
+;MEDIA_STREAMER_NODE_TYPE_TEE
+[node type 19]
+
+;MEDIA_STREAMER_NODE_TYPE_QUEUE
+[node type 20]
+
+;MEDIA_STREAMER_NODE_TYPE_MQUEUE
+[node type 21]
+
+;MEDIA_STREAMER_NODE_TYPE_MUXER
+[node type 22]
+
+;MEDIA_STREAMER_NODE_TYPE_DEMUXER
+[node type 23]
+
+;MEDIA_STREAMER_NODE_TYPE_RTP
+[node type 24]
+
+;MEDIA_STREAMER_NODE_TYPE_INPUT_SELECTOR
+[node type 25]
+
+;MEDIA_STREAMER_NODE_TYPE_OUTPUT_SELECTOR
+[node type 26]
+
+;MEDIA_STREAMER_NODE_TYPE_INTERLEAVE
+[node type 27]
+
+;MEDIA_STREAMER_NODE_TYPE_DEINTERLEAVE
+[node type 28]
+
diff --git a/media-config-target-tw1/hal/etc/multimedia/mmfw_player.ini b/media-config-target-tw1/hal/etc/multimedia/mmfw_player.ini
new file mode 100644 (file)
index 0000000..e900636
--- /dev/null
@@ -0,0 +1,102 @@
+[general]
+
+disable segtrap = yes ; same effect with --gst-disable-segtrap
+
+; set default videosink element according to video surface type(X, EVAS, NULL)
+videosink element overlay = tizenwlsink
+videosink element fake = fakesink
+video converter element =
+
+; decoder element keyword for resource management.
+video codec element hw = omx
+video codec element sw = avdec
+video codec default type = hw ; hw or sw
+
+audio codec element hw =
+audio codec element sw = avdec
+audio codec default type = sw ; hw or sw
+
+; support with HW audio codec
+support audio effect = no
+support pcm exporting = no
+support pitch control = no
+support replaygain control = no
+
+audiosink element = pulsesink
+
+; audio offload information
+audio offload sink element =
+audio offload device type =    ; builtin-speaker,bt-a2dp,audio-jack,usb-audio from pulse stream-map
+audio offload media format =   ; Use the format keyword of media_format_mimetype_e, MAX:10
+
+; supported input format of external media source stream
+; Use the format keyword of media_format_mimetype_e, MAX:10
+media stream input format = AAC,H264_SP,H264_MP,H264_HP
+
+; if yes. gstreamer will not update registry
+skip rescan = yes
+delay before repeat = 50 ; msec
+
+; comma separated list of tocken which elemnts has it in it's name will not be used
+; this works if 'use decodebin = yes'
+element exclude keyword = v4l2
+
+; comma separated list of tocken
+; this works if 'use decodebin = yes'
+unsupported codec keyword = divx
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1 = --gst-debug=*:2
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; generating dot file representing pipeline state
+; DEFAULT MUST BE 'no'. If 'yes', mmplayer will set env-variable for it's session as "export GST_DEBUG_DUMP_DOT_DIR=/tmp/"
+generate dot = no
+
+; parameter is for only video to be determined
+; which clock will be used
+; if yes, system clock will be used
+; apart from this, audiosink is clock provider for audio
+use system clock = yes
+
+; allowed timeout for changing pipeline state
+live state change timeout = 30 ; sec
+localplayback state change timeout = 10 ; sec
+
+; delay in msec for sending EOS
+eos delay = 0 ; msec
+
+; extracted pcm buffer size
+pcm buffer size = 51200 ; 50Kbytes
+
+; max num of bo for sw codec
+video bo max = 10
+
+; video bo timeout (sec)
+video bo timeout = 10
+
+; setup pipeline with decodebin2
+use decodebin = no
+
+[http streaming]
+
+httpsrc element = souphttpsrc
+
+http buffering limit = 99.0 ; percent
+
+; if yes, use file for buffering.
+; if no, use memory for buffering.
+http use file buffer = no
+
+; ring buffer size when use mem buffer
+http ring buffer size = 20971520 ; 20MBytes
+
+http max size bytes = 1048576 ; bytes
+
+http buffering time = 1.2
+
+http timeout = 30 ; sec
diff --git a/media-config-target-tw1/hal/etc/multimedia/mmfw_player_audio_effect.ini b/media-config-target-tw1/hal/etc/multimedia/mmfw_player_audio_effect.ini
new file mode 100644 (file)
index 0000000..1394608
--- /dev/null
@@ -0,0 +1,17 @@
+[audio effect]
+; name of audio effect element
+audio effect element = audioeq
+
+; preset audio effect setting
+audio effect preset = no
+
+; custom audio effect setting (EQ/extension)
+audio effect custom = yes
+audio effect custom list = 0
+
+audio effect custom eq band num = 7 ; number of EQ bands
+audio effect custom eq band width = 33, 90, 242, 649, 1743, 4676, 12544 ; list of each EQ band width (Hz)
+audio effect custom eq band freq = 36, 98, 265, 711, 1907, 5117, 13727 ; list of each EQ band central frequency (Hz)
+
+audio effect custom min list = -12 ; list of minimum level value (the first element is for EQ, others for extension effect)
+audio effect custom max list = 12 ; list of maximum level value (the first element is for EQ, others for extension effect)
diff --git a/media-config-target-tw1/hal/etc/multimedia/mmfw_resource_manager.ini b/media-config-target-tw1/hal/etc/multimedia/mmfw_resource_manager.ini
new file mode 100644 (file)
index 0000000..1d67f0b
--- /dev/null
@@ -0,0 +1,8 @@
+[max volume]
+video_overlay = -1
+video_decoder = -1
+camera = -1
+
+[priority]
+media = 10
+interrupt = 99
diff --git a/media-config-target-tw1/hal/etc/multimedia/mmfw_streamrecorder.ini b/media-config-target-tw1/hal/etc/multimedia/mmfw_streamrecorder.ini
new file mode 100644 (file)
index 0000000..2888707
--- /dev/null
@@ -0,0 +1,81 @@
+[general]
+;is encsink source is live
+encscink source is live = 0
+
+retrialcount = 10
+
+minimum frame = 5
+
+reset pause time = 0
+
+screen record = 1
+
+convert output buffer num = 6
+
+hw encoder supported = 0 ; 1 if supported and 'video codec element hw' should be formed.
+
+video codec element hw = ; sprd (if verified) or verified hw codec element
+
+[encodebin]
+;MM_STREAMRECORDER_ENCBIN_PROFILE_VIDEO = 0 MM_STREAMRECORDER_ENCBIN_PROFILE_AUDIO = 1
+;MM_STREAMRECORDER_ENCBIN_PROFILE_IMAGE = 2 MM_STREAMRECORDER_ENCBIN_PROFILE_NUM = 3
+encsink bin profile = 0
+
+encsink bin auto audio resample = 0
+
+encsink bin auto colorspace = 1
+
+encsink bin auto audio convert = 1
+
+encsink bin use video toggle = 0
+
+[pipeline]
+encsink bin source = appsrc
+
+name of audio src = pulsesrc
+
+h264 encoder =
+
+h263 encoder = avenc_h263p
+
+mpeg4 encoder = avenc_mpeg4
+
+name of audio encoder = avenc_aac
+
+use parser  =
+
+name of 3GP muxer = avmux_3gp
+
+name of MP4 muxer = avmux_mp4
+
+name of video converter = videoconvert
+
+name of sink = filesink
+
+[video param]
+;/*ms*/
+video frame wait time = 200000
+
+[audio param]
+audio frame minimum space = 102400
+
+audio frame wait time = 20000
+
+[attribute]
+supported height = 1080,720,480,240,288,144
+
+supported width = 1920,1280,640,320,352,176
+
+;/*AMR, AAC, VORBIS ,PCM*/
+supported audio encoders = AMR,AAC,PCM
+
+;/* H263 , H264 , MPEG4 */
+supported video encoders = H263,MPEG4
+
+;/*3GP , AMR, MP4 , WAV, ADTS*/
+supported file formats = 3GP,MP4,AMR,ADTS,WAV
+
+[debug]
+; generating dot file representing pipeline state
+; do export GST_DEBUG_DUMP_DOT_DIR=/tmp/ in the shell (also do export to '/etc/profile.d/mmf.sh')
+generate dot = no
diff --git a/media-config-target-tw1/hal/etc/multimedia/mused.conf b/media-config-target-tw1/hal/etc/multimedia/mused.conf
new file mode 100644 (file)
index 0000000..3d51615
--- /dev/null
@@ -0,0 +1,66 @@
+[muse]
+; The 'hosts' parameter defines the modules,
+; which the user would like to connect to the muse.
+; If you want to add host, then write manually.
+hosts=player, camera, recorder
+logfile=/var/log/mused/muse-server
+lockfile=/tmp/.muse_core.lock
+min_timeout=5
+max_timeout=90
+;100MB=100000
+memory_threshold=100000
+enable_watch_external_storage=0
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1=--gst-debug=*:2
+gstparam2=--gst-disable-segtrap
+gstparam3=
+gstparam4=
+gstparam5=
+gstparam6=
+gstparam7=
+gstparam8=
+gstparam9=
+gstparam10=
+
+; gstparam#=--gst-plugin-load=/usr/lib/gstreamer-1.0/libgstcoreelements.so'
+; can be substituted with gstpreload=coreelements'
+gstpreload=
+
+[player]
+; The 'player' parameter represents the muse-player.
+; This module recovers the "capi-media-player".
+path=libmuse-player.so
+preloaded=no
+timeout=60
+disable_watchdog_api=-1
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[camera]
+; The 'camera' parameter represents the muse-camera.
+; This module recovers the "capi-media-camera".
+path=libmuse-camera.so
+preloaded=no
+timeout=10
+;api 2 is camera_dispatcher_start_preview
+disable_watchdog_api=2
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[recorder]
+; The 'recorder' parameter represents the muse-recorder.
+; This module recovers the "capi-media-recorder".
+; This one should be paired with the 'camera' module.
+path=libmuse-recorder.so
+preloaded=no
+timeout=10
+;api 5 is recorder_start
+disable_watchdog_api=5
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
diff --git a/media-config-target-tw1/hal/etc/murphy/murphy.lua b/media-config-target-tw1/hal/etc/murphy/murphy.lua
new file mode 100644 (file)
index 0000000..17c1218
--- /dev/null
@@ -0,0 +1,93 @@
+m = murphy.get()
+
+-- load the dlog plugin
+m:try_load_plugin('dlog')
+
+-- load the console plugin
+-- m:try_load_plugin('console')
+
+-- load the dbus plugin
+-- if m:plugin_exists('dbus') then
+--     m:load_plugin('dbus')
+-- end
+
+-- load the native resource plugin
+if m:plugin_exists('resource-native') then
+    m:load_plugin('resource-native')
+    m:info("native resource plugin loaded")
+else
+    m:info("No native resource plugin found...")
+end
+
+-- load the dbus resource plugin
+m:try_load_plugin('resource-dbus', {
+    dbus_bus = "system",
+    dbus_service = "org.Murphy",
+    dbus_track = true,
+    default_zone = "driver",
+    default_class = "implicit"
+})
+
+-- load the domain control plugin
+if m:plugin_exists('domain-control') then
+    m:load_plugin('domain-control')
+else
+    m:info("No domain-control plugin found...")
+end
+
+if m:plugin_exists('glib') then
+    m:load_plugin('glib')
+else
+    m:info("No glib plugin found...")
+end
+
+-- define application classes
+application_class {
+    name     = "interrupt",
+    priority = 99,
+    modal    = false,
+    share    = false,
+    order    = "fifo"
+}
+
+application_class {
+    name     = "media",
+    priority = 10,
+    modal    = false,
+    share    = false,
+    order    = "lifo"
+}
+
+-- define zone attributes
+zone.attributes {
+    type = {mdb.string, "common", "rw"},
+    location = {mdb.string, "anywhere", "rw"}
+}
+
+-- define zones
+zone {
+     name = "driver",
+     attributes = {
+         type = "common",
+         location = "front-left"
+     }
+}
+
+-- define resource classes
+resource.class {
+     name = "video_overlay",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_decoder",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "camera",
+     shareable = false,
+     sync_release = true
+}
diff --git a/media-config-target-tw1/hal/etc/profile.d/mmf.sh b/media-config-target-tw1/hal/etc/profile.d/mmf.sh
new file mode 100644 (file)
index 0000000..7dac276
--- /dev/null
@@ -0,0 +1,6 @@
+#!/bin/sh
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+export GST_DEBUG=2
+export ORC_CODE=debug
+export ORC_DEBUG=5
+export GST_PLUGIN_PATH=@HAL_LIBDIR@/gstreamer-1.0
diff --git a/media-config-target-tw1/hal/etc/pulse/client.conf b/media-config-target-tw1/hal/etc/pulse/client.conf
new file mode 100644 (file)
index 0000000..3637b20
--- /dev/null
@@ -0,0 +1,37 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for PulseAudio clients. See pulse-client.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+; default-sink =
+; default-source =
+default-server = /var/run/pulse/native
+; default-dbus-server =
+
+autospawn = no
+; daemon-binary = /usr/bin/pulseaudio
+; extra-arguments = --log-target=syslog
+
+; cookie-file =
+
+enable-shm = no
+shm-size-bytes = 4194304 # setting this 0 will use the system-default, usually 64 MiB
+
+; auto-connect-localhost = no
+; auto-connect-display = no
diff --git a/media-config-target-tw1/hal/etc/pulse/daemon.conf b/media-config-target-tw1/hal/etc/pulse/daemon.conf
new file mode 100644 (file)
index 0000000..431e66b
--- /dev/null
@@ -0,0 +1,83 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for the PulseAudio daemon. See pulse-daemon.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+daemonize = yes
+; fail = yes
+; allow-module-loading = yes
+; allow-exit = yes
+; use-pid-file = yes
+system-instance = yes
+; local-server-type = user
+; enable-shm = yes
+; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
+; lock-memory = no
+; cpu-limit = no
+
+; high-priority = yes
+; nice-level = -11
+
+realtime-scheduling = yes
+realtime-priority = 5
+
+; exit-idle-time = 20
+; scache-idle-time = 20
+
+; dl-search-path = (depends on architecture)
+
+; load-default-script-file = yes
+; default-script-file = /etc/pulse/default.pa
+
+log-target = dlog
+log-level = info
+; log-meta = no
+; log-time = no
+; log-backtrace = 0
+
+resample-method = speex-fixed-3
+; enable-remixing = yes
+; enable-lfe-remixing = no
+
+flat-volumes = no
+
+; rlimit-fsize = -1
+; rlimit-data = -1
+; rlimit-stack = -1
+; rlimit-core = -1
+; rlimit-as = -1
+; rlimit-rss = -1
+; rlimit-nproc = -1
+; rlimit-nofile = 256
+; rlimit-memlock = -1
+; rlimit-locks = -1
+; rlimit-sigpending = -1
+; rlimit-msgqueue = -1
+; rlimit-nice = 31
+; rlimit-rtprio = 9
+; rlimit-rttime = 1000000
+
+; default-sample-format = s16le
+; default-sample-rate = 44100
+alternate-sample-rate = 44100
+; default-sample-channels = 2
+; default-channel-map = front-left,front-right
+
+; default-fragments = 4
+; default-fragment-size-msec = 25
diff --git a/media-config-target-tw1/hal/etc/pulse/default.pa b/media-config-target-tw1/hal/etc/pulse/default.pa
new file mode 100644 (file)
index 0000000..ef8f114
--- /dev/null
@@ -0,0 +1,149 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started per-user
+# (i.e. not in system mode)
+
+.nofail
+
+### Load something into the sample cache
+#load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
+#load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-access /usr/share/sounds/generic.wav
+
+.fail
+
+### Automatically restore the volume of streams and devices
+load-module module-device-restore
+load-module module-stream-restore
+load-module module-card-restore
+
+### Automatically augment property information from .desktop files
+### stored in /usr/share/application
+load-module module-augment-properties
+
+### Load audio drivers statically
+### (it's probably better to not load these drivers manually, but instead
+### use module-udev-detect -- see below -- for doing this automatically)
+#load-module module-alsa-sink
+#load-module module-alsa-source device=hw:1,0
+#load-module module-null-sink
+#load-module module-pipe-sink
+
+### Automatically load driver modules depending on the hardware available
+.ifexists module-udev-detect.so
+load-module module-udev-detect
+.else
+### Use the static hardware detection module (for systems that lack udev support)
+load-module module-detect
+.endif
+
+### Automatically connect sink and source if JACK server is present
+.ifexists module-jackdbus-detect.so
+.nofail
+load-module module-jackdbus-detect channels=2
+.fail
+.endif
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Load several protocols
+.ifexists module-esound-protocol-unix.so
+load-module module-esound-protocol-unix
+.endif
+load-module module-native-protocol-unix
+
+### Network access (may be configured with paprefs, so leave this commented
+### here if you plan to use paprefs)
+#load-module module-esound-protocol-tcp
+#load-module module-native-protocol-tcp
+
+### Load the RTP receiver module (also configured via paprefs, see above)
+#load-module module-rtp-recv
+
+### Load the RTP sender module (also configured via paprefs, see above)
+#load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
+#load-module module-rtp-send source=rtp.monitor
+
+### Load additional modules from GConf settings. This can be configured with the paprefs tool.
+### Please keep in mind that the modules configured by paprefs might conflict with manually
+### loaded modules.
+.ifexists module-gconf.so
+.nofail
+load-module module-gconf
+.fail
+.endif
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Honour intended role device property
+load-module module-intended-roles
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle
+
+### If autoexit on idle is enabled we want to make sure we only quit
+### when no local session needs us anymore.
+.ifexists module-console-kit.so
+load-module module-console-kit
+.endif
+.ifexists module-systemd-login.so
+load-module module-systemd-login
+.endif
+
+### Enable positioned event sounds
+load-module module-position-event-sounds
+
+### Cork music/video streams when a phone stream is active
+load-module module-role-cork
+
+### Modules to allow autoloading of filters (such as echo cancellation)
+### on demand. module-filter-heuristics tries to determine what filters
+### make sense, and module-filter-apply does the heavy-lifting of
+### loading modules and rerouting streams.
+load-module module-filter-heuristics
+load-module module-filter-apply
+
+### Load DBus protocol
+.ifexists module-dbus-protocol.so
+load-module module-dbus-protocol
+.endif
+
+
+load-module module-switch-on-port-available
+
+### Make some devices default
+#set-default-sink output
+#set-default-source input
diff --git a/media-config-target-tw1/hal/etc/pulse/device-map.json b/media-config-target-tw1/hal/etc/pulse/device-map.json
new file mode 100644 (file)
index 0000000..859cc76
--- /dev/null
@@ -0,0 +1,16 @@
+{
+       "device-types":[
+               {
+                       "device-type":"builtin-mic",
+                       "capture-devices":{"normal":"alsa:0,0"}
+               }
+       ],
+       "device-files":{
+               "capture-devices":[
+                       {
+                               "device-string":"alsa:0,0",
+                               "role":{"normal":"rate=48000 mmap=0 channels=1"}
+                       }
+               ]
+       }
+}
diff --git a/media-config-target-tw1/hal/etc/pulse/stream-map.json b/media-config-target-tw1/hal/etc/pulse/stream-map.json
new file mode 100644 (file)
index 0000000..ce2b8f5
--- /dev/null
@@ -0,0 +1,245 @@
+{
+       "latencies":[
+               {
+                       "type":"low",
+                       "fragsize-ms":25,
+                       "minreq-ms":-1,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"mid",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"high",
+                       "fragsize-ms":75,
+                       "minreq-ms":-1,
+                       "tlength-ms":400,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"voip",
+                       "fragsize-ms":20,
+                       "minreq-ms":20,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":-1,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default-async",
+                       "fragsize-ms":50,
+                       "minreq-ms":20,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+       ],
+       "volumes":[
+               {
+                       "type":"master",
+                       "is-hal-volume":1
+               },
+               {
+                       "type":"media",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"system",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"alarm",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"notification",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voice",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"ringtone",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voip",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"call",
+                       "is-hal-volume":1
+               }
+       ],
+       "streams":[
+               {
+                       "role":"media",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["builtin-mic"],
+                       "avail-out-devices":["bt-a2dp"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"system",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"system"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"alarm",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"alarm"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"notification",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"notification"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"emergency",
+                       "priority" : 4,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-information",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"voice"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-recognition",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"voice-recognition-service",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"ringtone-voip",
+                       "priority" : 5,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","sound-manager"]
+               },
+               {
+                       "role":"ringtone-call",
+                       "priority" : 6,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voip",
+                       "priority" : 5,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"voip"},
+                       "avail-in-devices":["builtin-mic"],
+                       "avail-out-devices":["bt-sco"],
+                       "avail-frameworks":["audio-io","tone-player","sound-manager"]
+               },
+               {
+                       "role":"call-voice",
+                       "priority" : 6,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"call"},
+                       "avail-in-devices":["builtin-mic"],
+                       "avail-out-devices":["bt-sco"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"call-video",
+                       "priority" : 6,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"call"},
+                       "avail-in-devices":["builtin-mic"],
+                       "avail-out-devices":["bt-sco"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"radio",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"loopback",
+                       "priority" : 2,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"ext-media",
+                       "priority" : 3,
+                       "route-type" : "manual-ext",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"solo",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp"],
+                       "avail-frameworks":["wav-player","tone-player"]
+               }
+       ]
+}
diff --git a/media-config-target-tw1/hal/etc/pulse/system.pa b/media-config-target-tw1/hal/etc/pulse/system.pa
new file mode 100644 (file)
index 0000000..52f4038
--- /dev/null
@@ -0,0 +1,70 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started in system
+# mode.
+
+### Automatically load driver modules depending on the hardware available
+#.ifexists module-udev-detect.so
+load-module module-udev-detect
+#.endif
+
+### Load several protocols
+load-module module-native-protocol-unix auth-anonymous=1
+
+### Load module-tizenaudio-policy
+load-module module-tizenaudio-policy
+
+### Sound Player module
+load-module module-sound-player
+load-module module-tone-player
+load-module module-role-ducking global=1 trigger_roles=solo/notification ducking_roles=media,system,alarm,notification,voice-information,ext-media/media,ext-media volume=0%/25% fade_in=0/1000 fade_out=0/1000
+load-module module-poweroff
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Automatically restore the volume of streams and devices
+#load-module module-stream-restore
+#load-module module-device-restore
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+.ifexists module-dbus-protocol.so
+### If you want to allow TCP connections, set access to "remote" or "local,remote".
+load-module module-dbus-protocol access=local
+.endif
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+#load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle timeout=1
+
diff --git a/media-config-target-tw1/hal/etc/xdg/gstomx.conf b/media-config-target-tw1/hal/etc/xdg/gstomx.conf
new file mode 100644 (file)
index 0000000..4533527
--- /dev/null
@@ -0,0 +1,78 @@
+[omxdec_mpeg2]
+type-name=GstOMXMPEG2VideoDec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.MPEG2.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxdec_mpeg4]
+type-name=GstOMXMPEG4VideoDec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.MPEG4.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxdec_h263]
+type-name=GstOMXH263Dec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.H263.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxdec_h264]
+type-name=GstOMXH264Dec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.AVC.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxenc_h264]
+type-name=GstOMXH264Enc
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.AVC.Encoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-disable-outport;no-component-role
+sink-template-caps=video/x-raw, format=(string)SN12, width=(int) [1,1920], height=(int) [1,1080], framerate=(fraction)[0/1, MAX]
+src-template-caps=video/x-h264, width=(int) [1,1920], height=(int) [1,1080], framerate=(fraction) [0/1, MAX], alignment=(string) au, stream-format = (string){ avc, byte-stream }
+
+[omxenc_mpeg4]
+type-name=GstOMXMPEG4VideoEnc
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.MPEG4.Encoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport
+
+[omxenc_h263]
+type-name=GstOMXH263Enc
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.H263.Encoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf
new file mode 100644 (file)
index 0000000..db78eb4
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'Aux' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf
new file mode 100644 (file)
index 0000000..baf674a
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'FM' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-radio
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+.include analog-input.conf.common
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf
new file mode 100644 (file)
index 0000000..4be5722
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf
new file mode 100644 (file)
index 0000000..f7f3085
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic/Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf
new file mode 100644 (file)
index 0000000..2a36f2f
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+name = analog-input-microphone
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common
new file mode 100644 (file)
index 0000000..b35e7af
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common element for all microphone inputs
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Mic Select'
+
+[Element Mic Select]
+enumeration = select
+
+[Option Mic Select:Mic1]
+name = input-microphone
+priority = 20
+
+[Option Mic Select:Mic2]
+name = input-microphone
+priority = 19
+
+;;; Various Boosts
+
+[Element Mic Boost (+20dB)]
+switch = select
+volume = merge
+
+[Option Mic Boost (+20dB):on]
+name = input-boost-on
+
+[Option Mic Boost (+20dB):off]
+name = input-boost-off
+
+[Element Mic Boost]
+switch = select
+volume = merge
+
+[Option Mic Boost:on]
+name = input-boost-on
+
+[Option Mic Boost:off]
+name = input-boost-off
+
+[Element Front Mic Boost]
+switch = select
+
+[Option Front Mic Boost:on]
+name = input-boost-on
+
+[Option Front Mic Boost:off]
+name = input-boost-off
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf
new file mode 100644 (file)
index 0000000..8531ec7
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'TV Tuner' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-video
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf
new file mode 100644 (file)
index 0000000..74c76f0
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Video' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf
new file mode 100644 (file)
index 0000000..5055f90
--- /dev/null
@@ -0,0 +1,54 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; A fallback for devices that lack seperate Mic/Line/Aux/Video/TV
+; Tuner/FM elements
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Capture]
+required = volume
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required-absent = any
+
+[Element Line]
+required-absent = any
+
+[Element Aux]
+required-absent = any
+
+[Element Video]
+required-absent = any
+
+[Element Mic/Line]
+required-absent = any
+
+[Element TV Tuner]
+required-absent = any
+
+[Element FM]
+required-absent = any
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common
new file mode 100644 (file)
index 0000000..951e11f
--- /dev/null
@@ -0,0 +1,294 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Mixer path for PulseAudio's ALSA backend, common elements for all
+; input paths. If multiple options by the same id are discovered they
+; will be suffixed with a number to distuingish them, in the same
+; order they appear here.
+;
+; Source selection should use the following names:
+;
+;       input                       -- If we don't know the exact kind of input
+;       input-microphone
+;       input-microphone-internal
+;       input-microphone-external
+;       input-linein
+;       input-video
+;       input-radio
+;       input-docking-microphone
+;       input-docking-linein
+;       input-docking
+;
+;  We explicitly don't want to wrap the following sources:
+;
+;       CD
+;       Synth/MIDI
+;       Phone
+;       Mix
+;       Digital/SPDIF
+;       Master
+;       PC Speaker
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Input Source Select'
+
+[Element Input Source Select]
+enumeration = select
+
+[Option Input Source Select:Input1]
+name = input
+priority = 10
+
+[Option Input Source Select:Input2]
+name = input
+priority = 5
+
+;;; 'Input Source'
+
+[Element Input Source]
+enumeration = select
+
+[Option Input Source:Mic]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Microphone]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Front Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Front Microphone]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Internal Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Line]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line-In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Docking-Station]
+name = input-docking
+priority = 17
+
+[Option Input Source:AUX IN]
+name = input
+priority = 10
+
+;;; 'Capture Source'
+
+[Element Capture Source]
+enumeration = select
+
+[Option Capture Source:TV Tuner]
+name = input-video
+
+[Option Capture Source:FM]
+name = input-radio
+
+[Option Capture Source:Mic/Line]
+name = input
+
+[Option Capture Source:Line/Mic]
+name = input
+
+[Option Capture Source:Mic]
+name = input-microphone
+
+[Option Capture Source:Microphone]
+name = input-microphone
+
+[Option Capture Source:Int Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Int DMic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Mic]
+name = input-microphone-internal
+
+[Option Capture Source:iMic]
+name = input-microphone-internal
+
+[Option Capture Source:i-Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Microphone]
+name = input-microphone-internal
+
+[Option Capture Source:Front Mic]
+name = input-microphone
+
+[Option Capture Source:Front Microphone]
+name = input-microphone
+
+[Option Capture Source:Rear Mic]
+name = input-microphone
+
+[Option Capture Source:Mic1]
+name = input-microphone
+
+[Option Capture Source:Mic2]
+name = input-microphone
+
+[Option Capture Source:D-Mic]
+name = input-microphone
+
+[Option Capture Source:IntMic]
+name = input-microphone-internal
+
+[Option Capture Source:ExtMic]
+name = input-microphone-external
+
+[Option Capture Source:Ext Mic]
+name = input-microphone-external
+
+[Option Capture Source:E-Mic]
+name = input-microphone-external
+
+[Option Capture Source:e-Mic]
+name = input-microphone-external
+
+[Option Capture Source:LineIn]
+name = input-linein
+
+[Option Capture Source:Analog]
+name = input
+
+[Option Capture Source:Line]
+name = input-linein
+
+[Option Capture Source:Line-In]
+name = input-linein
+
+[Option Capture Source:Line In]
+name = input-linein
+
+[Option Capture Source:Video]
+name = input-video
+
+[Option Capture Source:Aux]
+name = input
+
+[Option Capture Source:Aux0]
+name = input
+
+[Option Capture Source:Aux1]
+name = input
+
+[Option Capture Source:Aux2]
+name = input
+
+[Option Capture Source:Aux3]
+name = input
+
+[Option Capture Source:AUX IN]
+name = input
+
+[Option Capture Source:Aux In]
+name = input
+
+[Option Capture Source:AOUT]
+name = input
+
+[Option Capture Source:AUX]
+name = input
+
+[Option Capture Source:Cam Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 1]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 2]
+name = input-microphone
+
+[Option Capture Source:Analog Inputs]
+name = input
+
+[Option Capture Source:Unknown1]
+name = input
+
+[Option Capture Source:Unknown2]
+name = input
+
+[Option Capture Source:Docking-Station]
+name = input-docking
+
+[Option Capture Source:Dock Mic]
+name = input-docking-microphone
+
+;;; 'Mic Jack Mode'
+
+[Element Mic Jack Mode]
+enumeration = select
+
+[Option Mic Jack Mode:Mic In]
+name = input-microphone
+
+[Option Mic Jack Mode:Line In]
+name = input-linein
+
+;;; 'Digital Input Source'
+
+[Element Digital Input Source]
+enumeration = select
+
+[Option Digital Input Source:Analog Inputs]
+name = input
+
+[Option Digital Input Source:Digital Mic 1]
+name = input-microphone
+
+[Option Digital Input Source:Digital Mic 2]
+name = input-microphone
+
+;;; Various Boosts
+
+[Element Capture Boost]
+switch = select
+
+[Option Capture Boost:on]
+name = input-boost-on
+
+[Option Capture Boost:off]
+name = input-boost-off
+
+[Element Auto Gain Control]
+switch = select
+
+[Option Auto Gain Control:on]
+name = input-agc-on
+
+[Option Auto Gain Control:off]
+name = input-agc-off
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf
new file mode 100644 (file)
index 0000000..f2fd31c
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone2' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 89
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the second headphones, not
+; the first headphones. But it should not hurt if we leave the
+; headphone jack enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf
new file mode 100644 (file)
index 0000000..0a43e27
--- /dev/null
@@ -0,0 +1,85 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage in laptops that have a seperate LFE speaker
+; connected to the Master mono connector
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 40
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all-no-lfe
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf
new file mode 100644 (file)
index 0000000..542edc4
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage on boards that have a seperate Mono output plug.
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 50
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = off
+volume = off
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf
new file mode 100644 (file)
index 0000000..aea7853
--- /dev/null
@@ -0,0 +1,94 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Speaker' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = mute
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = mute
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = mute
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf
new file mode 100644 (file)
index 0000000..fc30800
--- /dev/null
@@ -0,0 +1,92 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for the 'default' output. Note that a-o-speaker.conf has a
+; higher priority than this
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 99
+
+[Element Hardware Master]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = ignore
+volume = ignore
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the default output, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = ignore
+volume = zero
+
+[Element Headphone2]
+switch = ignore
+volume = zero
+
+[Element Speaker]
+switch = ignore
+volume = off
+
+[Element Front]
+switch = ignore
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = ignore
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = ignore
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = ignore
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common
new file mode 100644 (file)
index 0000000..3204846
--- /dev/null
@@ -0,0 +1,128 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common part of all paths
+
+; So here's generally how mixer paths are used by PA: PA goes through
+; a mixer path file from top to bottom and checks if a mixer element
+; described therein exists. If so it is added to the list of mixer
+; elements PA will control, keeping the order it read them in. If a
+; mixer element described here has set the required= or
+; required-absent= directives a path might not be accepted as valid
+; and is ignored in its entirety (see below). However usually if a
+; element listed here is missing this one element is ignored but not
+; the entire path.
+;
+; When a device shall be muted/unmuted *all* elements listed in a path
+; file with "switch = mute" will be toggled.
+;
+; When a device shall change its volume, PA will got through the list
+; of all elements with "volume = merge" and set the volume on the
+; first element. If that element does not support dB volumes, this is
+; where the story ends. If it does support dB volumes, PA divides the
+; requested volume by the volume that was set on this element, and
+; then go on to the next element with "volume = merge" and then set
+; that there, and so on.  That way the first volume element in the
+; path will be the one that does the 'biggest' part of the overall
+; volume adjustment, with the remaining elements usually being set to
+; some value next to 0dB. This logic makes sure we get the full range
+; over all volume sliders and a very high granularity of volumes
+; already in hardware.
+;
+; All switches and enumerations set to "select" are exposed via the
+; "port" functionality of sinks/sources. Basically every possible
+; switch setting and every possible enumeration setting will be
+; combined and made into a "port". So make sure you don't list too
+; many switches/enums for exposing, because the number of ports might
+; rise exponentially.
+;
+; Only one path can be selected at a time. All paths that are valid
+; for an audio device will be exposed as "port" for the sink/source.
+
+
+; [General]
+; priority = ...                         # Priority for this path
+; description = ...
+;
+; [Option ...:...]                       # For each option of an enumeration or switch element
+;                                        # that shall be exposed as a sink/source port. Needs to
+;                                        # be named after the Element, followed by a colon, followed
+;                                        # by the option name, resp. on/off if the element is a switch.
+; name = ...                             # Logical name to use in the path identifier
+; priority = ...                         # Priority if this is made into a device port
+;
+; [Element ...]                          # For each element that we shall control
+; required = ignore | switch | volume | enumeration | any     # If set, require this element to be of this kind and available,
+;                                                             # otherwise don't consider this path valid for the card
+; required-absent = ignore | switch | volume                  # If set, require this element to not be of this kind and not
+;                                                             # available, otherwise don't consider this path valid for the card
+;
+; switch = ignore | mute | off | on | select                  # What to do with this switch: ignore it, make it follow mute status,
+;                                                             # always set it to off, always to on, or make it selectable as port.
+;                                                             # If set to 'select' you need to define an Option section for on
+;                                                             # and off
+; volume = ignore | merge | off | zero   # What to do with this volume: ignore it, merge it into the device
+;                                        # volume slider, always set it to the lowest value possible, or always
+;                                        # set it to 0 dB (for whatever that means)
+; enumeration = ignore | select          # What to do with this enumeration, ignore it or make it selectable
+;                                        # via device ports. If set to 'select' you need to define an Option section
+;                                        # for each of the items you want to expose
+; direction = playback | capture         # Is this relevant only for playback or capture? If not set this will implicitly be
+;                                        # set the direction of the PCM device is opened as. Generally this doesn't need to be set
+;                                        # unless you have a broken driver that has playback controls marked for capture or vice
+;                                        # versa
+; direction-try-other = no | yes         # If the element does not supported what is requested, try the other direction, too?
+;
+; override-map.1 = ...                   # Override the channel mask of the mixer control if the control only exposes a single channel
+; override-map.2 = ...                   # Override the channel masks of the mixer control if the control only exposes two channels
+;                                        # Override maps should list for each element channel which high-level channels it controls via a
+;                                        # channel mask. A channel mask may either be the name of a single channel, or the words "all-left",
+;                                        # "all-right", "all-center", "all-front", "all-rear", and "all" to encode a specific subset of
+;                                        # channels in a mask
+
+[Element PCM]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element External Amplifier]
+switch = select
+
+[Option External Amplifier:on]
+name = output-amplifier-on
+priority = 10
+
+[Option External Amplifier:off]
+name = output-amplifier-off
+priority = 0
+
+;;; 'Analog Output'
+
+[Element Analog Output]
+enumeration = select
+
+[Option Analog Output:Speakers]
+name = output-speaker
+priority = 10
+
+[Option Analog Output:Headphones]
+name = output-headphones
+priority = 9
+
+[Option Analog Output:FP Headphones]
+name = output-headphones
+priority = 8
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf
new file mode 100644 (file)
index 0000000..9838138
--- /dev/null
@@ -0,0 +1,144 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned. (and should be good enough for the vast majority of
+; cards).  Use the udev property PULSE_PROFILE_SET to assign a
+; different profile set than this one to a device.  So what is this
+; about? Simply, what we do here is map ALSA devices to how they are
+; exposed in PA. We say which ALSA device string to use to open a
+; device, which channel mapping to use then, and which mixer path to
+; use. This is encoded in a 'mapping'. Multiple of these mappings can
+; be bound together in a 'profile' which is then directly exposed in
+; the UI as a card profile. Each mapping assigned to a profile will
+; result in one sink/source to be created if the profile is selected
+; for the card.
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+
+[General]
+auto-profiles = yes
+
+[Mapping analog-mono]
+device-strings = hw:0
+channel-map = mono
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 1
+
+[Mapping analog-stereo]
+device-strings = front:%f hw:0
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 10
+
+[Mapping analog-surround-40]
+device-strings = surround40:%f
+channel-map = front-left,front-right,rear-left,rear-right
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-41]
+device-strings = surround41:%f
+channel-map = front-left,front-right,rear-left,rear-right,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-50]
+device-strings = surround50:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-51]
+device-strings = surround51:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-71]
+device-strings = surround71:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+description = Analog Surround 7.1
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping iec958-stereo]
+device-strings = iec958:%f
+channel-map = left,right
+priority = 5
+
+[Mapping iec958-surround-40]
+device-strings = iec958:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 1
+
+[Mapping iec958-ac3-surround-40]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 2
+direction = output
+
+[Mapping iec958-ac3-surround-51]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 3
+direction = output
+
+[Mapping hdmi-stereo]
+device-strings = hdmi:%f
+channel-map = left,right
+priority = 4
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf
new file mode 100644 (file)
index 0000000..2b83530
--- /dev/null
@@ -0,0 +1,91 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 4 DJ
+;
+; This card has two stereo pairs of input and two stereo pairs of
+; output, named channels A and B. Channel B has an additional
+; Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b-output]
+description = Analog Stereo Channel B (Headphones)
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-b-input]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b-output
+input-mappings = analog-stereo-a analog-stereo-b-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+input-mappings = analog-stereo-b-input
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+priority = 6
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b-input
+priority = 1
+skip-probe = yes
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf
new file mode 100644 (file)
index 0000000..3fe3cc5
--- /dev/null
@@ -0,0 +1,162 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 8 DJ
+;
+; This card has four stereo pairs of input and four stereo pairs of
+; output, named channels A to D. Channel C has an additional Mic/Line
+; connector, channel D an additional Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+
+# Since we want to set a different description for channel C's/D's input
+# and output we define two seperate mappings for them
+[Mapping analog-stereo-c-output]
+description = Analog Stereo Channel C
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-c-input]
+description = Analog Stereo Channel C (Line/Mic)
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = input
+
+[Mapping analog-stereo-d-output]
+description = Analog Stereo Channel D (Headphones)
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-d-input]
+description = Analog Stereo Channel D
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B, C (Line/Mic), D (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-input analog-stereo-d-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-c]
+description = Analog Stereo Channel D (Headphones) Output, Channel C (Line/Mic) Input
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-c-input
+priority = 90
+skip-probe = yes
+
+[Profile output:analog-stereo-c-d+input:analog-stereo-c-d]
+description = Analog Stereo Duplex Channels C (Line/Mic), D (Line/Mic)
+output-mappings = analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-c-input analog-stereo-d-input
+priority = 80
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B
+output-mappings = analog-stereo-b
+input-mappings = analog-stereo-b
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-c+input:analog-stereo-c]
+description = Analog Stereo Duplex Channel C (Line/Mic)
+output-mappings = analog-stereo-c-output
+input-mappings = analog-stereo-c-input
+priority = 60
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-d]
+description = Analog Stereo Duplex Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-d-input
+priority = 70
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 6
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B
+output-mappings = analog-stereo-b
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-c]
+description = Analog Stereo Output Channel C
+output-mappings = analog-stereo-c-output
+priority = 7
+skip-probe = yes
+
+[Profile output:analog-stereo-d]
+description = Analog Stereo Output Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+priority = 8
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b
+priority = 1
+skip-probe = yes
+
+[Profile input:analog-stereo-c]
+description = Analog Stereo Input Channel C (Line/Mic)
+input-mappings = analog-stereo-c-input
+priority = 4
+skip-probe = yes
+
+[Profile input:analog-stereo-d]
+description = Analog Stereo Input Channel D
+input-mappings = analog-stereo-d-input
+priority = 3
+skip-probe = yes
diff --git a/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf b/media-config-target-tw1/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf
new file mode 100644 (file)
index 0000000..6a7fd50
--- /dev/null
@@ -0,0 +1,119 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned (and should be good enough for the vast majority of
+; cards). If you want to assign a different profile set than this one
+; to a device, either set the udev property PULSE_PROFILE_SET for the
+; card, or use the "profile_set" module argument when loading
+; module-alsa-card.
+;
+; So what is this about? Simply, what we do here is map ALSA devices
+; to how they are exposed in PA. We say which ALSA device string to
+; use to open a device, which channel mapping to use then, and which
+; mixer path to use. This is encoded in a 'mapping'. Multiple of these
+; mappings can be bound together in a 'profile' which is then directly
+; exposed in the UI as a card profile. Each mapping assigned to a
+; profile will result in one sink/source to be created if the profile
+; is selected for the card.
+;
+; Additionally, the path set configuration files can describe the
+; decibel values assigned to the steps of the volume elements. This
+; can be used to work around situations when the alsa driver doesn't
+; provide any decibel information, or when the information is
+; incorrect.
+
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+;
+; [DecibelFix element]                      # Decibel fixes can be used to work around missing or incorrect dB
+;                                           # information from alsa. A decibel fix is a table that maps volume steps
+;                                           # to decibel values for one volume element. The "element" part in the
+;                                           # section title is the name of the volume element.
+;                                           #
+;                                           # NOTE: This feature is meant just as a help for figuring out the correct
+;                                           # decibel values. PulseAudio is not the correct place to maintain the
+;                                           # decibel mappings!
+;                                           #
+;                                           # If you need this feature, then you should make sure that when you have
+;                                           # the correct values figured out, the alsa driver developers get informed
+;                                           # too, so that they can fix the driver.
+;
+; db-values = ...                           # The option value consists of pairs of step numbers and decibel values.
+;                                           # The pairs are separated with whitespace, and steps are separated from
+;                                           # the corresponding decibel values with a colon. The values must be in an
+;                                           # increasing order. Here's an example of a valid string:
+;                                           #
+;                                           #     "0:-40.50  1:-38.70  3:-33.00  11:0"
+;                                           #
+;                                           # The lowest step imposes a lower limit for hardware volume and the
+;                                           # highest step correspondingly imposes a higher limit. That means that
+;                                           # that the mixer will never be set outside those values - the rest of the
+;                                           # volume scale is done using software volume.
+;                                           #
+;                                           # As can be seen in the example, you don't need to specify a dB value for
+;                                           # each step. The dB values for skipped steps will be linearly interpolated
+;                                           # using the nearest steps that are given.
+
+[General]
+auto-profiles = yes
+
+[Mapping usb-analog-stereo]
+device-strings = hw:%f
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+priority = 10
+
+[Mapping usb-analog-surround-51]
+device-strings = hw:%f
+;channel-map = front-left,front-right,front-center,lfe,rear-left,rear-right
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-lfe-on-mono
+priority = 180
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-tw2.manifest b/media-config-target-tw2.manifest
new file mode 100644 (file)
index 0000000..a76fdba
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+       <request>
+               <domain name="_" />
+       </request>
+</manifest>
diff --git a/media-config-target-tw2/hal/etc/asound.conf b/media-config-target-tw2/hal/etc/asound.conf
new file mode 100644 (file)
index 0000000..acaf318
--- /dev/null
@@ -0,0 +1,11 @@
+# default sound configuration
+
+pcm. !default {
+       type hw
+       card 0
+}
+
+ctl. !default {
+       type hw
+       card 0
+}
diff --git a/media-config-target-tw2/hal/etc/multimedia/mmfw_audio_pcm_dump.ini b/media-config-target-tw2/hal/etc/multimedia/mmfw_audio_pcm_dump.ini
new file mode 100644 (file)
index 0000000..6e13b68
--- /dev/null
@@ -0,0 +1,8 @@
+[pcm_dump]
+;playback
+pa_sink = 0
+pa_sink_input = 0
+
+;capture
+pa_source = 0
+pa_source_output = 0
diff --git a/media-config-target-tw2/hal/etc/multimedia/mmfw_audio_volume.ini b/media-config-target-tw2/hal/etc/multimedia/mmfw_audio_volume.ini
new file mode 100644 (file)
index 0000000..ae7e635
--- /dev/null
@@ -0,0 +1,19 @@
+[volumes]
+system                         = 0, 72, 73, 74, 75, 76, 77, 78, 80, 81, 82, 84, 86, 88, 90, 94
+notification                   = 0, 68, 70, 72, 73, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 97
+alarm                          = 0, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 92
+ringtone                       = 0, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 92
+media                          = 0, 46, 50, 53, 58, 62, 68, 72, 76, 80, 84, 87, 90, 93, 96, 100
+call                           = 60, 65, 70, 76, 82, 88, 94, 100
+voip                           = 60, 65, 70, 76, 82, 88, 94, 100
+voice                          = 0, 55, 58, 61, 64, 67, 70, 75, 78, 82, 86, 89, 91, 94, 97, 100
+gain_dialer                    = 1.00
+gain_touch                     = 1.00
+gain_af                        = 0.70
+gain_shutter1                  = 0.14
+gain_shutter2                  = 1.00
+gain_camcording                = 0.30
+gain_midi                      = 1.00
+gain_booting                   = 0.40
+gain_video                     = 0.90
+gain_tts                       = 1.00
diff --git a/media-config-target-tw2/hal/etc/multimedia/mmfw_camcorder.ini b/media-config-target-tw2/hal/etc/multimedia/mmfw_camcorder.ini
new file mode 100644 (file)
index 0000000..0740a69
--- /dev/null
@@ -0,0 +1,103 @@
+; < Camera/Camcorder Configure Main INI file >
+;
+; - Header List -
+; 1.  General
+; 2.  VideoInput
+; 3.  AudioInput
+; 4.  VideoOutput
+; 5.  Capture
+; 6.  Record
+; 7.  VideoEncoder
+; 8.  AudioEncoder
+; 9.  ImageEncoder
+; 10. Mux
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryMain"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[General]
+SyncStateChange = 1
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap || NOT-USE-DEFAULT_VALUE
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap --gst-debug=3 || NOT-USE-DEFAULT_VALUE
+ModelName = TW1
+;DisabledAttributes = camera-optical-zoom camera-af-touch-x camera-af-touch-y camera-exposure-value camera-f-number camera-shutter-speed camera-hold-af-after-capturing filter-flip filter-hue display-src-x display-src-y display-src-width display-src-height tag-image-description strobe-control strobe-capabilities strobe-mode detect-mode detect-number detect-focus-select detect-select-number detect-status || NO_DEFAULT_VALUE
+
+[VideoInput]
+;VideosrcElement = v4l2src | 1,0 | do-timestamp,1
+UseVideoscale = 1
+VideoscaleElement = videoscale | 3,0 | width,320 | height,240 | method,1
+UseZeroCopyFormat = 0
+DeviceCount = 0
+
+[AudioInput]
+AudioDevice = 0,1 || 0
+AudiosrcElement = pulsesrc | 3,0 | do-timestamp,1 | slave-method,3 | latency,0
+AudiomodemsrcElement = pulsesrc | 3,0 | do-timestamp,1 | slave-method,3 | latency,0
+
+[VideoOutput]
+; DisplayDevice
+;;; 0: MAIN LCD, 1: SUB LCD, 2:TV OUT, 3: MAIN LCD and SUB LCD, 4: MAIN LCD and TV OUT
+DisplayDevice = 0 || 0
+; DisplayMode
+;;; 0: Default, 1: Pri Video ON and Sec Video Full-Screen, 2: Pri Video OFF and Sec Video Full-Screen
+DisplayMode = 0,1,2 || 0
+; Videosink
+;;; 0: Overlay surface, 1: Evas surface, 2: GL surface, 3: NULL surface, 4: Remote
+Videosink = 0,3,4 || 3
+VideosinkElementOverlay = tizenwlsink | 7,0 | draw-borders,0 | force-aspect-ratio,1 | enable-last-sample,0 | qos,0 | sync,0 | show-preroll-frame,0 | use-tbm,1
+VideosinkElementRemote = tizenipcsink | 4,0 | permissions,511 | enable-last-sample,0 | qos,0 | sync,0
+VideosinkElementNull = fakesink | 4,0 | qos,0 | sync,0 | enable-last-sample,0 | show-preroll-frame,0
+UseVideoscale = 0
+VideoscaleElement = videoscale | 1,0 | rotang,90
+
+[VideoEncoder]
+MPEG4 = avenc_mpeg4 | 0,0
+
+[AudioEncoder]
+AMR = amrnbenc | 0,0
+AAC = avenc_aac | 1,0 | compliance,-2
+WAVE = wavenc | 0,0
+
+[ImageEncoder]
+JPEG = jpegenc | 0,0
+;PNG = pngenc | 0,0
+
+[Capture]
+UseEncodebin = 0
+UseCaptureMode = 0
+VideoscaleElement = videoscale | 1,0 | method,1
+
+[Record]
+UseAudioEncoderQueue = 1
+UseVideoEncoderQueue = 1
+VideoProfile = 0
+VideoAutoAudioConvert = 1
+VideoAutoAudioResample = 0
+VideoAutoColorSpace = 0
+AudioProfile = 1
+AudioAutoAudioConvert = 1
+AudioAutoAudioResample = 0
+AudioAutoColorSpace = 0
+ImageProfile = 2
+ImageAutoAudioConvert = 0
+ImageAutoAudioResample = 0
+ImageAutoColorSpace = 1
+RecordsinkElement = filesink | 1,0 | async,0
+SupportDualStream = 0
+UseNoiseSuppressor = 0
+DropVideoFrame = 0
+PassFirstVideoFrame = 0
+
+[Mux]
+3GP = 3gppmux | 0,0
+AMR = avmux_amr | 0,0
+MP4 = mp4mux | 0,0
+AVI = avimux | 0,0
+MATROSKA = matroskamux | 0,0
+WAV = wavenc | 0,0
+AAC = avmux_adts | 0,0
+M2TS = mpegtsmux | 0,0
+
diff --git a/media-config-target-tw2/hal/etc/multimedia/mmfw_media_codec.ini b/media-config-target-tw2/hal/etc/multimedia/mmfw_media_codec.ini
new file mode 100644 (file)
index 0000000..9f2a5dd
--- /dev/null
@@ -0,0 +1,89 @@
+[h261]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = , ,
+sw_encoder = , ,
+
+[h263]
+hw_decoder = omxdec_h263, video/x-h263, NV12
+hw_encoder = omxenc_h263, video/x-raw,  H263
+sw_decoder = avdec_h263,   video/x-h263, I420
+sw_encoder = avenc_h263,   video/x-raw,  H263
+
+[h264]
+hw_decoder = omxdec_h264, video/x-h264, NV12
+hw_encoder = omxenc_h264, video/x-raw,  H264_SP
+sw_decoder = avdec_h264,   video/x-h264, I420
+sw_encoder = avenc_h264,   video/x-raw,  H264_SP
+
+[mpeg4]
+hw_decoder = omxdec_mpeg4, video/mpeg, NV12
+hw_encoder = omxenc_mpeg4, video/x-raw,  MPEG4_SP
+sw_decoder = avdec_mpeg4,   video/mpeg, I420
+sw_encoder = avenc_mpeg4,   video/x-raw,  MPEG4_SP
+
+[aac_lc]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = avenc_aac,   audio/x-raw, AAC_LC
+
+[aac_he]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[aac_he_ps]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[mp3]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_mp3,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[amr_nb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrnb,   audio/AMR, PCM_F32LE
+sw_encoder = amrnbenc, audio/x-raw, AMR_NB
+
+[amr_wb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrwb,   audio/AMR-WB, PCM_F32LE
+sw_encoder = , ,
+
+[vorbis]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = vorbisdec,   audio/x-vorbis, PCM_F32LE
+sw_encoder = , ,
+
+[flac]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_flac,   audio/x-flac, PCM_F32LE
+sw_encoder = , ,
+
+[wmav1]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav1,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmav2]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav2,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmapro]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmapro,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
diff --git a/media-config-target-tw2/hal/etc/multimedia/mmfw_media_streamer.ini b/media-config-target-tw2/hal/etc/multimedia/mmfw_media_streamer.ini
new file mode 100644 (file)
index 0000000..488d6a8
--- /dev/null
@@ -0,0 +1,124 @@
+[general]
+; generating dot file representing pipeline state
+generate dot = no
+dot dir =
+
+; decodebin will be used instead of decoder node
+use decodebin = yes
+
+; comma separated list of element names which
+; will not be used in autoplug mode
+exclude elements = v4l2video,v4l2h264,v4l2mpeg4,omx,sprd
+
+; comma separated list of element names which
+; will require resources in autoplug mode
+resource elements = omx,sprd
+
+; comma separated list of arguments
+; that will pass to gst_init
+gstreamer arguments = --gst-debug=2
+
+
+;MEDIA_STREAMER_NODE_TYPE_SRC
+[node type 1]
+audio capture = pulsesrc
+video capture = waylandsrc
+camera = camerasrc
+
+;MEDIA_STREAMER_NODE_TYPE_SINK
+[node type 2]
+audio = pulsesink
+overlay = tizenwlsink
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_ENCODER
+[node type 3]
+video/x-h263 = avenc_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DECODER
+[node type 4]
+video/x-h263 = avdec_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_ENCODER
+[node type 5]
+audio/AMR = amrnbenc
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DECODER
+[node type 6]
+audio/AMR = amrnbdec
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_CONVERTER
+[node type 7]
+video/x-raw = videoconvert
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_CONVERTER
+[node type 8]
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_RESAMPLE
+[node type 9]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_PAY
+[node type 10]
+video/x-h263 = rtph263pay
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_PAY
+[node type 11]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DEPAY
+[node type 12]
+video/x-h263 = rtph263depay
+video/x-h264 = rtph264depay
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DEPAY
+[node type 13]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_RATE
+[node type 14]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_SCALE
+[node type 15]
+
+;MEDIA_STREAMER_NODE_TYPE_TEXT_OVERLAY
+[node type 16]
+text/x-raw = textoverlay
+
+;MEDIA_STREAMER_NODE_TYPE_PARSER
+[node type 17]
+video/x-h263 = h263parse
+video/x-h264 = h264parse
+
+;MEDIA_STREAMER_NODE_TYPE_FILTER
+[node type 18]
+
+;MEDIA_STREAMER_NODE_TYPE_TEE
+[node type 19]
+
+;MEDIA_STREAMER_NODE_TYPE_QUEUE
+[node type 20]
+
+;MEDIA_STREAMER_NODE_TYPE_MQUEUE
+[node type 21]
+
+;MEDIA_STREAMER_NODE_TYPE_MUXER
+[node type 22]
+
+;MEDIA_STREAMER_NODE_TYPE_DEMUXER
+[node type 23]
+
+;MEDIA_STREAMER_NODE_TYPE_RTP
+[node type 24]
+
+;MEDIA_STREAMER_NODE_TYPE_INPUT_SELECTOR
+[node type 25]
+
+;MEDIA_STREAMER_NODE_TYPE_OUTPUT_SELECTOR
+[node type 26]
+
+;MEDIA_STREAMER_NODE_TYPE_INTERLEAVE
+[node type 27]
+
+;MEDIA_STREAMER_NODE_TYPE_DEINTERLEAVE
+[node type 28]
+
diff --git a/media-config-target-tw2/hal/etc/multimedia/mmfw_player.ini b/media-config-target-tw2/hal/etc/multimedia/mmfw_player.ini
new file mode 100644 (file)
index 0000000..e900636
--- /dev/null
@@ -0,0 +1,102 @@
+[general]
+
+disable segtrap = yes ; same effect with --gst-disable-segtrap
+
+; set default videosink element according to video surface type(X, EVAS, NULL)
+videosink element overlay = tizenwlsink
+videosink element fake = fakesink
+video converter element =
+
+; decoder element keyword for resource management.
+video codec element hw = omx
+video codec element sw = avdec
+video codec default type = hw ; hw or sw
+
+audio codec element hw =
+audio codec element sw = avdec
+audio codec default type = sw ; hw or sw
+
+; support with HW audio codec
+support audio effect = no
+support pcm exporting = no
+support pitch control = no
+support replaygain control = no
+
+audiosink element = pulsesink
+
+; audio offload information
+audio offload sink element =
+audio offload device type =    ; builtin-speaker,bt-a2dp,audio-jack,usb-audio from pulse stream-map
+audio offload media format =   ; Use the format keyword of media_format_mimetype_e, MAX:10
+
+; supported input format of external media source stream
+; Use the format keyword of media_format_mimetype_e, MAX:10
+media stream input format = AAC,H264_SP,H264_MP,H264_HP
+
+; if yes. gstreamer will not update registry
+skip rescan = yes
+delay before repeat = 50 ; msec
+
+; comma separated list of tocken which elemnts has it in it's name will not be used
+; this works if 'use decodebin = yes'
+element exclude keyword = v4l2
+
+; comma separated list of tocken
+; this works if 'use decodebin = yes'
+unsupported codec keyword = divx
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1 = --gst-debug=*:2
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; generating dot file representing pipeline state
+; DEFAULT MUST BE 'no'. If 'yes', mmplayer will set env-variable for it's session as "export GST_DEBUG_DUMP_DOT_DIR=/tmp/"
+generate dot = no
+
+; parameter is for only video to be determined
+; which clock will be used
+; if yes, system clock will be used
+; apart from this, audiosink is clock provider for audio
+use system clock = yes
+
+; allowed timeout for changing pipeline state
+live state change timeout = 30 ; sec
+localplayback state change timeout = 10 ; sec
+
+; delay in msec for sending EOS
+eos delay = 0 ; msec
+
+; extracted pcm buffer size
+pcm buffer size = 51200 ; 50Kbytes
+
+; max num of bo for sw codec
+video bo max = 10
+
+; video bo timeout (sec)
+video bo timeout = 10
+
+; setup pipeline with decodebin2
+use decodebin = no
+
+[http streaming]
+
+httpsrc element = souphttpsrc
+
+http buffering limit = 99.0 ; percent
+
+; if yes, use file for buffering.
+; if no, use memory for buffering.
+http use file buffer = no
+
+; ring buffer size when use mem buffer
+http ring buffer size = 20971520 ; 20MBytes
+
+http max size bytes = 1048576 ; bytes
+
+http buffering time = 1.2
+
+http timeout = 30 ; sec
diff --git a/media-config-target-tw2/hal/etc/multimedia/mmfw_player_audio_effect.ini b/media-config-target-tw2/hal/etc/multimedia/mmfw_player_audio_effect.ini
new file mode 100644 (file)
index 0000000..1394608
--- /dev/null
@@ -0,0 +1,17 @@
+[audio effect]
+; name of audio effect element
+audio effect element = audioeq
+
+; preset audio effect setting
+audio effect preset = no
+
+; custom audio effect setting (EQ/extension)
+audio effect custom = yes
+audio effect custom list = 0
+
+audio effect custom eq band num = 7 ; number of EQ bands
+audio effect custom eq band width = 33, 90, 242, 649, 1743, 4676, 12544 ; list of each EQ band width (Hz)
+audio effect custom eq band freq = 36, 98, 265, 711, 1907, 5117, 13727 ; list of each EQ band central frequency (Hz)
+
+audio effect custom min list = -12 ; list of minimum level value (the first element is for EQ, others for extension effect)
+audio effect custom max list = 12 ; list of maximum level value (the first element is for EQ, others for extension effect)
diff --git a/media-config-target-tw2/hal/etc/multimedia/mmfw_resource_manager.ini b/media-config-target-tw2/hal/etc/multimedia/mmfw_resource_manager.ini
new file mode 100644 (file)
index 0000000..1d67f0b
--- /dev/null
@@ -0,0 +1,8 @@
+[max volume]
+video_overlay = -1
+video_decoder = -1
+camera = -1
+
+[priority]
+media = 10
+interrupt = 99
diff --git a/media-config-target-tw2/hal/etc/multimedia/mmfw_streamrecorder.ini b/media-config-target-tw2/hal/etc/multimedia/mmfw_streamrecorder.ini
new file mode 100644 (file)
index 0000000..2888707
--- /dev/null
@@ -0,0 +1,81 @@
+[general]
+;is encsink source is live
+encscink source is live = 0
+
+retrialcount = 10
+
+minimum frame = 5
+
+reset pause time = 0
+
+screen record = 1
+
+convert output buffer num = 6
+
+hw encoder supported = 0 ; 1 if supported and 'video codec element hw' should be formed.
+
+video codec element hw = ; sprd (if verified) or verified hw codec element
+
+[encodebin]
+;MM_STREAMRECORDER_ENCBIN_PROFILE_VIDEO = 0 MM_STREAMRECORDER_ENCBIN_PROFILE_AUDIO = 1
+;MM_STREAMRECORDER_ENCBIN_PROFILE_IMAGE = 2 MM_STREAMRECORDER_ENCBIN_PROFILE_NUM = 3
+encsink bin profile = 0
+
+encsink bin auto audio resample = 0
+
+encsink bin auto colorspace = 1
+
+encsink bin auto audio convert = 1
+
+encsink bin use video toggle = 0
+
+[pipeline]
+encsink bin source = appsrc
+
+name of audio src = pulsesrc
+
+h264 encoder =
+
+h263 encoder = avenc_h263p
+
+mpeg4 encoder = avenc_mpeg4
+
+name of audio encoder = avenc_aac
+
+use parser  =
+
+name of 3GP muxer = avmux_3gp
+
+name of MP4 muxer = avmux_mp4
+
+name of video converter = videoconvert
+
+name of sink = filesink
+
+[video param]
+;/*ms*/
+video frame wait time = 200000
+
+[audio param]
+audio frame minimum space = 102400
+
+audio frame wait time = 20000
+
+[attribute]
+supported height = 1080,720,480,240,288,144
+
+supported width = 1920,1280,640,320,352,176
+
+;/*AMR, AAC, VORBIS ,PCM*/
+supported audio encoders = AMR,AAC,PCM
+
+;/* H263 , H264 , MPEG4 */
+supported video encoders = H263,MPEG4
+
+;/*3GP , AMR, MP4 , WAV, ADTS*/
+supported file formats = 3GP,MP4,AMR,ADTS,WAV
+
+[debug]
+; generating dot file representing pipeline state
+; do export GST_DEBUG_DUMP_DOT_DIR=/tmp/ in the shell (also do export to '/etc/profile.d/mmf.sh')
+generate dot = no
diff --git a/media-config-target-tw2/hal/etc/multimedia/mused.conf b/media-config-target-tw2/hal/etc/multimedia/mused.conf
new file mode 100644 (file)
index 0000000..d83cdf3
--- /dev/null
@@ -0,0 +1,66 @@
+[muse]
+; The 'hosts' parameter defines the modules,
+; which the user would like to connect to the muse.
+; If you want to add host, then write manually.
+hosts=player, camera, recorder
+logfile=/var/log/mused/muse-server
+lockfile=/tmp/.muse_core.lock
+min_timeout=5
+max_timeout=90
+;100MB=100000
+memory_threshold=100000
+enable_watch_external_storage=0
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1=--gst-debug=*:2,*STATE*:4,*pulse*:4,*audiobasesink:4
+gstparam2=--gst-disable-segtrap
+gstparam3=
+gstparam4=
+gstparam5=
+gstparam6=
+gstparam7=
+gstparam8=
+gstparam9=
+gstparam10=
+
+; gstparam#=--gst-plugin-load=/usr/lib/gstreamer-1.0/libgstcoreelements.so'
+; can be substituted with gstpreload=coreelements'
+gstpreload=
+
+[player]
+; The 'player' parameter represents the muse-player.
+; This module recovers the "capi-media-player".
+path=libmuse-player.so
+preloaded=no
+timeout=60
+disable_watchdog_api=-1
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[camera]
+; The 'camera' parameter represents the muse-camera.
+; This module recovers the "capi-media-camera".
+path=libmuse-camera.so
+preloaded=no
+timeout=10
+;api 2 is camera_dispatcher_start_preview
+disable_watchdog_api=2
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[recorder]
+; The 'recorder' parameter represents the muse-recorder.
+; This module recovers the "capi-media-recorder".
+; This one should be paired with the 'camera' module.
+path=libmuse-recorder.so
+preloaded=no
+timeout=10
+;api 5 is recorder_start
+disable_watchdog_api=5
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
diff --git a/media-config-target-tw2/hal/etc/murphy/murphy.lua b/media-config-target-tw2/hal/etc/murphy/murphy.lua
new file mode 100644 (file)
index 0000000..17c1218
--- /dev/null
@@ -0,0 +1,93 @@
+m = murphy.get()
+
+-- load the dlog plugin
+m:try_load_plugin('dlog')
+
+-- load the console plugin
+-- m:try_load_plugin('console')
+
+-- load the dbus plugin
+-- if m:plugin_exists('dbus') then
+--     m:load_plugin('dbus')
+-- end
+
+-- load the native resource plugin
+if m:plugin_exists('resource-native') then
+    m:load_plugin('resource-native')
+    m:info("native resource plugin loaded")
+else
+    m:info("No native resource plugin found...")
+end
+
+-- load the dbus resource plugin
+m:try_load_plugin('resource-dbus', {
+    dbus_bus = "system",
+    dbus_service = "org.Murphy",
+    dbus_track = true,
+    default_zone = "driver",
+    default_class = "implicit"
+})
+
+-- load the domain control plugin
+if m:plugin_exists('domain-control') then
+    m:load_plugin('domain-control')
+else
+    m:info("No domain-control plugin found...")
+end
+
+if m:plugin_exists('glib') then
+    m:load_plugin('glib')
+else
+    m:info("No glib plugin found...")
+end
+
+-- define application classes
+application_class {
+    name     = "interrupt",
+    priority = 99,
+    modal    = false,
+    share    = false,
+    order    = "fifo"
+}
+
+application_class {
+    name     = "media",
+    priority = 10,
+    modal    = false,
+    share    = false,
+    order    = "lifo"
+}
+
+-- define zone attributes
+zone.attributes {
+    type = {mdb.string, "common", "rw"},
+    location = {mdb.string, "anywhere", "rw"}
+}
+
+-- define zones
+zone {
+     name = "driver",
+     attributes = {
+         type = "common",
+         location = "front-left"
+     }
+}
+
+-- define resource classes
+resource.class {
+     name = "video_overlay",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_decoder",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "camera",
+     shareable = false,
+     sync_release = true
+}
diff --git a/media-config-target-tw2/hal/etc/profile.d/mmf.sh b/media-config-target-tw2/hal/etc/profile.d/mmf.sh
new file mode 100644 (file)
index 0000000..7dac276
--- /dev/null
@@ -0,0 +1,6 @@
+#!/bin/sh
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+export GST_DEBUG=2
+export ORC_CODE=debug
+export ORC_DEBUG=5
+export GST_PLUGIN_PATH=@HAL_LIBDIR@/gstreamer-1.0
diff --git a/media-config-target-tw2/hal/etc/pulse/client.conf b/media-config-target-tw2/hal/etc/pulse/client.conf
new file mode 100644 (file)
index 0000000..3637b20
--- /dev/null
@@ -0,0 +1,37 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for PulseAudio clients. See pulse-client.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+; default-sink =
+; default-source =
+default-server = /var/run/pulse/native
+; default-dbus-server =
+
+autospawn = no
+; daemon-binary = /usr/bin/pulseaudio
+; extra-arguments = --log-target=syslog
+
+; cookie-file =
+
+enable-shm = no
+shm-size-bytes = 4194304 # setting this 0 will use the system-default, usually 64 MiB
+
+; auto-connect-localhost = no
+; auto-connect-display = no
diff --git a/media-config-target-tw2/hal/etc/pulse/daemon.conf b/media-config-target-tw2/hal/etc/pulse/daemon.conf
new file mode 100644 (file)
index 0000000..431e66b
--- /dev/null
@@ -0,0 +1,83 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for the PulseAudio daemon. See pulse-daemon.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+daemonize = yes
+; fail = yes
+; allow-module-loading = yes
+; allow-exit = yes
+; use-pid-file = yes
+system-instance = yes
+; local-server-type = user
+; enable-shm = yes
+; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
+; lock-memory = no
+; cpu-limit = no
+
+; high-priority = yes
+; nice-level = -11
+
+realtime-scheduling = yes
+realtime-priority = 5
+
+; exit-idle-time = 20
+; scache-idle-time = 20
+
+; dl-search-path = (depends on architecture)
+
+; load-default-script-file = yes
+; default-script-file = /etc/pulse/default.pa
+
+log-target = dlog
+log-level = info
+; log-meta = no
+; log-time = no
+; log-backtrace = 0
+
+resample-method = speex-fixed-3
+; enable-remixing = yes
+; enable-lfe-remixing = no
+
+flat-volumes = no
+
+; rlimit-fsize = -1
+; rlimit-data = -1
+; rlimit-stack = -1
+; rlimit-core = -1
+; rlimit-as = -1
+; rlimit-rss = -1
+; rlimit-nproc = -1
+; rlimit-nofile = 256
+; rlimit-memlock = -1
+; rlimit-locks = -1
+; rlimit-sigpending = -1
+; rlimit-msgqueue = -1
+; rlimit-nice = 31
+; rlimit-rtprio = 9
+; rlimit-rttime = 1000000
+
+; default-sample-format = s16le
+; default-sample-rate = 44100
+alternate-sample-rate = 44100
+; default-sample-channels = 2
+; default-channel-map = front-left,front-right
+
+; default-fragments = 4
+; default-fragment-size-msec = 25
diff --git a/media-config-target-tw2/hal/etc/pulse/default.pa b/media-config-target-tw2/hal/etc/pulse/default.pa
new file mode 100644 (file)
index 0000000..ef8f114
--- /dev/null
@@ -0,0 +1,149 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started per-user
+# (i.e. not in system mode)
+
+.nofail
+
+### Load something into the sample cache
+#load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
+#load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-access /usr/share/sounds/generic.wav
+
+.fail
+
+### Automatically restore the volume of streams and devices
+load-module module-device-restore
+load-module module-stream-restore
+load-module module-card-restore
+
+### Automatically augment property information from .desktop files
+### stored in /usr/share/application
+load-module module-augment-properties
+
+### Load audio drivers statically
+### (it's probably better to not load these drivers manually, but instead
+### use module-udev-detect -- see below -- for doing this automatically)
+#load-module module-alsa-sink
+#load-module module-alsa-source device=hw:1,0
+#load-module module-null-sink
+#load-module module-pipe-sink
+
+### Automatically load driver modules depending on the hardware available
+.ifexists module-udev-detect.so
+load-module module-udev-detect
+.else
+### Use the static hardware detection module (for systems that lack udev support)
+load-module module-detect
+.endif
+
+### Automatically connect sink and source if JACK server is present
+.ifexists module-jackdbus-detect.so
+.nofail
+load-module module-jackdbus-detect channels=2
+.fail
+.endif
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Load several protocols
+.ifexists module-esound-protocol-unix.so
+load-module module-esound-protocol-unix
+.endif
+load-module module-native-protocol-unix
+
+### Network access (may be configured with paprefs, so leave this commented
+### here if you plan to use paprefs)
+#load-module module-esound-protocol-tcp
+#load-module module-native-protocol-tcp
+
+### Load the RTP receiver module (also configured via paprefs, see above)
+#load-module module-rtp-recv
+
+### Load the RTP sender module (also configured via paprefs, see above)
+#load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
+#load-module module-rtp-send source=rtp.monitor
+
+### Load additional modules from GConf settings. This can be configured with the paprefs tool.
+### Please keep in mind that the modules configured by paprefs might conflict with manually
+### loaded modules.
+.ifexists module-gconf.so
+.nofail
+load-module module-gconf
+.fail
+.endif
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Honour intended role device property
+load-module module-intended-roles
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle
+
+### If autoexit on idle is enabled we want to make sure we only quit
+### when no local session needs us anymore.
+.ifexists module-console-kit.so
+load-module module-console-kit
+.endif
+.ifexists module-systemd-login.so
+load-module module-systemd-login
+.endif
+
+### Enable positioned event sounds
+load-module module-position-event-sounds
+
+### Cork music/video streams when a phone stream is active
+load-module module-role-cork
+
+### Modules to allow autoloading of filters (such as echo cancellation)
+### on demand. module-filter-heuristics tries to determine what filters
+### make sense, and module-filter-apply does the heavy-lifting of
+### loading modules and rerouting streams.
+load-module module-filter-heuristics
+load-module module-filter-apply
+
+### Load DBus protocol
+.ifexists module-dbus-protocol.so
+load-module module-dbus-protocol
+.endif
+
+
+load-module module-switch-on-port-available
+
+### Make some devices default
+#set-default-sink output
+#set-default-source input
diff --git a/media-config-target-tw2/hal/etc/pulse/device-map.json b/media-config-target-tw2/hal/etc/pulse/device-map.json
new file mode 100644 (file)
index 0000000..7893e4e
--- /dev/null
@@ -0,0 +1,31 @@
+{
+       "device-types":[
+               {
+                       "device-type":"builtin-speaker",
+                       "playback-devices":{"normal":"alsa:0,0", "call-voice":"alsa:0,0"}
+               },
+               {
+                       "device-type":"builtin-mic",
+                       "capture-devices":{"normal":"alsa:0,0"}
+               },
+               {
+                       "device-type":"bt-sco",
+                       "capture-devices":{"normal":"alsa:0,0"}
+               }
+       ],
+       "device-files":{
+               "playback-devices":[
+                       {
+                               "device-string":"alsa:0,0",
+                               "role":{"normal":"rate=48000 mmap=0"
+                               }
+                       },
+               ],
+               "capture-devices":[
+                       {
+                               "device-string":"alsa:0,0",
+                               "role":{"normal":"rate=48000 mmap=0 channels=1"}
+                       }
+               ]
+       }
+}
diff --git a/media-config-target-tw2/hal/etc/pulse/stream-map.json b/media-config-target-tw2/hal/etc/pulse/stream-map.json
new file mode 100644 (file)
index 0000000..476488b
--- /dev/null
@@ -0,0 +1,227 @@
+{
+       "latencies":[
+               {
+                       "type":"low",
+                       "fragsize-ms":25,
+                       "minreq-ms":-1,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"mid",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"high",
+                       "fragsize-ms":75,
+                       "minreq-ms":-1,
+                       "tlength-ms":400,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"voip",
+                       "fragsize-ms":20,
+                       "minreq-ms":20,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":-1,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default-async",
+                       "fragsize-ms":50,
+                       "minreq-ms":20,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+       ],
+       "volumes":[
+               {
+                       "type":"master",
+                       "is-hal-volume":1
+               },
+               {
+                       "type":"media",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"system",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"alarm",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"notification",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voice",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"ringtone",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voip",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"call",
+                       "is-hal-volume":1
+               }
+       ],
+       "streams":[
+               {
+                       "role":"media",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["builtin-mic"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"system",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"system"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"alarm",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"alarm"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"notification",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"notification"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"emergency",
+                       "priority" : 4,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-information",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"voice"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-sco","bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-recognition",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["bt-sco","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"voice-recognition-service",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["bt-sco","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"ringtone-voip",
+                       "priority" : 5,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","sound-manager"]
+               },
+               {
+                       "role":"ringtone-call",
+                       "priority" : 6,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"ringbacktone-call",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"call"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["wav-player","tone-player"]
+               },
+               {
+                       "role":"voip",
+                       "priority" : 5,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"voip"},
+                       "avail-in-devices":["builtin-mic","bt-sco"],
+                       "avail-out-devices":["builtin-speaker","bt-sco"],
+                       "avail-frameworks":["audio-io","tone-player","sound-manager"]
+               },
+               {
+                       "role":"call-voice",
+                       "priority" : 6,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"call"},
+                       "avail-in-devices":["builtin-mic","bt-sco"],
+                       "avail-out-devices":["builtin-speaker","bt-sco"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"ext-media",
+                       "priority" : 3,
+                       "route-type" : "manual-ext",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"solo",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp"],
+                       "avail-frameworks":["wav-player","tone-player"]
+               }
+       ]
+}
diff --git a/media-config-target-tw2/hal/etc/pulse/system.pa b/media-config-target-tw2/hal/etc/pulse/system.pa
new file mode 100644 (file)
index 0000000..52f4038
--- /dev/null
@@ -0,0 +1,70 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started in system
+# mode.
+
+### Automatically load driver modules depending on the hardware available
+#.ifexists module-udev-detect.so
+load-module module-udev-detect
+#.endif
+
+### Load several protocols
+load-module module-native-protocol-unix auth-anonymous=1
+
+### Load module-tizenaudio-policy
+load-module module-tizenaudio-policy
+
+### Sound Player module
+load-module module-sound-player
+load-module module-tone-player
+load-module module-role-ducking global=1 trigger_roles=solo/notification ducking_roles=media,system,alarm,notification,voice-information,ext-media/media,ext-media volume=0%/25% fade_in=0/1000 fade_out=0/1000
+load-module module-poweroff
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Automatically restore the volume of streams and devices
+#load-module module-stream-restore
+#load-module module-device-restore
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+.ifexists module-dbus-protocol.so
+### If you want to allow TCP connections, set access to "remote" or "local,remote".
+load-module module-dbus-protocol access=local
+.endif
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+#load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle timeout=1
+
diff --git a/media-config-target-tw2/hal/etc/xdg/gstomx.conf b/media-config-target-tw2/hal/etc/xdg/gstomx.conf
new file mode 100644 (file)
index 0000000..8f514c5
--- /dev/null
@@ -0,0 +1,139 @@
+[omxdec_mpeg2]
+type-name=GstOMXMPEG2VideoDec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.MPEG2.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=0
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxdec_mpeg4]
+type-name=GstOMXMPEG4VideoDec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.MPEG4.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=0
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+src-template-caps=video/x-raw, format=(string)SN12, width=(int) [1,3840], height=(int) [1,2160], framerate=(fraction)[0/1, MAX]
+
+[omxdec_h263]
+type-name=GstOMXH263Dec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.H263.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=0
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+src-template-caps=video/x-raw, format=(string)SN12, width=(int) [1,3840], height=(int) [1,2160], framerate=(fraction)[0/1, MAX]
+
+[omxdec_h264]
+type-name=GstOMXH264Dec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.AVC.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=0
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+src-template-caps=video/x-raw, format=(string)SN12, width=(int) [1,3840], height=(int) [1,2160], framerate=(fraction)[0/1, MAX]
+
+[omxdec_h265]
+type-name=GstOMXH265Dec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.HEVC.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=0
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxdec_vp8]
+type-name=GstOMXVP8Dec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.VP8.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=0
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxdec_vp9]
+type-name=GstOMXVP9Dec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.VP9.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=0
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxdec_vc1]
+type-name=GstOMXWMVDec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.WMV.Decoder
+rank=256
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=0
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport
+sink-template-caps=video/x-wmv,wmvversion=(int)3,format=(string){WMV3,WVC1},width=(int)[1,MAX],height=(int)[1,MAX]
+
+[omxenc_h264]
+type-name=GstOMXH264Enc
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.AVC.Encoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=0
+hacks=no-disable-outport;no-component-role
+sink-template-caps=video/x-raw, format=(string)SN12, width=(int) [1,1920], height=(int) [1,1080], framerate=(fraction)[0/1, MAX]
+src-template-caps=video/x-h264, width=(int) [1,1920], height=(int) [1,1080], framerate=(fraction) [0/1, MAX], alignment=(string) au, stream-format = (string){ avc, byte-stream }
+
+[omxenc_h265]
+type-name=GstOMXH265Enc
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.HEVC.Encoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=0
+hacks=no-disable-outport;no-component-role
+
+[omxenc_mpeg4]
+type-name=GstOMXMPEG4VideoEnc
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.MPEG4.Encoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=0
+hacks=no-component-role;no-disable-outport
+sink-template-caps=video/x-raw, format=(string)SN12, width=(int) [1,1920], height=(int) [1,1080], framerate=(fraction)[0/1, MAX]
+
+[omxenc_h263]
+type-name=GstOMXH263Enc
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.H263.Encoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=0
+hacks=no-component-role;no-disable-outport
+sink-template-caps=video/x-raw, format=(string)SN12, width=(int) [1,1920], height=(int) [1,1080], framerate=(fraction)[0/1, MAX]
diff --git a/media-config-target-tw2/hal/lib/udev/rules.d/99-ion.rules b/media-config-target-tw2/hal/lib/udev/rules.d/99-ion.rules
new file mode 100644 (file)
index 0000000..46cf1c4
--- /dev/null
@@ -0,0 +1 @@
+KERNEL=="ion", MODE="0660", GROUP="video", SECLABEL{smack}="*"
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf
new file mode 100644 (file)
index 0000000..db78eb4
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'Aux' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf
new file mode 100644 (file)
index 0000000..baf674a
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'FM' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-radio
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+.include analog-input.conf.common
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf
new file mode 100644 (file)
index 0000000..4be5722
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf
new file mode 100644 (file)
index 0000000..f7f3085
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic/Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf
new file mode 100644 (file)
index 0000000..2a36f2f
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+name = analog-input-microphone
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common
new file mode 100644 (file)
index 0000000..b35e7af
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common element for all microphone inputs
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Mic Select'
+
+[Element Mic Select]
+enumeration = select
+
+[Option Mic Select:Mic1]
+name = input-microphone
+priority = 20
+
+[Option Mic Select:Mic2]
+name = input-microphone
+priority = 19
+
+;;; Various Boosts
+
+[Element Mic Boost (+20dB)]
+switch = select
+volume = merge
+
+[Option Mic Boost (+20dB):on]
+name = input-boost-on
+
+[Option Mic Boost (+20dB):off]
+name = input-boost-off
+
+[Element Mic Boost]
+switch = select
+volume = merge
+
+[Option Mic Boost:on]
+name = input-boost-on
+
+[Option Mic Boost:off]
+name = input-boost-off
+
+[Element Front Mic Boost]
+switch = select
+
+[Option Front Mic Boost:on]
+name = input-boost-on
+
+[Option Front Mic Boost:off]
+name = input-boost-off
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf
new file mode 100644 (file)
index 0000000..8531ec7
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'TV Tuner' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-video
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf
new file mode 100644 (file)
index 0000000..74c76f0
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Video' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf
new file mode 100644 (file)
index 0000000..5055f90
--- /dev/null
@@ -0,0 +1,54 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; A fallback for devices that lack seperate Mic/Line/Aux/Video/TV
+; Tuner/FM elements
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Capture]
+required = volume
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required-absent = any
+
+[Element Line]
+required-absent = any
+
+[Element Aux]
+required-absent = any
+
+[Element Video]
+required-absent = any
+
+[Element Mic/Line]
+required-absent = any
+
+[Element TV Tuner]
+required-absent = any
+
+[Element FM]
+required-absent = any
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common
new file mode 100644 (file)
index 0000000..951e11f
--- /dev/null
@@ -0,0 +1,294 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Mixer path for PulseAudio's ALSA backend, common elements for all
+; input paths. If multiple options by the same id are discovered they
+; will be suffixed with a number to distuingish them, in the same
+; order they appear here.
+;
+; Source selection should use the following names:
+;
+;       input                       -- If we don't know the exact kind of input
+;       input-microphone
+;       input-microphone-internal
+;       input-microphone-external
+;       input-linein
+;       input-video
+;       input-radio
+;       input-docking-microphone
+;       input-docking-linein
+;       input-docking
+;
+;  We explicitly don't want to wrap the following sources:
+;
+;       CD
+;       Synth/MIDI
+;       Phone
+;       Mix
+;       Digital/SPDIF
+;       Master
+;       PC Speaker
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Input Source Select'
+
+[Element Input Source Select]
+enumeration = select
+
+[Option Input Source Select:Input1]
+name = input
+priority = 10
+
+[Option Input Source Select:Input2]
+name = input
+priority = 5
+
+;;; 'Input Source'
+
+[Element Input Source]
+enumeration = select
+
+[Option Input Source:Mic]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Microphone]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Front Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Front Microphone]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Internal Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Line]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line-In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Docking-Station]
+name = input-docking
+priority = 17
+
+[Option Input Source:AUX IN]
+name = input
+priority = 10
+
+;;; 'Capture Source'
+
+[Element Capture Source]
+enumeration = select
+
+[Option Capture Source:TV Tuner]
+name = input-video
+
+[Option Capture Source:FM]
+name = input-radio
+
+[Option Capture Source:Mic/Line]
+name = input
+
+[Option Capture Source:Line/Mic]
+name = input
+
+[Option Capture Source:Mic]
+name = input-microphone
+
+[Option Capture Source:Microphone]
+name = input-microphone
+
+[Option Capture Source:Int Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Int DMic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Mic]
+name = input-microphone-internal
+
+[Option Capture Source:iMic]
+name = input-microphone-internal
+
+[Option Capture Source:i-Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Microphone]
+name = input-microphone-internal
+
+[Option Capture Source:Front Mic]
+name = input-microphone
+
+[Option Capture Source:Front Microphone]
+name = input-microphone
+
+[Option Capture Source:Rear Mic]
+name = input-microphone
+
+[Option Capture Source:Mic1]
+name = input-microphone
+
+[Option Capture Source:Mic2]
+name = input-microphone
+
+[Option Capture Source:D-Mic]
+name = input-microphone
+
+[Option Capture Source:IntMic]
+name = input-microphone-internal
+
+[Option Capture Source:ExtMic]
+name = input-microphone-external
+
+[Option Capture Source:Ext Mic]
+name = input-microphone-external
+
+[Option Capture Source:E-Mic]
+name = input-microphone-external
+
+[Option Capture Source:e-Mic]
+name = input-microphone-external
+
+[Option Capture Source:LineIn]
+name = input-linein
+
+[Option Capture Source:Analog]
+name = input
+
+[Option Capture Source:Line]
+name = input-linein
+
+[Option Capture Source:Line-In]
+name = input-linein
+
+[Option Capture Source:Line In]
+name = input-linein
+
+[Option Capture Source:Video]
+name = input-video
+
+[Option Capture Source:Aux]
+name = input
+
+[Option Capture Source:Aux0]
+name = input
+
+[Option Capture Source:Aux1]
+name = input
+
+[Option Capture Source:Aux2]
+name = input
+
+[Option Capture Source:Aux3]
+name = input
+
+[Option Capture Source:AUX IN]
+name = input
+
+[Option Capture Source:Aux In]
+name = input
+
+[Option Capture Source:AOUT]
+name = input
+
+[Option Capture Source:AUX]
+name = input
+
+[Option Capture Source:Cam Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 1]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 2]
+name = input-microphone
+
+[Option Capture Source:Analog Inputs]
+name = input
+
+[Option Capture Source:Unknown1]
+name = input
+
+[Option Capture Source:Unknown2]
+name = input
+
+[Option Capture Source:Docking-Station]
+name = input-docking
+
+[Option Capture Source:Dock Mic]
+name = input-docking-microphone
+
+;;; 'Mic Jack Mode'
+
+[Element Mic Jack Mode]
+enumeration = select
+
+[Option Mic Jack Mode:Mic In]
+name = input-microphone
+
+[Option Mic Jack Mode:Line In]
+name = input-linein
+
+;;; 'Digital Input Source'
+
+[Element Digital Input Source]
+enumeration = select
+
+[Option Digital Input Source:Analog Inputs]
+name = input
+
+[Option Digital Input Source:Digital Mic 1]
+name = input-microphone
+
+[Option Digital Input Source:Digital Mic 2]
+name = input-microphone
+
+;;; Various Boosts
+
+[Element Capture Boost]
+switch = select
+
+[Option Capture Boost:on]
+name = input-boost-on
+
+[Option Capture Boost:off]
+name = input-boost-off
+
+[Element Auto Gain Control]
+switch = select
+
+[Option Auto Gain Control:on]
+name = input-agc-on
+
+[Option Auto Gain Control:off]
+name = input-agc-off
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf
new file mode 100644 (file)
index 0000000..f2fd31c
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone2' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 89
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the second headphones, not
+; the first headphones. But it should not hurt if we leave the
+; headphone jack enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf
new file mode 100644 (file)
index 0000000..0a43e27
--- /dev/null
@@ -0,0 +1,85 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage in laptops that have a seperate LFE speaker
+; connected to the Master mono connector
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 40
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all-no-lfe
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf
new file mode 100644 (file)
index 0000000..542edc4
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage on boards that have a seperate Mono output plug.
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 50
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = off
+volume = off
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf
new file mode 100644 (file)
index 0000000..aea7853
--- /dev/null
@@ -0,0 +1,94 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Speaker' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = mute
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = mute
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = mute
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf
new file mode 100644 (file)
index 0000000..fc30800
--- /dev/null
@@ -0,0 +1,92 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for the 'default' output. Note that a-o-speaker.conf has a
+; higher priority than this
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 99
+
+[Element Hardware Master]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = ignore
+volume = ignore
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the default output, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = ignore
+volume = zero
+
+[Element Headphone2]
+switch = ignore
+volume = zero
+
+[Element Speaker]
+switch = ignore
+volume = off
+
+[Element Front]
+switch = ignore
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = ignore
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = ignore
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = ignore
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common
new file mode 100644 (file)
index 0000000..3204846
--- /dev/null
@@ -0,0 +1,128 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common part of all paths
+
+; So here's generally how mixer paths are used by PA: PA goes through
+; a mixer path file from top to bottom and checks if a mixer element
+; described therein exists. If so it is added to the list of mixer
+; elements PA will control, keeping the order it read them in. If a
+; mixer element described here has set the required= or
+; required-absent= directives a path might not be accepted as valid
+; and is ignored in its entirety (see below). However usually if a
+; element listed here is missing this one element is ignored but not
+; the entire path.
+;
+; When a device shall be muted/unmuted *all* elements listed in a path
+; file with "switch = mute" will be toggled.
+;
+; When a device shall change its volume, PA will got through the list
+; of all elements with "volume = merge" and set the volume on the
+; first element. If that element does not support dB volumes, this is
+; where the story ends. If it does support dB volumes, PA divides the
+; requested volume by the volume that was set on this element, and
+; then go on to the next element with "volume = merge" and then set
+; that there, and so on.  That way the first volume element in the
+; path will be the one that does the 'biggest' part of the overall
+; volume adjustment, with the remaining elements usually being set to
+; some value next to 0dB. This logic makes sure we get the full range
+; over all volume sliders and a very high granularity of volumes
+; already in hardware.
+;
+; All switches and enumerations set to "select" are exposed via the
+; "port" functionality of sinks/sources. Basically every possible
+; switch setting and every possible enumeration setting will be
+; combined and made into a "port". So make sure you don't list too
+; many switches/enums for exposing, because the number of ports might
+; rise exponentially.
+;
+; Only one path can be selected at a time. All paths that are valid
+; for an audio device will be exposed as "port" for the sink/source.
+
+
+; [General]
+; priority = ...                         # Priority for this path
+; description = ...
+;
+; [Option ...:...]                       # For each option of an enumeration or switch element
+;                                        # that shall be exposed as a sink/source port. Needs to
+;                                        # be named after the Element, followed by a colon, followed
+;                                        # by the option name, resp. on/off if the element is a switch.
+; name = ...                             # Logical name to use in the path identifier
+; priority = ...                         # Priority if this is made into a device port
+;
+; [Element ...]                          # For each element that we shall control
+; required = ignore | switch | volume | enumeration | any     # If set, require this element to be of this kind and available,
+;                                                             # otherwise don't consider this path valid for the card
+; required-absent = ignore | switch | volume                  # If set, require this element to not be of this kind and not
+;                                                             # available, otherwise don't consider this path valid for the card
+;
+; switch = ignore | mute | off | on | select                  # What to do with this switch: ignore it, make it follow mute status,
+;                                                             # always set it to off, always to on, or make it selectable as port.
+;                                                             # If set to 'select' you need to define an Option section for on
+;                                                             # and off
+; volume = ignore | merge | off | zero   # What to do with this volume: ignore it, merge it into the device
+;                                        # volume slider, always set it to the lowest value possible, or always
+;                                        # set it to 0 dB (for whatever that means)
+; enumeration = ignore | select          # What to do with this enumeration, ignore it or make it selectable
+;                                        # via device ports. If set to 'select' you need to define an Option section
+;                                        # for each of the items you want to expose
+; direction = playback | capture         # Is this relevant only for playback or capture? If not set this will implicitly be
+;                                        # set the direction of the PCM device is opened as. Generally this doesn't need to be set
+;                                        # unless you have a broken driver that has playback controls marked for capture or vice
+;                                        # versa
+; direction-try-other = no | yes         # If the element does not supported what is requested, try the other direction, too?
+;
+; override-map.1 = ...                   # Override the channel mask of the mixer control if the control only exposes a single channel
+; override-map.2 = ...                   # Override the channel masks of the mixer control if the control only exposes two channels
+;                                        # Override maps should list for each element channel which high-level channels it controls via a
+;                                        # channel mask. A channel mask may either be the name of a single channel, or the words "all-left",
+;                                        # "all-right", "all-center", "all-front", "all-rear", and "all" to encode a specific subset of
+;                                        # channels in a mask
+
+[Element PCM]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element External Amplifier]
+switch = select
+
+[Option External Amplifier:on]
+name = output-amplifier-on
+priority = 10
+
+[Option External Amplifier:off]
+name = output-amplifier-off
+priority = 0
+
+;;; 'Analog Output'
+
+[Element Analog Output]
+enumeration = select
+
+[Option Analog Output:Speakers]
+name = output-speaker
+priority = 10
+
+[Option Analog Output:Headphones]
+name = output-headphones
+priority = 9
+
+[Option Analog Output:FP Headphones]
+name = output-headphones
+priority = 8
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf
new file mode 100644 (file)
index 0000000..9838138
--- /dev/null
@@ -0,0 +1,144 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned. (and should be good enough for the vast majority of
+; cards).  Use the udev property PULSE_PROFILE_SET to assign a
+; different profile set than this one to a device.  So what is this
+; about? Simply, what we do here is map ALSA devices to how they are
+; exposed in PA. We say which ALSA device string to use to open a
+; device, which channel mapping to use then, and which mixer path to
+; use. This is encoded in a 'mapping'. Multiple of these mappings can
+; be bound together in a 'profile' which is then directly exposed in
+; the UI as a card profile. Each mapping assigned to a profile will
+; result in one sink/source to be created if the profile is selected
+; for the card.
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+
+[General]
+auto-profiles = yes
+
+[Mapping analog-mono]
+device-strings = hw:0
+channel-map = mono
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 1
+
+[Mapping analog-stereo]
+device-strings = front:%f hw:0
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 10
+
+[Mapping analog-surround-40]
+device-strings = surround40:%f
+channel-map = front-left,front-right,rear-left,rear-right
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-41]
+device-strings = surround41:%f
+channel-map = front-left,front-right,rear-left,rear-right,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-50]
+device-strings = surround50:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-51]
+device-strings = surround51:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-71]
+device-strings = surround71:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+description = Analog Surround 7.1
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping iec958-stereo]
+device-strings = iec958:%f
+channel-map = left,right
+priority = 5
+
+[Mapping iec958-surround-40]
+device-strings = iec958:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 1
+
+[Mapping iec958-ac3-surround-40]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 2
+direction = output
+
+[Mapping iec958-ac3-surround-51]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 3
+direction = output
+
+[Mapping hdmi-stereo]
+device-strings = hdmi:%f
+channel-map = left,right
+priority = 4
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf
new file mode 100644 (file)
index 0000000..2b83530
--- /dev/null
@@ -0,0 +1,91 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 4 DJ
+;
+; This card has two stereo pairs of input and two stereo pairs of
+; output, named channels A and B. Channel B has an additional
+; Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b-output]
+description = Analog Stereo Channel B (Headphones)
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-b-input]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b-output
+input-mappings = analog-stereo-a analog-stereo-b-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+input-mappings = analog-stereo-b-input
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+priority = 6
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b-input
+priority = 1
+skip-probe = yes
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf
new file mode 100644 (file)
index 0000000..3fe3cc5
--- /dev/null
@@ -0,0 +1,162 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 8 DJ
+;
+; This card has four stereo pairs of input and four stereo pairs of
+; output, named channels A to D. Channel C has an additional Mic/Line
+; connector, channel D an additional Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+
+# Since we want to set a different description for channel C's/D's input
+# and output we define two seperate mappings for them
+[Mapping analog-stereo-c-output]
+description = Analog Stereo Channel C
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-c-input]
+description = Analog Stereo Channel C (Line/Mic)
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = input
+
+[Mapping analog-stereo-d-output]
+description = Analog Stereo Channel D (Headphones)
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-d-input]
+description = Analog Stereo Channel D
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B, C (Line/Mic), D (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-input analog-stereo-d-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-c]
+description = Analog Stereo Channel D (Headphones) Output, Channel C (Line/Mic) Input
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-c-input
+priority = 90
+skip-probe = yes
+
+[Profile output:analog-stereo-c-d+input:analog-stereo-c-d]
+description = Analog Stereo Duplex Channels C (Line/Mic), D (Line/Mic)
+output-mappings = analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-c-input analog-stereo-d-input
+priority = 80
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B
+output-mappings = analog-stereo-b
+input-mappings = analog-stereo-b
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-c+input:analog-stereo-c]
+description = Analog Stereo Duplex Channel C (Line/Mic)
+output-mappings = analog-stereo-c-output
+input-mappings = analog-stereo-c-input
+priority = 60
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-d]
+description = Analog Stereo Duplex Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-d-input
+priority = 70
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 6
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B
+output-mappings = analog-stereo-b
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-c]
+description = Analog Stereo Output Channel C
+output-mappings = analog-stereo-c-output
+priority = 7
+skip-probe = yes
+
+[Profile output:analog-stereo-d]
+description = Analog Stereo Output Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+priority = 8
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b
+priority = 1
+skip-probe = yes
+
+[Profile input:analog-stereo-c]
+description = Analog Stereo Input Channel C (Line/Mic)
+input-mappings = analog-stereo-c-input
+priority = 4
+skip-probe = yes
+
+[Profile input:analog-stereo-d]
+description = Analog Stereo Input Channel D
+input-mappings = analog-stereo-d-input
+priority = 3
+skip-probe = yes
diff --git a/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf b/media-config-target-tw2/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf
new file mode 100644 (file)
index 0000000..6a7fd50
--- /dev/null
@@ -0,0 +1,119 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned (and should be good enough for the vast majority of
+; cards). If you want to assign a different profile set than this one
+; to a device, either set the udev property PULSE_PROFILE_SET for the
+; card, or use the "profile_set" module argument when loading
+; module-alsa-card.
+;
+; So what is this about? Simply, what we do here is map ALSA devices
+; to how they are exposed in PA. We say which ALSA device string to
+; use to open a device, which channel mapping to use then, and which
+; mixer path to use. This is encoded in a 'mapping'. Multiple of these
+; mappings can be bound together in a 'profile' which is then directly
+; exposed in the UI as a card profile. Each mapping assigned to a
+; profile will result in one sink/source to be created if the profile
+; is selected for the card.
+;
+; Additionally, the path set configuration files can describe the
+; decibel values assigned to the steps of the volume elements. This
+; can be used to work around situations when the alsa driver doesn't
+; provide any decibel information, or when the information is
+; incorrect.
+
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+;
+; [DecibelFix element]                      # Decibel fixes can be used to work around missing or incorrect dB
+;                                           # information from alsa. A decibel fix is a table that maps volume steps
+;                                           # to decibel values for one volume element. The "element" part in the
+;                                           # section title is the name of the volume element.
+;                                           #
+;                                           # NOTE: This feature is meant just as a help for figuring out the correct
+;                                           # decibel values. PulseAudio is not the correct place to maintain the
+;                                           # decibel mappings!
+;                                           #
+;                                           # If you need this feature, then you should make sure that when you have
+;                                           # the correct values figured out, the alsa driver developers get informed
+;                                           # too, so that they can fix the driver.
+;
+; db-values = ...                           # The option value consists of pairs of step numbers and decibel values.
+;                                           # The pairs are separated with whitespace, and steps are separated from
+;                                           # the corresponding decibel values with a colon. The values must be in an
+;                                           # increasing order. Here's an example of a valid string:
+;                                           #
+;                                           #     "0:-40.50  1:-38.70  3:-33.00  11:0"
+;                                           #
+;                                           # The lowest step imposes a lower limit for hardware volume and the
+;                                           # highest step correspondingly imposes a higher limit. That means that
+;                                           # that the mixer will never be set outside those values - the rest of the
+;                                           # volume scale is done using software volume.
+;                                           #
+;                                           # As can be seen in the example, you don't need to specify a dB value for
+;                                           # each step. The dB values for skipped steps will be linearly interpolated
+;                                           # using the nearest steps that are given.
+
+[General]
+auto-profiles = yes
+
+[Mapping usb-analog-stereo]
+device-strings = hw:%f
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+priority = 10
+
+[Mapping usb-analog-surround-51]
+device-strings = hw:%f
+;channel-map = front-left,front-right,front-center,lfe,rear-left,rear-right
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-lfe-on-mono
+priority = 180
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-tw3.manifest b/media-config-target-tw3.manifest
new file mode 100644 (file)
index 0000000..a76fdba
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+       <request>
+               <domain name="_" />
+       </request>
+</manifest>
diff --git a/media-config-target-tw3/hal/etc/asound.conf b/media-config-target-tw3/hal/etc/asound.conf
new file mode 100644 (file)
index 0000000..29260e0
--- /dev/null
@@ -0,0 +1,16 @@
+# default sound configuration
+
+pcm. !default {
+       type hw
+       card 0
+}
+
+ctl. !default {
+       type hw
+       card 0
+}
+
+ctl. Exynos9110Sound {
+       type hw
+       card 0
+}
diff --git a/media-config-target-tw3/hal/etc/inference/inference_engine.ini b/media-config-target-tw3/hal/etc/inference/inference_engine.ini
new file mode 100644 (file)
index 0000000..54eddf2
--- /dev/null
@@ -0,0 +1,3 @@
+[inference backend]
+;/*OPENCV=0, Tensorflow-lite=1
+supported backend types = 0,1
diff --git a/media-config-target-tw3/hal/etc/multimedia/mmfw_audio_pcm_dump.ini b/media-config-target-tw3/hal/etc/multimedia/mmfw_audio_pcm_dump.ini
new file mode 100644 (file)
index 0000000..6e13b68
--- /dev/null
@@ -0,0 +1,8 @@
+[pcm_dump]
+;playback
+pa_sink = 0
+pa_sink_input = 0
+
+;capture
+pa_source = 0
+pa_source_output = 0
diff --git a/media-config-target-tw3/hal/etc/multimedia/mmfw_audio_volume.ini b/media-config-target-tw3/hal/etc/multimedia/mmfw_audio_volume.ini
new file mode 100644 (file)
index 0000000..ae7e635
--- /dev/null
@@ -0,0 +1,19 @@
+[volumes]
+system                         = 0, 72, 73, 74, 75, 76, 77, 78, 80, 81, 82, 84, 86, 88, 90, 94
+notification                   = 0, 68, 70, 72, 73, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 97
+alarm                          = 0, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 92
+ringtone                       = 0, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 92
+media                          = 0, 46, 50, 53, 58, 62, 68, 72, 76, 80, 84, 87, 90, 93, 96, 100
+call                           = 60, 65, 70, 76, 82, 88, 94, 100
+voip                           = 60, 65, 70, 76, 82, 88, 94, 100
+voice                          = 0, 55, 58, 61, 64, 67, 70, 75, 78, 82, 86, 89, 91, 94, 97, 100
+gain_dialer                    = 1.00
+gain_touch                     = 1.00
+gain_af                        = 0.70
+gain_shutter1                  = 0.14
+gain_shutter2                  = 1.00
+gain_camcording                = 0.30
+gain_midi                      = 1.00
+gain_booting                   = 0.40
+gain_video                     = 0.90
+gain_tts                       = 1.00
diff --git a/media-config-target-tw3/hal/etc/multimedia/mmfw_camcorder.ini b/media-config-target-tw3/hal/etc/multimedia/mmfw_camcorder.ini
new file mode 100644 (file)
index 0000000..0740a69
--- /dev/null
@@ -0,0 +1,103 @@
+; < Camera/Camcorder Configure Main INI file >
+;
+; - Header List -
+; 1.  General
+; 2.  VideoInput
+; 3.  AudioInput
+; 4.  VideoOutput
+; 5.  Capture
+; 6.  Record
+; 7.  VideoEncoder
+; 8.  AudioEncoder
+; 9.  ImageEncoder
+; 10. Mux
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryMain"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[General]
+SyncStateChange = 1
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap || NOT-USE-DEFAULT_VALUE
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap --gst-debug=3 || NOT-USE-DEFAULT_VALUE
+ModelName = TW1
+;DisabledAttributes = camera-optical-zoom camera-af-touch-x camera-af-touch-y camera-exposure-value camera-f-number camera-shutter-speed camera-hold-af-after-capturing filter-flip filter-hue display-src-x display-src-y display-src-width display-src-height tag-image-description strobe-control strobe-capabilities strobe-mode detect-mode detect-number detect-focus-select detect-select-number detect-status || NO_DEFAULT_VALUE
+
+[VideoInput]
+;VideosrcElement = v4l2src | 1,0 | do-timestamp,1
+UseVideoscale = 1
+VideoscaleElement = videoscale | 3,0 | width,320 | height,240 | method,1
+UseZeroCopyFormat = 0
+DeviceCount = 0
+
+[AudioInput]
+AudioDevice = 0,1 || 0
+AudiosrcElement = pulsesrc | 3,0 | do-timestamp,1 | slave-method,3 | latency,0
+AudiomodemsrcElement = pulsesrc | 3,0 | do-timestamp,1 | slave-method,3 | latency,0
+
+[VideoOutput]
+; DisplayDevice
+;;; 0: MAIN LCD, 1: SUB LCD, 2:TV OUT, 3: MAIN LCD and SUB LCD, 4: MAIN LCD and TV OUT
+DisplayDevice = 0 || 0
+; DisplayMode
+;;; 0: Default, 1: Pri Video ON and Sec Video Full-Screen, 2: Pri Video OFF and Sec Video Full-Screen
+DisplayMode = 0,1,2 || 0
+; Videosink
+;;; 0: Overlay surface, 1: Evas surface, 2: GL surface, 3: NULL surface, 4: Remote
+Videosink = 0,3,4 || 3
+VideosinkElementOverlay = tizenwlsink | 7,0 | draw-borders,0 | force-aspect-ratio,1 | enable-last-sample,0 | qos,0 | sync,0 | show-preroll-frame,0 | use-tbm,1
+VideosinkElementRemote = tizenipcsink | 4,0 | permissions,511 | enable-last-sample,0 | qos,0 | sync,0
+VideosinkElementNull = fakesink | 4,0 | qos,0 | sync,0 | enable-last-sample,0 | show-preroll-frame,0
+UseVideoscale = 0
+VideoscaleElement = videoscale | 1,0 | rotang,90
+
+[VideoEncoder]
+MPEG4 = avenc_mpeg4 | 0,0
+
+[AudioEncoder]
+AMR = amrnbenc | 0,0
+AAC = avenc_aac | 1,0 | compliance,-2
+WAVE = wavenc | 0,0
+
+[ImageEncoder]
+JPEG = jpegenc | 0,0
+;PNG = pngenc | 0,0
+
+[Capture]
+UseEncodebin = 0
+UseCaptureMode = 0
+VideoscaleElement = videoscale | 1,0 | method,1
+
+[Record]
+UseAudioEncoderQueue = 1
+UseVideoEncoderQueue = 1
+VideoProfile = 0
+VideoAutoAudioConvert = 1
+VideoAutoAudioResample = 0
+VideoAutoColorSpace = 0
+AudioProfile = 1
+AudioAutoAudioConvert = 1
+AudioAutoAudioResample = 0
+AudioAutoColorSpace = 0
+ImageProfile = 2
+ImageAutoAudioConvert = 0
+ImageAutoAudioResample = 0
+ImageAutoColorSpace = 1
+RecordsinkElement = filesink | 1,0 | async,0
+SupportDualStream = 0
+UseNoiseSuppressor = 0
+DropVideoFrame = 0
+PassFirstVideoFrame = 0
+
+[Mux]
+3GP = 3gppmux | 0,0
+AMR = avmux_amr | 0,0
+MP4 = mp4mux | 0,0
+AVI = avimux | 0,0
+MATROSKA = matroskamux | 0,0
+WAV = wavenc | 0,0
+AAC = avmux_adts | 0,0
+M2TS = mpegtsmux | 0,0
+
diff --git a/media-config-target-tw3/hal/etc/multimedia/mmfw_media_codec.ini b/media-config-target-tw3/hal/etc/multimedia/mmfw_media_codec.ini
new file mode 100644 (file)
index 0000000..9f2a5dd
--- /dev/null
@@ -0,0 +1,89 @@
+[h261]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = , ,
+sw_encoder = , ,
+
+[h263]
+hw_decoder = omxdec_h263, video/x-h263, NV12
+hw_encoder = omxenc_h263, video/x-raw,  H263
+sw_decoder = avdec_h263,   video/x-h263, I420
+sw_encoder = avenc_h263,   video/x-raw,  H263
+
+[h264]
+hw_decoder = omxdec_h264, video/x-h264, NV12
+hw_encoder = omxenc_h264, video/x-raw,  H264_SP
+sw_decoder = avdec_h264,   video/x-h264, I420
+sw_encoder = avenc_h264,   video/x-raw,  H264_SP
+
+[mpeg4]
+hw_decoder = omxdec_mpeg4, video/mpeg, NV12
+hw_encoder = omxenc_mpeg4, video/x-raw,  MPEG4_SP
+sw_decoder = avdec_mpeg4,   video/mpeg, I420
+sw_encoder = avenc_mpeg4,   video/x-raw,  MPEG4_SP
+
+[aac_lc]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = avenc_aac,   audio/x-raw, AAC_LC
+
+[aac_he]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[aac_he_ps]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[mp3]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_mp3,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[amr_nb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrnb,   audio/AMR, PCM_F32LE
+sw_encoder = amrnbenc, audio/x-raw, AMR_NB
+
+[amr_wb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrwb,   audio/AMR-WB, PCM_F32LE
+sw_encoder = , ,
+
+[vorbis]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = vorbisdec,   audio/x-vorbis, PCM_F32LE
+sw_encoder = , ,
+
+[flac]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_flac,   audio/x-flac, PCM_F32LE
+sw_encoder = , ,
+
+[wmav1]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav1,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmav2]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav2,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmapro]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmapro,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
diff --git a/media-config-target-tw3/hal/etc/multimedia/mmfw_media_streamer.ini b/media-config-target-tw3/hal/etc/multimedia/mmfw_media_streamer.ini
new file mode 100644 (file)
index 0000000..488d6a8
--- /dev/null
@@ -0,0 +1,124 @@
+[general]
+; generating dot file representing pipeline state
+generate dot = no
+dot dir =
+
+; decodebin will be used instead of decoder node
+use decodebin = yes
+
+; comma separated list of element names which
+; will not be used in autoplug mode
+exclude elements = v4l2video,v4l2h264,v4l2mpeg4,omx,sprd
+
+; comma separated list of element names which
+; will require resources in autoplug mode
+resource elements = omx,sprd
+
+; comma separated list of arguments
+; that will pass to gst_init
+gstreamer arguments = --gst-debug=2
+
+
+;MEDIA_STREAMER_NODE_TYPE_SRC
+[node type 1]
+audio capture = pulsesrc
+video capture = waylandsrc
+camera = camerasrc
+
+;MEDIA_STREAMER_NODE_TYPE_SINK
+[node type 2]
+audio = pulsesink
+overlay = tizenwlsink
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_ENCODER
+[node type 3]
+video/x-h263 = avenc_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DECODER
+[node type 4]
+video/x-h263 = avdec_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_ENCODER
+[node type 5]
+audio/AMR = amrnbenc
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DECODER
+[node type 6]
+audio/AMR = amrnbdec
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_CONVERTER
+[node type 7]
+video/x-raw = videoconvert
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_CONVERTER
+[node type 8]
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_RESAMPLE
+[node type 9]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_PAY
+[node type 10]
+video/x-h263 = rtph263pay
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_PAY
+[node type 11]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DEPAY
+[node type 12]
+video/x-h263 = rtph263depay
+video/x-h264 = rtph264depay
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DEPAY
+[node type 13]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_RATE
+[node type 14]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_SCALE
+[node type 15]
+
+;MEDIA_STREAMER_NODE_TYPE_TEXT_OVERLAY
+[node type 16]
+text/x-raw = textoverlay
+
+;MEDIA_STREAMER_NODE_TYPE_PARSER
+[node type 17]
+video/x-h263 = h263parse
+video/x-h264 = h264parse
+
+;MEDIA_STREAMER_NODE_TYPE_FILTER
+[node type 18]
+
+;MEDIA_STREAMER_NODE_TYPE_TEE
+[node type 19]
+
+;MEDIA_STREAMER_NODE_TYPE_QUEUE
+[node type 20]
+
+;MEDIA_STREAMER_NODE_TYPE_MQUEUE
+[node type 21]
+
+;MEDIA_STREAMER_NODE_TYPE_MUXER
+[node type 22]
+
+;MEDIA_STREAMER_NODE_TYPE_DEMUXER
+[node type 23]
+
+;MEDIA_STREAMER_NODE_TYPE_RTP
+[node type 24]
+
+;MEDIA_STREAMER_NODE_TYPE_INPUT_SELECTOR
+[node type 25]
+
+;MEDIA_STREAMER_NODE_TYPE_OUTPUT_SELECTOR
+[node type 26]
+
+;MEDIA_STREAMER_NODE_TYPE_INTERLEAVE
+[node type 27]
+
+;MEDIA_STREAMER_NODE_TYPE_DEINTERLEAVE
+[node type 28]
+
diff --git a/media-config-target-tw3/hal/etc/multimedia/mmfw_player.ini b/media-config-target-tw3/hal/etc/multimedia/mmfw_player.ini
new file mode 100644 (file)
index 0000000..9f5e3ab
--- /dev/null
@@ -0,0 +1,102 @@
+[general]
+
+disable segtrap = yes ; same effect with --gst-disable-segtrap
+
+; set default videosink element according to video surface type(X, EVAS, NULL)
+videosink element overlay = tizenwlsink
+videosink element fake = fakesink
+video converter element =
+
+; decoder element keyword for resource management.
+video codec element hw = omx
+video codec element sw = avdec
+video codec default type = hw ; hw or sw
+
+audio codec element hw =
+audio codec element sw = avdec
+audio codec default type = sw ; hw or sw
+
+; support with HW audio codec
+support audio effect = no
+support pcm exporting = no
+support pitch control = no
+support replaygain control = no
+
+audiosink element = pulsesink
+
+; audio offload information
+audio offload sink element = tinycompresssink
+audio offload device type = builtin-speaker ; bt-a2dp from pulse stream-map
+audio offload media format = MP3 ; Use the format keyword of media_format_mimetype_e, MAX:10
+
+; supported input format of external media source stream
+; Use the format keyword of media_format_mimetype_e, MAX:10
+media stream input format = AAC,H264_SP,H264_MP,H264_HP
+
+; if yes. gstreamer will not update registry
+skip rescan = yes
+delay before repeat = 50 ; msec
+
+; comma separated list of tocken which elemnts has it in it's name will not be used
+; this works if 'use decodebin = yes'
+element exclude keyword = v4l2
+
+; comma separated list of tocken
+; this works if 'use decodebin = yes'
+unsupported codec keyword = divx
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1 = --gst-debug=*:2
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; generating dot file representing pipeline state
+; DEFAULT MUST BE 'no'. If 'yes', mmplayer will set env-variable for it's session as "export GST_DEBUG_DUMP_DOT_DIR=/tmp/"
+generate dot = no
+
+; parameter is for only video to be determined
+; which clock will be used
+; if yes, system clock will be used
+; apart from this, audiosink is clock provider for audio
+use system clock = yes
+
+; allowed timeout for changing pipeline state
+live state change timeout = 30 ; sec
+localplayback state change timeout = 10 ; sec
+
+; delay in msec for sending EOS
+eos delay = 0 ; msec
+
+; extracted pcm buffer size
+pcm buffer size = 51200 ; 50Kbytes
+
+; max num of bo for sw codec
+video bo max = 10
+
+; video bo timeout (sec)
+video bo timeout = 10
+
+; setup pipeline with decodebin2
+use decodebin = no
+
+[http streaming]
+
+httpsrc element = souphttpsrc
+
+http buffering limit = 99.0 ; percent
+
+; if yes, use file for buffering.
+; if no, use memory for buffering.
+http use file buffer = no
+
+; ring buffer size when use mem buffer
+http ring buffer size = 20971520 ; 20MBytes
+
+http max size bytes = 1048576 ; bytes
+
+http buffering time = 1.2
+
+http timeout = 30 ; sec
diff --git a/media-config-target-tw3/hal/etc/multimedia/mmfw_player_audio_effect.ini b/media-config-target-tw3/hal/etc/multimedia/mmfw_player_audio_effect.ini
new file mode 100644 (file)
index 0000000..1394608
--- /dev/null
@@ -0,0 +1,17 @@
+[audio effect]
+; name of audio effect element
+audio effect element = audioeq
+
+; preset audio effect setting
+audio effect preset = no
+
+; custom audio effect setting (EQ/extension)
+audio effect custom = yes
+audio effect custom list = 0
+
+audio effect custom eq band num = 7 ; number of EQ bands
+audio effect custom eq band width = 33, 90, 242, 649, 1743, 4676, 12544 ; list of each EQ band width (Hz)
+audio effect custom eq band freq = 36, 98, 265, 711, 1907, 5117, 13727 ; list of each EQ band central frequency (Hz)
+
+audio effect custom min list = -12 ; list of minimum level value (the first element is for EQ, others for extension effect)
+audio effect custom max list = 12 ; list of maximum level value (the first element is for EQ, others for extension effect)
diff --git a/media-config-target-tw3/hal/etc/multimedia/mmfw_resource_manager.ini b/media-config-target-tw3/hal/etc/multimedia/mmfw_resource_manager.ini
new file mode 100644 (file)
index 0000000..cc79aae
--- /dev/null
@@ -0,0 +1,9 @@
+[max volume]
+video_overlay = -1
+video_decoder = -1
+camera = -1
+audio_offload = -1
+
+[priority]
+media = 10
+interrupt = 99
diff --git a/media-config-target-tw3/hal/etc/multimedia/mmfw_streamrecorder.ini b/media-config-target-tw3/hal/etc/multimedia/mmfw_streamrecorder.ini
new file mode 100644 (file)
index 0000000..2888707
--- /dev/null
@@ -0,0 +1,81 @@
+[general]
+;is encsink source is live
+encscink source is live = 0
+
+retrialcount = 10
+
+minimum frame = 5
+
+reset pause time = 0
+
+screen record = 1
+
+convert output buffer num = 6
+
+hw encoder supported = 0 ; 1 if supported and 'video codec element hw' should be formed.
+
+video codec element hw = ; sprd (if verified) or verified hw codec element
+
+[encodebin]
+;MM_STREAMRECORDER_ENCBIN_PROFILE_VIDEO = 0 MM_STREAMRECORDER_ENCBIN_PROFILE_AUDIO = 1
+;MM_STREAMRECORDER_ENCBIN_PROFILE_IMAGE = 2 MM_STREAMRECORDER_ENCBIN_PROFILE_NUM = 3
+encsink bin profile = 0
+
+encsink bin auto audio resample = 0
+
+encsink bin auto colorspace = 1
+
+encsink bin auto audio convert = 1
+
+encsink bin use video toggle = 0
+
+[pipeline]
+encsink bin source = appsrc
+
+name of audio src = pulsesrc
+
+h264 encoder =
+
+h263 encoder = avenc_h263p
+
+mpeg4 encoder = avenc_mpeg4
+
+name of audio encoder = avenc_aac
+
+use parser  =
+
+name of 3GP muxer = avmux_3gp
+
+name of MP4 muxer = avmux_mp4
+
+name of video converter = videoconvert
+
+name of sink = filesink
+
+[video param]
+;/*ms*/
+video frame wait time = 200000
+
+[audio param]
+audio frame minimum space = 102400
+
+audio frame wait time = 20000
+
+[attribute]
+supported height = 1080,720,480,240,288,144
+
+supported width = 1920,1280,640,320,352,176
+
+;/*AMR, AAC, VORBIS ,PCM*/
+supported audio encoders = AMR,AAC,PCM
+
+;/* H263 , H264 , MPEG4 */
+supported video encoders = H263,MPEG4
+
+;/*3GP , AMR, MP4 , WAV, ADTS*/
+supported file formats = 3GP,MP4,AMR,ADTS,WAV
+
+[debug]
+; generating dot file representing pipeline state
+; do export GST_DEBUG_DUMP_DOT_DIR=/tmp/ in the shell (also do export to '/etc/profile.d/mmf.sh')
+generate dot = no
diff --git a/media-config-target-tw3/hal/etc/multimedia/mused.conf b/media-config-target-tw3/hal/etc/multimedia/mused.conf
new file mode 100644 (file)
index 0000000..d83cdf3
--- /dev/null
@@ -0,0 +1,66 @@
+[muse]
+; The 'hosts' parameter defines the modules,
+; which the user would like to connect to the muse.
+; If you want to add host, then write manually.
+hosts=player, camera, recorder
+logfile=/var/log/mused/muse-server
+lockfile=/tmp/.muse_core.lock
+min_timeout=5
+max_timeout=90
+;100MB=100000
+memory_threshold=100000
+enable_watch_external_storage=0
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1=--gst-debug=*:2,*STATE*:4,*pulse*:4,*audiobasesink:4
+gstparam2=--gst-disable-segtrap
+gstparam3=
+gstparam4=
+gstparam5=
+gstparam6=
+gstparam7=
+gstparam8=
+gstparam9=
+gstparam10=
+
+; gstparam#=--gst-plugin-load=/usr/lib/gstreamer-1.0/libgstcoreelements.so'
+; can be substituted with gstpreload=coreelements'
+gstpreload=
+
+[player]
+; The 'player' parameter represents the muse-player.
+; This module recovers the "capi-media-player".
+path=libmuse-player.so
+preloaded=no
+timeout=60
+disable_watchdog_api=-1
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[camera]
+; The 'camera' parameter represents the muse-camera.
+; This module recovers the "capi-media-camera".
+path=libmuse-camera.so
+preloaded=no
+timeout=10
+;api 2 is camera_dispatcher_start_preview
+disable_watchdog_api=2
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
+[recorder]
+; The 'recorder' parameter represents the muse-recorder.
+; This module recovers the "capi-media-recorder".
+; This one should be paired with the 'camera' module.
+path=libmuse-recorder.so
+preloaded=no
+timeout=10
+;api 5 is recorder_start
+disable_watchdog_api=5
+;unlimited=-1
+max_instance=-1
+caution_instance=-1
+
diff --git a/media-config-target-tw3/hal/etc/murphy/murphy.lua b/media-config-target-tw3/hal/etc/murphy/murphy.lua
new file mode 100644 (file)
index 0000000..65af30a
--- /dev/null
@@ -0,0 +1,99 @@
+m = murphy.get()
+
+-- load the dlog plugin
+m:try_load_plugin('dlog')
+
+-- load the console plugin
+-- m:try_load_plugin('console')
+
+-- load the dbus plugin
+-- if m:plugin_exists('dbus') then
+--     m:load_plugin('dbus')
+-- end
+
+-- load the native resource plugin
+if m:plugin_exists('resource-native') then
+    m:load_plugin('resource-native')
+    m:info("native resource plugin loaded")
+else
+    m:info("No native resource plugin found...")
+end
+
+-- load the dbus resource plugin
+m:try_load_plugin('resource-dbus', {
+    dbus_bus = "system",
+    dbus_service = "org.Murphy",
+    dbus_track = true,
+    default_zone = "driver",
+    default_class = "implicit"
+})
+
+-- load the domain control plugin
+if m:plugin_exists('domain-control') then
+    m:load_plugin('domain-control')
+else
+    m:info("No domain-control plugin found...")
+end
+
+if m:plugin_exists('glib') then
+    m:load_plugin('glib')
+else
+    m:info("No glib plugin found...")
+end
+
+-- define application classes
+application_class {
+    name     = "interrupt",
+    priority = 99,
+    modal    = false,
+    share    = false,
+    order    = "fifo"
+}
+
+application_class {
+    name     = "media",
+    priority = 10,
+    modal    = false,
+    share    = false,
+    order    = "lifo"
+}
+
+-- define zone attributes
+zone.attributes {
+    type = {mdb.string, "common", "rw"},
+    location = {mdb.string, "anywhere", "rw"}
+}
+
+-- define zones
+zone {
+     name = "driver",
+     attributes = {
+         type = "common",
+         location = "front-left"
+     }
+}
+
+-- define resource classes
+resource.class {
+     name = "video_overlay",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_decoder",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "camera",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "audio_offload",
+     shareable = false,
+     sync_release = true
+}
diff --git a/media-config-target-tw3/hal/etc/profile.d/mmf.sh b/media-config-target-tw3/hal/etc/profile.d/mmf.sh
new file mode 100644 (file)
index 0000000..7dac276
--- /dev/null
@@ -0,0 +1,6 @@
+#!/bin/sh
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+export GST_DEBUG=2
+export ORC_CODE=debug
+export ORC_DEBUG=5
+export GST_PLUGIN_PATH=@HAL_LIBDIR@/gstreamer-1.0
diff --git a/media-config-target-tw3/hal/etc/pulse/client.conf b/media-config-target-tw3/hal/etc/pulse/client.conf
new file mode 100644 (file)
index 0000000..3637b20
--- /dev/null
@@ -0,0 +1,37 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for PulseAudio clients. See pulse-client.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+; default-sink =
+; default-source =
+default-server = /var/run/pulse/native
+; default-dbus-server =
+
+autospawn = no
+; daemon-binary = /usr/bin/pulseaudio
+; extra-arguments = --log-target=syslog
+
+; cookie-file =
+
+enable-shm = no
+shm-size-bytes = 4194304 # setting this 0 will use the system-default, usually 64 MiB
+
+; auto-connect-localhost = no
+; auto-connect-display = no
diff --git a/media-config-target-tw3/hal/etc/pulse/daemon.conf b/media-config-target-tw3/hal/etc/pulse/daemon.conf
new file mode 100644 (file)
index 0000000..f9409c7
--- /dev/null
@@ -0,0 +1,83 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for the PulseAudio daemon. See pulse-daemon.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+daemonize = yes
+; fail = yes
+; allow-module-loading = yes
+; allow-exit = yes
+; use-pid-file = yes
+system-instance = yes
+; local-server-type = user
+; enable-shm = yes
+; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
+; lock-memory = no
+; cpu-limit = no
+
+; high-priority = yes
+; nice-level = -11
+
+realtime-scheduling = no
+realtime-priority = 5
+
+; exit-idle-time = 20
+; scache-idle-time = 20
+
+; dl-search-path = (depends on architecture)
+
+; load-default-script-file = yes
+; default-script-file = /etc/pulse/default.pa
+
+log-target = dlog
+log-level = info
+; log-meta = no
+; log-time = no
+; log-backtrace = 0
+
+resample-method = speex-fixed-3
+; enable-remixing = yes
+; enable-lfe-remixing = no
+
+flat-volumes = no
+
+; rlimit-fsize = -1
+; rlimit-data = -1
+; rlimit-stack = -1
+; rlimit-core = -1
+; rlimit-as = -1
+; rlimit-rss = -1
+; rlimit-nproc = -1
+; rlimit-nofile = 256
+; rlimit-memlock = -1
+; rlimit-locks = -1
+; rlimit-sigpending = -1
+; rlimit-msgqueue = -1
+; rlimit-nice = 31
+; rlimit-rtprio = 9
+; rlimit-rttime = 1000000
+
+; default-sample-format = s16le
+; default-sample-rate = 44100
+alternate-sample-rate = 44100
+; default-sample-channels = 2
+; default-channel-map = front-left,front-right
+
+; default-fragments = 4
+; default-fragment-size-msec = 25
diff --git a/media-config-target-tw3/hal/etc/pulse/default.pa b/media-config-target-tw3/hal/etc/pulse/default.pa
new file mode 100644 (file)
index 0000000..ef8f114
--- /dev/null
@@ -0,0 +1,149 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started per-user
+# (i.e. not in system mode)
+
+.nofail
+
+### Load something into the sample cache
+#load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
+#load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-access /usr/share/sounds/generic.wav
+
+.fail
+
+### Automatically restore the volume of streams and devices
+load-module module-device-restore
+load-module module-stream-restore
+load-module module-card-restore
+
+### Automatically augment property information from .desktop files
+### stored in /usr/share/application
+load-module module-augment-properties
+
+### Load audio drivers statically
+### (it's probably better to not load these drivers manually, but instead
+### use module-udev-detect -- see below -- for doing this automatically)
+#load-module module-alsa-sink
+#load-module module-alsa-source device=hw:1,0
+#load-module module-null-sink
+#load-module module-pipe-sink
+
+### Automatically load driver modules depending on the hardware available
+.ifexists module-udev-detect.so
+load-module module-udev-detect
+.else
+### Use the static hardware detection module (for systems that lack udev support)
+load-module module-detect
+.endif
+
+### Automatically connect sink and source if JACK server is present
+.ifexists module-jackdbus-detect.so
+.nofail
+load-module module-jackdbus-detect channels=2
+.fail
+.endif
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Load several protocols
+.ifexists module-esound-protocol-unix.so
+load-module module-esound-protocol-unix
+.endif
+load-module module-native-protocol-unix
+
+### Network access (may be configured with paprefs, so leave this commented
+### here if you plan to use paprefs)
+#load-module module-esound-protocol-tcp
+#load-module module-native-protocol-tcp
+
+### Load the RTP receiver module (also configured via paprefs, see above)
+#load-module module-rtp-recv
+
+### Load the RTP sender module (also configured via paprefs, see above)
+#load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
+#load-module module-rtp-send source=rtp.monitor
+
+### Load additional modules from GConf settings. This can be configured with the paprefs tool.
+### Please keep in mind that the modules configured by paprefs might conflict with manually
+### loaded modules.
+.ifexists module-gconf.so
+.nofail
+load-module module-gconf
+.fail
+.endif
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Honour intended role device property
+load-module module-intended-roles
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle
+
+### If autoexit on idle is enabled we want to make sure we only quit
+### when no local session needs us anymore.
+.ifexists module-console-kit.so
+load-module module-console-kit
+.endif
+.ifexists module-systemd-login.so
+load-module module-systemd-login
+.endif
+
+### Enable positioned event sounds
+load-module module-position-event-sounds
+
+### Cork music/video streams when a phone stream is active
+load-module module-role-cork
+
+### Modules to allow autoloading of filters (such as echo cancellation)
+### on demand. module-filter-heuristics tries to determine what filters
+### make sense, and module-filter-apply does the heavy-lifting of
+### loading modules and rerouting streams.
+load-module module-filter-heuristics
+load-module module-filter-apply
+
+### Load DBus protocol
+.ifexists module-dbus-protocol.so
+load-module module-dbus-protocol
+.endif
+
+
+load-module module-switch-on-port-available
+
+### Make some devices default
+#set-default-sink output
+#set-default-source input
diff --git a/media-config-target-tw3/hal/etc/pulse/device-map.json b/media-config-target-tw3/hal/etc/pulse/device-map.json
new file mode 100644 (file)
index 0000000..ff837c3
--- /dev/null
@@ -0,0 +1,30 @@
+{
+       "device-types":[
+               {
+                       "device-type":"builtin-speaker",
+                       "playback-devices":{"normal":"tizen:Exynos9110Sound,0", "call-voice":"alsa:0,0"}
+               },
+               {
+                       "device-type":"builtin-mic",
+                       "capture-devices":{"normal":"tizen:Exynos9110Sound,9"}
+               },
+               {
+                       "device-type":"bt-sco",
+                       "capture-devices":{"normal":"alsa:Exynos9110Sound,9"}
+               }
+       ],
+       "device-files":{
+               "playback-devices":[
+                       {
+                               "device-string":"tizen:Exynos9110Sound,0",
+                               "role":{"normal":"rate=48000 channels=2 fragment_size=4800 fragments=4"}
+                       }
+               ],
+               "capture-devices":[
+                       {
+                               "device-string":"tizen:Exynos9110Sound,9",
+                               "role":{"normal":"rate=48000 channels=2 fragment_size=4800 fragments=4"}
+                       }
+               ]
+       }
+}
diff --git a/media-config-target-tw3/hal/etc/pulse/stream-map.json b/media-config-target-tw3/hal/etc/pulse/stream-map.json
new file mode 100644 (file)
index 0000000..03806e2
--- /dev/null
@@ -0,0 +1,236 @@
+{
+       "latencies":[
+               {
+                       "type":"low",
+                       "fragsize-ms":25,
+                       "minreq-ms":-1,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"mid",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"high",
+                       "fragsize-ms":75,
+                       "minreq-ms":-1,
+                       "tlength-ms":400,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"voip",
+                       "fragsize-ms":20,
+                       "minreq-ms":20,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":-1,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default-async",
+                       "fragsize-ms":50,
+                       "minreq-ms":20,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+       ],
+       "volumes":[
+               {
+                       "type":"master",
+                       "is-hal-volume":1
+               },
+               {
+                       "type":"media",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"system",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"alarm",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"notification",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voice",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"ringtone",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voip",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"call",
+                       "is-hal-volume":1
+               }
+       ],
+       "streams":[
+               {
+                       "role":"media",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["network","builtin-mic"],
+                       "avail-out-devices":["bt-a2dp","network","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"system",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"system"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"alarm",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"alarm"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"notification",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"notification"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"emergency",
+                       "priority" : 4,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-information",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"voice"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-sco","bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-recognition",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["bt-sco","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"voice-recognition-service",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["bt-sco","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"ringtone-voip",
+                       "priority" : 5,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","sound-manager"]
+               },
+               {
+                       "role":"ringtone-call",
+                       "priority" : 6,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"ringbacktone-call",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"call"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker"],
+                       "avail-frameworks":["wav-player","tone-player"]
+               },
+               {
+                       "role":"voip",
+                       "priority" : 5,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"voip"},
+                       "avail-in-devices":["builtin-mic","bt-sco"],
+                       "avail-out-devices":["builtin-speaker","bt-sco"],
+                       "avail-frameworks":["audio-io","tone-player","sound-manager"]
+               },
+               {
+                       "role":"call-voice",
+                       "priority" : 6,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"call"},
+                       "avail-in-devices":["builtin-mic","bt-sco"],
+                       "avail-out-devices":["builtin-speaker","bt-sco"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"ext-media",
+                       "priority" : 3,
+                       "route-type" : "manual-ext",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["network"],
+                       "avail-out-devices":["bt-a2dp","network"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"solo",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp"],
+                       "avail-frameworks":["wav-player","tone-player"]
+               },
+               {
+                       "role":"compressed-media",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["builtin-speaker"],
+                       "avail-frameworks":["sound-manager"]
+               }
+       ]
+}
diff --git a/media-config-target-tw3/hal/etc/pulse/system.pa b/media-config-target-tw3/hal/etc/pulse/system.pa
new file mode 100644 (file)
index 0000000..52f4038
--- /dev/null
@@ -0,0 +1,70 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started in system
+# mode.
+
+### Automatically load driver modules depending on the hardware available
+#.ifexists module-udev-detect.so
+load-module module-udev-detect
+#.endif
+
+### Load several protocols
+load-module module-native-protocol-unix auth-anonymous=1
+
+### Load module-tizenaudio-policy
+load-module module-tizenaudio-policy
+
+### Sound Player module
+load-module module-sound-player
+load-module module-tone-player
+load-module module-role-ducking global=1 trigger_roles=solo/notification ducking_roles=media,system,alarm,notification,voice-information,ext-media/media,ext-media volume=0%/25% fade_in=0/1000 fade_out=0/1000
+load-module module-poweroff
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Automatically restore the volume of streams and devices
+#load-module module-stream-restore
+#load-module module-device-restore
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+.ifexists module-dbus-protocol.so
+### If you want to allow TCP connections, set access to "remote" or "local,remote".
+load-module module-dbus-protocol access=local
+.endif
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+#load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle timeout=1
+
diff --git a/media-config-target-tw3/hal/etc/xdg/gstomx.conf b/media-config-target-tw3/hal/etc/xdg/gstomx.conf
new file mode 100644 (file)
index 0000000..dcc97d2
--- /dev/null
@@ -0,0 +1,139 @@
+[omxdec_mpeg2]
+type-name=GstOMXMPEG2VideoDec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.MPEG2.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=0
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxdec_mpeg4]
+type-name=GstOMXMPEG4VideoDec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.MPEG4.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=0
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+src-template-caps=video/x-raw, format=(string)SN12, width=(int) [1,3840], height=(int) [1,2160], framerate=(fraction)[0/1, MAX]
+
+[omxdec_h263]
+type-name=GstOMXH263Dec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.H263.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=0
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+src-template-caps=video/x-raw, format=(string)SN12, width=(int) [1,3840], height=(int) [1,2160], framerate=(fraction)[0/1, MAX]
+
+[omxdec_h264]
+type-name=GstOMXH264Dec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.AVC.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=0
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+src-template-caps=video/x-raw, format=(string)SN12, width=(int) [1,3840], height=(int) [1,2160], framerate=(fraction)[0/1, MAX]
+
+[omxdec_h265]
+type-name=GstOMXH265Dec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.HEVC.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=0
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxdec_vp8]
+type-name=GstOMXVP8Dec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.VP8.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=0
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxdec_vp9]
+type-name=GstOMXVP9Dec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.VP9.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=0
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxdec_vc1]
+type-name=GstOMXWMVDec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.WMV.Decoder
+rank=256
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=0
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+sink-template-caps=video/x-wmv,wmvversion=(int)3,format=(string){WMV3,WVC1},width=(int)[1,MAX],height=(int)[1,MAX]
+
+[omxenc_h264]
+type-name=GstOMXH264Enc
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.AVC.Encoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=0
+hacks=no-disable-outport;no-component-role
+sink-template-caps=video/x-raw, format=(string)SN12, width=(int) [1,1920], height=(int) [1,1080], framerate=(fraction)[0/1, MAX]
+src-template-caps=video/x-h264, width=(int) [1,1920], height=(int) [1,1080], framerate=(fraction) [0/1, MAX], alignment=(string) au, stream-format = (string){ avc, byte-stream }
+
+[omxenc_h265]
+type-name=GstOMXH265Enc
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.HEVC.Encoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=0
+hacks=no-disable-outport;no-component-role
+
+[omxenc_mpeg4]
+type-name=GstOMXMPEG4VideoEnc
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.MPEG4.Encoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=0
+hacks=no-component-role;no-disable-outport
+sink-template-caps=video/x-raw, format=(string)SN12, width=(int) [1,1920], height=(int) [1,1080], framerate=(fraction)[0/1, MAX]
+
+[omxenc_h263]
+type-name=GstOMXH263Enc
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.H263.Encoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=0
+hacks=no-component-role;no-disable-outport
+sink-template-caps=video/x-raw, format=(string)SN12, width=(int) [1,1920], height=(int) [1,1080], framerate=(fraction)[0/1, MAX]
diff --git a/media-config-target-tw3/hal/lib/udev/rules.d/99-ion.rules b/media-config-target-tw3/hal/lib/udev/rules.d/99-ion.rules
new file mode 100644 (file)
index 0000000..46cf1c4
--- /dev/null
@@ -0,0 +1 @@
+KERNEL=="ion", MODE="0660", GROUP="video", SECLABEL{smack}="*"
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf
new file mode 100644 (file)
index 0000000..db78eb4
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'Aux' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf
new file mode 100644 (file)
index 0000000..baf674a
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'FM' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-radio
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+.include analog-input.conf.common
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf
new file mode 100644 (file)
index 0000000..4be5722
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf
new file mode 100644 (file)
index 0000000..f7f3085
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic/Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf
new file mode 100644 (file)
index 0000000..2a36f2f
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+name = analog-input-microphone
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common
new file mode 100644 (file)
index 0000000..b35e7af
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common element for all microphone inputs
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Mic Select'
+
+[Element Mic Select]
+enumeration = select
+
+[Option Mic Select:Mic1]
+name = input-microphone
+priority = 20
+
+[Option Mic Select:Mic2]
+name = input-microphone
+priority = 19
+
+;;; Various Boosts
+
+[Element Mic Boost (+20dB)]
+switch = select
+volume = merge
+
+[Option Mic Boost (+20dB):on]
+name = input-boost-on
+
+[Option Mic Boost (+20dB):off]
+name = input-boost-off
+
+[Element Mic Boost]
+switch = select
+volume = merge
+
+[Option Mic Boost:on]
+name = input-boost-on
+
+[Option Mic Boost:off]
+name = input-boost-off
+
+[Element Front Mic Boost]
+switch = select
+
+[Option Front Mic Boost:on]
+name = input-boost-on
+
+[Option Front Mic Boost:off]
+name = input-boost-off
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf
new file mode 100644 (file)
index 0000000..8531ec7
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'TV Tuner' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-video
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf
new file mode 100644 (file)
index 0000000..74c76f0
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Video' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf
new file mode 100644 (file)
index 0000000..5055f90
--- /dev/null
@@ -0,0 +1,54 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; A fallback for devices that lack seperate Mic/Line/Aux/Video/TV
+; Tuner/FM elements
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Capture]
+required = volume
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required-absent = any
+
+[Element Line]
+required-absent = any
+
+[Element Aux]
+required-absent = any
+
+[Element Video]
+required-absent = any
+
+[Element Mic/Line]
+required-absent = any
+
+[Element TV Tuner]
+required-absent = any
+
+[Element FM]
+required-absent = any
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common
new file mode 100644 (file)
index 0000000..951e11f
--- /dev/null
@@ -0,0 +1,294 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Mixer path for PulseAudio's ALSA backend, common elements for all
+; input paths. If multiple options by the same id are discovered they
+; will be suffixed with a number to distuingish them, in the same
+; order they appear here.
+;
+; Source selection should use the following names:
+;
+;       input                       -- If we don't know the exact kind of input
+;       input-microphone
+;       input-microphone-internal
+;       input-microphone-external
+;       input-linein
+;       input-video
+;       input-radio
+;       input-docking-microphone
+;       input-docking-linein
+;       input-docking
+;
+;  We explicitly don't want to wrap the following sources:
+;
+;       CD
+;       Synth/MIDI
+;       Phone
+;       Mix
+;       Digital/SPDIF
+;       Master
+;       PC Speaker
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Input Source Select'
+
+[Element Input Source Select]
+enumeration = select
+
+[Option Input Source Select:Input1]
+name = input
+priority = 10
+
+[Option Input Source Select:Input2]
+name = input
+priority = 5
+
+;;; 'Input Source'
+
+[Element Input Source]
+enumeration = select
+
+[Option Input Source:Mic]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Microphone]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Front Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Front Microphone]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Internal Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Line]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line-In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Docking-Station]
+name = input-docking
+priority = 17
+
+[Option Input Source:AUX IN]
+name = input
+priority = 10
+
+;;; 'Capture Source'
+
+[Element Capture Source]
+enumeration = select
+
+[Option Capture Source:TV Tuner]
+name = input-video
+
+[Option Capture Source:FM]
+name = input-radio
+
+[Option Capture Source:Mic/Line]
+name = input
+
+[Option Capture Source:Line/Mic]
+name = input
+
+[Option Capture Source:Mic]
+name = input-microphone
+
+[Option Capture Source:Microphone]
+name = input-microphone
+
+[Option Capture Source:Int Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Int DMic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Mic]
+name = input-microphone-internal
+
+[Option Capture Source:iMic]
+name = input-microphone-internal
+
+[Option Capture Source:i-Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Microphone]
+name = input-microphone-internal
+
+[Option Capture Source:Front Mic]
+name = input-microphone
+
+[Option Capture Source:Front Microphone]
+name = input-microphone
+
+[Option Capture Source:Rear Mic]
+name = input-microphone
+
+[Option Capture Source:Mic1]
+name = input-microphone
+
+[Option Capture Source:Mic2]
+name = input-microphone
+
+[Option Capture Source:D-Mic]
+name = input-microphone
+
+[Option Capture Source:IntMic]
+name = input-microphone-internal
+
+[Option Capture Source:ExtMic]
+name = input-microphone-external
+
+[Option Capture Source:Ext Mic]
+name = input-microphone-external
+
+[Option Capture Source:E-Mic]
+name = input-microphone-external
+
+[Option Capture Source:e-Mic]
+name = input-microphone-external
+
+[Option Capture Source:LineIn]
+name = input-linein
+
+[Option Capture Source:Analog]
+name = input
+
+[Option Capture Source:Line]
+name = input-linein
+
+[Option Capture Source:Line-In]
+name = input-linein
+
+[Option Capture Source:Line In]
+name = input-linein
+
+[Option Capture Source:Video]
+name = input-video
+
+[Option Capture Source:Aux]
+name = input
+
+[Option Capture Source:Aux0]
+name = input
+
+[Option Capture Source:Aux1]
+name = input
+
+[Option Capture Source:Aux2]
+name = input
+
+[Option Capture Source:Aux3]
+name = input
+
+[Option Capture Source:AUX IN]
+name = input
+
+[Option Capture Source:Aux In]
+name = input
+
+[Option Capture Source:AOUT]
+name = input
+
+[Option Capture Source:AUX]
+name = input
+
+[Option Capture Source:Cam Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 1]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 2]
+name = input-microphone
+
+[Option Capture Source:Analog Inputs]
+name = input
+
+[Option Capture Source:Unknown1]
+name = input
+
+[Option Capture Source:Unknown2]
+name = input
+
+[Option Capture Source:Docking-Station]
+name = input-docking
+
+[Option Capture Source:Dock Mic]
+name = input-docking-microphone
+
+;;; 'Mic Jack Mode'
+
+[Element Mic Jack Mode]
+enumeration = select
+
+[Option Mic Jack Mode:Mic In]
+name = input-microphone
+
+[Option Mic Jack Mode:Line In]
+name = input-linein
+
+;;; 'Digital Input Source'
+
+[Element Digital Input Source]
+enumeration = select
+
+[Option Digital Input Source:Analog Inputs]
+name = input
+
+[Option Digital Input Source:Digital Mic 1]
+name = input-microphone
+
+[Option Digital Input Source:Digital Mic 2]
+name = input-microphone
+
+;;; Various Boosts
+
+[Element Capture Boost]
+switch = select
+
+[Option Capture Boost:on]
+name = input-boost-on
+
+[Option Capture Boost:off]
+name = input-boost-off
+
+[Element Auto Gain Control]
+switch = select
+
+[Option Auto Gain Control:on]
+name = input-agc-on
+
+[Option Auto Gain Control:off]
+name = input-agc-off
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf
new file mode 100644 (file)
index 0000000..f2fd31c
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone2' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 89
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the second headphones, not
+; the first headphones. But it should not hurt if we leave the
+; headphone jack enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf
new file mode 100644 (file)
index 0000000..0a43e27
--- /dev/null
@@ -0,0 +1,85 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage in laptops that have a seperate LFE speaker
+; connected to the Master mono connector
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 40
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all-no-lfe
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf
new file mode 100644 (file)
index 0000000..542edc4
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage on boards that have a seperate Mono output plug.
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 50
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = off
+volume = off
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf
new file mode 100644 (file)
index 0000000..aea7853
--- /dev/null
@@ -0,0 +1,94 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Speaker' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = mute
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = mute
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = mute
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf
new file mode 100644 (file)
index 0000000..fc30800
--- /dev/null
@@ -0,0 +1,92 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for the 'default' output. Note that a-o-speaker.conf has a
+; higher priority than this
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 99
+
+[Element Hardware Master]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = ignore
+volume = ignore
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the default output, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = ignore
+volume = zero
+
+[Element Headphone2]
+switch = ignore
+volume = zero
+
+[Element Speaker]
+switch = ignore
+volume = off
+
+[Element Front]
+switch = ignore
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = ignore
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = ignore
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = ignore
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common
new file mode 100644 (file)
index 0000000..3204846
--- /dev/null
@@ -0,0 +1,128 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common part of all paths
+
+; So here's generally how mixer paths are used by PA: PA goes through
+; a mixer path file from top to bottom and checks if a mixer element
+; described therein exists. If so it is added to the list of mixer
+; elements PA will control, keeping the order it read them in. If a
+; mixer element described here has set the required= or
+; required-absent= directives a path might not be accepted as valid
+; and is ignored in its entirety (see below). However usually if a
+; element listed here is missing this one element is ignored but not
+; the entire path.
+;
+; When a device shall be muted/unmuted *all* elements listed in a path
+; file with "switch = mute" will be toggled.
+;
+; When a device shall change its volume, PA will got through the list
+; of all elements with "volume = merge" and set the volume on the
+; first element. If that element does not support dB volumes, this is
+; where the story ends. If it does support dB volumes, PA divides the
+; requested volume by the volume that was set on this element, and
+; then go on to the next element with "volume = merge" and then set
+; that there, and so on.  That way the first volume element in the
+; path will be the one that does the 'biggest' part of the overall
+; volume adjustment, with the remaining elements usually being set to
+; some value next to 0dB. This logic makes sure we get the full range
+; over all volume sliders and a very high granularity of volumes
+; already in hardware.
+;
+; All switches and enumerations set to "select" are exposed via the
+; "port" functionality of sinks/sources. Basically every possible
+; switch setting and every possible enumeration setting will be
+; combined and made into a "port". So make sure you don't list too
+; many switches/enums for exposing, because the number of ports might
+; rise exponentially.
+;
+; Only one path can be selected at a time. All paths that are valid
+; for an audio device will be exposed as "port" for the sink/source.
+
+
+; [General]
+; priority = ...                         # Priority for this path
+; description = ...
+;
+; [Option ...:...]                       # For each option of an enumeration or switch element
+;                                        # that shall be exposed as a sink/source port. Needs to
+;                                        # be named after the Element, followed by a colon, followed
+;                                        # by the option name, resp. on/off if the element is a switch.
+; name = ...                             # Logical name to use in the path identifier
+; priority = ...                         # Priority if this is made into a device port
+;
+; [Element ...]                          # For each element that we shall control
+; required = ignore | switch | volume | enumeration | any     # If set, require this element to be of this kind and available,
+;                                                             # otherwise don't consider this path valid for the card
+; required-absent = ignore | switch | volume                  # If set, require this element to not be of this kind and not
+;                                                             # available, otherwise don't consider this path valid for the card
+;
+; switch = ignore | mute | off | on | select                  # What to do with this switch: ignore it, make it follow mute status,
+;                                                             # always set it to off, always to on, or make it selectable as port.
+;                                                             # If set to 'select' you need to define an Option section for on
+;                                                             # and off
+; volume = ignore | merge | off | zero   # What to do with this volume: ignore it, merge it into the device
+;                                        # volume slider, always set it to the lowest value possible, or always
+;                                        # set it to 0 dB (for whatever that means)
+; enumeration = ignore | select          # What to do with this enumeration, ignore it or make it selectable
+;                                        # via device ports. If set to 'select' you need to define an Option section
+;                                        # for each of the items you want to expose
+; direction = playback | capture         # Is this relevant only for playback or capture? If not set this will implicitly be
+;                                        # set the direction of the PCM device is opened as. Generally this doesn't need to be set
+;                                        # unless you have a broken driver that has playback controls marked for capture or vice
+;                                        # versa
+; direction-try-other = no | yes         # If the element does not supported what is requested, try the other direction, too?
+;
+; override-map.1 = ...                   # Override the channel mask of the mixer control if the control only exposes a single channel
+; override-map.2 = ...                   # Override the channel masks of the mixer control if the control only exposes two channels
+;                                        # Override maps should list for each element channel which high-level channels it controls via a
+;                                        # channel mask. A channel mask may either be the name of a single channel, or the words "all-left",
+;                                        # "all-right", "all-center", "all-front", "all-rear", and "all" to encode a specific subset of
+;                                        # channels in a mask
+
+[Element PCM]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element External Amplifier]
+switch = select
+
+[Option External Amplifier:on]
+name = output-amplifier-on
+priority = 10
+
+[Option External Amplifier:off]
+name = output-amplifier-off
+priority = 0
+
+;;; 'Analog Output'
+
+[Element Analog Output]
+enumeration = select
+
+[Option Analog Output:Speakers]
+name = output-speaker
+priority = 10
+
+[Option Analog Output:Headphones]
+name = output-headphones
+priority = 9
+
+[Option Analog Output:FP Headphones]
+name = output-headphones
+priority = 8
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf
new file mode 100644 (file)
index 0000000..9838138
--- /dev/null
@@ -0,0 +1,144 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned. (and should be good enough for the vast majority of
+; cards).  Use the udev property PULSE_PROFILE_SET to assign a
+; different profile set than this one to a device.  So what is this
+; about? Simply, what we do here is map ALSA devices to how they are
+; exposed in PA. We say which ALSA device string to use to open a
+; device, which channel mapping to use then, and which mixer path to
+; use. This is encoded in a 'mapping'. Multiple of these mappings can
+; be bound together in a 'profile' which is then directly exposed in
+; the UI as a card profile. Each mapping assigned to a profile will
+; result in one sink/source to be created if the profile is selected
+; for the card.
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+
+[General]
+auto-profiles = yes
+
+[Mapping analog-mono]
+device-strings = hw:0
+channel-map = mono
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 1
+
+[Mapping analog-stereo]
+device-strings = front:%f hw:0
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 10
+
+[Mapping analog-surround-40]
+device-strings = surround40:%f
+channel-map = front-left,front-right,rear-left,rear-right
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-41]
+device-strings = surround41:%f
+channel-map = front-left,front-right,rear-left,rear-right,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-50]
+device-strings = surround50:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-51]
+device-strings = surround51:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-71]
+device-strings = surround71:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+description = Analog Surround 7.1
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping iec958-stereo]
+device-strings = iec958:%f
+channel-map = left,right
+priority = 5
+
+[Mapping iec958-surround-40]
+device-strings = iec958:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 1
+
+[Mapping iec958-ac3-surround-40]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 2
+direction = output
+
+[Mapping iec958-ac3-surround-51]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 3
+direction = output
+
+[Mapping hdmi-stereo]
+device-strings = hdmi:%f
+channel-map = left,right
+priority = 4
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf
new file mode 100644 (file)
index 0000000..2b83530
--- /dev/null
@@ -0,0 +1,91 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 4 DJ
+;
+; This card has two stereo pairs of input and two stereo pairs of
+; output, named channels A and B. Channel B has an additional
+; Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b-output]
+description = Analog Stereo Channel B (Headphones)
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-b-input]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b-output
+input-mappings = analog-stereo-a analog-stereo-b-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+input-mappings = analog-stereo-b-input
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+priority = 6
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b-input
+priority = 1
+skip-probe = yes
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf
new file mode 100644 (file)
index 0000000..3fe3cc5
--- /dev/null
@@ -0,0 +1,162 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 8 DJ
+;
+; This card has four stereo pairs of input and four stereo pairs of
+; output, named channels A to D. Channel C has an additional Mic/Line
+; connector, channel D an additional Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+
+# Since we want to set a different description for channel C's/D's input
+# and output we define two seperate mappings for them
+[Mapping analog-stereo-c-output]
+description = Analog Stereo Channel C
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-c-input]
+description = Analog Stereo Channel C (Line/Mic)
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = input
+
+[Mapping analog-stereo-d-output]
+description = Analog Stereo Channel D (Headphones)
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-d-input]
+description = Analog Stereo Channel D
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B, C (Line/Mic), D (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-input analog-stereo-d-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-c]
+description = Analog Stereo Channel D (Headphones) Output, Channel C (Line/Mic) Input
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-c-input
+priority = 90
+skip-probe = yes
+
+[Profile output:analog-stereo-c-d+input:analog-stereo-c-d]
+description = Analog Stereo Duplex Channels C (Line/Mic), D (Line/Mic)
+output-mappings = analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-c-input analog-stereo-d-input
+priority = 80
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B
+output-mappings = analog-stereo-b
+input-mappings = analog-stereo-b
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-c+input:analog-stereo-c]
+description = Analog Stereo Duplex Channel C (Line/Mic)
+output-mappings = analog-stereo-c-output
+input-mappings = analog-stereo-c-input
+priority = 60
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-d]
+description = Analog Stereo Duplex Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-d-input
+priority = 70
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 6
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B
+output-mappings = analog-stereo-b
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-c]
+description = Analog Stereo Output Channel C
+output-mappings = analog-stereo-c-output
+priority = 7
+skip-probe = yes
+
+[Profile output:analog-stereo-d]
+description = Analog Stereo Output Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+priority = 8
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b
+priority = 1
+skip-probe = yes
+
+[Profile input:analog-stereo-c]
+description = Analog Stereo Input Channel C (Line/Mic)
+input-mappings = analog-stereo-c-input
+priority = 4
+skip-probe = yes
+
+[Profile input:analog-stereo-d]
+description = Analog Stereo Input Channel D
+input-mappings = analog-stereo-d-input
+priority = 3
+skip-probe = yes
diff --git a/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf b/media-config-target-tw3/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf
new file mode 100644 (file)
index 0000000..6a7fd50
--- /dev/null
@@ -0,0 +1,119 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned (and should be good enough for the vast majority of
+; cards). If you want to assign a different profile set than this one
+; to a device, either set the udev property PULSE_PROFILE_SET for the
+; card, or use the "profile_set" module argument when loading
+; module-alsa-card.
+;
+; So what is this about? Simply, what we do here is map ALSA devices
+; to how they are exposed in PA. We say which ALSA device string to
+; use to open a device, which channel mapping to use then, and which
+; mixer path to use. This is encoded in a 'mapping'. Multiple of these
+; mappings can be bound together in a 'profile' which is then directly
+; exposed in the UI as a card profile. Each mapping assigned to a
+; profile will result in one sink/source to be created if the profile
+; is selected for the card.
+;
+; Additionally, the path set configuration files can describe the
+; decibel values assigned to the steps of the volume elements. This
+; can be used to work around situations when the alsa driver doesn't
+; provide any decibel information, or when the information is
+; incorrect.
+
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+;
+; [DecibelFix element]                      # Decibel fixes can be used to work around missing or incorrect dB
+;                                           # information from alsa. A decibel fix is a table that maps volume steps
+;                                           # to decibel values for one volume element. The "element" part in the
+;                                           # section title is the name of the volume element.
+;                                           #
+;                                           # NOTE: This feature is meant just as a help for figuring out the correct
+;                                           # decibel values. PulseAudio is not the correct place to maintain the
+;                                           # decibel mappings!
+;                                           #
+;                                           # If you need this feature, then you should make sure that when you have
+;                                           # the correct values figured out, the alsa driver developers get informed
+;                                           # too, so that they can fix the driver.
+;
+; db-values = ...                           # The option value consists of pairs of step numbers and decibel values.
+;                                           # The pairs are separated with whitespace, and steps are separated from
+;                                           # the corresponding decibel values with a colon. The values must be in an
+;                                           # increasing order. Here's an example of a valid string:
+;                                           #
+;                                           #     "0:-40.50  1:-38.70  3:-33.00  11:0"
+;                                           #
+;                                           # The lowest step imposes a lower limit for hardware volume and the
+;                                           # highest step correspondingly imposes a higher limit. That means that
+;                                           # that the mixer will never be set outside those values - the rest of the
+;                                           # volume scale is done using software volume.
+;                                           #
+;                                           # As can be seen in the example, you don't need to specify a dB value for
+;                                           # each step. The dB values for skipped steps will be linearly interpolated
+;                                           # using the nearest steps that are given.
+
+[General]
+auto-profiles = yes
+
+[Mapping usb-analog-stereo]
+device-strings = hw:%f
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+priority = 10
+
+[Mapping usb-analog-surround-51]
+device-strings = hw:%f
+;channel-map = front-left,front-right,front-center,lfe,rear-left,rear-right
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-lfe-on-mono
+priority = 180
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-u3.manifest b/media-config-target-u3.manifest
new file mode 100644 (file)
index 0000000..a76fdba
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+       <request>
+               <domain name="_" />
+       </request>
+</manifest>
diff --git a/media-config-target-u3/hal/etc/asound.conf b/media-config-target-u3/hal/etc/asound.conf
new file mode 100644 (file)
index 0000000..acaf318
--- /dev/null
@@ -0,0 +1,11 @@
+# default sound configuration
+
+pcm. !default {
+       type hw
+       card 0
+}
+
+ctl. !default {
+       type hw
+       card 0
+}
diff --git a/media-config-target-u3/hal/etc/inference/inference_engine.ini b/media-config-target-u3/hal/etc/inference/inference_engine.ini
new file mode 100644 (file)
index 0000000..c83c15c
--- /dev/null
@@ -0,0 +1,3 @@
+[inference backend]
+;OPENCV=0, Tensorflow-lite=1, ARMNN=2, ONE(On-device Neural Engine)=4, BEYOND=5
+supported backend types = 0,1,2,4,5
diff --git a/media-config-target-u3/hal/etc/inference/inference_engine_backend_path.ini b/media-config-target-u3/hal/etc/inference/inference_engine_backend_path.ini
new file mode 100644 (file)
index 0000000..97b4f0e
--- /dev/null
@@ -0,0 +1,24 @@
+; This ini file describes,
+; 1. which NPU backend to be used for user-given INFERENCE_ENGINE_CUSTOM type. As for NPU device, we will use ML Single API.
+; 2. which API framework to be used for a given backend engine such as TFLITE, ARMNN, and OPENCV.
+;    In default, Mediavision internal API will be used. If you want to use ML Single API then set 'MLAPI' to 'API framework' of each backend section.
+
+; Available NPU backends : VIVANTE, TRIV2
+; Available backend engine sections : TFLITE, ARMNN, ONE, OPENCV
+; Available external inference engine API framework : MLAPI
+
+[NPU backend]
+; Writing rule = [VIVANTE|TRIV2]
+type = VIVANTE
+
+[TFLITE]
+; Writing rule = [MLAPI]
+API framework = MLAPI
+
+[ARMNN]
+; Writing rule = [MLAPI]
+API framework =
+
+[OPENCV]
+; Writing rule = [MLAPI]
+API framework =
diff --git a/media-config-target-u3/hal/etc/multimedia/mmfw_audio_pcm_dump.ini b/media-config-target-u3/hal/etc/multimedia/mmfw_audio_pcm_dump.ini
new file mode 100644 (file)
index 0000000..6e13b68
--- /dev/null
@@ -0,0 +1,8 @@
+[pcm_dump]
+;playback
+pa_sink = 0
+pa_sink_input = 0
+
+;capture
+pa_source = 0
+pa_source_output = 0
diff --git a/media-config-target-u3/hal/etc/multimedia/mmfw_audio_volume.ini b/media-config-target-u3/hal/etc/multimedia/mmfw_audio_volume.ini
new file mode 100644 (file)
index 0000000..ae7e635
--- /dev/null
@@ -0,0 +1,19 @@
+[volumes]
+system                         = 0, 72, 73, 74, 75, 76, 77, 78, 80, 81, 82, 84, 86, 88, 90, 94
+notification                   = 0, 68, 70, 72, 73, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 97
+alarm                          = 0, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 92
+ringtone                       = 0, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 92
+media                          = 0, 46, 50, 53, 58, 62, 68, 72, 76, 80, 84, 87, 90, 93, 96, 100
+call                           = 60, 65, 70, 76, 82, 88, 94, 100
+voip                           = 60, 65, 70, 76, 82, 88, 94, 100
+voice                          = 0, 55, 58, 61, 64, 67, 70, 75, 78, 82, 86, 89, 91, 94, 97, 100
+gain_dialer                    = 1.00
+gain_touch                     = 1.00
+gain_af                        = 0.70
+gain_shutter1                  = 0.14
+gain_shutter2                  = 1.00
+gain_camcording                = 0.30
+gain_midi                      = 1.00
+gain_booting                   = 0.40
+gain_video                     = 0.90
+gain_tts                       = 1.00
diff --git a/media-config-target-u3/hal/etc/multimedia/mmfw_camcorder.ini b/media-config-target-u3/hal/etc/multimedia/mmfw_camcorder.ini
new file mode 100644 (file)
index 0000000..0d139a2
--- /dev/null
@@ -0,0 +1,103 @@
+; < Camera/Camcorder Configure Main INI file >
+;
+; - Header List -
+; 1.  General
+; 2.  VideoInput
+; 3.  AudioInput
+; 4.  VideoOutput
+; 5.  Capture
+; 6.  Record
+; 7.  VideoEncoder
+; 8.  AudioEncoder
+; 9.  ImageEncoder
+; 10. Mux
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryMain"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[General]
+SyncStateChange = 1
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap || NOT-USE-DEFAULT_VALUE
+;GSTInitOption = --gst-enable-tiny-registry --gst-disable-segtrap --gst-debug=3 || NOT-USE-DEFAULT_VALUE
+ModelName = GT-TIZEN
+;DisabledAttributes = camera-optical-zoom camera-af-touch-x camera-af-touch-y camera-exposure-value camera-f-number camera-shutter-speed camera-hold-af-after-capturing filter-flip filter-hue display-src-x display-src-y display-src-width display-src-height tag-image-description strobe-control strobe-capabilities strobe-mode detect-mode detect-number detect-focus-select detect-select-number detect-status || NO_DEFAULT_VALUE
+
+[VideoInput]
+VideosrcElement = v4l2src | 1,0 | do-timestamp,1
+UseVideoscale = 1
+VideoscaleElement = videoscale | 3,0 | width,320 | height,240 | method,1
+UseZeroCopyFormat = 0
+DeviceCount = 1
+SupportMediaPacketPreviewCb = 1
+
+[AudioInput]
+AudioDevice = 0,1 || 0
+AudiosrcElement = pulsesrc | 1,0 | do-timestamp,1
+AudiomodemsrcElement = pulsesrc | 1,0 | do-timestamp,1
+
+[VideoOutput]
+; DisplayDevice
+;;; 0: MAIN LCD, 1: SUB LCD, 2:TV OUT, 3: MAIN LCD and SUB LCD, 4: MAIN LCD and TV OUT
+DisplayDevice = 0 || 0
+; DisplayMode
+;;; 0: Default, 1: Pri Video ON and Sec Video Full-Screen, 2: Pri Video OFF and Sec Video Full-Screen
+DisplayMode = 0,1,2 || 0
+; Videosink
+;;; 0: Overlay surface, 1: Evas surface, 2: GL surface, 3: NULL surface, 4: Remote
+Videosink = 0,3,4 || 3
+VideosinkElementOverlay = tizenwlsink | 7,0 | draw-borders,0 | force-aspect-ratio,1 | enable-last-sample,0 | qos,0 | sync,0 | show-preroll-frame,0 | use-tbm,0
+VideosinkElementRemote = shmsink | 5,0 | wait-for-connection,0 | perms,511 | enable-last-sample,0 | qos,0 | sync,0
+VideosinkElementNull = fakesink | 4,0 | qos,0 | sync,0 | enable-last-sample,0 | show-preroll-frame,0
+UseVideoconvert = 1
+VideoconvertElement = videoconvert | 0,0
+
+[VideoEncoder]
+MPEG4 = avenc_mpeg4 | 0,0
+
+[AudioEncoder]
+AMR = amrnbenc | 0,0
+AAC = avenc_aac | 1,0 | compliance,-2
+WAVE = wavenc | 0,0
+
+[ImageEncoder]
+JPEG = jpegenc | 0,0
+;PNG = pngenc | 0,0
+
+[Capture]
+UseEncodebin = 1
+UseCaptureMode = 0
+VideoscaleElement = videoscale | 1,0 | method,1
+
+[Record]
+UseAudioEncoderQueue = 1
+UseVideoEncoderQueue = 0
+VideoProfile = 0
+VideoAutoAudioConvert = 1
+VideoAutoAudioResample = 0
+VideoAutoColorSpace = 1
+AudioProfile = 1
+AudioAutoAudioConvert = 1
+AudioAutoAudioResample = 0
+AudioAutoColorSpace = 0
+ImageProfile = 2
+ImageAutoAudioConvert = 0
+ImageAutoAudioResample = 0
+ImageAutoColorSpace = 1
+RecordsinkElement = filesink | 1,0 | async,0
+UseNoiseSuppressor = 0
+DropVideoFrame = 0
+PassFirstVideoFrame = 0
+
+[Mux]
+3GP = 3gppmux | 0,0
+AMR = avmux_amr | 0,0
+MP4 = mp4mux | 0,0
+AVI = avimux | 0,0
+MATROSKA = matroskamux | 0,0
+WAV = wavenc | 0,0
+AAC = avmux_adts | 0,0
+M2TS = mpegtsmux | 0,0
+
diff --git a/media-config-target-u3/hal/etc/multimedia/mmfw_camcorder_camera0.ini b/media-config-target-u3/hal/etc/multimedia/mmfw_camcorder_camera0.ini
new file mode 100644 (file)
index 0000000..dc61517
--- /dev/null
@@ -0,0 +1,206 @@
+; < Camera/Camcorder Configure Control INI file >
+;
+; - Header List -
+; 1.  Camera
+; 2.  Strobe
+; 3.  Effect
+; 4.  Photograph
+; 5.  Capture
+; 6.  Detect
+;
+; - Note -
+; If you want to add a new header,
+; add a new enum value to "enum ConfigureCategoryControl"
+; and new default table for it in mm_camcorder_configure.c/.h
+;
+
+[Camera]
+; Input index - real setting value
+;;; 0:PRIMARY_CAMERA, 1:SECONDARY_CAMERA
+; Input index - MSL value(convert array index)
+;;; -1:NONE, 0:CAMERA0, 1:CAMERA1
+InputIndex = 0,-255 || 0
+DeviceName = USB_CAMERA
+PreviewResolution = 320,240 | 640,480 || 320,240
+CaptureResolution = 320,240 | 640,480 || 640,480
+VideoResolution = 320,240 | 640,480 || 640,480
+FPS0 = 0,15,30 || 15
+FPS1 = 0,15,30 || 15
+; PictureForamt - MSL value
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+PictureFormat = 7 || 7
+Overlay = 0,1 || 1
+; Recommend display rotation
+;;; 0:NONE, 1:90, 2:180, 3:270
+RecommendDisplayRotation = 0
+; Recommend preview format for capture
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatCapture = 7
+; Recommend preview format for record
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY, 15:ENCODED_H264
+RecommendPreviewFormatRecord = 7
+; Recommend preview resolution
+;;; 0: NORMAL ratio(4:3), 1: WIDE ratio(16:9), 2: SQUARE ratio(1:1)
+RecommendPreviewResolution = 320,240 | 320,240 | 320,240 || 320,240
+; Camera facing direction
+;;; 0:REAR, 1:FRONT
+FacingDirection = 0
+
+
+[Strobe]
+;StrobeControl - Not support
+;StrobeCapabilities - Not support
+; Strobe mode - real setting value
+;;; 0:BASE, 1:OFF, 2:AUTO, 3:ON, 4:TORCH, 5:MAX
+; Strobe mode - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:REDEYE_REDUCTION, 4:SLOW_SYNC, 5:FRONT_CURTAIN, 6:REAR_CURTAIN, 7:PERMANENT
+StrobeMode = 1,3,2,-255,-255,-255,-255,4 || 2
+;StrobeStatus - Not support
+;StrobeEV - Not support
+
+
+[Effect]
+Brightness = 0,8 || 4
+;Contrast = 1,7 || 4
+;Saturation = 0,4 || 2
+;Sharpness = 0,4 || 2
+
+; White balance - real setting value
+;;; 0:AUTO, 1:DAYLIGHT, 2:CLOUDY, 3:TUNGSTEN, 4:FLUORESCENT
+; White balance - MSL value(convert array index)
+;;; 0:NONE, 1:AUTO, 2:DAYLIGHT, 3:CLOUDY, 4:FLUORESCENT, 5:INCANDESCENT, 6:SHADE, 7:HORIZON, 8:FLASH, 9:CUSTOM
+WhiteBalance = -255,0,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Color tone - real setting value
+;;; 1:NONE, 2:MONO, 3:SEPIA, 4:AQUA, 5:ANTIQUE, 6:NEGATIVE, 7:SHARPEN, 8:SKETCH, 9:WASHED, 10:VINTAGE_WARM
+;;; 11:VINTAGE_COLD, 12:SOLARIZE, 13:POSTERIZE, 14:POINT_BLUE, 15:POINT_RED_YELLOW, 16:POINT_COLOR_3, 17:POINT_GREEN, 18:POINT_RED, 19:POINT_YELLOW, 20:CARTOONIZE
+; Color tone - MSL value(convert array index)
+;;; 0:NONE, 1:MONO, 2:SEPIA, 3:NEGATIVE, 4:BLUE, 5:GREEN, 6:AQUA, 7:VIOLET, 8:ORANGE, 9:GRAY, 10:RED,
+;;; 11:ANTIQUE, 12:WARM, 13:PINK, 14:YELLOW, 15:PURPLE, 16:EMBOSS, 17:OUTLINE, 18:SOLARIZATION, 19:SKETCH, 20:WASHED,
+;;; 21:VINTAGE_WARM, 22:VINTAGE_COLD, 23:POSTERIZATION, 24:CARTOON, 25:SELECTIVE_RED, 26:SELECTIVE_GREEN, 27:SELECTIVE_BLUE, 28:SELECTIVE_YELLOW, 29:SELECTIVE_RED_YELLOW
+ColorTone = 1,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 1
+; Flip - real setting value
+;;; 0:NONE, 1:VERTICAL, 2:HORIZONTAL
+; Flip - MSL value(convert array index)
+;;; 0:HORIZONTAL, 1:VERTICAL, 2:NONE
+;Flip = 2,1,0 || 0
+
+; Wide Dynamic Range - real setting value
+;;; 0:OFF, 1:ON
+; Wide Dynamic Range - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO
+WDR = 0,-255,-255 || 0
+
+; Part color mode - real setting value
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+; Part color mode - MSL value(convert array index)
+;;; 0:OFF, 1:SWAP, 2:ACCENT
+;PartColorMode = 0,1,2 || 0
+
+; Part color - real setting value
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+; Part color - MSL value(convert array index)
+;;; 0:VIOLET, 1:PURPLE, 2:MAGENTA_1, 3:MAGENTA_2, 4:RED_1, 5:RED_2, 6:BROWN, 7:YELLOW, 8:GREEN_1, 9:GREEN_2, 10:GREEN_3,
+;;; 11:GREEN_4, 12:COBALT_BLUE, 13:CYAN, 14:BLUE_1, 15:BLUE_2, 16:GRAY
+;PartColor = 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 || 0
+
+
+[Photograph]
+;LensInit = 0,1 || 0
+;DigitalZoom = 0,10 || 0
+;OpticalZoom = 0,0 || 0
+
+; Focus mode - real setting value
+;;; 0:AUTO, 1:MANUAL, 2:PAN, 3:TOUCH_AUTO, 4:CONTINUOUS
+; Focus mode - MSL value(convert array index)
+;;; 0:NONE, 1:PAN, 2:AUTO, 3:MANUAL, 4:TOUCH_AUTO, 5:CONTINUOUS
+FocusMode = 0,-255,-255,-255,-255,-255 || 0
+
+; Auto focus type - real setting value
+;;; 0:NORMAL, 1:MACRO, 2:FULL
+; Auto focus - MSL value(convert array index)
+;;; 0:NONE, 1:NORMAL, 2:MACRO, 3:FULL
+AFType = 0,-255,-255,-255 || 0
+
+; Auto exposure type - real setting value
+;;; 0:BASE, 1:MATRIX, 2:CENTER, 3:SPOT, 4:MAX
+; Auto exposure mode - MSL value(convert array index)
+;;; 0,OFF 1,ALL 2,CENTER1  3,CENTER2 4,CENTER3 5,SPOT1 6,SPOT2 7,CUSTOM1 8,CUSTOM2
+AEType = -255,0,-255,-255,-255,-255,-255,-255,-255 || 0
+
+;ExposureValue - Not support
+;FNumber - Not support
+;ShutterSpeed - Not support
+
+; ISO - real setting value
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600
+; ISO - MSL value(convert array index)
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600, 7:3200
+ISO = 0,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Program mode - real setting value
+;;; 1:NONE, 2:PORTRAIT, 3:NIGHTSHOT, 4:BACK_LIGHT, 5:LANDSCAPE, 6:SPORTS, 7:PARTY_INDOOR, 8:BEACH_SNOW, 9:SUNSET, 10:DUSK_DAWN,
+;;; 11:FALL_COLOR, 12:FIREWORKS, 13:TEXT, 14:CANDLE_LIGHT
+; Program mode - MSL value(convert array index)
+;;; 0:NORMAL, 1:PORTRAIT, 2:LANDSCAPE, 3:SPORTS, 4:PARTY_N_INDOOR, 5:BEACH_N_INDOOR, 6:SUNSET, 7:DUSK_N_DAWN, 8:FALL_COLOR, 9:NIGHT_SCENE,
+;;; 10:FIREWORK, 11:TEXT, 12:SHOW_WINDOW, 13:CANDLE_LIGHT, 14:BACKLIGHT
+ProgramMode = 0,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255,-255 || 0
+
+; Anti-handshake - real setting value
+;;; 0:OFF, 1:ON
+; Anti-handshake - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO, 3:MOVIE_ON
+AntiHandshake = 0,-255,-255,-255 || 0
+
+; Video-stabilization - real setting value
+;;; 0:OFF, 1:ON
+; Video-stabilization - MSL value(convert array index)
+;;; 0:OFF, 1:ON
+VideoStabilization = 0 || 0
+
+; Face zoom mode
+;;; 0:OFF, 1:ON
+FaceZoomMode = 0 || 0
+; Face zoom level
+FaceZoomLevel = 0,0 || 0
+
+; PTZ(Pan Tilt Zoom) type
+;;; 0:Mechanical, 1:Electronic
+;PtzType = 0,1 || 1
+
+; Pan range for mechanical movement
+;PanMecha = -10,10
+
+; Pan range for electronic movement
+;PanElec = -10,10
+
+; Tilt range for mechanical movement
+;TiltMecha = -10,10
+
+; Tilt range for electronic movement
+;TiltElec = -10,10
+
+
+[Capture]
+; Output mode
+;;; No need to convert
+;;; 0:NV12, 1:NV12T, 2:NV16, 3:NV21, 4:YUYV, 5:UYVY, 6:422P, 7:I420, 8:YV12, 9:RGB565, 10:RGB888, 11:RGBA, 12:ARGB, 13:ENCODED, 14:INTERLEAVED_JPEG_UYVY
+OutputMode = 7,13 || 13
+JpegQuality = 0,100 || 90
+MultishotNumber = 1,1 || 1
+SensorEncodedCapture = 0
+; Support HDR
+;;; 0: OFF, 1: ON, 2: ON and Original
+SupportHDR = 0,-255,-255 || 0
+
+
+[Detect]
+; Detect mode
+;;; 0:OFF, 1:ON
+DetectMode = 0,-255 || 0
+;DetectNumber - Not support
+;DetectFocusSelect - Not support
+;DetectSelectNumber - Not support
+;DetectStatus - Not support
+
diff --git a/media-config-target-u3/hal/etc/multimedia/mmfw_media_codec.ini b/media-config-target-u3/hal/etc/multimedia/mmfw_media_codec.ini
new file mode 100644 (file)
index 0000000..9f2a5dd
--- /dev/null
@@ -0,0 +1,89 @@
+[h261]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = , ,
+sw_encoder = , ,
+
+[h263]
+hw_decoder = omxdec_h263, video/x-h263, NV12
+hw_encoder = omxenc_h263, video/x-raw,  H263
+sw_decoder = avdec_h263,   video/x-h263, I420
+sw_encoder = avenc_h263,   video/x-raw,  H263
+
+[h264]
+hw_decoder = omxdec_h264, video/x-h264, NV12
+hw_encoder = omxenc_h264, video/x-raw,  H264_SP
+sw_decoder = avdec_h264,   video/x-h264, I420
+sw_encoder = avenc_h264,   video/x-raw,  H264_SP
+
+[mpeg4]
+hw_decoder = omxdec_mpeg4, video/mpeg, NV12
+hw_encoder = omxenc_mpeg4, video/x-raw,  MPEG4_SP
+sw_decoder = avdec_mpeg4,   video/mpeg, I420
+sw_encoder = avenc_mpeg4,   video/x-raw,  MPEG4_SP
+
+[aac_lc]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = avenc_aac,   audio/x-raw, AAC_LC
+
+[aac_he]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[aac_he_ps]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_aac,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[mp3]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_mp3,   audio/mpeg, PCM_F32LE
+sw_encoder = , ,
+
+[amr_nb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrnb,   audio/AMR, PCM_F32LE
+sw_encoder = amrnbenc, audio/x-raw, AMR_NB
+
+[amr_wb]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_amrwb,   audio/AMR-WB, PCM_F32LE
+sw_encoder = , ,
+
+[vorbis]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = vorbisdec,   audio/x-vorbis, PCM_F32LE
+sw_encoder = , ,
+
+[flac]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_flac,   audio/x-flac, PCM_F32LE
+sw_encoder = , ,
+
+[wmav1]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav1,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmav2]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmav2,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
+
+[wmapro]
+hw_decoder = , ,
+hw_encoder = , ,
+sw_decoder = avdec_wmapro,   audio/x-wma, PCM_F32LE
+sw_encoder = , ,
diff --git a/media-config-target-u3/hal/etc/multimedia/mmfw_media_streamer.ini b/media-config-target-u3/hal/etc/multimedia/mmfw_media_streamer.ini
new file mode 100644 (file)
index 0000000..fa7e336
--- /dev/null
@@ -0,0 +1,123 @@
+[general]
+; generating dot file representing pipeline state
+generate dot = no
+dot dir =
+
+; decodebin will be used instead of decoder node
+use decodebin = yes
+
+; comma separated list of element names which
+; will not be used in autoplug mode
+exclude elements = v4l2video,v4l2h264,v4l2mpeg4,omx,sprd
+
+; comma separated list of element names which
+; will require resources in autoplug mode
+resource elements = omx,sprd
+
+; comma separated list of arguments
+; that will pass to gst_init
+gstreamer arguments = --gst-debug=2
+
+
+;MEDIA_STREAMER_NODE_TYPE_SRC
+[node type 1]
+audio capture = pulsesrc
+video capture = waylandsrc
+camera = camerasrc
+
+;MEDIA_STREAMER_NODE_TYPE_SINK
+[node type 2]
+audio = pulsesink
+overlay = tizenwlsink
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_ENCODER
+[node type 3]
+video/x-h263 = avenc_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DECODER
+[node type 4]
+video/x-h263 = avdec_h263
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_ENCODER
+[node type 5]
+audio/AMR = amrnbenc
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DECODER
+[node type 6]
+audio/AMR = amrnbdec
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_CONVERTER
+[node type 7]
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_CONVERTER
+[node type 8]
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_RESAMPLE
+[node type 9]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_PAY
+[node type 10]
+video/x-h263 = rtph263pay
+;video/x-h264 =
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_PAY
+[node type 11]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_DEPAY
+[node type 12]
+video/x-h263 = rtph263depay
+video/x-h264 = rtph264depay
+
+;MEDIA_STREAMER_NODE_TYPE_AUDIO_DEPAY
+[node type 13]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_RATE
+[node type 14]
+
+;MEDIA_STREAMER_NODE_TYPE_VIDEO_SCALE
+[node type 15]
+
+;MEDIA_STREAMER_NODE_TYPE_TEXT_OVERLAY
+[node type 16]
+text/x-raw = textoverlay
+
+;MEDIA_STREAMER_NODE_TYPE_PARSER
+[node type 17]
+video/x-h263 = h263parse
+video/x-h264 = h264parse
+
+;MEDIA_STREAMER_NODE_TYPE_FILTER
+[node type 18]
+
+;MEDIA_STREAMER_NODE_TYPE_TEE
+[node type 19]
+
+;MEDIA_STREAMER_NODE_TYPE_QUEUE
+[node type 20]
+
+;MEDIA_STREAMER_NODE_TYPE_MQUEUE
+[node type 21]
+
+;MEDIA_STREAMER_NODE_TYPE_MUXER
+[node type 22]
+
+;MEDIA_STREAMER_NODE_TYPE_DEMUXER
+[node type 23]
+
+;MEDIA_STREAMER_NODE_TYPE_RTP
+[node type 24]
+
+;MEDIA_STREAMER_NODE_TYPE_INPUT_SELECTOR
+[node type 25]
+
+;MEDIA_STREAMER_NODE_TYPE_OUTPUT_SELECTOR
+[node type 26]
+
+;MEDIA_STREAMER_NODE_TYPE_INTERLEAVE
+[node type 27]
+
+;MEDIA_STREAMER_NODE_TYPE_DEINTERLEAVE
+[node type 28]
+
diff --git a/media-config-target-u3/hal/etc/multimedia/mmfw_player.ini b/media-config-target-u3/hal/etc/multimedia/mmfw_player.ini
new file mode 100644 (file)
index 0000000..01f0c65
--- /dev/null
@@ -0,0 +1,102 @@
+[general]
+
+disable segtrap = yes ; same effect with --gst-disable-segtrap
+
+; set default videosink element according to video surface type(X, EVAS, NULL)
+videosink element overlay = tizenwlsink
+videosink element fake = fakesink
+video converter element =
+
+; decoder element keyword for resource management.
+video codec element hw =      ; omx is included in this target but it is not verified.
+video codec element sw = avdec
+video codec default type = sw ; hw or sw
+
+audio codec element hw =
+audio codec element sw = avdec
+audio codec default type = sw ; hw or sw
+
+; support with HW audio codec
+support audio effect = no
+support pcm exporting = no
+support pitch control = no
+support replaygain control = no
+
+audiosink element = pulsesink
+
+; audio offload information
+audio offload sink element =
+audio offload device type =    ; builtin-speaker,bt-a2dp,audio-jack,usb-audio from pulse stream-map
+audio offload media format =   ; Use the format keyword of media_format_mimetype_e, MAX:10
+
+; supported input format of external media source stream
+; Use the format keyword of media_format_mimetype_e, MAX:10
+media stream input format = AAC,H264_SP,H264_MP,H264_HP
+
+; if yes. gstreamer will not update registry
+skip rescan = yes
+delay before repeat = 50 ; msec
+
+; comma separated list of tocken which elemnts has it in it's name will not be used
+; this works if 'use decodebin = yes'
+element exclude keyword = v4l2,omx
+
+; comma separated list of tocken
+; this works if 'use decodebin = yes'
+unsupported codec keyword = divx
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1 = --gst-debug=*:2
+gstparam2 =
+gstparam3 =
+gstparam4 =
+gstparam5 =
+
+; generating dot file representing pipeline state
+; DEFAULT MUST BE 'no'. If 'yes', mmplayer will set env-variable for it's session as "export GST_DEBUG_DUMP_DOT_DIR=/tmp/"
+generate dot = no
+
+; parameter is for only video to be determined
+; which clock will be used
+; if yes, system clock will be used
+; apart from this, audiosink is clock provider for audio
+use system clock = yes
+
+; allowed timeout for changing pipeline state
+live state change timeout = 30 ; sec
+localplayback state change timeout = 10 ; sec
+
+; delay in msec for sending EOS
+eos delay = 0 ; msec
+
+; extracted pcm buffer size
+pcm buffer size = 51200 ; 50Kbytes
+
+; max num of bo for sw codec
+video bo max = 10
+
+; video bo timeout (sec)
+video bo timeout = 10
+
+; setup pipeline with decodebin2
+use decodebin = no
+
+[http streaming]
+
+httpsrc element = souphttpsrc
+
+http buffering limit = 99.0 ; percent
+
+; if yes, use file for buffering.
+; if no, use memory for buffering.
+http use file buffer = no
+
+; ring buffer size when use mem buffer
+http ring buffer size = 20971520 ; 20MBytes
+
+http max size bytes = 1048576 ; bytes
+
+http buffering time = 1.2
+
+http timeout = 30 ; sec
diff --git a/media-config-target-u3/hal/etc/multimedia/mmfw_player_audio_effect.ini b/media-config-target-u3/hal/etc/multimedia/mmfw_player_audio_effect.ini
new file mode 100644 (file)
index 0000000..1394608
--- /dev/null
@@ -0,0 +1,17 @@
+[audio effect]
+; name of audio effect element
+audio effect element = audioeq
+
+; preset audio effect setting
+audio effect preset = no
+
+; custom audio effect setting (EQ/extension)
+audio effect custom = yes
+audio effect custom list = 0
+
+audio effect custom eq band num = 7 ; number of EQ bands
+audio effect custom eq band width = 33, 90, 242, 649, 1743, 4676, 12544 ; list of each EQ band width (Hz)
+audio effect custom eq band freq = 36, 98, 265, 711, 1907, 5117, 13727 ; list of each EQ band central frequency (Hz)
+
+audio effect custom min list = -12 ; list of minimum level value (the first element is for EQ, others for extension effect)
+audio effect custom max list = 12 ; list of maximum level value (the first element is for EQ, others for extension effect)
diff --git a/media-config-target-u3/hal/etc/multimedia/mmfw_resource_manager.ini b/media-config-target-u3/hal/etc/multimedia/mmfw_resource_manager.ini
new file mode 100644 (file)
index 0000000..082f297
--- /dev/null
@@ -0,0 +1,9 @@
+[max volume]
+video_overlay = -1
+video_decoder = -1
+video_encoder = -1
+camera = -1
+
+[priority]
+media = 10
+interrupt = 99
diff --git a/media-config-target-u3/hal/etc/multimedia/mmfw_streamrecorder.ini b/media-config-target-u3/hal/etc/multimedia/mmfw_streamrecorder.ini
new file mode 100644 (file)
index 0000000..2888707
--- /dev/null
@@ -0,0 +1,81 @@
+[general]
+;is encsink source is live
+encscink source is live = 0
+
+retrialcount = 10
+
+minimum frame = 5
+
+reset pause time = 0
+
+screen record = 1
+
+convert output buffer num = 6
+
+hw encoder supported = 0 ; 1 if supported and 'video codec element hw' should be formed.
+
+video codec element hw = ; sprd (if verified) or verified hw codec element
+
+[encodebin]
+;MM_STREAMRECORDER_ENCBIN_PROFILE_VIDEO = 0 MM_STREAMRECORDER_ENCBIN_PROFILE_AUDIO = 1
+;MM_STREAMRECORDER_ENCBIN_PROFILE_IMAGE = 2 MM_STREAMRECORDER_ENCBIN_PROFILE_NUM = 3
+encsink bin profile = 0
+
+encsink bin auto audio resample = 0
+
+encsink bin auto colorspace = 1
+
+encsink bin auto audio convert = 1
+
+encsink bin use video toggle = 0
+
+[pipeline]
+encsink bin source = appsrc
+
+name of audio src = pulsesrc
+
+h264 encoder =
+
+h263 encoder = avenc_h263p
+
+mpeg4 encoder = avenc_mpeg4
+
+name of audio encoder = avenc_aac
+
+use parser  =
+
+name of 3GP muxer = avmux_3gp
+
+name of MP4 muxer = avmux_mp4
+
+name of video converter = videoconvert
+
+name of sink = filesink
+
+[video param]
+;/*ms*/
+video frame wait time = 200000
+
+[audio param]
+audio frame minimum space = 102400
+
+audio frame wait time = 20000
+
+[attribute]
+supported height = 1080,720,480,240,288,144
+
+supported width = 1920,1280,640,320,352,176
+
+;/*AMR, AAC, VORBIS ,PCM*/
+supported audio encoders = AMR,AAC,PCM
+
+;/* H263 , H264 , MPEG4 */
+supported video encoders = H263,MPEG4
+
+;/*3GP , AMR, MP4 , WAV, ADTS*/
+supported file formats = 3GP,MP4,AMR,ADTS,WAV
+
+[debug]
+; generating dot file representing pipeline state
+; do export GST_DEBUG_DUMP_DOT_DIR=/tmp/ in the shell (also do export to '/etc/profile.d/mmf.sh')
+generate dot = no
diff --git a/media-config-target-u3/hal/etc/multimedia/mused.conf b/media-config-target-u3/hal/etc/multimedia/mused.conf
new file mode 100644 (file)
index 0000000..d417444
--- /dev/null
@@ -0,0 +1,62 @@
+[muse]
+; The 'hosts' parameter defines the modules,
+; which the user would like to connect to the muse.
+; If you want to add host, then write manually.
+hosts=player, camera, recorder
+logfile=/var/log/mused/muse-server
+lockfile=/tmp/.muse_core.lock
+min_timeout=5
+max_timeout=90
+;80MB=80000
+memory_threshold=80000
+enable_watch_external_storage=1
+
+; parameters for initializing gstreamer
+; DEFAULT SET (--gst-debug=*:2)
+gstparam1=--gst-debug=*:2
+gstparam2=--gst-disable-segtrap
+gstparam3=
+gstparam4=
+gstparam5=
+gstparam6=
+gstparam7=
+gstparam8=
+gstparam9=
+gstparam10=
+
+; gstparam#=--gst-plugin-load=/usr/lib/gstreamer-1.0/libgstcoreelements.so'
+; can be substituted with gstpreload=coreelements'
+gstpreload=
+
+[player]
+; The 'player' parameter represents the muse-player.
+; This module recovers the "capi-media-player".
+path=libmuse-player.so
+preloaded=no
+timeout=60
+disable_watchdog_api=-1
+;unlimited=-1
+max_instance=-1
+
+[camera]
+; The 'camera' parameter represents the muse-camera.
+; This module recovers the "capi-media-camera".
+path=libmuse-camera.so
+preloaded=no
+timeout=10
+;api 2 is camera_dispatcher_start_preview
+disable_watchdog_api=2
+;unlimited=-1
+max_instance=-1
+
+[recorder]
+; The 'recorder' parameter represents the muse-recorder.
+; This module recovers the "capi-media-recorder".
+; This one should be paired with the 'camera' module.
+path=libmuse-recorder.so
+preloaded=no
+timeout=10
+;api 5 is recorder_start
+disable_watchdog_api=5
+;unlimited=-1
+max_instance=-1
diff --git a/media-config-target-u3/hal/etc/murphy/murphy.lua b/media-config-target-u3/hal/etc/murphy/murphy.lua
new file mode 100644 (file)
index 0000000..e7d832d
--- /dev/null
@@ -0,0 +1,99 @@
+m = murphy.get()
+
+-- load the dlog plugin
+m:try_load_plugin('dlog')
+
+-- load the console plugin
+-- m:try_load_plugin('console')
+
+-- load the dbus plugin
+-- if m:plugin_exists('dbus') then
+--     m:load_plugin('dbus')
+-- end
+
+-- load the native resource plugin
+if m:plugin_exists('resource-native') then
+    m:load_plugin('resource-native')
+    m:info("native resource plugin loaded")
+else
+    m:info("No native resource plugin found...")
+end
+
+-- load the dbus resource plugin
+m:try_load_plugin('resource-dbus', {
+    dbus_bus = "system",
+    dbus_service = "org.Murphy",
+    dbus_track = true,
+    default_zone = "driver",
+    default_class = "implicit"
+})
+
+-- load the domain control plugin
+if m:plugin_exists('domain-control') then
+    m:load_plugin('domain-control')
+else
+    m:info("No domain-control plugin found...")
+end
+
+if m:plugin_exists('glib') then
+    m:load_plugin('glib')
+else
+    m:info("No glib plugin found...")
+end
+
+-- define application classes
+application_class {
+    name     = "interrupt",
+    priority = 99,
+    modal    = false,
+    share    = false,
+    order    = "fifo"
+}
+
+application_class {
+    name     = "media",
+    priority = 10,
+    modal    = false,
+    share    = false,
+    order    = "lifo"
+}
+
+-- define zone attributes
+zone.attributes {
+    type = {mdb.string, "common", "rw"},
+    location = {mdb.string, "anywhere", "rw"}
+}
+
+-- define zones
+zone {
+     name = "driver",
+     attributes = {
+         type = "common",
+         location = "front-left"
+     }
+}
+
+-- define resource classes
+resource.class {
+     name = "video_overlay",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_decoder",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "video_encoder",
+     shareable = false,
+     sync_release = true
+}
+
+resource.class {
+     name = "camera",
+     shareable = false,
+     sync_release = true
+}
diff --git a/media-config-target-u3/hal/etc/profile.d/mmf.sh b/media-config-target-u3/hal/etc/profile.d/mmf.sh
new file mode 100644 (file)
index 0000000..7dac276
--- /dev/null
@@ -0,0 +1,6 @@
+#!/bin/sh
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+export GST_DEBUG=2
+export ORC_CODE=debug
+export ORC_DEBUG=5
+export GST_PLUGIN_PATH=@HAL_LIBDIR@/gstreamer-1.0
diff --git a/media-config-target-u3/hal/etc/pulse/client.conf b/media-config-target-u3/hal/etc/pulse/client.conf
new file mode 100644 (file)
index 0000000..3637b20
--- /dev/null
@@ -0,0 +1,37 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for PulseAudio clients. See pulse-client.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+; default-sink =
+; default-source =
+default-server = /var/run/pulse/native
+; default-dbus-server =
+
+autospawn = no
+; daemon-binary = /usr/bin/pulseaudio
+; extra-arguments = --log-target=syslog
+
+; cookie-file =
+
+enable-shm = no
+shm-size-bytes = 4194304 # setting this 0 will use the system-default, usually 64 MiB
+
+; auto-connect-localhost = no
+; auto-connect-display = no
diff --git a/media-config-target-u3/hal/etc/pulse/daemon.conf b/media-config-target-u3/hal/etc/pulse/daemon.conf
new file mode 100644 (file)
index 0000000..431e66b
--- /dev/null
@@ -0,0 +1,83 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+# USA.
+
+## Configuration file for the PulseAudio daemon. See pulse-daemon.conf(5) for
+## more information. Default values are commented out.  Use either ; or # for
+## commenting.
+
+daemonize = yes
+; fail = yes
+; allow-module-loading = yes
+; allow-exit = yes
+; use-pid-file = yes
+system-instance = yes
+; local-server-type = user
+; enable-shm = yes
+; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
+; lock-memory = no
+; cpu-limit = no
+
+; high-priority = yes
+; nice-level = -11
+
+realtime-scheduling = yes
+realtime-priority = 5
+
+; exit-idle-time = 20
+; scache-idle-time = 20
+
+; dl-search-path = (depends on architecture)
+
+; load-default-script-file = yes
+; default-script-file = /etc/pulse/default.pa
+
+log-target = dlog
+log-level = info
+; log-meta = no
+; log-time = no
+; log-backtrace = 0
+
+resample-method = speex-fixed-3
+; enable-remixing = yes
+; enable-lfe-remixing = no
+
+flat-volumes = no
+
+; rlimit-fsize = -1
+; rlimit-data = -1
+; rlimit-stack = -1
+; rlimit-core = -1
+; rlimit-as = -1
+; rlimit-rss = -1
+; rlimit-nproc = -1
+; rlimit-nofile = 256
+; rlimit-memlock = -1
+; rlimit-locks = -1
+; rlimit-sigpending = -1
+; rlimit-msgqueue = -1
+; rlimit-nice = 31
+; rlimit-rtprio = 9
+; rlimit-rttime = 1000000
+
+; default-sample-format = s16le
+; default-sample-rate = 44100
+alternate-sample-rate = 44100
+; default-sample-channels = 2
+; default-channel-map = front-left,front-right
+
+; default-fragments = 4
+; default-fragment-size-msec = 25
diff --git a/media-config-target-u3/hal/etc/pulse/default.pa b/media-config-target-u3/hal/etc/pulse/default.pa
new file mode 100644 (file)
index 0000000..ef8f114
--- /dev/null
@@ -0,0 +1,149 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started per-user
+# (i.e. not in system mode)
+
+.nofail
+
+### Load something into the sample cache
+#load-sample-lazy x11-bell /usr/share/sounds/gtk-events/activate.wav
+#load-sample-lazy pulse-hotplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-coldplug /usr/share/sounds/startup3.wav
+#load-sample-lazy pulse-access /usr/share/sounds/generic.wav
+
+.fail
+
+### Automatically restore the volume of streams and devices
+load-module module-device-restore
+load-module module-stream-restore
+load-module module-card-restore
+
+### Automatically augment property information from .desktop files
+### stored in /usr/share/application
+load-module module-augment-properties
+
+### Load audio drivers statically
+### (it's probably better to not load these drivers manually, but instead
+### use module-udev-detect -- see below -- for doing this automatically)
+#load-module module-alsa-sink
+#load-module module-alsa-source device=hw:1,0
+#load-module module-null-sink
+#load-module module-pipe-sink
+
+### Automatically load driver modules depending on the hardware available
+.ifexists module-udev-detect.so
+load-module module-udev-detect
+.else
+### Use the static hardware detection module (for systems that lack udev support)
+load-module module-detect
+.endif
+
+### Automatically connect sink and source if JACK server is present
+.ifexists module-jackdbus-detect.so
+.nofail
+load-module module-jackdbus-detect channels=2
+.fail
+.endif
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Load several protocols
+.ifexists module-esound-protocol-unix.so
+load-module module-esound-protocol-unix
+.endif
+load-module module-native-protocol-unix
+
+### Network access (may be configured with paprefs, so leave this commented
+### here if you plan to use paprefs)
+#load-module module-esound-protocol-tcp
+#load-module module-native-protocol-tcp
+
+### Load the RTP receiver module (also configured via paprefs, see above)
+#load-module module-rtp-recv
+
+### Load the RTP sender module (also configured via paprefs, see above)
+#load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
+#load-module module-rtp-send source=rtp.monitor
+
+### Load additional modules from GConf settings. This can be configured with the paprefs tool.
+### Please keep in mind that the modules configured by paprefs might conflict with manually
+### loaded modules.
+.ifexists module-gconf.so
+.nofail
+load-module module-gconf
+.fail
+.endif
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Honour intended role device property
+load-module module-intended-roles
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle
+
+### If autoexit on idle is enabled we want to make sure we only quit
+### when no local session needs us anymore.
+.ifexists module-console-kit.so
+load-module module-console-kit
+.endif
+.ifexists module-systemd-login.so
+load-module module-systemd-login
+.endif
+
+### Enable positioned event sounds
+load-module module-position-event-sounds
+
+### Cork music/video streams when a phone stream is active
+load-module module-role-cork
+
+### Modules to allow autoloading of filters (such as echo cancellation)
+### on demand. module-filter-heuristics tries to determine what filters
+### make sense, and module-filter-apply does the heavy-lifting of
+### loading modules and rerouting streams.
+load-module module-filter-heuristics
+load-module module-filter-apply
+
+### Load DBus protocol
+.ifexists module-dbus-protocol.so
+load-module module-dbus-protocol
+.endif
+
+
+load-module module-switch-on-port-available
+
+### Make some devices default
+#set-default-sink output
+#set-default-source input
diff --git a/media-config-target-u3/hal/etc/pulse/device-map.json b/media-config-target-u3/hal/etc/pulse/device-map.json
new file mode 100644 (file)
index 0000000..d35583e
--- /dev/null
@@ -0,0 +1,26 @@
+{
+       "device-types":[
+               {
+                       "device-type":"builtin-speaker",
+                       "playback-devices":{"normal":"alsa:0,0"}
+               },
+               {
+                       "device-type":"builtin-mic",
+                       "capture-devices":{"normal":"alsa:0,0"}
+               }
+       ],
+       "device-files":{
+               "playback-devices":[
+                       {
+                               "device-string":"alsa:0,0",
+                               "role":{"normal":"rate=44100"}
+                       }
+               ],
+               "capture-devices":[
+                       {
+                               "device-string":"alsa:0,0",
+                               "role":{"normal":"rate=44100"}
+                       }
+               ]
+       }
+}
diff --git a/media-config-target-u3/hal/etc/pulse/stream-map.json b/media-config-target-u3/hal/etc/pulse/stream-map.json
new file mode 100644 (file)
index 0000000..245d950
--- /dev/null
@@ -0,0 +1,209 @@
+{
+       "latencies":[
+               {
+                       "type":"low",
+                       "fragsize-ms":25,
+                       "minreq-ms":-1,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"mid",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"high",
+                       "fragsize-ms":75,
+                       "minreq-ms":-1,
+                       "tlength-ms":400,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"voip",
+                       "fragsize-ms":20,
+                       "minreq-ms":20,
+                       "tlength-ms":100,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default",
+                       "fragsize-ms":50,
+                       "minreq-ms":-1,
+                       "tlength-ms":200,
+                       "prebuf-ms":-1,
+                       "maxlength":-1
+               },
+               {
+                       "type":"default-async",
+                       "fragsize-ms":50,
+                       "minreq-ms":20,
+                       "tlength-ms":200,
+                       "prebuf-ms":0,
+                       "maxlength":-1
+               },
+       ],
+       "volumes":[
+               {
+                       "type":"master",
+                       "is-hal-volume":1
+               },
+               {
+                       "type":"media",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"system",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"alarm",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"notification",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voice",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"ringtone",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"voip",
+                       "is-hal-volume":0
+               },
+               {
+                       "type":"call",
+                       "is-hal-volume":1
+               }
+       ],
+       "streams":[
+               {
+                       "role":"media",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["builtin-mic"],
+                       "avail-out-devices":["bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"system",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"system"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"alarm",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"alarm"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"notification",
+                       "priority" : 4,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"notification"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"emergency",
+                       "priority" : 4,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-information",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"voice"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io"]
+               },
+               {
+                       "role":"voice-recognition",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["usb-audio","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"voice-recognition-service",
+                       "priority" : 3,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["usb-audio","builtin-mic"],
+                       "avail-out-devices":["none"],
+                       "avail-frameworks":["audio-io"]
+               },
+               {
+                       "role":"ringtone-voip",
+                       "priority" : 5,
+                       "route-type" : "auto-all",
+                       "volume-types":{"in":"none","out":"ringtone"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","builtin-speaker","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","sound-manager"]
+               },
+               {
+                       "role":"voip",
+                       "priority" : 5,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"voip"},
+                       "avail-in-devices":["builtin-mic"],
+                       "avail-out-devices":["builtin-speaker"],
+                       "avail-frameworks":["audio-io","tone-player","sound-manager"]
+               },
+               {
+                       "role":"loopback",
+                       "priority" : 2,
+                       "route-type" : "manual",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["usb-audio"],
+                       "avail-out-devices":["usb-audio"],
+                       "avail-frameworks":["sound-manager"]
+               },
+               {
+                       "role":"ext-media",
+                       "priority" : 3,
+                       "route-type" : "manual-ext",
+                       "volume-types":{"in":"none","out":"media"},
+                       "avail-in-devices":["usb-audio"],
+                       "avail-out-devices":["bt-a2dp","usb-audio"],
+                       "avail-frameworks":["player","wav-player","tone-player","audio-io","recorder"]
+               },
+               {
+                       "role":"solo",
+                       "priority" : 2,
+                       "route-type" : "auto",
+                       "volume-types":{"in":"none","out":"none"},
+                       "avail-in-devices":["none"],
+                       "avail-out-devices":["bt-a2dp","usb-audio","builtin-speaker"],
+                       "avail-frameworks":["wav-player","tone-player"]
+               }
+       ]
+}
diff --git a/media-config-target-u3/hal/etc/pulse/system.pa b/media-config-target-u3/hal/etc/pulse/system.pa
new file mode 100644 (file)
index 0000000..409cdb3
--- /dev/null
@@ -0,0 +1,73 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+# This startup script is used only if PulseAudio is started in system
+# mode.
+
+### Automatically load driver modules depending on the hardware available
+### Load several protocols
+load-module module-native-protocol-unix auth-anonymous=1
+
+### Load module-tizenaudio-policy
+load-module module-tizenaudio-policy
+
+#.ifexists module-udev-detect.so
+load-module module-udev-detect
+#.endif
+
+### Sound Player module
+load-module module-sound-player
+load-module module-tone-player
+load-module module-role-ducking global=1 trigger_roles=solo/notification,voice-information ducking_roles=media,system,alarm,notification,voice-information,ext-media/media,ext-media volume=0%/25% fade_in=0/1000 fade_out=0/1000
+
+### Automatically load driver modules for Bluetooth hardware
+.ifexists module-bluetooth-policy.so
+load-module module-bluetooth-policy
+.endif
+
+.ifexists module-bluetooth-discover.so
+load-module module-bluetooth-discover
+.endif
+
+### Automatically restore the volume of streams and devices
+#load-module module-stream-restore
+#load-module module-device-restore
+
+### Automatically restore the default sink/source when changed by the user
+### during runtime
+### NOTE: This should be loaded as early as possible so that subsequent modules
+### that look up the default sink/source get the right value
+load-module module-default-device-restore
+
+.ifexists module-dbus-protocol.so
+### If you want to allow TCP connections, set access to "remote" or "local,remote".
+load-module module-dbus-protocol access=local
+.endif
+
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+#load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle timeout=1
+
+load-sample camera-shutter-01 /usr/share/sounds/mm-camcorder/capture_shutter_01.ogg
+load-sample camera-shutter-02 /usr/share/sounds/mm-camcorder/capture_shutter_02.ogg
+load-sample recording-start /usr/share/sounds/mm-camcorder/recording_start_01.ogg
+load-sample recording-stop /usr/share/sounds/mm-camcorder/recording_stop_01.ogg
diff --git a/media-config-target-u3/hal/etc/xdg/gstomx.conf b/media-config-target-u3/hal/etc/xdg/gstomx.conf
new file mode 100644 (file)
index 0000000..4533527
--- /dev/null
@@ -0,0 +1,78 @@
+[omxdec_mpeg2]
+type-name=GstOMXMPEG2VideoDec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.MPEG2.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxdec_mpeg4]
+type-name=GstOMXMPEG4VideoDec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.MPEG4.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxdec_h263]
+type-name=GstOMXH263Dec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.H263.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxdec_h264]
+type-name=GstOMXH264Dec
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.AVC.Decoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport;no-component-reconfigure
+
+[omxenc_h264]
+type-name=GstOMXH264Enc
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.AVC.Encoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-disable-outport;no-component-role
+sink-template-caps=video/x-raw, format=(string)SN12, width=(int) [1,1920], height=(int) [1,1080], framerate=(fraction)[0/1, MAX]
+src-template-caps=video/x-h264, width=(int) [1,1920], height=(int) [1,1080], framerate=(fraction) [0/1, MAX], alignment=(string) au, stream-format = (string){ avc, byte-stream }
+
+[omxenc_mpeg4]
+type-name=GstOMXMPEG4VideoEnc
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.MPEG4.Encoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport
+
+[omxenc_h263]
+type-name=GstOMXH263Enc
+core-name=@HAL_LIBDIR@/libExynosOMX_Core.so
+component-name=OMX.Exynos.H263.Encoder
+rank=258
+in-port-index=0
+out-port-index=1
+in-port-usebuffer=1
+out-port-usebuffer=1
+hacks=no-component-role;no-disable-outport
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-aux.conf
new file mode 100644 (file)
index 0000000..db78eb4
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'Aux' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-fm.conf
new file mode 100644 (file)
index 0000000..baf674a
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where an 'FM' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-radio
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+.include analog-input.conf.common
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-linein.conf
new file mode 100644 (file)
index 0000000..4be5722
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic-line.conf
new file mode 100644 (file)
index 0000000..f7f3085
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic/Line' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+name = analog-input
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf
new file mode 100644 (file)
index 0000000..2a36f2f
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Mic' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+name = analog-input-microphone
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-mic.conf.common
new file mode 100644 (file)
index 0000000..b35e7af
--- /dev/null
@@ -0,0 +1,63 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common element for all microphone inputs
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Mic Select'
+
+[Element Mic Select]
+enumeration = select
+
+[Option Mic Select:Mic1]
+name = input-microphone
+priority = 20
+
+[Option Mic Select:Mic2]
+name = input-microphone
+priority = 19
+
+;;; Various Boosts
+
+[Element Mic Boost (+20dB)]
+switch = select
+volume = merge
+
+[Option Mic Boost (+20dB):on]
+name = input-boost-on
+
+[Option Mic Boost (+20dB):off]
+name = input-boost-off
+
+[Element Mic Boost]
+switch = select
+volume = merge
+
+[Option Mic Boost:on]
+name = input-boost-on
+
+[Option Mic Boost:off]
+name = input-boost-off
+
+[Element Front Mic Boost]
+switch = select
+
+[Option Front Mic Boost:on]
+name = input-boost-on
+
+[Option Front Mic Boost:off]
+name = input-boost-off
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-tvtuner.conf
new file mode 100644 (file)
index 0000000..8531ec7
--- /dev/null
@@ -0,0 +1,62 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'TV Tuner' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+name = analog-input-video
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+switch = off
+volume = off
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input-video.conf
new file mode 100644 (file)
index 0000000..74c76f0
--- /dev/null
@@ -0,0 +1,61 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; For devices where a 'Video' element exists
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 70
+
+[Element Capture]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+switch = off
+volume = off
+
+[Element Line]
+switch = off
+volume = off
+
+[Element Aux]
+switch = off
+volume = off
+
+[Element Video]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic/Line]
+switch = off
+volume = off
+
+[Element TV Tuner]
+switch = off
+volume = off
+
+[Element FM]
+switch = off
+volume = off
+
+.include analog-input.conf.common
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf
new file mode 100644 (file)
index 0000000..5055f90
--- /dev/null
@@ -0,0 +1,54 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; A fallback for devices that lack seperate Mic/Line/Aux/Video/TV
+; Tuner/FM elements
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Capture]
+required = volume
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Mic]
+required-absent = any
+
+[Element Line]
+required-absent = any
+
+[Element Aux]
+required-absent = any
+
+[Element Video]
+required-absent = any
+
+[Element Mic/Line]
+required-absent = any
+
+[Element TV Tuner]
+required-absent = any
+
+[Element FM]
+required-absent = any
+
+.include analog-input.conf.common
+.include analog-input-mic.conf.common
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-input.conf.common
new file mode 100644 (file)
index 0000000..951e11f
--- /dev/null
@@ -0,0 +1,294 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Mixer path for PulseAudio's ALSA backend, common elements for all
+; input paths. If multiple options by the same id are discovered they
+; will be suffixed with a number to distuingish them, in the same
+; order they appear here.
+;
+; Source selection should use the following names:
+;
+;       input                       -- If we don't know the exact kind of input
+;       input-microphone
+;       input-microphone-internal
+;       input-microphone-external
+;       input-linein
+;       input-video
+;       input-radio
+;       input-docking-microphone
+;       input-docking-linein
+;       input-docking
+;
+;  We explicitly don't want to wrap the following sources:
+;
+;       CD
+;       Synth/MIDI
+;       Phone
+;       Mix
+;       Digital/SPDIF
+;       Master
+;       PC Speaker
+;
+; See analog-output.conf.common for an explanation on the directives
+
+;;; 'Input Source Select'
+
+[Element Input Source Select]
+enumeration = select
+
+[Option Input Source Select:Input1]
+name = input
+priority = 10
+
+[Option Input Source Select:Input2]
+name = input
+priority = 5
+
+;;; 'Input Source'
+
+[Element Input Source]
+enumeration = select
+
+[Option Input Source:Mic]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Microphone]
+name = input-microphone
+priority = 20
+
+[Option Input Source:Front Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Front Microphone]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Internal Mic]
+name = input-microphone
+priority = 19
+
+[Option Input Source:Line]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line-In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Line In]
+name = input-linein
+priority = 18
+
+[Option Input Source:Docking-Station]
+name = input-docking
+priority = 17
+
+[Option Input Source:AUX IN]
+name = input
+priority = 10
+
+;;; 'Capture Source'
+
+[Element Capture Source]
+enumeration = select
+
+[Option Capture Source:TV Tuner]
+name = input-video
+
+[Option Capture Source:FM]
+name = input-radio
+
+[Option Capture Source:Mic/Line]
+name = input
+
+[Option Capture Source:Line/Mic]
+name = input
+
+[Option Capture Source:Mic]
+name = input-microphone
+
+[Option Capture Source:Microphone]
+name = input-microphone
+
+[Option Capture Source:Int Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Int DMic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Mic]
+name = input-microphone-internal
+
+[Option Capture Source:iMic]
+name = input-microphone-internal
+
+[Option Capture Source:i-Mic]
+name = input-microphone-internal
+
+[Option Capture Source:Internal Microphone]
+name = input-microphone-internal
+
+[Option Capture Source:Front Mic]
+name = input-microphone
+
+[Option Capture Source:Front Microphone]
+name = input-microphone
+
+[Option Capture Source:Rear Mic]
+name = input-microphone
+
+[Option Capture Source:Mic1]
+name = input-microphone
+
+[Option Capture Source:Mic2]
+name = input-microphone
+
+[Option Capture Source:D-Mic]
+name = input-microphone
+
+[Option Capture Source:IntMic]
+name = input-microphone-internal
+
+[Option Capture Source:ExtMic]
+name = input-microphone-external
+
+[Option Capture Source:Ext Mic]
+name = input-microphone-external
+
+[Option Capture Source:E-Mic]
+name = input-microphone-external
+
+[Option Capture Source:e-Mic]
+name = input-microphone-external
+
+[Option Capture Source:LineIn]
+name = input-linein
+
+[Option Capture Source:Analog]
+name = input
+
+[Option Capture Source:Line]
+name = input-linein
+
+[Option Capture Source:Line-In]
+name = input-linein
+
+[Option Capture Source:Line In]
+name = input-linein
+
+[Option Capture Source:Video]
+name = input-video
+
+[Option Capture Source:Aux]
+name = input
+
+[Option Capture Source:Aux0]
+name = input
+
+[Option Capture Source:Aux1]
+name = input
+
+[Option Capture Source:Aux2]
+name = input
+
+[Option Capture Source:Aux3]
+name = input
+
+[Option Capture Source:AUX IN]
+name = input
+
+[Option Capture Source:Aux In]
+name = input
+
+[Option Capture Source:AOUT]
+name = input
+
+[Option Capture Source:AUX]
+name = input
+
+[Option Capture Source:Cam Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 1]
+name = input-microphone
+
+[Option Capture Source:Digital Mic 2]
+name = input-microphone
+
+[Option Capture Source:Analog Inputs]
+name = input
+
+[Option Capture Source:Unknown1]
+name = input
+
+[Option Capture Source:Unknown2]
+name = input
+
+[Option Capture Source:Docking-Station]
+name = input-docking
+
+[Option Capture Source:Dock Mic]
+name = input-docking-microphone
+
+;;; 'Mic Jack Mode'
+
+[Element Mic Jack Mode]
+enumeration = select
+
+[Option Mic Jack Mode:Mic In]
+name = input-microphone
+
+[Option Mic Jack Mode:Line In]
+name = input-linein
+
+;;; 'Digital Input Source'
+
+[Element Digital Input Source]
+enumeration = select
+
+[Option Digital Input Source:Analog Inputs]
+name = input
+
+[Option Digital Input Source:Digital Mic 1]
+name = input-microphone
+
+[Option Digital Input Source:Digital Mic 2]
+name = input-microphone
+
+;;; Various Boosts
+
+[Element Capture Boost]
+switch = select
+
+[Option Capture Boost:on]
+name = input-boost-on
+
+[Option Capture Boost:off]
+name = input-boost-off
+
+[Element Auto Gain Control]
+switch = select
+
+[Option Auto Gain Control:on]
+name = input-agc-on
+
+[Option Auto Gain Control:off]
+name = input-agc-off
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones-2.conf
new file mode 100644 (file)
index 0000000..f2fd31c
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone2' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 89
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the second headphones, not
+; the first headphones. But it should not hurt if we leave the
+; headphone jack enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf
new file mode 100644 (file)
index 0000000..2131cfe
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Headphone' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 90
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+[Element Headphone]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the first headphones, not
+; the second headphones. But it should not hurt if we leave the second
+; headphone jack enabled nonetheless.
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = off
+volume = off
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-lfe-on-mono.conf
new file mode 100644 (file)
index 0000000..0a43e27
--- /dev/null
@@ -0,0 +1,85 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage in laptops that have a seperate LFE speaker
+; connected to the Master mono connector
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 40
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all-no-lfe
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-mono.conf
new file mode 100644 (file)
index 0000000..542edc4
--- /dev/null
@@ -0,0 +1,82 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for usage on boards that have a seperate Mono output plug.
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 50
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = off
+volume = off
+
+[Element Master Mono]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = off
+volume = off
+
+[Element Rear]
+switch = off
+volume = off
+
+[Element Surround]
+switch = off
+volume = off
+
+[Element Side]
+switch = off
+volume = off
+
+[Element Center]
+switch = off
+volume = off
+
+[Element LFE]
+switch = off
+volume = off
+
+.include analog-output.conf.common
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output-speaker.conf
new file mode 100644 (file)
index 0000000..aea7853
--- /dev/null
@@ -0,0 +1,94 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Path for mixers that have a 'Speaker' control
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 100
+
+[Element Hardware Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the speaker, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = mute
+volume = zero
+
+[Element Headphone2]
+switch = mute
+volume = zero
+
+[Element Speaker]
+required = any
+switch = mute
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Front]
+switch = mute
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = mute
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = mute
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = mute
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = mute
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf
new file mode 100644 (file)
index 0000000..fc30800
--- /dev/null
@@ -0,0 +1,92 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Intended for the 'default' output. Note that a-o-speaker.conf has a
+; higher priority than this
+;
+; See analog-output.conf.common for an explanation on the directives
+
+[General]
+priority = 99
+
+[Element Hardware Master]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master]
+switch = ignore
+volume = ignore
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element Master Mono]
+switch = off
+volume = off
+
+; This profile path is intended to control the default output, not the
+; headphones. But it should not hurt if we leave the headphone jack
+; enabled nonetheless.
+[Element Headphone]
+switch = ignore
+volume = zero
+
+[Element Headphone2]
+switch = ignore
+volume = zero
+
+[Element Speaker]
+switch = ignore
+volume = off
+
+[Element Front]
+switch = ignore
+volume = merge
+override-map.1 = all-front
+override-map.2 = front-left,front-right
+
+[Element Rear]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Surround]
+switch = ignore
+volume = merge
+override-map.1 = all-rear
+override-map.2 = rear-left,rear-right
+
+[Element Side]
+switch = ignore
+volume = merge
+override-map.1 = all-side
+override-map.2 = side-left,side-right
+
+[Element Center]
+switch = ignore
+volume = merge
+override-map.1 = all-center
+override-map.2 = all-center,all-center
+
+[Element LFE]
+switch = ignore
+volume = merge
+override-map.1 = lfe
+override-map.2 = lfe,lfe
+
+.include analog-output.conf.common
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common
new file mode 100644 (file)
index 0000000..3204846
--- /dev/null
@@ -0,0 +1,128 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Common part of all paths
+
+; So here's generally how mixer paths are used by PA: PA goes through
+; a mixer path file from top to bottom and checks if a mixer element
+; described therein exists. If so it is added to the list of mixer
+; elements PA will control, keeping the order it read them in. If a
+; mixer element described here has set the required= or
+; required-absent= directives a path might not be accepted as valid
+; and is ignored in its entirety (see below). However usually if a
+; element listed here is missing this one element is ignored but not
+; the entire path.
+;
+; When a device shall be muted/unmuted *all* elements listed in a path
+; file with "switch = mute" will be toggled.
+;
+; When a device shall change its volume, PA will got through the list
+; of all elements with "volume = merge" and set the volume on the
+; first element. If that element does not support dB volumes, this is
+; where the story ends. If it does support dB volumes, PA divides the
+; requested volume by the volume that was set on this element, and
+; then go on to the next element with "volume = merge" and then set
+; that there, and so on.  That way the first volume element in the
+; path will be the one that does the 'biggest' part of the overall
+; volume adjustment, with the remaining elements usually being set to
+; some value next to 0dB. This logic makes sure we get the full range
+; over all volume sliders and a very high granularity of volumes
+; already in hardware.
+;
+; All switches and enumerations set to "select" are exposed via the
+; "port" functionality of sinks/sources. Basically every possible
+; switch setting and every possible enumeration setting will be
+; combined and made into a "port". So make sure you don't list too
+; many switches/enums for exposing, because the number of ports might
+; rise exponentially.
+;
+; Only one path can be selected at a time. All paths that are valid
+; for an audio device will be exposed as "port" for the sink/source.
+
+
+; [General]
+; priority = ...                         # Priority for this path
+; description = ...
+;
+; [Option ...:...]                       # For each option of an enumeration or switch element
+;                                        # that shall be exposed as a sink/source port. Needs to
+;                                        # be named after the Element, followed by a colon, followed
+;                                        # by the option name, resp. on/off if the element is a switch.
+; name = ...                             # Logical name to use in the path identifier
+; priority = ...                         # Priority if this is made into a device port
+;
+; [Element ...]                          # For each element that we shall control
+; required = ignore | switch | volume | enumeration | any     # If set, require this element to be of this kind and available,
+;                                                             # otherwise don't consider this path valid for the card
+; required-absent = ignore | switch | volume                  # If set, require this element to not be of this kind and not
+;                                                             # available, otherwise don't consider this path valid for the card
+;
+; switch = ignore | mute | off | on | select                  # What to do with this switch: ignore it, make it follow mute status,
+;                                                             # always set it to off, always to on, or make it selectable as port.
+;                                                             # If set to 'select' you need to define an Option section for on
+;                                                             # and off
+; volume = ignore | merge | off | zero   # What to do with this volume: ignore it, merge it into the device
+;                                        # volume slider, always set it to the lowest value possible, or always
+;                                        # set it to 0 dB (for whatever that means)
+; enumeration = ignore | select          # What to do with this enumeration, ignore it or make it selectable
+;                                        # via device ports. If set to 'select' you need to define an Option section
+;                                        # for each of the items you want to expose
+; direction = playback | capture         # Is this relevant only for playback or capture? If not set this will implicitly be
+;                                        # set the direction of the PCM device is opened as. Generally this doesn't need to be set
+;                                        # unless you have a broken driver that has playback controls marked for capture or vice
+;                                        # versa
+; direction-try-other = no | yes         # If the element does not supported what is requested, try the other direction, too?
+;
+; override-map.1 = ...                   # Override the channel mask of the mixer control if the control only exposes a single channel
+; override-map.2 = ...                   # Override the channel masks of the mixer control if the control only exposes two channels
+;                                        # Override maps should list for each element channel which high-level channels it controls via a
+;                                        # channel mask. A channel mask may either be the name of a single channel, or the words "all-left",
+;                                        # "all-right", "all-center", "all-front", "all-rear", and "all" to encode a specific subset of
+;                                        # channels in a mask
+
+[Element PCM]
+switch = ignore
+volume = merge
+override-map.1 = all
+override-map.2 = all-left,all-right
+
+[Element External Amplifier]
+switch = select
+
+[Option External Amplifier:on]
+name = output-amplifier-on
+priority = 10
+
+[Option External Amplifier:off]
+name = output-amplifier-off
+priority = 0
+
+;;; 'Analog Output'
+
+[Element Analog Output]
+enumeration = select
+
+[Option Analog Output:Speakers]
+name = output-speaker
+priority = 10
+
+[Option Analog Output:Headphones]
+name = output-headphones
+priority = 9
+
+[Option Analog Output:FP Headphones]
+name = output-headphones
+priority = 8
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/profile-sets/default.conf
new file mode 100644 (file)
index 0000000..9838138
--- /dev/null
@@ -0,0 +1,144 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned. (and should be good enough for the vast majority of
+; cards).  Use the udev property PULSE_PROFILE_SET to assign a
+; different profile set than this one to a device.  So what is this
+; about? Simply, what we do here is map ALSA devices to how they are
+; exposed in PA. We say which ALSA device string to use to open a
+; device, which channel mapping to use then, and which mixer path to
+; use. This is encoded in a 'mapping'. Multiple of these mappings can
+; be bound together in a 'profile' which is then directly exposed in
+; the UI as a card profile. Each mapping assigned to a profile will
+; result in one sink/source to be created if the profile is selected
+; for the card.
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+
+[General]
+auto-profiles = yes
+
+[Mapping analog-mono]
+device-strings = hw:0
+channel-map = mono
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 1
+
+[Mapping analog-stereo]
+device-strings = front:%f hw:0
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 10
+
+[Mapping analog-surround-40]
+device-strings = surround40:%f
+channel-map = front-left,front-right,rear-left,rear-right
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-41]
+device-strings = surround41:%f
+channel-map = front-left,front-right,rear-left,rear-right,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-50]
+device-strings = surround50:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping analog-surround-51]
+device-strings = surround51:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 8
+direction = output
+
+[Mapping analog-surround-71]
+device-strings = surround71:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
+description = Analog Surround 7.1
+paths-output = analog-output analog-output-speaker analog-output-lfe-on-mono
+priority = 7
+direction = output
+
+[Mapping iec958-stereo]
+device-strings = iec958:%f
+channel-map = left,right
+priority = 5
+
+[Mapping iec958-surround-40]
+device-strings = iec958:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 1
+
+[Mapping iec958-ac3-surround-40]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right
+priority = 2
+direction = output
+
+[Mapping iec958-ac3-surround-51]
+device-strings = a52:%f
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+priority = 3
+direction = output
+
+[Mapping hdmi-stereo]
+device-strings = hdmi:%f
+channel-map = left,right
+priority = 4
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio4dj.conf
new file mode 100644 (file)
index 0000000..2b83530
--- /dev/null
@@ -0,0 +1,91 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 4 DJ
+;
+; This card has two stereo pairs of input and two stereo pairs of
+; output, named channels A and B. Channel B has an additional
+; Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b-output]
+description = Analog Stereo Channel B (Headphones)
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-b-input]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b-output
+input-mappings = analog-stereo-a analog-stereo-b-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+input-mappings = analog-stereo-b-input
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B (Headphones)
+output-mappings = analog-stereo-b-output
+priority = 6
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b-input
+priority = 1
+skip-probe = yes
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/profile-sets/native-instruments-audio8dj.conf
new file mode 100644 (file)
index 0000000..3fe3cc5
--- /dev/null
@@ -0,0 +1,162 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Native Instruments Audio 8 DJ
+;
+; This card has four stereo pairs of input and four stereo pairs of
+; output, named channels A to D. Channel C has an additional Mic/Line
+; connector, channel D an additional Headphone connector.
+;
+; We knowingly only define a subset of the theoretically possible
+; mapping combinations as profiles here.
+;
+; See default.conf for an explanation on the directives used here.
+
+[General]
+auto-profiles = no
+
+[Mapping analog-stereo-a]
+description = Analog Stereo Channel A
+device-strings = hw:%f,0,0
+channel-map = left,right
+
+[Mapping analog-stereo-b]
+description = Analog Stereo Channel B
+device-strings = hw:%f,0,1
+channel-map = left,right
+
+# Since we want to set a different description for channel C's/D's input
+# and output we define two seperate mappings for them
+[Mapping analog-stereo-c-output]
+description = Analog Stereo Channel C
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-c-input]
+description = Analog Stereo Channel C (Line/Mic)
+device-strings = hw:%f,0,2
+channel-map = left,right
+direction = input
+
+[Mapping analog-stereo-d-output]
+description = Analog Stereo Channel D (Headphones)
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = output
+
+[Mapping analog-stereo-d-input]
+description = Analog Stereo Channel D
+device-strings = hw:%f,0,3
+channel-map = left,right
+direction = input
+
+[Profile output:analog-stereo-all+input:analog-stereo-all]
+description = Analog Stereo Duplex Channels A, B, C (Line/Mic), D (Headphones)
+output-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-a analog-stereo-b analog-stereo-c-input analog-stereo-d-input
+priority = 100
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-c]
+description = Analog Stereo Channel D (Headphones) Output, Channel C (Line/Mic) Input
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-c-input
+priority = 90
+skip-probe = yes
+
+[Profile output:analog-stereo-c-d+input:analog-stereo-c-d]
+description = Analog Stereo Duplex Channels C (Line/Mic), D (Line/Mic)
+output-mappings = analog-stereo-c-output analog-stereo-d-output
+input-mappings = analog-stereo-c-input analog-stereo-d-input
+priority = 80
+skip-probe = yes
+
+[Profile output:analog-stereo-a+input:analog-stereo-a]
+description = Analog Stereo Duplex Channel A
+output-mappings = analog-stereo-a
+input-mappings = analog-stereo-a
+priority = 50
+skip-probe = yes
+
+[Profile output:analog-stereo-b+input:analog-stereo-b]
+description = Analog Stereo Duplex Channel B
+output-mappings = analog-stereo-b
+input-mappings = analog-stereo-b
+priority = 40
+skip-probe = yes
+
+[Profile output:analog-stereo-c+input:analog-stereo-c]
+description = Analog Stereo Duplex Channel C (Line/Mic)
+output-mappings = analog-stereo-c-output
+input-mappings = analog-stereo-c-input
+priority = 60
+skip-probe = yes
+
+[Profile output:analog-stereo-d+input:analog-stereo-d]
+description = Analog Stereo Duplex Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+input-mappings = analog-stereo-d-input
+priority = 70
+skip-probe = yes
+
+[Profile output:analog-stereo-a]
+description = Analog Stereo Output Channel A
+output-mappings = analog-stereo-a
+priority = 6
+skip-probe = yes
+
+[Profile output:analog-stereo-b]
+description = Analog Stereo Output Channel B
+output-mappings = analog-stereo-b
+priority = 5
+skip-probe = yes
+
+[Profile output:analog-stereo-c]
+description = Analog Stereo Output Channel C
+output-mappings = analog-stereo-c-output
+priority = 7
+skip-probe = yes
+
+[Profile output:analog-stereo-d]
+description = Analog Stereo Output Channel D (Headphones)
+output-mappings = analog-stereo-d-output
+priority = 8
+skip-probe = yes
+
+[Profile input:analog-stereo-a]
+description = Analog Stereo Input Channel A
+input-mappings = analog-stereo-a
+priority = 2
+skip-probe = yes
+
+[Profile input:analog-stereo-b]
+description = Analog Stereo Input Channel B
+input-mappings = analog-stereo-b
+priority = 1
+skip-probe = yes
+
+[Profile input:analog-stereo-c]
+description = Analog Stereo Input Channel C (Line/Mic)
+input-mappings = analog-stereo-c-input
+priority = 4
+skip-probe = yes
+
+[Profile input:analog-stereo-d]
+description = Analog Stereo Input Channel D
+input-mappings = analog-stereo-d-input
+priority = 3
+skip-probe = yes
diff --git a/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf b/media-config-target-u3/hal/share/pulseaudio/alsa-mixer/profile-sets/tizen_usb.conf
new file mode 100644 (file)
index 0000000..6a8d08b
--- /dev/null
@@ -0,0 +1,127 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as
+# published by the Free Software Foundation; either version 2.1 of the
+# License, or (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, write to the Free Software Foundation,
+# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+
+; Default profile definitions for the ALSA backend of PulseAudio. This
+; is used as fallback for all cards that have no special mapping
+; assigned (and should be good enough for the vast majority of
+; cards). If you want to assign a different profile set than this one
+; to a device, either set the udev property PULSE_PROFILE_SET for the
+; card, or use the "profile_set" module argument when loading
+; module-alsa-card.
+;
+; So what is this about? Simply, what we do here is map ALSA devices
+; to how they are exposed in PA. We say which ALSA device string to
+; use to open a device, which channel mapping to use then, and which
+; mixer path to use. This is encoded in a 'mapping'. Multiple of these
+; mappings can be bound together in a 'profile' which is then directly
+; exposed in the UI as a card profile. Each mapping assigned to a
+; profile will result in one sink/source to be created if the profile
+; is selected for the card.
+;
+; Additionally, the path set configuration files can describe the
+; decibel values assigned to the steps of the volume elements. This
+; can be used to work around situations when the alsa driver doesn't
+; provide any decibel information, or when the information is
+; incorrect.
+
+
+; [General]
+; auto-profiles = no | yes                  # Instead of defining all profiles manually, autogenerate
+;                                           # them by combining every input mapping with every output mapping.
+;
+; [Mapping id]
+; device-strings = ...                      # ALSA device string. %f will be replaced by the card identifier.
+; channel-map = ...                         # Channel mapping to use for this device
+; description = ...
+; paths-input = ...                         # A list of mixer paths to use. Every path in this list will be probed.
+;                                           # If multiple are found to be working they will be available as device ports
+; paths-output = ...
+; element-input = ...                       # Instead of configuring a full mixer path simply configure a single
+;                                           # mixer element for volume/mute handling
+; element-output = ...
+; priority = ...
+; direction = any | input | output          # Only useful for?
+;
+; [Profile id]
+; input-mappings = ...                      # Lists mappings for sources on this profile, those mapping must be
+;                                           # defined in this file too
+; output-mappings = ...                     # Lists mappings for sinks on this profile, those mappings must be
+;                                           # defined in this file too
+; description = ...
+; priority = ...                            # Numeric value to deduce priority for this profile
+; skip-probe = no | yes                     # Skip probing for availability? If this is yes then this profile
+;                                           # will be assumed as working without probing. Makes initialization
+;                                           # a bit faster but only works if the card is really known well.
+;
+; [DecibelFix element]                      # Decibel fixes can be used to work around missing or incorrect dB
+;                                           # information from alsa. A decibel fix is a table that maps volume steps
+;                                           # to decibel values for one volume element. The "element" part in the
+;                                           # section title is the name of the volume element.
+;                                           #
+;                                           # NOTE: This feature is meant just as a help for figuring out the correct
+;                                           # decibel values. PulseAudio is not the correct place to maintain the
+;                                           # decibel mappings!
+;                                           #
+;                                           # If you need this feature, then you should make sure that when you have
+;                                           # the correct values figured out, the alsa driver developers get informed
+;                                           # too, so that they can fix the driver.
+;
+; db-values = ...                           # The option value consists of pairs of step numbers and decibel values.
+;                                           # The pairs are separated with whitespace, and steps are separated from
+;                                           # the corresponding decibel values with a colon. The values must be in an
+;                                           # increasing order. Here's an example of a valid string:
+;                                           #
+;                                           #     "0:-40.50  1:-38.70  3:-33.00  11:0"
+;                                           #
+;                                           # The lowest step imposes a lower limit for hardware volume and the
+;                                           # highest step correspondingly imposes a higher limit. That means that
+;                                           # that the mixer will never be set outside those values - the rest of the
+;                                           # volume scale is done using software volume.
+;                                           #
+;                                           # As can be seen in the example, you don't need to specify a dB value for
+;                                           # each step. The dB values for skipped steps will be linearly interpolated
+;                                           # using the nearest steps that are given.
+
+[General]
+auto-profiles = yes
+
+[Mapping analog-mono]
+device-strings = hw:%f
+channel-map = mono
+paths-output = analog-output analog-output-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 1
+
+[Mapping usb-analog-stereo]
+device-strings = hw:%f
+channel-map = left,right
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-headphones analog-output-headphones-2 analog-output-mono analog-output-lfe-on-mono
+paths-input = analog-input analog-input-mic analog-input-linein analog-input-aux analog-input-video analog-input-tvtuner analog-input-fm analog-input-mic-line
+priority = 10
+
+[Mapping usb-analog-surround-51]
+device-strings = hw:%f
+;channel-map = front-left,front-right,front-center,lfe,rear-left,rear-right
+channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
+paths-output = analog-output analog-output-speaker analog-output-desktop-speaker analog-output-lfe-on-mono
+priority = 180
+direction = output
+
+; An example for defining multiple-sink profiles
+#[Profile output:analog-stereo+output:iec958-stereo+input:analog-stereo]
+#description = Foobar
+#output-mappings = analog-stereo iec958-stereo
+#input-mappings = analog-stereo
diff --git a/packaging/media-config.spec b/packaging/media-config.spec
new file mode 100644 (file)
index 0000000..0393be1
--- /dev/null
@@ -0,0 +1,437 @@
+Name:       media-config
+Summary:    Multimedia Framework system configuration package
+Version:    0.3.0
+Release:    0
+Group:      Multimedia/Configuration
+License:    LGPL-2.1 and Apache-2.0
+Source0:    %{name}-%{version}.tar.gz
+Requires: sed
+
+%description
+Multimedia Framework system configuration package including ini, conf and etc files.
+
+
+%ifarch %arm aarch64
+
+%package target-u3
+Summary: Multimedia Framework system configuration package for u3
+Group: Multimedia/Configuration
+License: LGPL-2.1 and Apache-2.0
+
+%description target-u3
+Multimedia Framework system configuration package including ini, conf and etc files for u3 target.
+
+%package target-n4
+Summary: Multimedia Framework system configuration package for n4
+Group: Multimedia/Configuration
+License: LGPL-2.1 and Apache-2.0
+
+%description target-n4
+Multimedia Framework system configuration package including ini, conf and etc files for n4 target.
+
+%package target-hawkp
+Summary: Multimedia Framework system configuration package for hawkp
+Group: Multimedia/Configuration
+License: LGPL-2.1 and Apache-2.0
+
+%description target-hawkp
+Multimedia Framework system configuration package including ini, conf and etc files for hawkp target.
+
+%package target-tm1
+Summary: Multimedia Framework system configuration package for tm1
+Group: Multimedia/Configuration
+License: LGPL-2.1 and Apache-2.0
+
+%description target-tm1
+Multimedia Framework system configuration package including ini, conf and etc files for tm1 target.
+
+%package target-tw1
+Summary: Multimedia Framework system configuration package for tw1
+Group: Multimedia/Configuration
+License: LGPL-2.1 and Apache-2.0
+
+%description target-tw1
+Multimedia Framework system configuration package including ini, conf and etc files for tw1 target.
+
+%package target-artik10
+Summary: Multimedia Framework system configuration package for artik 10
+Group: Multimedia/Configuration
+License: LGPL-2.1 and Apache-2.0
+
+%description target-artik10
+Multimedia Framework system configuration package including ini, conf and etc files for artik 10 target.
+
+%package target-tw2
+Summary: Multimedia Framework system configuration package for tw2
+Group: Multimedia/Configuration
+License: LGPL-2.1 and Apache-2.0
+
+%description target-tw2
+Multimedia Framework system configuration package including ini, conf and etc files for tw2 target.
+
+%package target-rpi3
+Summary: Multimedia Framework system configuration package for rpi3
+Group: Multimedia/Configuration
+License: LGPL-2.1 and Apache-2.0
+
+%description target-rpi3
+Multimedia Framework system configuration package including ini, conf and etc files for rpi3 target.
+
+%package target-tw3
+Summary: Multimedia Framework system configuration package for tw3
+Group: Multimedia/Configuration
+License: LGPL-2.1 and Apache-2.0
+
+%description target-tw3
+Multimedia Framework system configuration package including ini, conf and etc files for tw3 target.
+
+%package target-rpi3-spk
+Summary: Multimedia Framework system configuration package for rpi3 speaker
+Group: Multimedia/Configuration
+License: LGPL-2.1 and Apache-2.0
+
+%description target-rpi3-spk
+Multimedia Framework system configuration package including ini, conf and etc files for rpi3 speaker target.
+
+%else
+
+%package simulator
+Summary: Multimedia Framework system configuration package for simulator
+Group: Multimedia/Configuration
+License: LGPL-2.1 and Apache-2.0
+
+%description simulator
+Multimedia Framework system configuration package including ini, conf and etc files for simulator.
+
+%endif
+
+
+%prep
+%setup -q -n %{name}-%{version}
+
+
+%build
+
+
+%install
+rm -rf %{buildroot}
+mkdir -p %{buildroot}%{_hal_datadir}
+
+
+%ifarch %arm aarch64
+
+mkdir -p %{buildroot}%{_hal_licensedir}/%{name}-target-u3
+cp LICENSE.APLv2.0 %{buildroot}%{_hal_licensedir}/%{name}-target-u3
+cp LICENSE.LGPLv2.1 %{buildroot}%{_hal_licensedir}/%{name}-target-u3
+mkdir -p %{buildroot}%{_hal_datadir}/%{name}-target-u3
+cp -arf %{name}-target-u3/* %{buildroot}%{_hal_datadir}/%{name}-target-u3
+
+mkdir -p %{buildroot}%{_hal_licensedir}/%{name}-target-n4
+cp LICENSE.APLv2.0 %{buildroot}%{_hal_licensedir}/%{name}-target-n4
+cp LICENSE.LGPLv2.1 %{buildroot}%{_hal_licensedir}/%{name}-target-n4
+mkdir -p %{buildroot}%{_hal_datadir}/%{name}-target-n4
+cp -arf %{name}-target-n4/* %{buildroot}%{_hal_datadir}/%{name}-target-n4
+
+mkdir -p %{buildroot}%{_hal_licensedir}/%{name}-target-hawkp
+cp LICENSE.APLv2.0 %{buildroot}%{_hal_licensedir}/%{name}-target-hawkp
+cp LICENSE.LGPLv2.1 %{buildroot}%{_hal_licensedir}/%{name}-target-hawkp
+mkdir -p %{buildroot}%{_hal_datadir}/%{name}-target-hawkp
+cp -arf %{name}-target-hawkp/* %{buildroot}%{_hal_datadir}/%{name}-target-hawkp
+
+mkdir -p %{buildroot}%{_hal_licensedir}/%{name}-target-tm1
+cp LICENSE.APLv2.0 %{buildroot}%{_hal_licensedir}/%{name}-target-tm1
+cp LICENSE.LGPLv2.1 %{buildroot}%{_hal_licensedir}/%{name}-target-tm1
+mkdir -p %{buildroot}%{_hal_datadir}/%{name}-target-tm1
+cp -arf %{name}-target-tm1/* %{buildroot}%{_hal_datadir}/%{name}-target-tm1
+
+mkdir -p %{buildroot}%{_hal_licensedir}/%{name}-target-tw1
+cp LICENSE.APLv2.0 %{buildroot}%{_hal_licensedir}/%{name}-target-tw1
+cp LICENSE.LGPLv2.1 %{buildroot}%{_hal_licensedir}/%{name}-target-tw1
+mkdir -p %{buildroot}%{_hal_datadir}/%{name}-target-tw1
+cp -arf %{name}-target-tw1/* %{buildroot}%{_hal_datadir}/%{name}-target-tw1
+
+mkdir -p %{buildroot}%{_hal_licensedir}/%{name}-target-artik10
+cp LICENSE.APLv2.0 %{buildroot}%{_hal_licensedir}/%{name}-target-artik10
+cp LICENSE.LGPLv2.1 %{buildroot}%{_hal_licensedir}/%{name}-target-artik10
+mkdir -p %{buildroot}%{_hal_datadir}/%{name}-target-artik10
+cp -arf %{name}-target-artik10/* %{buildroot}%{_hal_datadir}/%{name}-target-artik10
+
+mkdir -p %{buildroot}%{_hal_licensedir}/%{name}-target-tw2
+cp LICENSE.APLv2.0 %{buildroot}%{_hal_licensedir}/%{name}-target-tw2
+cp LICENSE.LGPLv2.1 %{buildroot}%{_hal_licensedir}/%{name}-target-tw2
+mkdir -p %{buildroot}%{_hal_datadir}/%{name}-target-tw2
+cp -arf %{name}-target-tw2/* %{buildroot}%{_hal_datadir}/%{name}-target-tw2
+
+mkdir -p %{buildroot}%{_hal_licensedir}/%{name}-target-rpi3
+cp LICENSE.APLv2.0 %{buildroot}%{_hal_licensedir}/%{name}-target-rpi3
+cp LICENSE.LGPLv2.1 %{buildroot}%{_hal_licensedir}/%{name}-target-rpi3
+mkdir -p %{buildroot}%{_hal_datadir}/%{name}-target-rpi3
+cp -arf %{name}-target-rpi3/* %{buildroot}%{_hal_datadir}/%{name}-target-rpi3
+
+mkdir -p %{buildroot}%{_hal_licensedir}/%{name}-target-tw3
+cp LICENSE.APLv2.0 %{buildroot}%{_hal_licensedir}/%{name}-target-tw3
+cp LICENSE.LGPLv2.1 %{buildroot}%{_hal_licensedir}/%{name}-target-tw3
+mkdir -p %{buildroot}%{_hal_datadir}/%{name}-target-tw3
+cp -arf %{name}-target-tw3/* %{buildroot}%{_hal_datadir}/%{name}-target-tw3
+
+mkdir -p %{buildroot}%{_hal_licensedir}/%{name}-target-rpi3-spk
+cp LICENSE.APLv2.0 %{buildroot}%{_hal_licensedir}/%{name}-target-rpi3-spk
+cp LICENSE.LGPLv2.1 %{buildroot}%{_hal_licensedir}/%{name}-target-rpi3-spk
+mkdir -p %{buildroot}%{_hal_datadir}/%{name}-target-rpi3-spk
+cp -arf %{name}-target-rpi3-spk/* %{buildroot}%{_hal_datadir}/%{name}-target-rpi3-spk
+
+%else
+
+mkdir -p %{buildroot}%{_hal_licensedir}/%{name}-simulator
+cp LICENSE.APLv2.0 %{buildroot}%{_hal_licensedir}/%{name}-simulator
+cp LICENSE.LGPLv2.1 %{buildroot}%{_hal_licensedir}/%{name}-simulator
+mkdir -p %{buildroot}%{_hal_datadir}/%{name}-simulator
+cp -arf %{name}-simulator/* %{buildroot}%{_hal_datadir}/%{name}-simulator
+
+%endif
+
+%ifarch %arm aarch64
+
+%post target-u3
+sed -i -e 's|@HAL_LIBDIR@|%{_hal_libdir}|g' %{_hal_datadir}/%{name}-target-u3%{_hal_sysconfdir}/xdg/gstomx.conf
+sed -i -e 's|@HAL_LIBDIR@|%{_hal_libdir}|g' %{_hal_datadir}/%{name}-target-u3%{_hal_sysconfdir}/profile.d/mmf.sh
+cp -arf %{_hal_datadir}/%{name}-target-u3/* /
+rm -rf %{_hal_datadir}/%{name}-target-u3
+
+%post target-n4
+sed -i -e 's|@HAL_LIBDIR@|%{_hal_libdir}|g' %{_hal_datadir}/%{name}-target-n4%{_hal_sysconfdir}/xdg/gstomx.conf
+sed -i -e 's|@HAL_LIBDIR@|%{_hal_libdir}|g' %{_hal_datadir}/%{name}-target-n4%{_hal_sysconfdir}/profile.d/mmf.sh
+cp -arf %{_hal_datadir}/%{name}-target-n4/* /
+rm -rf %{_hal_datadir}/%{name}-target-n4
+
+%post target-hawkp
+sed -i -e 's|@HAL_LIBDIR@|%{_hal_libdir}|g' %{_hal_datadir}/%{name}-target-hawkp%{_hal_sysconfdir}/profile.d/mmf.sh
+cp -arf %{_hal_datadir}/%{name}-target-hawkp/* /
+rm -rf %{_hal_datadir}/%{name}-target-hawkp
+
+%post target-tm1
+sed -i -e 's|@HAL_LIBDIR@|%{_hal_libdir}|g' %{_hal_datadir}/%{name}-target-tm1%{_hal_sysconfdir}/profile.d/mmf.sh
+cp -arf %{_hal_datadir}/%{name}-target-tm1/* /
+rm -rf %{_hal_datadir}/%{name}-target-tm1
+
+%post target-tw1
+sed -i -e 's|@HAL_LIBDIR@|%{_hal_libdir}|g' %{_hal_datadir}/%{name}-target-tw1%{_hal_sysconfdir}/xdg/gstomx.conf
+sed -i -e 's|@HAL_LIBDIR@|%{_hal_libdir}|g' %{_hal_datadir}/%{name}-target-tw1%{_hal_sysconfdir}/profile.d/mmf.sh
+cp -arf %{_hal_datadir}/%{name}-target-tw1/* /
+rm -rf %{_hal_datadir}/%{name}-target-tw1
+
+%post target-artik10
+sed -i -e 's|@HAL_LIBDIR@|%{_hal_libdir}|g' %{_hal_datadir}/%{name}-target-artik10%{_hal_sysconfdir}/profile.d/mmf.sh
+cp -arf %{_hal_datadir}/%{name}-target-artik10/* /
+rm -rf %{_hal_datadir}/%{name}-target-artik10
+
+%post target-tw2
+sed -i -e 's|@HAL_LIBDIR@|%{_hal_libdir}|g' %{_hal_datadir}/%{name}-target-tw2%{_hal_sysconfdir}/xdg/gstomx.conf
+sed -i -e 's|@HAL_LIBDIR@|%{_hal_libdir}|g' %{_hal_datadir}/%{name}-target-tw2%{_hal_sysconfdir}/profile.d/mmf.sh
+cp -arf %{_hal_datadir}/%{name}-target-tw2/* /
+rm -rf %{_hal_datadir}/%{name}-target-tw2
+
+%post target-rpi3
+sed -i -e 's|@HAL_LIBDIR@|%{_hal_libdir}|g' %{_hal_datadir}/%{name}-target-rpi3%{_hal_sysconfdir}/profile.d/mmf.sh
+cp -arf %{_hal_datadir}/%{name}-target-rpi3/* /
+rm -rf %{_hal_datadir}/%{name}-target-rpi3
+
+%post target-tw3
+sed -i -e 's|@HAL_LIBDIR@|%{_hal_libdir}|g' %{_hal_datadir}/%{name}-target-tw3%{_hal_sysconfdir}/xdg/gstomx.conf
+sed -i -e 's|@HAL_LIBDIR@|%{_hal_libdir}|g' %{_hal_datadir}/%{name}-target-tw3%{_hal_sysconfdir}/profile.d/mmf.sh
+cp -arf %{_hal_datadir}/%{name}-target-tw3/* /
+rm -rf %{_hal_datadir}/%{name}-target-tw3
+
+%post target-rpi3-spk
+sed -i -e 's|@HAL_LIBDIR@|%{_hal_libdir}|g' %{_hal_datadir}/%{name}-target-rpi3-spk%{_hal_sysconfdir}/profile.d/mmf.sh
+cp -arf %{_hal_datadir}/%{name}-target-rpi3-spk/* /
+rm -rf %{_hal_datadir}/%{name}-target-rpi3-spk
+
+%else
+
+%post simulator
+sed -i -e 's|@HAL_LIBDIR@|%{_hal_libdir}|g' %{_hal_datadir}/%{name}-simulator%{_hal_sysconfdir}/profile.d/mmf.sh
+cp -arf %{_hal_datadir}/%{name}-simulator/* /
+rm -rf %{_hal_datadir}/%{name}-simulator
+
+%endif
+
+
+%postun
+
+
+%ifarch %arm aarch64
+
+%files target-u3
+%manifest %{name}-target-u3.manifest
+%{_hal_licensedir}/%{name}-target-u3/*
+%defattr(-,root,root,-)
+%{_hal_datadir}/%{name}-target-u3%{_hal_sysconfdir}/asound.conf
+%{_hal_datadir}/%{name}-target-u3%{_hal_sysconfdir}/pulse/*
+%{_hal_datadir}/%{name}-target-u3%{_hal_sysconfdir}/murphy/*
+%{_hal_datadir}/%{name}-target-u3%{_hal_sysconfdir}/profile.d/*
+%{_hal_datadir}/%{name}-target-u3%{_hal_sysconfdir}/multimedia/*.ini
+%{_hal_datadir}/%{name}-target-u3%{_hal_sysconfdir}/inference/*.ini
+%{_hal_datadir}/%{name}-target-u3%{_hal_sysconfdir}/multimedia/*.conf
+%{_hal_datadir}/%{name}-target-u3%{_hal_sysconfdir}/xdg/gstomx.conf
+%{_hal_datadir}/%{name}-target-u3%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.conf
+%{_hal_datadir}/%{name}-target-u3%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.common
+%{_hal_datadir}/%{name}-target-u3%{_hal_datadir}/pulseaudio/alsa-mixer/profile-sets/*.conf
+
+%files target-n4
+%manifest %{name}-target-n4.manifest
+%{_hal_licensedir}/%{name}-target-n4/*
+%defattr(-,root,root,-)
+%{_hal_datadir}/%{name}-target-n4%{_hal_sysconfdir}/asound.conf
+%{_hal_datadir}/%{name}-target-n4%{_hal_sysconfdir}/pulse/*
+%{_hal_datadir}/%{name}-target-n4%{_hal_sysconfdir}/murphy/*
+%{_hal_datadir}/%{name}-target-n4%{_hal_sysconfdir}/profile.d/*
+%{_hal_datadir}/%{name}-target-n4%{_hal_sysconfdir}/multimedia/*.ini
+%{_hal_datadir}/%{name}-target-n4%{_hal_sysconfdir}/inference/*.ini
+%{_hal_datadir}/%{name}-target-n4%{_hal_sysconfdir}/multimedia/*.conf
+%{_hal_datadir}/%{name}-target-n4%{_hal_sysconfdir}/xdg/gstomx.conf
+%{_hal_datadir}/%{name}-target-n4%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.conf
+%{_hal_datadir}/%{name}-target-n4%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.common
+%{_hal_datadir}/%{name}-target-n4%{_hal_datadir}/pulseaudio/alsa-mixer/profile-sets/*.conf
+
+%files target-hawkp
+%manifest %{name}-target-hawkp.manifest
+%{_hal_licensedir}/%{name}-target-hawkp/*
+%defattr(-,root,root,-)
+%{_hal_datadir}/%{name}-target-hawkp%{_hal_sysconfdir}/asound.conf
+%{_hal_datadir}/%{name}-target-hawkp%{_hal_sysconfdir}/pulse/*
+%{_hal_datadir}/%{name}-target-hawkp%{_hal_sysconfdir}/murphy/*
+%{_hal_datadir}/%{name}-target-hawkp%{_hal_sysconfdir}/profile.d/*
+%{_hal_datadir}/%{name}-target-hawkp%{_hal_sysconfdir}/multimedia/*.ini
+%{_hal_datadir}/%{name}-target-hawkp%{_hal_sysconfdir}/multimedia/*.conf
+%{_hal_datadir}/%{name}-target-hawkp%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.conf
+%{_hal_datadir}/%{name}-target-hawkp%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.common
+%{_hal_datadir}/%{name}-target-hawkp%{_hal_datadir}/pulseaudio/alsa-mixer/profile-sets/*.conf
+
+%files target-tm1
+%manifest %{name}-target-tm1.manifest
+%{_hal_licensedir}/%{name}-target-tm1/*
+%defattr(-,root,root,-)
+%{_hal_datadir}/%{name}-target-tm1%{_hal_sysconfdir}/asound.conf
+%{_hal_datadir}/%{name}-target-tm1%{_hal_sysconfdir}/pulse/*
+%{_hal_datadir}/%{name}-target-tm1%{_hal_sysconfdir}/murphy/*
+%{_hal_datadir}/%{name}-target-tm1%{_hal_sysconfdir}/profile.d/*
+%{_hal_datadir}/%{name}-target-tm1%{_hal_sysconfdir}/multimedia/*.ini
+%{_hal_datadir}/%{name}-target-tm1%{_hal_sysconfdir}/inference/*.ini
+%{_hal_datadir}/%{name}-target-tm1%{_hal_sysconfdir}/multimedia/*.conf
+%{_hal_datadir}/%{name}-target-tm1%{_hal_sysconfdir}/multimedia/audio_hw.xml
+%{_hal_datadir}/%{name}-target-tm1%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.conf
+%{_hal_datadir}/%{name}-target-tm1%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.common
+%{_hal_datadir}/%{name}-target-tm1%{_hal_datadir}/pulseaudio/alsa-mixer/profile-sets/*.conf
+
+%files target-tw1
+%manifest %{name}-target-tw1.manifest
+%{_hal_licensedir}/%{name}-target-tw1/*
+%defattr(-,root,root,-)
+%{_hal_datadir}/%{name}-target-tw1%{_hal_sysconfdir}/asound.conf
+%{_hal_datadir}/%{name}-target-tw1%{_hal_sysconfdir}/pulse/*
+%{_hal_datadir}/%{name}-target-tw1%{_hal_sysconfdir}/murphy/*
+%{_hal_datadir}/%{name}-target-tw1%{_hal_sysconfdir}/profile.d/*
+%{_hal_datadir}/%{name}-target-tw1%{_hal_sysconfdir}/multimedia/*.ini
+%{_hal_datadir}/%{name}-target-tw1%{_hal_sysconfdir}/multimedia/*.conf
+%{_hal_datadir}/%{name}-target-tw1%{_hal_sysconfdir}/xdg/gstomx.conf
+%{_hal_datadir}/%{name}-target-tw1%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.conf
+%{_hal_datadir}/%{name}-target-tw1%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.common
+%{_hal_datadir}/%{name}-target-tw1%{_hal_datadir}/pulseaudio/alsa-mixer/profile-sets/*.conf
+
+%files target-artik10
+%manifest %{name}-target-artik10.manifest
+%{_hal_licensedir}/%{name}-target-artik10/*
+%defattr(-,root,root,-)
+%{_hal_datadir}/%{name}-target-artik10%{_hal_sysconfdir}/asound.conf
+%{_hal_datadir}/%{name}-target-artik10%{_hal_sysconfdir}/pulse/*
+%{_hal_datadir}/%{name}-target-artik10%{_hal_sysconfdir}/murphy/*
+%{_hal_datadir}/%{name}-target-artik10%{_hal_sysconfdir}/profile.d/*
+%{_hal_datadir}/%{name}-target-artik10%{_hal_sysconfdir}/multimedia/*.ini
+%{_hal_datadir}/%{name}-target-artik10%{_hal_sysconfdir}/multimedia/*.conf
+%{_hal_datadir}/%{name}-target-artik10%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.conf
+%{_hal_datadir}/%{name}-target-artik10%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.common
+%{_hal_datadir}/%{name}-target-artik10%{_hal_datadir}/pulseaudio/alsa-mixer/profile-sets/*.conf
+
+%files target-tw2
+%manifest %{name}-target-tw2.manifest
+%{_hal_licensedir}/%{name}-target-tw2/*
+%defattr(-,root,root,-)
+%{_hal_datadir}/%{name}-target-tw2%{_hal_sysconfdir}/asound.conf
+%{_hal_datadir}/%{name}-target-tw2%{_hal_sysconfdir}/pulse/*
+%{_hal_datadir}/%{name}-target-tw2%{_hal_sysconfdir}/murphy/*
+%{_hal_datadir}/%{name}-target-tw2%{_hal_sysconfdir}/profile.d/*
+%{_hal_datadir}/%{name}-target-tw2%{_hal_sysconfdir}/multimedia/*.ini
+%{_hal_datadir}/%{name}-target-tw2%{_hal_sysconfdir}/multimedia/*.conf
+%{_hal_datadir}/%{name}-target-tw2%{_hal_sysconfdir}/xdg/gstomx.conf
+%{_hal_datadir}/%{name}-target-tw2%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.conf
+%{_hal_datadir}/%{name}-target-tw2%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.common
+%{_hal_datadir}/%{name}-target-tw2%{_hal_datadir}/pulseaudio/alsa-mixer/profile-sets/*.conf
+%{_hal_datadir}/%{name}-target-tw2%{_hal_prefix}/lib/udev/rules.d/*
+
+%files target-rpi3
+%manifest %{name}-target-rpi3.manifest
+%{_hal_licensedir}/%{name}-target-rpi3/*
+%defattr(-,root,root,-)
+%{_hal_datadir}/%{name}-target-rpi3%{_hal_sysconfdir}/asound.conf
+%{_hal_datadir}/%{name}-target-rpi3%{_hal_sysconfdir}/pulse/*
+%{_hal_datadir}/%{name}-target-rpi3%{_hal_sysconfdir}/murphy/*
+%{_hal_datadir}/%{name}-target-rpi3%{_hal_sysconfdir}/profile.d/*
+%{_hal_datadir}/%{name}-target-rpi3%{_hal_sysconfdir}/multimedia/*.ini
+%{_hal_datadir}/%{name}-target-rpi3%{_hal_sysconfdir}/inference/*.ini
+%{_hal_datadir}/%{name}-target-rpi3%{_hal_sysconfdir}/multimedia/*.conf
+%{_hal_datadir}/%{name}-target-rpi3%{_hal_sysconfdir}/xdg/gstomx.conf
+%{_hal_datadir}/%{name}-target-rpi3%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.conf
+%{_hal_datadir}/%{name}-target-rpi3%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.common
+%{_hal_datadir}/%{name}-target-rpi3%{_hal_datadir}/pulseaudio/alsa-mixer/profile-sets/*.conf
+
+%files target-tw3
+%manifest %{name}-target-tw3.manifest
+%{_hal_licensedir}/%{name}-target-tw3/*
+%defattr(-,root,root,-)
+%{_hal_datadir}/%{name}-target-tw3%{_hal_sysconfdir}/asound.conf
+%{_hal_datadir}/%{name}-target-tw3%{_hal_sysconfdir}/pulse/*
+%{_hal_datadir}/%{name}-target-tw3%{_hal_sysconfdir}/murphy/*
+%{_hal_datadir}/%{name}-target-tw3%{_hal_sysconfdir}/profile.d/*
+%{_hal_datadir}/%{name}-target-tw3%{_hal_sysconfdir}/multimedia/*.ini
+%{_hal_datadir}/%{name}-target-tw3%{_hal_sysconfdir}/inference/*.ini
+%{_hal_datadir}/%{name}-target-tw3%{_hal_sysconfdir}/multimedia/*.conf
+%{_hal_datadir}/%{name}-target-tw3%{_hal_sysconfdir}/xdg/gstomx.conf
+%{_hal_datadir}/%{name}-target-tw3%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.conf
+%{_hal_datadir}/%{name}-target-tw3%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.common
+%{_hal_datadir}/%{name}-target-tw3%{_hal_datadir}/pulseaudio/alsa-mixer/profile-sets/*.conf
+%{_hal_datadir}/%{name}-target-tw3%{_hal_prefix}/lib/udev/rules.d/*
+
+%files target-rpi3-spk
+%manifest %{name}-target-rpi3-spk.manifest
+%{_hal_licensedir}/%{name}-target-rpi3-spk/*
+%defattr(-,root,root,-)
+%{_hal_datadir}/%{name}-target-rpi3-spk%{_hal_sysconfdir}/asound.conf
+%{_hal_datadir}/%{name}-target-rpi3-spk%{_hal_sysconfdir}/pulse/*
+%{_hal_datadir}/%{name}-target-rpi3-spk%{_hal_sysconfdir}/murphy/*
+%{_hal_datadir}/%{name}-target-rpi3-spk%{_hal_sysconfdir}/profile.d/*
+%{_hal_datadir}/%{name}-target-rpi3-spk%{_hal_sysconfdir}/multimedia/*.ini
+%{_hal_datadir}/%{name}-target-rpi3-spk%{_hal_sysconfdir}/multimedia/*.conf
+%{_hal_datadir}/%{name}-target-rpi3-spk%{_hal_sysconfdir}/xdg/gstomx.conf
+%{_hal_datadir}/%{name}-target-rpi3-spk%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.conf
+%{_hal_datadir}/%{name}-target-rpi3-spk%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.common
+%{_hal_datadir}/%{name}-target-rpi3-spk%{_hal_datadir}/pulseaudio/alsa-mixer/profile-sets/*.conf
+
+%else
+
+%files simulator
+%manifest %{name}-simulator.manifest
+%{_hal_licensedir}/%{name}-simulator/*
+%defattr(-,root,root,-)
+%{_hal_datadir}/%{name}-simulator%{_hal_sysconfdir}/asound.conf
+%{_hal_datadir}/%{name}-simulator%{_hal_sysconfdir}/pulse/*
+%{_hal_datadir}/%{name}-simulator%{_hal_sysconfdir}/murphy/*
+%{_hal_datadir}/%{name}-simulator%{_hal_sysconfdir}/profile.d/*
+%{_hal_datadir}/%{name}-simulator%{_hal_sysconfdir}/multimedia/*.ini
+%{_hal_datadir}/%{name}-simulator%{_hal_sysconfdir}/inference/*.ini
+%{_hal_datadir}/%{name}-simulator%{_hal_sysconfdir}/multimedia/*.conf
+%{_hal_datadir}/%{name}-simulator%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.conf
+%{_hal_datadir}/%{name}-simulator%{_hal_datadir}/pulseaudio/alsa-mixer/paths/*.common
+%{_hal_datadir}/%{name}-simulator%{_hal_datadir}/pulseaudio/alsa-mixer/profile-sets/*.conf
+
+%endif