<SYSTEM_TASK:>
Given the following text description, write Python code to implement the functionality described below step by step
<END_TASK>
<USER_TASK:>
Description:
 https
Step1:  Guardant una imatge
Step2:  GRAVANT UN VIDEO
Step3:  EFECTES
1. Gravant a màxima ressolució
Step4:  La ressolució mínima és de 64x64, proveu de fer una foto amb aquesta ressolució
2. Afegint texte
Step5:  Es pot ajustar la mida del texte així
Step6:  Les mides vàlides van de 6 a 160. Per defecte és 32.
També es pot ajustar el color del texte
Step7:  3. Ajustant la brillantor i el constrast
Step8:  4. Aplicant efectes
Amb camera.image_effect  pots aplicar un determinat efecte a l'imatge. Les opcions són 
Step9:  Per provar-los tots podem fer
Step10:  Amb camera.awb_mode podeu tocar els nivells de blanc. Les opcions són
Step11:  Amb camera.exposure_mode  podeu tocar el mode d'exposicó. Les opcions són off, auto, night, nightpreview, backlight, spotlight, sports, snow, beach, verylong, fixedfps, antishake, i fireworks. L'opció per defecte és auto.
Step12:  Projecte IoT ->  Fer un piulet amb una foto presa amb la pi-camera
<ASSISTANT_TASK:>
Python Code:
# 10 segons de vídeo.
from picamera import PiCamera
from time import sleep
camera = PiCamera()
camera.start_preview(alpha=200)
sleep(10)
camera.stop_preview()
Explanation: https://www.raspberrypi.org/learning/getting-started-with-picamera/worksheet/
Previsualitzant
End of explanation
# Guardar una imatge
camera.start_preview()
sleep(5)
camera.capture('/home/pi/Desktop/image.jpg')
camera.stop_preview()
# És important posar a dormir com a mínim 2 segons abans  de capturar la imatge.
# 5 imatges seguides
camera.start_preview()
for i in range(5):
    sleep(5)
    camera.capture('/home/pi/Desktop/image{}.jpg'.format(i))
camera.stop_preview()
Explanation: Guardant una imatge
End of explanation
camera.start_preview()
camera.start_recording('/home/pi/video.h264')
sleep(10)
camera.stop_recording()
camera.stop_preview()
Explanation: GRAVANT UN VIDEO
End of explanation
camera.resolution = (2592, 1944)
camera.framerate = 15
camera.start_preview()
sleep(5)
camera.capture('/home/pi/Desktop/max.jpg')
camera.stop_preview()
Explanation: EFECTES
1. Gravant a màxima ressolució
End of explanation
camera.start_preview()
camera.annotate_text = "Hello world!"
sleep(5)
camera.capture('/home/pi/Desktop/text.jpg')
camera.stop_preview()
Explanation: La ressolució mínima és de 64x64, proveu de fer una foto amb aquesta ressolució
2. Afegint texte
End of explanation
camera.annotate_text_size = 50
Explanation: Es pot ajustar la mida del texte així:
End of explanation
from picamera import PiCamera, Color
camera.start_preview()
camera.annotate_background = Color('blue')
camera.annotate_foreground = Color('yellow')
camera.annotate_text = " Hello world "
sleep(5)
camera.stop_preview()
Explanation: Les mides vàlides van de 6 a 160. Per defecte és 32.
També es pot ajustar el color del texte:
End of explanation
# brillantor
camera.start_preview()
for i in range(100):
    camera.annotate_text = "Brightness: {}s".format(i)
    camera.brightness = i
    sleep(0.1)
camera.stop_preview()
# contrast
camera.start_preview()
for i in range(100):
    camera.annotate_text = "Contrast: {}s".format(i)
    camera.contrast = i
    sleep(0.1)
camera.stop_preview()
Explanation: 3. Ajustant la brillantor i el constrast
End of explanation
camera.start_preview()
camera.image_effect = 'colorswap'
sleep(5)
camera.capture('/home/pi/Desktop/colorswap.jpg')
camera.stop_preview()
Explanation: 4. Aplicant efectes
Amb camera.image_effect  pots aplicar un determinat efecte a l'imatge. Les opcions són : none, negative, solarize, sketch, denoise, emboss, oilpaint, hatch, gpen, pastel, watercolor, film, blur, saturation, colorswap, washedout, posterise, colorpoint, colorbalance, cartoon, deinterlace1, i deinterlace2. Proveu-los!!!
End of explanation
camera.start_preview()
for effect in camera.IMAGE_EFFECTS:
    camera.image_effect = effect
    camera.annotate_text = "Effect: {}".format(effect)
    sleep(5)
camera.stop_preview()
Explanation: Per provar-los tots podem fer:
End of explanation
camera.start_preview()
camera.awb_mode = 'sunlight'
sleep(5)
camera.capture('/home/pi/Desktop/sunlight.jpg')
camera.stop_preview()
Explanation: Amb camera.awb_mode podeu tocar els nivells de blanc. Les opcions són: off, auto, sunlight, cloudy, shade, tungsten, fluorescent, incandescent, flash, i horizon. Per defecte el valor és auto.
End of explanation
camera.start_preview()
camera.exposure_mode = 'beach'
sleep(5)
camera.capture('/home/pi/Desktop/beach.jpg')
camera.stop_preview()
Explanation: Amb camera.exposure_mode  podeu tocar el mode d'exposicó. Les opcions són off, auto, night, nightpreview, backlight, spotlight, sports, snow, beach, verylong, fixedfps, antishake, i fireworks. L'opció per defecte és auto.
End of explanation
from twython import Twython
from picamera import PiCamera
from time import sleep
from datetime import datetime
import random
from auth import (
    consumer_key,
    consumer_secret,
    access_token,
    access_token_secret
)
twitter = Twython(
    consumer_key,
    consumer_secret,
    access_token,
    access_token_secret
)
camera = PiCamera()
timestamp = datetime.now().isoformat()
photo_path = '/home/pi/tweeting-babbage/photos/{}.jpg'.format(timestamp)
    sleep(3)
    camera.capture(photo_path)
    with open(photo_path, 'rb') as photo:
        twitter.update_status_with_media(status=message, media=photo)
Explanation: Projecte IoT ->  Fer un piulet amb una foto presa amb la pi-camera:
Requeriments
Twython: 
pip3 install twython
Per configurar l'accés a twitter mireu aquest link:
https://www.raspberrypi.org/learning/getting-started-with-the-twitter-api/
End of explanation
<END_TASK>