harmattan/cameraplus
11 years agoAdded notification when focus gets acquired
Mohammed Sameer [Sat, 15 Dec 2012 01:15:10 +0000 (03:15 +0200)]
Added notification when focus gets acquired

11 years agoDon't try to unregister the status handlers unless we have a device and listener.
Mohammed Sameer [Fri, 14 Dec 2012 22:36:15 +0000 (00:36 +0200)]
Don't try to unregister the status handlers unless we have a device and listener.
This avoids a crash.

11 years agoDecrease the size of the corners a bit
Mohammed Sameer [Fri, 14 Dec 2012 21:59:29 +0000 (23:59 +0200)]
Decrease the size of the corners a bit

11 years agoHide focus reticle if we cannot focus while a particular scene mode is active
Mohammed Sameer [Fri, 14 Dec 2012 21:57:06 +0000 (23:57 +0200)]
Hide focus reticle if we cannot focus while a particular scene mode is active

11 years agoblink reticle during focusing and show colors to indicate status of focus
Mohammed Sameer [Fri, 14 Dec 2012 21:10:28 +0000 (23:10 +0200)]
blink reticle during focusing and show colors to indicate status of focus

11 years agoChange AutoFocus status when start or stop autoFocus gets called. Backend doesn't...
Mohammed Sameer [Fri, 14 Dec 2012 21:09:50 +0000 (23:09 +0200)]
Change AutoFocus status when start or stop autoFocus gets called. Backend doesn't do it

11 years agoonly do auto focus if caf has not succedded
Mohammed Sameer [Fri, 14 Dec 2012 20:36:13 +0000 (22:36 +0200)]
only do auto focus if caf has not succedded

11 years agoAdded auto focus starting and stopping.
Mohammed Sameer [Fri, 14 Dec 2012 20:33:09 +0000 (22:33 +0200)]
Added auto focus starting and stopping.

A long press should start auto focus, releasing finger outside capture button will
stop it. Also stop it when we get the preview image.

11 years agoAdded a custom Button (CaptureButton) to expose more properties and signals
Mohammed Sameer [Fri, 14 Dec 2012 20:32:37 +0000 (22:32 +0200)]
Added a custom Button (CaptureButton) to expose more properties and signals

11 years agoHandling failure to acquire recording resources now works
Mohammed Sameer [Fri, 14 Dec 2012 20:31:27 +0000 (22:31 +0200)]
Handling failure to acquire recording resources now works

11 years agoMoved all image capture logic to its own function
Mohammed Sameer [Fri, 14 Dec 2012 17:58:24 +0000 (19:58 +0200)]
Moved all image capture logic to its own function

11 years agoDon't turn reticle into red if CAF fails.
Mohammed Sameer [Fri, 14 Dec 2012 17:46:25 +0000 (19:46 +0200)]
Don't turn reticle into red if CAF fails.

11 years agoAdded a focus reticle. It indicates CAF status only for now.
Mohammed Sameer [Fri, 14 Dec 2012 17:10:52 +0000 (19:10 +0200)]
Added a focus reticle. It indicates CAF status only for now.

11 years agoCleaned up debugging output
Mohammed Sameer [Thu, 13 Dec 2012 23:08:59 +0000 (01:08 +0200)]
Cleaned up debugging output

11 years agoDon't release resources on pipeline error.
Mohammed Sameer [Thu, 13 Dec 2012 23:06:38 +0000 (01:06 +0200)]
Don't release resources on pipeline error.

11 years agoAdded a label below the camera icon in standby page to indicate that resources were...
Mohammed Sameer [Thu, 13 Dec 2012 23:05:58 +0000 (01:05 +0200)]
Added a label below the camera icon in standby page to indicate that resources were lost and killed the banner

11 years agoDon't ignore errors while stopping the pipeline.
Mohammed Sameer [Thu, 13 Dec 2012 22:45:35 +0000 (00:45 +0200)]
Don't ignore errors while stopping the pipeline.
This reverts commit 4b5634ce74ce85fbf0a5dbbcf85bd89bc3b1b42e manually.

11 years agoReworking resource policy and pipeline handling to use states and transitions
Mohammed Sameer [Thu, 13 Dec 2012 02:01:10 +0000 (04:01 +0200)]
Reworking resource policy and pipeline handling to use states and transitions

11 years agoDon't show an error if we lose resources and window is not active
Mohammed Sameer [Wed, 12 Dec 2012 23:59:34 +0000 (01:59 +0200)]
Don't show an error if we lose resources and window is not active

11 years agostop camera and show error if resources get hijacked not released
Mohammed Sameer [Wed, 12 Dec 2012 23:57:21 +0000 (01:57 +0200)]
stop camera and show error if resources get hijacked not released

11 years agoAdded TrackerStore to be used for creating a virtual file before image/video gets...
Mohammed Sameer [Wed, 12 Dec 2012 22:28:29 +0000 (00:28 +0200)]
Added TrackerStore to be used for creating a virtual file before image/video gets saved

Also some fixes for post capture

11 years agoAdded TODO about camera freezing when closed while recording
Mohammed Sameer [Wed, 12 Dec 2012 16:07:06 +0000 (18:07 +0200)]
Added TODO about camera freezing when closed while recording

11 years agoFixes for recording duration:
Mohammed Sameer [Wed, 12 Dec 2012 15:49:46 +0000 (17:49 +0200)]
Fixes for recording duration:
1) Don't set triggeredOnStart otherwise we always start with 1 second shown in the label
2) Fix for "ReferenceError: Can't find variable: duration"
3) Don't reset duration value when timer starts (Not needed)

11 years agoReplace the topmost rectangle with a ToolBar and show creation time
Mohammed Sameer [Wed, 12 Dec 2012 15:41:45 +0000 (17:41 +0200)]
Replace the topmost rectangle with a ToolBar and show creation time

11 years agoPostCapturePage can now play video
Mohammed Sameer [Tue, 11 Dec 2012 19:21:40 +0000 (21:21 +0200)]
PostCapturePage can now play video

11 years agoReworked and simplified.
Mohammed Sameer [Tue, 11 Dec 2012 13:19:24 +0000 (15:19 +0200)]
Reworked and simplified.

We now just use the QuillFile image directly for painting.

11 years agoReworked
Mohammed Sameer [Tue, 11 Dec 2012 02:29:52 +0000 (04:29 +0200)]
Reworked

11 years agohandle the case when page doesn't need pipeline
Mohammed Sameer [Tue, 11 Dec 2012 02:29:15 +0000 (04:29 +0200)]
handle the case when page doesn't need pipeline

11 years agoSet default camera mode to image
Mohammed Sameer [Tue, 11 Dec 2012 01:01:52 +0000 (03:01 +0200)]
Set default camera mode to image

11 years agoReworked video recording
Mohammed Sameer [Mon, 10 Dec 2012 00:16:33 +0000 (02:16 +0200)]
Reworked video recording
We now have a dedicated RecordingPage.
This greatly simplifies policy handling.

11 years agoobsolete TODO items
Mohammed Sameer [Sun, 9 Dec 2012 14:19:43 +0000 (16:19 +0200)]
obsolete TODO items

11 years agoDon't show standby widget if the page is not active.
Mohammed Sameer [Sun, 9 Dec 2012 03:13:40 +0000 (05:13 +0200)]
Don't show standby widget if the page is not active.

11 years agoCall handlePipeline() when we acquire resources.
Mohammed Sameer [Sun, 9 Dec 2012 03:10:36 +0000 (05:10 +0200)]
Call handlePipeline() when we acquire resources.

CameraResources is synchronous.
If we are moving from a page to a page and both have acquired resources then
we will not get any signals from CameraResources

11 years agoReworking PostCapture
Mohammed Sameer [Sun, 9 Dec 2012 01:01:14 +0000 (03:01 +0200)]
Reworking PostCapture

11 years agoset pathItem to 1 and modify the path line accordingly
Mohammed Sameer [Sat, 8 Dec 2012 22:57:44 +0000 (00:57 +0200)]
set pathItem to 1 and modify the path line accordingly

having 3 items for the path line will make the UI more smooth but
it will cost us a lot of start up time.

11 years agoStop viewfinder after the pipeline reaches idle state.
Mohammed Sameer [Sat, 8 Dec 2012 22:50:41 +0000 (00:50 +0200)]
Stop viewfinder after the pipeline reaches idle state.

It might be that a frame arrives after we stop the viewfinder but before
we stop the pipeline.
That frame will reinitialize the viewfinder again

11 years agoStop viewfinder if there is an error
Mohammed Sameer [Sat, 8 Dec 2012 22:49:55 +0000 (00:49 +0200)]
Stop viewfinder if there is an error

11 years agoMove PostCapture delegate to its own component
Mohammed Sameer [Sat, 8 Dec 2012 21:47:40 +0000 (23:47 +0200)]
Move PostCapture delegate to its own component

11 years agoDon't show the error unless page is Active
Mohammed Sameer [Sat, 8 Dec 2012 20:38:44 +0000 (22:38 +0200)]
Don't show the error unless page is Active

11 years agoupdate() is a signal not a slot. Use the correct macro
Mohammed Sameer [Sat, 8 Dec 2012 18:38:46 +0000 (20:38 +0200)]
update() is a signal not a slot. Use the correct macro

11 years agoVideoTorch and VideoMute are now properties of Camera
Mohammed Sameer [Sat, 8 Dec 2012 18:06:38 +0000 (20:06 +0200)]
VideoTorch and VideoMute are now properties of Camera

Renamed Mute to VideoMute
VideoTorch state is now stored and restored upon startup

11 years agoReworked QML capabilities.
Mohammed Sameer [Sat, 8 Dec 2012 17:01:49 +0000 (19:01 +0200)]
Reworked QML capabilities.

various capabilities are now properties of Camera and cannot be constructed
manually.
This fixes the issue with various properties not being set correctly upon startup.

11 years agoCode cleanup
Mohammed Sameer [Fri, 7 Dec 2012 23:59:44 +0000 (01:59 +0200)]
Code cleanup

11 years agoresetting Camera will cause the mode to be changed.
Mohammed Sameer [Fri, 7 Dec 2012 23:34:59 +0000 (01:34 +0200)]
resetting Camera will cause the mode to be changed.

main component reacts to that so let's move the code to the main component's onCompleted

11 years agoDon't try to show a page upon startup
Mohammed Sameer [Fri, 7 Dec 2012 23:32:55 +0000 (01:32 +0200)]
Don't try to show a page upon startup

Camera will emit modeChanged() when the mode gets changed during startup
and this is used to set the correct page

11 years agoOne cannot set mode and deviceId. Use camera::reset() instead.
Mohammed Sameer [Fri, 7 Dec 2012 23:25:54 +0000 (01:25 +0200)]
One cannot set mode and deviceId. Use camera::reset() instead.

This will simplify the code for QML bindings.

11 years agoAdded AutoFocus QML component
Mohammed Sameer [Wed, 31 Oct 2012 01:15:41 +0000 (03:15 +0200)]
Added AutoFocus QML component

11 years agoMerged QtCamCaf and QtCamAutoFocus
Mohammed Sameer [Wed, 31 Oct 2012 00:57:53 +0000 (02:57 +0200)]
Merged QtCamCaf and QtCamAutoFocus

11 years agoAdded QtCamAutoFocus
Mohammed Sameer [Wed, 31 Oct 2012 00:14:50 +0000 (02:14 +0200)]
Added QtCamAutoFocus

11 years agoAdded QtCamCaf to get the status of continuous auto focus
Mohammed Sameer [Tue, 30 Oct 2012 00:48:31 +0000 (02:48 +0200)]
Added QtCamCaf to get the status of continuous auto focus

11 years agoAdded Focus classes
Mohammed Sameer [Sun, 28 Oct 2012 22:15:22 +0000 (00:15 +0200)]
Added Focus classes

11 years agoAdded updated() signal to be used to detect change of optional resources.
Mohammed Sameer [Sat, 27 Oct 2012 00:05:44 +0000 (03:05 +0300)]
Added updated() signal to be used to detect change of optional resources.

11 years agoReworked CameraResources to be synchronous.
Mohammed Sameer [Sat, 20 Oct 2012 01:23:57 +0000 (04:23 +0300)]
Reworked CameraResources to be synchronous.

We also stop the camera when needed appropriately

11 years agoAdded an optional force parameter to Camera::stop()
Mohammed Sameer [Sat, 20 Oct 2012 00:54:48 +0000 (03:54 +0300)]
Added an optional force parameter to Camera::stop()

11 years agoQtCamDevice::stop() now takes a bool to force stopping
Mohammed Sameer [Sat, 20 Oct 2012 00:53:32 +0000 (03:53 +0300)]
QtCamDevice::stop() now takes a bool to force stopping

11 years agoIgnore camera errors while stopping the pipeline.
Mohammed Sameer [Sat, 20 Oct 2012 00:53:24 +0000 (03:53 +0300)]
Ignore camera errors while stopping the pipeline.

11 years agoMove all flash icons to data.js
Mohammed Sameer [Sat, 13 Oct 2012 19:58:58 +0000 (22:58 +0300)]
Move all flash icons to data.js

11 years agoAlways emit the changed signals when we change the scene mode.
Mohammed Sameer [Tue, 9 Oct 2012 21:51:11 +0000 (00:51 +0300)]
Always emit the changed signals when we change the scene mode.

This is to allow reapplying the mode and resetting all settings (Like flash).

11 years agoUse Data.ismIcon() for ImageSceneButton
Mohammed Sameer [Tue, 9 Oct 2012 21:50:49 +0000 (00:50 +0300)]
Use Data.ismIcon() for ImageSceneButton

11 years agoRecord video in a hidden directory then copy it to target directory.
Mohammed Sameer [Tue, 9 Oct 2012 21:31:56 +0000 (00:31 +0300)]
Record video in a hidden directory then copy it to target directory.

This is to avoid tracker indexing the video being recorded and waste CPU time.
The problem with tracker is it keeps getting update events because the file is
being written to. Tracker will ignore them but that still wastes CPU.

11 years agoDropped TODO by mistake during cleanup
Mohammed Sameer [Tue, 9 Oct 2012 21:31:28 +0000 (00:31 +0300)]
Dropped TODO by mistake during cleanup

11 years agoMove Quill initialization to main()
Mohammed Sameer [Mon, 8 Oct 2012 00:02:39 +0000 (03:02 +0300)]
Move Quill initialization to main()

11 years agoQuery the minimum, maximum and default values if needed from the GParamSpec objects
Mohammed Sameer [Sun, 7 Oct 2012 23:16:46 +0000 (02:16 +0300)]
Query the minimum, maximum and default values if needed from the GParamSpec objects

11 years agoCode cleanup
Mohammed Sameer [Sun, 7 Oct 2012 21:30:23 +0000 (00:30 +0300)]
Code cleanup

11 years agoAdded mount protector component.
Mohammed Sameer [Sun, 7 Oct 2012 16:07:00 +0000 (19:07 +0300)]
Added mount protector component.

Use it to prevent going to mass storage mode while capturing or recording.

11 years agoRelease resources on error
Mohammed Sameer [Sun, 7 Oct 2012 15:12:26 +0000 (18:12 +0300)]
Release resources on error

11 years agoRecording time indicator should take into account videoControlsVisible for its visibility
Mohammed Sameer [Sun, 7 Oct 2012 15:12:10 +0000 (18:12 +0300)]
Recording time indicator should take into account videoControlsVisible for its visibility

11 years agoUse replacePage() for the initial page setting to prevent having 2 video pages
Mohammed Sameer [Sun, 7 Oct 2012 15:03:34 +0000 (18:03 +0300)]
Use replacePage() for the initial page setting to prevent having 2 video pages

11 years agolow space handling:
Mohammed Sameer [Sun, 7 Oct 2012 00:20:56 +0000 (03:20 +0300)]
low space handling:
1) Don't capture or record if we have less than 100MB free
2) Stop recording if we have less than 100MB free

11 years agoBattery low handling:
Mohammed Sameer [Sat, 6 Oct 2012 21:31:41 +0000 (00:31 +0300)]
Battery low handling:
1) Don't record video or capture images when battery is low
2) Stop video recording when we battery is low

11 years agoAdded a note about PositionSource not resetting the position when we lose the signal
Mohammed Sameer [Sat, 6 Oct 2012 21:01:27 +0000 (00:01 +0300)]
Added a note about PositionSource not resetting the position when we lose the signal

11 years agoStop recording after 1 hour
Mohammed Sameer [Thu, 27 Sep 2012 22:41:37 +0000 (01:41 +0300)]
Stop recording after 1 hour

11 years agoAdd recording indicator and time
Mohammed Sameer [Thu, 27 Sep 2012 22:32:05 +0000 (01:32 +0300)]
Add recording indicator and time

11 years agounref camerabin when we get destroyed
Mohammed Sameer [Thu, 27 Sep 2012 22:31:44 +0000 (01:31 +0300)]
unref camerabin when we get destroyed

11 years agostop the device and delete it when we are being destroyed to avoid accessing it if...
Mohammed Sameer [Thu, 27 Sep 2012 22:29:05 +0000 (01:29 +0300)]
stop the device and delete it when we are being destroyed to avoid accessing it if a camerabin property changes

11 years agoAdjust the font size for the headers in the settings pages
Mohammed Sameer [Thu, 27 Sep 2012 21:18:54 +0000 (00:18 +0300)]
Adjust the font size for the headers in the settings pages

11 years agolock ImagePage orientation to Landscape for now
Mohammed Sameer [Thu, 27 Sep 2012 20:54:56 +0000 (23:54 +0300)]
lock ImagePage orientation to Landscape for now

11 years agoAdded an option to disable (mute) camera sound
Mohammed Sameer [Thu, 27 Sep 2012 20:54:37 +0000 (23:54 +0300)]
Added an option to disable (mute) camera sound

11 years agoFixed for error messages
Mohammed Sameer [Wed, 26 Sep 2012 23:47:11 +0000 (02:47 +0300)]
Fixed for error messages

11 years agoUse blocking playback for video start sound
Mohammed Sameer [Wed, 26 Sep 2012 23:35:24 +0000 (02:35 +0300)]
Use blocking playback for video start sound

11 years agoAdded a sounds component that implements the Notifications interface and is used to
Mohammed Sameer [Wed, 26 Sep 2012 20:26:59 +0000 (23:26 +0300)]
Added a sounds component that implements the Notifications interface and is used to
play platform predefined sounds.

11 years agoindex is still invalid if its row equals the number of resolutions
Mohammed Sameer [Wed, 26 Sep 2012 17:45:53 +0000 (20:45 +0300)]
index is still invalid if its row equals the number of resolutions

11 years agoAdded classes for Notifications (Sound playback use case)
Mohammed Sameer [Sun, 23 Sep 2012 13:23:59 +0000 (16:23 +0300)]
Added classes for Notifications (Sound playback use case)

The main class is QtCamNotifications which emits various signals when
image capture starts and ends and video recording starts and ends.

QML bindings consist of a Notifications interface and a notifications property
for Camera element.

We cannot use simple signals because at least the image capture start notification
gets emitted from another thread for performance reasons.

11 years agoDon't check camera mode if cam is null
Mohammed Sameer [Sun, 23 Sep 2012 00:21:09 +0000 (03:21 +0300)]
Don't check camera mode if cam is null

11 years agoReset the unneeded caps
Mohammed Sameer [Sun, 23 Sep 2012 00:20:05 +0000 (03:20 +0300)]
Reset the unneeded caps

If we don't do it then we fail to restart the pipeline after we switch to image mode.

11 years agoAdded indicators for video and image resolutions
Mohammed Sameer [Sat, 22 Sep 2012 23:07:56 +0000 (02:07 +0300)]
Added indicators for video and image resolutions

11 years agoImplemented video resolution setting
Mohammed Sameer [Sat, 22 Sep 2012 22:41:24 +0000 (01:41 +0300)]
Implemented video resolution setting

11 years agoLoad all resolutions upon model creation.
Mohammed Sameer [Sat, 22 Sep 2012 22:39:16 +0000 (01:39 +0300)]
Load all resolutions upon model creation.

If we don't do so then it becomes impossible to load all of them since m_aspectRatio
will be empty and the only way to load all them is to set the aspectRatio property
to an empty string.
The new property value and the stored one will always be equal in such case.

11 years agosort the presets correctly. high then medium then low
Mohammed Sameer [Sat, 22 Sep 2012 22:00:39 +0000 (01:00 +0300)]
sort the presets correctly. high then medium then low

11 years agoDon't return false if we try to set video resolution and pipeline is not running
Mohammed Sameer [Sat, 22 Sep 2012 21:59:37 +0000 (00:59 +0300)]
Don't return false if we try to set video resolution and pipeline is not running

11 years agoSet the proper resolution when we startup, change aspect ratio or resolution
Mohammed Sameer [Sat, 22 Sep 2012 21:22:23 +0000 (00:22 +0300)]
Set the proper resolution when we startup, change aspect ratio or resolution

11 years agoreturn true if we try to set the resolution and the pipeline is not running
Mohammed Sameer [Sat, 22 Sep 2012 21:22:05 +0000 (00:22 +0300)]
return true if we try to set the resolution and the pipeline is not running

11 years agoDon't try to change the resolution or aspect ratio if camera is busy
Mohammed Sameer [Sat, 22 Sep 2012 21:04:48 +0000 (00:04 +0300)]
Don't try to change the resolution or aspect ratio if camera is busy

11 years agoSettings for aspect ration and resolution can now read from and save to the configuration
Mohammed Sameer [Sat, 22 Sep 2012 20:45:28 +0000 (23:45 +0300)]
Settings for aspect ration and resolution can now read from and save to the configuration

11 years agoSilence g++/moc warnings
Mohammed Sameer [Sat, 22 Sep 2012 10:12:27 +0000 (13:12 +0300)]
Silence g++/moc warnings

11 years agoReworked how resolution is being specified in the configuration.
Mohammed Sameer [Sat, 22 Sep 2012 00:01:47 +0000 (03:01 +0300)]
Reworked how resolution is being specified in the configuration.

Now resolution per camera device can be specified in the configuration.
QtCam*Settings classes hold the profile name and path, suffix and the list of the resolutions.

11 years agoConfiguration file for N9
Mohammed Sameer [Fri, 21 Sep 2012 20:18:20 +0000 (23:18 +0300)]
Configuration file for N9

11 years agoMoved the .gep files to the N9 data directory
Mohammed Sameer [Thu, 20 Sep 2012 22:04:37 +0000 (01:04 +0300)]
Moved the .gep files to the N9 data directory

11 years agoAdded copyright headers and COPYING file.
Mohammed Sameer [Thu, 20 Sep 2012 22:01:34 +0000 (01:01 +0300)]
Added copyright headers and COPYING file.

11 years agoForgot include guards
Mohammed Sameer [Thu, 20 Sep 2012 21:45:12 +0000 (00:45 +0300)]
Forgot include guards