GoPro Camera - Python module made easy.
Project description
# GoPro
**A complete Python GoPro module made easy.**
![GoPro](http://cdn.snowboarding.transworld.net/wp-content/blogs.dir/442/files/2014/09/gopro-hero4-new-camera-black-silver-editions-600x342.png)
At the moment this module only works with the newest GoPro Hero 4.
Sadly the earlier versions of GoPro are not backwards/forwards compatible.
## Install
Easy install with Github or PyPi
Installing the **latest version from GitHub**.
```bash
$ git clone https://github.com/DenisCarriere/gopro.git
$ cd gopro
$ python setup.py install
```
Installing the **tested version from PyPi**.
```bash
$ sudo pip install gopro
```
## Quickstart
Once the installation is complete you are ready to start! :)
The default `IP` address for the GoPro is using `10.5.5.9`.
You must first be connected to the GoProApp Wifi connection.
Launch your favorite `ipython` or standard `python`
```python
>>> from gopro import GoPro
>>> camera = GoPro()
>>> camera.status
{'connection': 'OK',
'datetime': '2014-11-12T23:53:59',
'ip': '10.5.5.9',
'ok': True,
'screen': 'video',
'storage': '31.3 GB',
'time_offset': 'now'}
...
```
## Take a Photo or Video
With very simple commands you can tell your GoPro to start recording or take a photo.
The screen will automaticly change to the approriate page.
```python
>>> camera.photo()
>>> camera.video()
>>> camera.timelapse()
```
## Camera modes
Makes it easy to cycle threw each available modes.
```python
>>> camera.mode('burst')
>>> camera.mode('photo')
>>> camera.mode('timelapse')
>>> camera.mode('video')
...
```
## Locate (Beep! Beep!)
Can't find your device?? Call the locate function and it will Beep endlessly until there is no more battery.
To turn off the beeps, simply press the `mode` button on the device or use the `off` as a parameter.
```python
>>> camera.locate('on')
>>> camera.locate('off')
...
```
## Sleep
The camera will turn itself off, the Wi-Fi will still be active.
At the moment there is no working commands to turn the device back on.
To reactivate the device, press the `mode` button.
```python
>>> camera.sleep()
...
```
## Delete Photos
Might be useful to dump all those photos from your GoPro.
**Warning** once you delete photos/videos you cannot retrieve them back.
The `erase` function does the same as the delete all.
```python
>>> camera.erase()
>>> camera.delete_all()
>>> camera.delete_last()
...
```
## Settings
You can explore the different types of settings & status by getting the raw JSON response or selecting a specific pre-parsed attribute
### Processed attributes
**Status - Screen**
This will let you know which page your GP is currently active.
There are only 4 available outcomes.
```python
>>> camera.status_screen
'settings'
'video'
'photo'
'timelapse'
...
```
### Raw JSON Responses
The original response from the GoPro device.
```python
>>> camera.settings_raw
>>> camera.status_raw
...
```
## Date & Time
It is a good idea to sync your GoPro with the same clock as your computer.
An easy way to do this is use the `datetime` & `time_offset` attribute.
Try to aim your GoPro to have less than 1 second offset.
The `time_offset` is measured in (+/-) seconds.
```python
>>> camera.datetime
'2014-11-12 21:53:09'
>>> camera.datetime_offset
-0.320142
>>> camera.status['offset']
'now'
...
```
## File Storage
Here is how you can retrieve the total file storage in (KB) or pretty human readeable format.
```python
>>> camera.status_storage
31330144
>>> camera.status['storage']
'31.3 GB'
```
## Debug
Want to explore & troubleshoot the device a bit, you can retrieve the following properties from your device.
```python
>>> camera.debug
>>> camera.info
>>> camera.commands
...
```
## Contributors
A big thanks to all the people who have helped contribute!
To be a contributor, please message me with requests on [Twitter](https://twitter.com/DenisCarriere)/[Github issues](https://github.com/DenisCarriere/gopro/issues)
- @[Denis Carriere](https://github.com/DenisCarriere)
- @[Konrad Iturbe](https://github.com/KonradIT)
- @[Jason Moiron](https://github.com/jmoiron)
## License
The MIT License (MIT)
Copyright (c) 2014-2015 Denis Carriere
**A complete Python GoPro module made easy.**
![GoPro](http://cdn.snowboarding.transworld.net/wp-content/blogs.dir/442/files/2014/09/gopro-hero4-new-camera-black-silver-editions-600x342.png)
At the moment this module only works with the newest GoPro Hero 4.
Sadly the earlier versions of GoPro are not backwards/forwards compatible.
## Install
Easy install with Github or PyPi
Installing the **latest version from GitHub**.
```bash
$ git clone https://github.com/DenisCarriere/gopro.git
$ cd gopro
$ python setup.py install
```
Installing the **tested version from PyPi**.
```bash
$ sudo pip install gopro
```
## Quickstart
Once the installation is complete you are ready to start! :)
The default `IP` address for the GoPro is using `10.5.5.9`.
You must first be connected to the GoProApp Wifi connection.
Launch your favorite `ipython` or standard `python`
```python
>>> from gopro import GoPro
>>> camera = GoPro()
>>> camera.status
{'connection': 'OK',
'datetime': '2014-11-12T23:53:59',
'ip': '10.5.5.9',
'ok': True,
'screen': 'video',
'storage': '31.3 GB',
'time_offset': 'now'}
...
```
## Take a Photo or Video
With very simple commands you can tell your GoPro to start recording or take a photo.
The screen will automaticly change to the approriate page.
```python
>>> camera.photo()
>>> camera.video()
>>> camera.timelapse()
```
## Camera modes
Makes it easy to cycle threw each available modes.
```python
>>> camera.mode('burst')
>>> camera.mode('photo')
>>> camera.mode('timelapse')
>>> camera.mode('video')
...
```
## Locate (Beep! Beep!)
Can't find your device?? Call the locate function and it will Beep endlessly until there is no more battery.
To turn off the beeps, simply press the `mode` button on the device or use the `off` as a parameter.
```python
>>> camera.locate('on')
>>> camera.locate('off')
...
```
## Sleep
The camera will turn itself off, the Wi-Fi will still be active.
At the moment there is no working commands to turn the device back on.
To reactivate the device, press the `mode` button.
```python
>>> camera.sleep()
...
```
## Delete Photos
Might be useful to dump all those photos from your GoPro.
**Warning** once you delete photos/videos you cannot retrieve them back.
The `erase` function does the same as the delete all.
```python
>>> camera.erase()
>>> camera.delete_all()
>>> camera.delete_last()
...
```
## Settings
You can explore the different types of settings & status by getting the raw JSON response or selecting a specific pre-parsed attribute
### Processed attributes
**Status - Screen**
This will let you know which page your GP is currently active.
There are only 4 available outcomes.
```python
>>> camera.status_screen
'settings'
'video'
'photo'
'timelapse'
...
```
### Raw JSON Responses
The original response from the GoPro device.
```python
>>> camera.settings_raw
>>> camera.status_raw
...
```
## Date & Time
It is a good idea to sync your GoPro with the same clock as your computer.
An easy way to do this is use the `datetime` & `time_offset` attribute.
Try to aim your GoPro to have less than 1 second offset.
The `time_offset` is measured in (+/-) seconds.
```python
>>> camera.datetime
'2014-11-12 21:53:09'
>>> camera.datetime_offset
-0.320142
>>> camera.status['offset']
'now'
...
```
## File Storage
Here is how you can retrieve the total file storage in (KB) or pretty human readeable format.
```python
>>> camera.status_storage
31330144
>>> camera.status['storage']
'31.3 GB'
```
## Debug
Want to explore & troubleshoot the device a bit, you can retrieve the following properties from your device.
```python
>>> camera.debug
>>> camera.info
>>> camera.commands
...
```
## Contributors
A big thanks to all the people who have helped contribute!
To be a contributor, please message me with requests on [Twitter](https://twitter.com/DenisCarriere)/[Github issues](https://github.com/DenisCarriere/gopro/issues)
- @[Denis Carriere](https://github.com/DenisCarriere)
- @[Konrad Iturbe](https://github.com/KonradIT)
- @[Jason Moiron](https://github.com/jmoiron)
## License
The MIT License (MIT)
Copyright (c) 2014-2015 Denis Carriere
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
gopro-0.0.3.tar.gz
(6.9 kB
view details)
Built Distribution
gopro-0.0.3-py2.py3-none-any.whl
(12.3 kB
view details)
File details
Details for the file gopro-0.0.3.tar.gz
.
File metadata
- Download URL: gopro-0.0.3.tar.gz
- Upload date:
- Size: 6.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab237b4090112b51a1d626ef7e501bf37370d42ac8f6f3a4e804fd9d5bda13e7 |
|
MD5 | 3dfc9c39fc04f4ee1d5d512ab30fd7c3 |
|
BLAKE2b-256 | c61842d761bbe1cb205bc7d69e33c748eb8be04d033a6497aa17290d2e4395cf |
File details
Details for the file gopro-0.0.3-py2.py3-none-any.whl
.
File metadata
- Download URL: gopro-0.0.3-py2.py3-none-any.whl
- Upload date:
- Size: 12.3 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c7641b4e09fb0a92868534743f1efc0bf05ad219b0a597340c6f110fe15a5704 |
|
MD5 | 19d470ee65eb263a32e96f21d9bc754c |
|
BLAKE2b-256 | d2e1ffa259f5a06bab5b1c77bda5012256b984b44d833fd09bd29bd5d9aae171 |