summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlivingston <livings.paul@samsung.com>2013-04-29 14:51:04 +0530
committerlivingston <livings.paul@samsung.com>2013-04-29 14:51:04 +0530
commit1f75bd03e17d8bd51b4c6112e7b5a2d393487630 (patch)
tree9970f05892820fa8d132850832e0494aa097122a
parent7a16afb9e2fd3d10e8271e747bae1ca4390888fd (diff)
downloadsystem-adaptation-pandaboard-1f75bd03e17d8bd51b4c6112e7b5a2d393487630.tar.gz
system-adaptation-pandaboard-1f75bd03e17d8bd51b4c6112e7b5a2d393487630.tar.bz2
system-adaptation-pandaboard-1f75bd03e17d8bd51b4c6112e7b5a2d393487630.zip
Signed-off-by: livingston <livings.paul@samsung.com>
-rw-r--r--common/asound.conf23
-rwxr-xr-xcommon/gst-openmax.conf55
-rw-r--r--common/mmfw_camcorder.ini102
-rw-r--r--common/mmfw_camcorder_dev_video_pri.ini162
-rw-r--r--common/mmfw_camcorder_dev_video_sec.ini168
-rw-r--r--common/mmfw_player.ini105
-rwxr-xr-xcommon/pulse/client.conf33
-rwxr-xr-xcommon/pulse/daemon.conf81
-rwxr-xr-xcommon/pulse/default.pa138
-rwxr-xr-xcommon/pulse/murphy-ivi.lua178
-rwxr-xr-xcommon/pulse/system.pa64
-rw-r--r--packaging/system-adaptation-pandaboard.spec25
12 files changed, 1134 insertions, 0 deletions
diff --git a/common/asound.conf b/common/asound.conf
new file mode 100644
index 0000000..f38749a
--- /dev/null
+++ b/common/asound.conf
@@ -0,0 +1,23 @@
+# default sound configuration for c210
+
+pcm. !default {
+ type hw
+ card 0
+}
+
+ctl. !default {
+ type hw
+ card 0
+}
+
+pcm. AIF2{
+ type hw
+ card 0
+ device 1
+}
+
+pcm. AIF3{
+ type hw
+ card 0
+ device 3
+}
diff --git a/common/gst-openmax.conf b/common/gst-openmax.conf
new file mode 100755
index 0000000..9c0203c
--- /dev/null
+++ b/common/gst-openmax.conf
@@ -0,0 +1,55 @@
+omx_mpeg4dec,
+ type=GstOmxMpeg4Dec,
+ library-name=libSEC_OMX_Core.so.0,
+ component-name=OMX.SEC.MPEG4.Decoder,
+ sink="video/mpeg, mpegversion=(int)4, systemstream=false, width=(int)[16,4096], height=(int)[16,4096], framerate=(fraction)[0,max]; video/x-divx, divxversion=(int)[4,5], width=(int)[16,4096], height=(int)[16,4096], framerate=(fraction)[0,max]; video/x-xvid, width=(int)[16,4096], height=(int)[16,4096], framerate=(fraction)[0,max]; video/x-3ivx, width=(int)[16,4096], height=(int)[16,4096], framerate=(fraction)[0,max];",
+ src="video/x-raw-yuv, format=(fourcc){ST12}, width=(int)[16,4096], height=(int)[16,4096], framerate=(fraction)[0,max];",
+ rank=0;
+
+omx_h264dec,
+ type=GstOmxH264Dec,
+ library-name=libSEC_OMX_Core.so.0,
+ component-name=OMX.SEC.AVC.Decoder,
+ sink="video/x-h264, width=(int)[16,4096], height=(int)[16,4096], framerate=(fraction)[0,max];",
+ src="video/x-raw-yuv, format=(fourcc){ST12}, width=(int)[16,4096], height=(int)[16,4096], framerate=(fraction)[0,max];",
+ rank=0;
+
+omx_h263dec,
+ type=GstOmxH263Dec,
+ library-name=libSEC_OMX_Core.so.0,
+ component-name=OMX.SEC.H263.Decoder,
+ sink="video/x-h263, variant=(string)itu, width=(int)[16,4096], height=(int)[16,4096], framerate=(fraction)[0,max];",
+ src="video/x-raw-yuv, format=(fourcc){ST12}, width=(int)[16,4096], height=(int)[16,4096], framerate=(fraction)[0,max];",
+ rank=0;
+
+omx_wmvdec,
+ type=GstOmxWmvDec,
+ library-name=libSEC_OMX_Core.so.0,
+ component-name=OMX.SEC.WMV.Decoder,
+ sink="video/x-wmv, wmvversion=(int)3, width=(int)[16,4096], height=(int)[16,4096], framerate=(fraction)[0,max];",
+ src="video/x-raw-yuv, format=(fourcc){ST12}, width=(int)[16,4096], height=(int)[16,4096], framerate=(fraction)[0,max];",
+ rank=0;
+
+omx_mpeg4enc,
+ type=GstOmxMpeg4Enc,
+ library-name=libSEC_OMX_Core.so.0,
+ component-name=OMX.SEC.MPEG4.Encoder,
+ sink="video/x-raw-yuv, format=(fourcc){ST12, SN12}, width=(int)[16,4096], height=(int)[16,4096], framerate=(fraction)[0,max];",
+ src="video/mpeg, mpegversion=(int)4, systemstream=false, width=(int)[16,4096], height=(int)[16,4096], framerate=(fraction)[0,max];",
+ rank=0;
+
+omx_h264enc,
+ type=GstOmxH264Enc,
+ library-name=libSEC_OMX_Core.so.0,
+ component-name=OMX.SEC.AVC.Encoder,
+ sink="video/x-raw-yuv, format=(fourcc){ST12, SN12}, width=(int)[16,4096], height=(int)[16,4096], framerate=(fraction)[0,max];",
+ src="video/x-h264, width=(int)[16,4096], height=(int)[16,4096], framerate=(fraction)[0,max];",
+ rank=0;
+
+omx_h263enc,
+ type=GstOmxH263Enc,
+ library-name=libSEC_OMX_Core.so.0,
+ component-name=OMX.SEC.H263.Encoder,
+ sink="video/x-raw-yuv, format=(fourcc){ST12, SN12}, width=(int)[16,4096], height=(int)[16,4096], framerate=(fraction)[0,max];",
+ src="video/x-h263, variant=(string)itu, width=(int)[16,4096], height=(int)[16,4096], framerate=(fraction)[0,max];",
+ rank=0
diff --git a/common/mmfw_camcorder.ini b/common/mmfw_camcorder.ini
new file mode 100644
index 0000000..681584b
--- /dev/null
+++ b/common/mmfw_camcorder.ini
@@ -0,0 +1,102 @@
+; < Camera/Camcorder Configure Main INI file >
+;
+; - aquila_FUJITSU_M5MOLS
+;
+; - 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]
+UseConfCtrl = 1
+ConfCtrlFile0 = mmfw_camcorder_dev_video_pri.ini
+ConfCtrlFile1 = mmfw_camcorder_dev_video_sec.ini
+VideosrcElement = camerasrc | 2,0 | do-timestamp,1 | num-alloc-buf,7
+UseVideoscale = 0
+VideoscaleElement = videoscale | 3,0 | width,320 | height,240 | method,1
+UseZeroCopyFormat = 0
+
+[AudioInput]
+AudiosrcElement = avsysaudiosrc | 3,0 | do-timestamp,1 | slave-method,3 | latency,0
+AudiomodemsrcElement = audiotestsrc | 2,0 | do-timestamp,1 | slave-method,3
+
+[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
+; Videosink
+;;; 0: X surface, 1: Evas surface, 2: GL surface, 3: NULL surface
+Videosink = 0,1,3 || 0
+VideosinkElementX = xvimagesink | 5,0 | draw-borders,0 | force-aspect-ratio,1 | enable-last-buffer,0 | qos,0 | sync,0
+VideosinkElementEvas = evaspixmapsink | 3,0 | enable-last-buffer,0 | qos,0 | sync,0
+VideosinkElementNull = fakesink | 3,0 | qos,0 | sync,0 | enable-last-buffer,0
+UseVideoscale = 0
+VideoscaleElement = fimcconvert | 1,0 | rotang,90
+
+[VideoEncoder]
+H263 = ffenc_h263p | 0,0
+MPEG4 = ffenc_mpeg4 | 0,0
+
+[AudioEncoder]
+AMR = amrnbenc | 0,0
+AAC = ffenc_aac | 0,0
+WAVE = wavenc | 0,0
+
+[ImageEncoder]
+JPEG = secjpeg_enc | 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 = 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 = ffmux_3gp | 0,0
+AMR = ffmux_amr | 0,0
+MP4 = ffmux_mp4 | 0,0
+AVI = avimux | 0,0
+MATROSKA = matroskamux | 0,0
+WAV = wavenc | 0,0
+AAC = ffmux_adts | 0,0
+
diff --git a/common/mmfw_camcorder_dev_video_pri.ini b/common/mmfw_camcorder_dev_video_pri.ini
new file mode 100644
index 0000000..9550e7d
--- /dev/null
+++ b/common/mmfw_camcorder_dev_video_pri.ini
@@ -0,0 +1,162 @@
+; < Camera/Camcorder Configure Control INI file >
+;
+; - aquila_FUJITSU_M5MOLS
+;
+; - 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 = m5mols_c210
+PreviewResolution = 176,144 | 320,240 | 640,480 | 720,480 | 800,480 | 1280,720 | 1920,1080 || 640,480
+CaptureResolution = 640,480 | 1280,720 | 1920,1080 | 2048,1536 | 3264,1960 | 3264,2448 || 3264,2448
+FPS = 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
+PictureFormat = 0,4,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
+RecommendPreviewFormatCapture = 4
+; 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 = 0
+; Recommend preview resolution
+;;; 0: NORMAL ratio(4:3), 1: WIDE ratio(16:9)
+RecommendPreviewResolution = 640,480 | 800,480 || 640,480
+
+
+[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:BASE, 1:AUTO, 2:SUNNY, 3:CLOUDY, 4:TUNGSTEN, 5: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:BNW, 3:SEPIA, 4:AQUA, 6:NEGATIVE
+; 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_1, 19:SOLARIZATION_2, 20:SOLARIZATION_3,
+;;; 21:SOLARIZATION_4, 22:SKETCH_1, 23:SKETCH_2, 24:SKETCH_3, 25:SKETCH_4
+;ColorTone = 1,-255,3,2,11,6,5,18,-255,-255,3,4,10,-255,-255,-255,-255,16,17,12,13,14,15,-255,-255,-255,-255 || 0
+ColorTone = 1,-255,3,6,-255,-255,4,-255,-255,2,-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,1,-255 || 0
+
+
+[Photograph]
+;LensInit = 0,1 || 0
+DigitalZoom = 0,30 || 0
+;OpticalZoom - Not support
+
+; 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: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(Not Supported), 7:SPORTS(Not Supported), 8:NIGHT(Not Supported), 9:MOVIE(Not Supported)
+; ISO - MSL value(convert array index)
+;;; 0:AUTO, 1:50, 2:100, 3:200, 4:400, 5:800, 6:1600, 7:3200
+ISO = 0,1,2,3,4,5,-255,-255 || 0
+
+; Program mode - real setting value
+;;; 0:BASE, 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,-255,9,10,11,3,12,13,-255,14,4 || 1
+
+; 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
+
+
+[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 = 0,4,7,13 || 13
+JpegQuality = 0,100 || 50
+MultishotNumber = 1,255 || 1
+SensorEncodedCapture = 1
+; 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/common/mmfw_camcorder_dev_video_sec.ini b/common/mmfw_camcorder_dev_video_sec.ini
new file mode 100644
index 0000000..51c266b
--- /dev/null
+++ b/common/mmfw_camcorder_dev_video_sec.ini
@@ -0,0 +1,168 @@
+; < Camera/Camcorder Configure Control INI file >
+;
+; - aquila_FUJITSU_M5MOLS - 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,1 || 1
+DeviceName = m4mo_VGA_c210
+PreviewResolution = 176,144 | 320,240 | 352,288 | 640,480 || 640,480
+CaptureResolution = 176,144 | 320,240 | 352,288 | 640,480 || 640,480
+FPS = 0,8,15,25,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
+PictureFormat = 0,4,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
+RecommendPreviewFormatCapture = 4
+; 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 = 0
+; Recommend preview resolution
+;;; 0: NORMAL ratio(4:3), 1: WIDE ratio(16:9)
+RecommendPreviewResolution = 640,480 | 352,288 || 640,480
+
+
+[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 = 0,-255,-255,-255,-255,-255,-255,-255 || 0
+;StrobeStatus - Not support
+;StrobeEV - Not support
+
+
+[Effect]
+Brightness = -4,4 || 0
+;Contrast - Not support
+;Saturation - Not support
+;Sharpness - Not support
+
+; White balance - real setting value
+;;; 0:BASE, 1:AUTO, 2:SUNNY, 3:CLOUDY, 4:TUNGSTEN, 5: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
+;0:NONE, 1:SEPIA, 2:ANTIQUE, 3:NEGATIVE, 4:EMBOSS, 5:GRAY, 6:OUTLINE, 7:SOLARIZATION
+; 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_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 - 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
+;;; 1:OFF, 2:ON, 3:AUTO
+; Wide Dynamic Range - MSL value(convert array index)
+;;; 0:OFF, 1:ON, 2:AUTO
+WDR = 0,-255,-255 || 0
+
+
+[Photograph]
+;LensInit - Not support
+;DigitalZoom - Not support
+;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 = -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: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
+;;; 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
+;;; 0:BASE, 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
+
+; Face zoom mode
+;;; 0:OFF, 1:ON
+FaceZoomMode = 0 || 0
+; Face zoom level
+FaceZoomLevel = 0,0 || 0
+
+
+[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 = 0,4,7,13 || 13
+JpegQuality = 0,100 || 50
+MultishotNumber = 1,255 || 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/common/mmfw_player.ini b/common/mmfw_player.ini
new file mode 100644
index 0000000..0c75595
--- /dev/null
+++ b/common/mmfw_player.ini
@@ -0,0 +1,105 @@
+[general]
+
+; if disabled typefind element will used directely
+use decodebin = no ; async state change problem exist
+
+use sink handler = yes
+
+disable segtrap = yes ; same effect with --gst-disable-segtrap
+
+; set default videosink element according to video surface type(X, EVAS, NULL)
+videosink element x = ximagesink
+videosink element evas = evasimagesink
+videosink element fake = fakesink
+
+video converter element = ffmpegcolorspace
+
+audiosink element = pulsesink
+
+drmsrc element = filesrc
+
+; 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
+element exclude keyword =
+
+async start = yes
+
+multiple codec supported = yes
+
+; 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
+
+; 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
+
+
+[http streaming]
+
+httppsrc element = souphttpsrc
+
+; if set, use file or not use memory for buffering
+http file buffer path = /opt/media
+
+http buffering limit = 99.0 ; percent
+
+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
+
+
+[sound effect]
+; preset audio filter setting
+audio filter preset = no
+
+; custom audio filter setting (EQ/extension)
+audio filter custom = no
+
+
+[priority]
+
+use priority setting = no
+
+demux = 95
+
+videosink = 96
+
+audiosink = 97
+
+ringbuffer = 98
+
diff --git a/common/pulse/client.conf b/common/pulse/client.conf
new file mode 100755
index 0000000..ad71199
--- /dev/null
+++ b/common/pulse/client.conf
@@ -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 are 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 = 0 # setting this 0 will use the system-default, usually 64 MiB
diff --git a/common/pulse/daemon.conf b/common/pulse/daemon.conf
new file mode 100755
index 0000000..eb14ea9
--- /dev/null
+++ b/common/pulse/daemon.conf
@@ -0,0 +1,81 @@
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it 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 = no
+; fail = yes
+; allow-module-loading = yes
+; allow-exit = yes
+; use-pid-file = yes
+; system-instance = no
+; 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 = auto
+; log-level = notice
+; log-meta = no
+; log-time = no
+; log-backtrace = 0
+
+resample-method = ffmpeg
+; enable-remixing = yes
+; enable-lfe-remixing = no
+
+; flat-volumes = yes
+
+; 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
+; default-sample-channels = 2
+; default-channel-map = front-left,front-right
+
+; default-fragments = 4
+; default-fragment-size-msec = 25
diff --git a/common/pulse/default.pa b/common/pulse/default.pa
new file mode 100755
index 0000000..89ff24a
--- /dev/null
+++ b/common/pulse/default.pa
@@ -0,0 +1,138 @@
+#!/usr/bin/pulseaudio -nF
+#
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it 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 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.
+load-module module-console-kit
+
+### Enable positioned event sounds
+load-module module-position-event-sounds
+
+### Do not 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
+
+### 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/common/pulse/murphy-ivi.lua b/common/pulse/murphy-ivi.lua
new file mode 100755
index 0000000..040da93
--- /dev/null
+++ b/common/pulse/murphy-ivi.lua
@@ -0,0 +1,178 @@
+
+routing_group {
+ name = "default",
+ node_type = node.output,
+ accept = builtin.method.accept_default,
+ compare = builtin.method.compare_default
+}
+
+routing_group {
+ name = "phone",
+ node_type = node.input,
+ accept = builtin.method.accept_phone,
+ compare = builtin.method.compare_phone
+}
+
+routing_group {
+ name = "phone",
+ node_type = node.output,
+ accept = builtin.method.accept_phone,
+ compare = builtin.method.compare_phone
+}
+
+application_class {
+ node_type = node.event,
+ priority = 6,
+ route = {
+ output = routing_group.default_output
+ },
+ roles = { event = no_resource }
+}
+
+application_class {
+ class = "phone",
+ node_type = node.phone,
+ priority = 5,
+ route = {
+ input = routing_group.phone_input,
+ output = routing_group.phone_output
+ },
+ roles = { phone = no_resource, carkit = no_resource }
+}
+
+application_class {
+ node_type = node.alert,
+ priority = 4,
+ route = {
+ output = routing_group.default_output
+ },
+ roles = { ringtone = no_resource, alarm = no_resource }
+}
+
+application_class {
+ class = "navigator",
+ node_type = node.navigator,
+ priority = 3,
+ route = {
+ output = routing_group.default_output
+ },
+ roles = { navigator = {0, "autorelease", "mandatory", "shared"} }
+}
+
+application_class {
+ class = "game",
+ node_type = node.game,
+ priority = 2,
+ route = {
+ output = routing_group.default_output
+ },
+ roles = { game = {0, "mandatory", "exclusive"} }
+}
+
+application_class {
+ class = "player",
+ node_type = node.radio,
+ priority = 1,
+ route = {
+ output = routing_group.default_output
+ },
+ roles = { radio = {1, "mandatory", "exclusive"} },
+}
+
+application_class {
+ class = "player",
+ node_type = node.player,
+ priority = 1,
+ route = {
+ output = routing_group.default_output
+ },
+ roles = { music = {0, "mandatory", "exclusive"},
+ video = {0, "mandatory", "exclusive"},
+ test = {0, "mandatory", "exclusive"}
+ }
+}
+
+application_class {
+ class = "player",
+ node_type = node.browser,
+ priority = 1,
+ route = {
+ output = routing_group.default_output
+ },
+ roles = { animation = {0, "mandatory", "shared"} },
+ binaries = { firefox = {0, "mandatory","exclusive"},
+ chrome = {0, "mandatory", "exclusive"}
+ }
+}
+
+audio_resource {
+ name = { recording = "audio_recording", playback = "audio_playback" },
+ attributes = {
+ role = {"media.role", mdb.string, "music"},
+ pid = {"application.process.id", mdb.string, "<unknown>"}
+ }
+}
+
+mdb.import {
+ table = "speedvol",
+ columns = {"value"},
+ condition = "zone = 'driver' AND device = 'speaker'",
+ maxrow = 1,
+ update = builtin.method.make_volumes
+}
+
+mdb.import {
+ table = "audio_playback_owner",
+ columns = {"zone_id", "application_class", "role"},
+ condition = "zone_name = 'driver'",
+ maxrow = 1,
+ update = function(self)
+ zid = self[1].zone_id
+ if (zid == nil) then zid = "<nil>" end
+ class = self[1].application_class
+ if (class == nil) then class = "<nil>" end
+ role = self[1].role
+ if (role == nil) then role = "<nil>" end
+-- print("*** import "..self.table.." update: zone:"..zid.." class:"..class.." role:"..role)
+ end
+}
+
+mdb.import {
+ table = "amb_shift_position",
+ columns = {"shift_position"},
+ condition = "id = 0",
+ maxrow = 1,
+ update = builtin.method.make_volumes
+}
+
+volume_limit {
+ name = "speed_adjust",
+ type = volume_limit.generic,
+ limit = mdb.import.speedvol:link(1,"value"),
+ calculate = builtin.method.volume_correct
+}
+
+volume_limit {
+ name = "suppress",
+ type = volume_limit.class,
+ limit = -20;
+ node_type = { node.phone, node.navigator },
+ calculate = builtin.method.volume_supress
+}
+
+volume_limit {
+ name = "video",
+ type = volume_limit.class,
+ limit = -90,
+ node_type = { node.player, node.game },
+ calculate = function(self, class, device)
+-- print("*** limit "..self.name.." class:"..class.." stream:"..device.name)
+ position = mdb.import.amb_shift_position[1].shift_position
+ if (position and position == 128) then
+ return self.limit
+ end
+ return 0
+ end
+}
+
+
diff --git a/common/pulse/system.pa b/common/pulse/system.pa
new file mode 100755
index 0000000..49e7687
--- /dev/null
+++ b/common/pulse/system.pa
@@ -0,0 +1,64 @@
+#!/usr/bin/pulseaudio -nF
+#
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it 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-hal-detect.so
+#load-module module-hal-detect
+.else
+### Use the static hardware detection module (for systems that lack udev/hal support)
+load-module module-detect
+.endif
+
+### Load several protocols
+.ifexists module-esound-protocol-unix.so
+load-module module-esound-protocol-unix
+.endif
+load-module module-native-protocol-unix
+
+load-module module-bluetooth-discover
+
+### Custom policy module to route between bt<=speaker
+load-module module-policy
+
+### 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
+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
+
+### Automatically suspend sinks/sources that become idle for too long
+load-module module-suspend-on-idle
+
+### Enable positioned event sounds
+#load-module module-position-event-sounds
+
+### Set default source (not to use alsa_sink monitor which is index 0)
+set-default-source alsa_input.0.analog-stereo
+
+load-module module-remap-sink sink_name=mono_alsa master=alsa_output.0.analog-stereo channels=1
diff --git a/packaging/system-adaptation-pandaboard.spec b/packaging/system-adaptation-pandaboard.spec
index 6a4215a..a2b224a 100644
--- a/packaging/system-adaptation-pandaboard.spec
+++ b/packaging/system-adaptation-pandaboard.spec
@@ -34,6 +34,7 @@ Xorg server misc package which contains device specific configuration files
%install
mkdir -p %{buildroot}/usr/share/license
+rm -rf %{buildroot}/etc/pulse/*
cp -af COPYING %{buildroot}/usr/share/license/%{name}-emulfb
@@ -44,6 +45,8 @@ mkdir -p %{buildroot}/etc/rc.d/init.d
mkdir -p %{buildroot}/etc/rc.d/rc3.d
mkdir -p %{buildroot}/etc/rc.d/rc4.d
mkdir -p %{buildroot}/etc/profile.d
+mkdir -p %{buildroot}/usr/etc
+mkdir -p %{buildroot}/etc/pulse
install -m 755 common/startx %{buildroot}/usr/bin/startx
install -m 755 common/fstab_bak %{buildroot}/etc/fstab_bak
@@ -56,6 +59,17 @@ install -m 755 common/Xorg.sh %{buildroot}/etc/profile.d/Xorg.sh
install -m 755 common/xserver %{buildroot}/etc/rc.d/init.d/xserver
install -m 755 common/alsa-init.sh %{buildroot}/etc/rc.d/init.d/alsa-init.sh
install -m 755 common/xresources %{buildroot}/etc/rc.d/init.d/xresources
+install -m 755 common/asound.conf %{buildroot}/etc/asound.conf
+install -m 755 common/gst-openmax.conf %{buildroot}/usr/etc/gst-openmax.conf
+install -m 755 common/mmfw_player.ini %{buildroot}/usr/etc/mmfw_player.ini
+install -m 755 common/mmfw_camcorder.ini %{buildroot}/usr/etc/mmfw_camcorder.ini
+install -m 755 common/mmfw_camcorder_dev_video_pri.ini %{buildroot}/usr/etc/mmfw_camcorder_dev_video_pri.ini
+install -m 755 common/mmfw_camcorder_dev_video_sec.ini %{buildroot}/usr/etc/mmfw_camcorder_dev_video_sec.ini
+install -m 755 common/pulse/client.conf %{buildroot}/etc/pulse/client.conf
+install -m 755 common/pulse/daemon.conf %{buildroot}/etc/pulse/daemon.conf
+install -m 755 common/pulse/default.pa %{buildroot}/etc/pulse/default.pa
+install -m 755 common/pulse/murphy-ivi.lua %{buildroot}/etc/pulse/murphy-ivi.lua
+install -m 755 common/pulse/system.pa %{buildroot}/etc/pulse/system.pa
ln -s /etc/rc.d/init.d/xserver %{buildroot}/etc/rc.d/rc3.d/S02xserver
@@ -99,6 +113,17 @@ done
/etc/rc.d/rc3.d/*
/etc/rc.d/rc4.d/*
/etc/X11/xorg.conf
+/etc/asound.conf
+/usr/etc/gst-openmax.conf
+/usr/etc/mmfw_player.ini
+/usr/etc/mmfw_camcorder.ini
+/usr/etc/mmfw_camcorder_dev_video_pri.ini
+/usr/etc/mmfw_camcorder_dev_video_sec.ini
+/etc/pulse/client.conf
+/etc/pulse/daemon.conf
+/etc/pulse/default.pa
+/etc/pulse/murphy-ivi.lua
+/etc/pulse/system.pa
%files emulfb