Monday 1 July 2013

RPi System B testing notes

Now I am thinking of using the webcam thing to test RPi number 2.  But I forgot what did I do last time.  So I read quickly the fongtoy.py and ftwebcam.py to refresh my memory.

Now I summarized what did I do then.

1. I used fongtoy.py version 1.15 dated 2013jun24 as the main porgram to do the test.

2. The main test program uses the module ftwebcam v0.8 dated 2013jun19.  The following test function is used.

  TestWebcamCamera09

3. The funtion call is repeated below.

  ftwebcam.TestWebcamCamera09(
                              cameraNumber = 0, 
                              imageSize = (1280, 720), 
                              imageCount = 120, 
                              timerSecond = 0.5, 
                              fileName = "file2013jun24hkt1044.bmp")

Now I am going to do it again, to check if the hardware is still working OK.


.END

*** Refreshing memory notes 2013jul01 ***

# fongtoy v1.x 2013

ProgramTitle = "FongToy v1.15 tlfong01 2013jun24"

import sys 
import time 
import smbus 
import pdb 
import spidev 
import wiringpi
import wiringpi2
import RPIO as GPIO  
from RPIO import PWM 
from enum import Enum 
from subprocess import call

import ftgpio
import ftprint
import ftspi
import ftiox
import fteeprom
import ftguzuntypi
import ftdemux
import fttest
import ftadc
import ftwebcam

# *** Troubleshooting functions ***

# *** GPIO tests v1.3 tlfong01 2013may23 ***
# ftgpio.TestLed()
# ftgpio.TestBuzzer()
# ftgpio.TestButtonEchoBuzzer()
# ftgpio.TestButtonEchoLed()

# *** SPI Tests v1.3 tlfong01 2013may23 ***

# ftdemux.TestSelectSpiSlaveDevice(spiChannelNumber = 0, spiChipEnableNumber = 0, spiIoxSubAddress = 0, spiSlaveDeviceNumber = 5)
# fttest.TestDemuxEeprom(mcp23s17SubAddress = 0, eepromDemuxAddress = 2, testStartAddress = 0x0123, testWriteDataByte = 0x5a)
# fttest.TestDemuxEeprom(mcp23s17SubAddress = 0, eepromDemuxAddress = 1, testStartAddress = 0x0123, testWriteDataByte = 0x3b)
# fttest.TestDemuxEeprom(mcp23s17SubAddress = 0, eepromDemuxAddress = 0, testStartAddress = 0x0123, testWriteDataByte = 0x3b)

# ftiox.TestMcp23s17BlinkLed(spiChannelNumber = 0, spiChipEnableNumber = 0, spiChipSubAddress = 0)
# ftdemux.TestSelectSpiSlaveDevice(spiChannelNumber = 0, spiChipEnableNumber = 0, spiIoxSubAddress = 0, spiSlaveDeviceNumber = 5)
# fttest.TestDemuxEeprom(mcp23s17SubAddress = 0, eepromDemuxAddress = 0, testStartAddress = 0x0123, testWriteDataByte = 0x3b)
# fttest.TestDemuxEeprom(mcp23s17SubAddress = 0, eepromDemuxAddress = 1, testStartAddress = 0x0411, testWriteDataByte = 0x4c)
# fttest.TestDemuxGuzuntyClock(mcp23s17SubAddress = 0, guzuntyClockDemuxAddress = 2, secondCount = 10)

# *** Main program ***

# *** Start program message ***
ftprint.StartProgram(ProgramTitle)

# *** Main tests ***

# *** SPI loop back ***
# ftspi.TestSpiLoopBackV01(spiChannelNumber = 0, spiChipEnableNumber = 1, testDataByte = 0x55, testTime = 0.001, testCount = 60000)

# *** ADC ***
# ftadc.TestMcp3208v03() 
# ftadc.TestMcp3201v04()

# *** EEPROM ***
# fteeprom.TestEeporm25Lc256v01(spiChannelNumber = 0, spiChipEnableNumber = 1, startAddress = 0x4100, testDataByte = 0x55)

# *** Mcp23s17 ***
# ftiox.TestMcp23s17BlinkLed(spiChannelNumber = 0, spiChipEnableNumber = 0, spiChipSubAddress = 0)

# *** Demux ***
# ftdemux.TestDemuxV01(spiChannelNumber = 0, spiChipEnableNumber = 0, spiIoxSubAddress = 0, spiSlaveDeviceNumber = 5)

# *** Guzunty Pi Step Motor ***
# ... test functions already moved to ftguzunti.py tlfong01 2013jun10 ...

# *** Webcam ***

# ftwebcam.TestWebcam()
# ftwebcam.TestWebcam01()
# ftwebcam.TestWebcam03(imageHoldSeconds = 10)
# ftwebcam.TestWebcamCamera04()
# ftwebcam.TestWebcamCamera05()
# ftwebcam.TestWebcamCamera06()

# ftwebcam.TestWebcamCamera07()

# ftwebcam.TestWebcamCamera08(cameraNumber = 0, imageSize = (640, 480), imageCount = 10, timerSecond = 1)
# ftwebcam.TestWebcamCamera08(cameraNumber = 1, imageSize = (640, 480), imageCount = 10, timerSecond = 1)
# ftwebcam.TestWebcamCamera08(cameraNumber = 0, imageSize = (1280, 720), imageCount = 10, timerSecond = 1)
# ftwebcam.TestWebcamCamera08(cameraNumber = 1, imageSize = (1280, 720), imageCount = 10, timerSecond = 1)

ftwebcam.TestWebcamCamera09(cameraNumber = 0, imageSize = (1280, 720), imageCount = 120, timerSecond = 0.5, fileName = "file2013jun24hkt1044.bmp")

# *** Stop program message ***

ftprint.StopProgram()

# .END


# ftwebcam v0.8 tlfong01 2013jun19

# *****************************************************************************
# Module - ftwebcam.py
# Description - Test Logitech webcam C920 and C270 
# Reference
#   Pygame.camera Reference - http://www.pygame.org/docs/ref/camera.html
#   Pygame.camera Turorial -  http://www.pygame.org/docs/tut/camera/CameraIntro.html
# Notes
#   Logitech C920 spec
#     Image zise 2MP 16:9 = 1920 * 1080 = 2,073,600
# Benq FP737s 17" LCD Monitor spec 
#     Maximum resoltuion = 1280 x 1024
# Motion setting
#     /etc/motion/motion.conf setting
#       Daemon = off
#       webcam_localhost = on
#     /etc/default/motion setting
#       start_motion_daemon = no

# *****************************************************************************

# *****************************************************************************
# Imports
# *****************************************************************************

import time

import os
import pygame
import pygame.camera
from pygame.locals import *

import ftprint

# *****************************************************************************
# Function - TestWebcam()
# Notes - 
#   * BenQ 737s 17" LCD monitor native Resolution 1280 x 1024
#   * C920 image size = HD1080 (1920 x 1080), HD720 (1280 x 720)
#   * pygame error: No video mode large enough for 1920 x 1080
#   * $ lsusb -d 046d:0825 Logitech Webcam C270
#   * $ lsusb -d 046d:082d Logitech Webcam C920
# *****************************************************************************

Size640x480 = (640, 480)
Size1280x720 = (1280, 720)
Size1280x1024 = (1280, 1024) # ValueError: Destination surface not the correct width or height
Size1920x1080 = (1920, 1080) # pygame.error: No video mode large enough for 1920x1080

def TestWebcamCamera10(cameraNumber, imageSize, imageCount, timerSecond, fileName):

    ftprint.PrintDoubleSpaceLine("*** Sample run begin - TestWebCamCamera08() 2013jun18hkt10:54 ***")    

    pygame.init()
    pygame.camera.init()

    webCamList = pygame.camera.list_cameras()
    webCamCount = len(webCamList)
    print "Number of cameras found = ", webCamCount
    print "Camera used = ", cameraNumber
    print "Image size = (", imageSize[0], ", ", imageSize[1], ")"
    print "Number of images to get = ", imageCount
    print "Time between images (in seconds) = ", timerSecond

    imageSize = Size1280x720 # debug only !!!

    webCamCamera = pygame.camera.Camera(webCamList[int(cameraNumber)], imageSize)
    webCamCamera.start()

    pygame.display.init()
    webCamDisplay = pygame.display.set_mode(imageSize, 0)

    webCamSurface = pygame.surface.Surface(imageSize, 0, webCamDisplay)   

    for count in range(imageCount):

        for event in pygame.event.get(): # Escape key from local keyboard, NOT PuTTY!!!
   if (event.type == QUIT or (event.type == KEYDOWN and event.key == K_ESCAPE)):                                  
                webCamCamera.stop()
                pygame.quit()
return

   if (event.type == KEYDOWN and event.key == K_x):                                  
                webCamCamera.stop()
                pygame.quit()
return

   if (event.type == KEYDOWN and event.key == K_s):  
       fullPathFileName = os.path.join('/home/pi/fongtoy/', fileName)
                pygame.image.save(webCamSurface, fullPathFileName)
print "Image saved"          

if webCamCamera.query_image(): 
            webCamSurface = webCamCamera.get_image(webCamSurface)
            webCamDisplay.blit(webCamSurface, (0,0))
            pygame.display.flip()

        time.sleep(timerSecond)
print "Image number = ", count

    pygame.image.save(webCamSurface, "/home/pi/fongtoy/testImage.bmp")

    print "File name of last image = /home/pi/fongtoy/testImage.bmp", 

    ftprint.PrintDoubleSpaceLine("*** Sample run end ***")

# *** sample call ***
# ftwebcam.TestWebcamCamera09(cameraNumber = 1, 
#                             imageSize = (1280, 720), 
#                             imageCount = 10, 
#                             timerSecond = 1, 
#                             fileName = "file20130618hkt1725.bmp")

def TestWebcamCamera09(cameraNumber, imageSize, imageCount, timerSecond, fileName):

    ftprint.PrintDoubleSpaceLine("*** Sample run begin - TestWebCamCamera08() 2013jun18hkt10:54 ***")    

    pygame.init()
    pygame.camera.init()

    webCamList = pygame.camera.list_cameras()
    webCamCount = len(webCamList)
    print "Number of cameras found = ", webCamCount
    print "Camera used = ", cameraNumber
    print "Image size = (", imageSize[0], ", ", imageSize[1], ")"
    print "Number of images to get = ", imageCount
    print "Time between images (in seconds) = ", timerSecond

    imageSize = Size1280x720 # debug only !!!

    webCamCamera = pygame.camera.Camera(webCamList[int(cameraNumber)], imageSize)
    webCamCamera.start()

    pygame.display.init()
    webCamDisplay = pygame.display.set_mode(imageSize, 0)

    webCamSurface = pygame.surface.Surface(imageSize, 0, webCamDisplay)   

    for count in range(imageCount):

        for event in pygame.event.get(): # Escape key from local keyboard, NOT PuTTY!!!
   if (event.type == QUIT or (event.type == KEYDOWN and event.key == K_ESCAPE)):                                  
                webCamCamera.stop()
                pygame.quit()
return

   if (event.type == KEYDOWN and event.key == K_x):                                  
                webCamCamera.stop()
                pygame.quit()
return

   if (event.type == KEYDOWN and event.key == K_s):  
       fullPathFileName = os.path.join('/home/pi/fongtoy/', fileName)
                pygame.image.save(webCamSurface, fullPathFileName)
print "Image saved"          

if webCamCamera.query_image(): 
            webCamSurface = webCamCamera.get_image(webCamSurface)
            webCamDisplay.blit(webCamSurface, (0,0))
            pygame.display.flip()

        time.sleep(timerSecond)
print "Image number = ", count

    pygame.image.save(webCamSurface, "/home/pi/fongtoy/testImage.bmp")

    print "File name of last image = /home/pi/fongtoy/testImage.bmp", 

    ftprint.PrintDoubleSpaceLine("*** Sample run end ***")

def TestWebcamCamera08(cameraNumber, imageSize, imageCount, timerSecond):

    ftprint.PrintDoubleSpaceLine("*** Sample run begin - TestWebCamCamera09() 2013jun18hkt16:48 ***")    

    pygame.init()
    pygame.camera.init()

    webCamList = pygame.camera.list_cameras()
    webCamCount = len(webCamList)

    print "Number of cameras found = ", webCamCount
    print "Camera used = ", cameraNumber
    print "Image size = (", imageSize[0], ", ", imageSize[1], ")"
    print "Number of images to get = ", imageCount
    print "Time between images (in seconds) = ", timerSecond

    webCamCamera = pygame.camera.Camera(webCamList[int(cameraNumber)], imageSize)
    webCamCamera.start()

    pygame.display.init()
    webCamDisplay = pygame.display.set_mode(imageSize, 0)

    webCamSurface = pygame.surface.Surface(imageSize, 0, webCamDisplay)   

    for count in range(imageCount):

        for event in pygame.event.get(): # Escape key from local keyboard, NOT PuTTY!!!
   if (event.type == QUIT or 
       (event.type == KEYDOWN and event.key == K_ESCAPE) or
                (event.type == KEYDOWN and event.key == K_x)):                                  
                webCamCamera.stop()
                pygame.quit()
return
        
if webCamCamera.query_image(): 
            webCamSurface = webCamCamera.get_image(webCamSurface)
            webCamDisplay.blit(webCamSurface, (0,0))
            pygame.display.flip()

        time.sleep(timerSecond)
print "Image number = ", count

    pygame.image.save(webCamSurface, "/home/pi/fongtoy/testImage.bmp")

    print "File name of last image = /home/pi/fongtoy/testImage.bmp", 

    ftprint.PrintDoubleSpaceLine("*** Sample run end ***")

# *** Sample call ***

# ftwebcam.TestWebcamCamera08(cameraNumber = 0, imageSize = (640, 480), imageCount = 10, timerSecond = 1)
# ftwebcam.TestWebcamCamera08(cameraNumber = 1, imageSize = (640, 480), imageCount = 10, timerSecond = 1)
# ftwebcam.TestWebcamCamera08(cameraNumber = 0, imageSize = (1280, 720), imageCount = 10, timerSecond = 1)
# ftwebcam.TestWebcamCamera08(cameraNumber = 1, imageSize = (1280, 720), imageCount = 10, timerSecond = 1)

# ** Sample output ***

# pi@raspberrypi ~/fongtoy $ sudo python fongtoy.py
# *** Start Program - FongToy v1.12 tlfong01 2013jun18 ***
# *** Sample run begin - TestWebCamCamera08() 2013jun18hkt10:54 ***
# ALSA lib pcm_dmix.c:1018:(snd_pcm_dmix_open) unable to open slave
# Number of cameras found =  2
# Camera used =  1
# Image size = ( 1280 ,  720 )
# Number of images to get =  10
# Time between images (in seconds) =  1
# Image number =  0
# Image number =  1
# Image number =  2
# Image number =  3
# Image number =  4
# Image number =  5
# Image number =  6
# Image number =  7
# Image number =  8
# Image number =  9
# File name of last image = /home/pi/fongtoy/testImage.bmp
# *** Sample run end ***
# *** Stop Program ***
# pi@raspberrypi ~/fongtoy $ date
# Tue Jun 18 05:27:42 UTC 2013



def TestWebcamCamera07():

    ftprint.PrintDoubleSpaceLine("*** Sample run begin - TestWebCamCamera07() 2013jun17hkt21:36 ***")    
       
    # imageSize = Size1920x1080 # pygame.error: No video mode large enough for 1920x1080

    imageSize = Size1280x1024

    # imageSize = Size1280x720


    print "Image size = (", imageSize[0], ", ", imageSize[1], ")"

    pygame.init()
    pygame.camera.init()

    webCamList = pygame.camera.list_cameras()
    webCamCount = len(webCamList)
    print "Number of web cameras found = ", webCamCount

    webCamNumber = raw_input("Enter camera number now: ")
    webCamCamera = pygame.camera.Camera(webCamList[int(webCamNumber)], imageSize)
    webCamCamera.start()

    pygame.display.init()
    webCamDisplay = pygame.display.set_mode(imageSize, 0)

    webCamSurface = pygame.surface.Surface(imageSize, 0, webCamDisplay)   

    while True:
        for event in pygame.event.get(): # Escape key from local keyboard, NOT PuTTY!!!
   if (event.type == QUIT or (event.type == KEYDOWN and event.key == K_ESCAPE)):                                  
                webCamCamera.stop()
                pygame.quit()
return
        
if webCamCamera.query_image(): 
            webCamSurface = webCamCamera.get_image(webCamSurface)
            webCamDisplay.blit(webCamSurface, (0,0))
            pygame.display.flip()

    ftprint.PrintDoubleSpaceLine("*** Sample run end ***")



def TestWebcamCamera06():

    ftprint.PrintDoubleSpaceLine("*** Sample run begin - TestWebCamCamera06() 2013jun16hkt21:18 ***")    
       
    Size640x480 = (640, 480)

    pygame.init()
    pygame.camera.init()

    webCamList = pygame.camera.list_cameras()
    webCamCount = len(webCamList)
    print "Number of web cameras found = ", webCamCount

    webCamNumber = raw_input("Enter camera number now: ")
    webCamCamera = pygame.camera.Camera(webCamList[int(webCamNumber)], Size640x480)
    webCamCamera.start()

    pygame.display.init()
    webCamDisplay = pygame.display.set_mode(Size640x480, 0)

    webCamSurface = pygame.surface.Surface(Size640x480, 0, webCamDisplay)   

    while True:
        for event in pygame.event.get(): # Escape key from local keyboard, NOT PuTTY!!!
   if (event.type == QUIT or (event.type == KEYDOWN and event.key == K_ESCAPE)):                                  
                webCamCamera.stop()
                pygame.quit()
return
        
if webCamCamera.query_image(): 
            webCamSurface = webCamCamera.get_image(webCamSurface)
            webCamDisplay.blit(webCamSurface, (0,0))
            pygame.display.flip()

    ftprint.PrintDoubleSpaceLine("*** Sample run end ***")


# *** Old functions ***********************************************************

def TestWebcamCamera05():

    ftprint.PrintDoubleSpaceLine("*** Sample run begin - TestWebCamCamera05() 2013jun15hkt12:07 ***")    
       
    Size640x480 = (640, 480)
    Size1280x1024 = (1280, 1024)
    Size1920x1024 = (1920, 1024)

    pygame.init()
    pygame.camera.init()

    webCamList = pygame.camera.list_cameras()
    webCamCount = len(webCamList)
    print "Number of web cameras found = ", webCamCount

    webCamNumber = raw_input("Enter camera number now: ")
    webCamCamera = pygame.camera.Camera(webCamList[int(webCamNumber)], Size640x480)
    webCamCamera.start()

    pygame.display.init()
    webCamDisplay = pygame.display.set_mode(Size640x480, 0)

    webCamSurface = pygame.surface.Surface(Size640x480, 0, webCamDisplay)   

    quitOrEscapeKeyPressed = False

    while not(quitOrEscapeKeyPressed):
        inputEvents = pygame.event.get()
        for e in inputEvents:
   if (e.type == QUIT or (e.type == KEYDOWN and e.key == K_ESCAPE)): # !!! Not working !!!                                   
                quitOrEscapeKeyPressed = True
break
        if quitOrEscapeKeyPressed:  # !!! Not working !!!  
            webCamCamera.stop()
            pygame.quit()
        else:
   if webCamCamera.query_image(): # !!! This part OK !!!
                webCamSurface = webCamCamera.get_image(webCamSurface)
                webCamDisplay.blit(webCamSurface, (0,0))
                pygame.display.flip()

    ftprint.PrintDoubleSpaceLine("*** Sample run end ***")


def TestWebcam03(imageHoldSeconds):

    ftprint.PrintDoubleSpaceLine("*** Sample run begin - Test web cam 2013jun12hkt16:23 ***")    
       
    Size640x480 = (640, 480)
    Size1280x1024 = (1280, 1024)
    Size1920x1024 = (1920, 1024)

    pygame.init()
    pygame.camera.init()

    webCamList = pygame.camera.list_cameras()
    if webCamList:
        print "List of available cameras = ", webCamList
    else:
        print "!!! No camera!!! "

    # webCam = pygame.camera.Camera(webCamList[0], Size1280x1024)
    webCam = pygame.camera.Camera(webCamList[0], Size640x480)
    webCam.start()

    pygame.display.init()
    # webCamDisplay = pygame.display.set_mode(Size1280x1024, 0)
    webCamDisplay = pygame.display.set_mode(Size640x480, 0)

    # webCamSurface = pygame.surface.Surface(Size1280x1024, 0, webCamDisplay)     
    webCamSurface = pygame.surface.Surface(Size640x480, 0, webCamDisplay)   

    webCamSurface = webCam.get_image(webCamSurface)
    time.sleep(0.1)
    
    webCamDisplay.blit(webCamSurface, (0,0))
    pygame.display.flip()
    time.sleep(imageHoldSeconds)

    # pygame.image.save(webCamSurface, "/home/pi/fongtoy/testImage.bmp")

    webCam.stop()
    pygame.quit()

    ftprint.PrintDoubleSpaceLine("*** Sample run end ***")


def TestWebcamCamera04():

    ftprint.PrintDoubleSpaceLine("*** Sample run begin - TestWebCamCamera04() 2013jun14hkt21:13 ***")    
       
    Size640x480 = (640, 480)
    Size1280x1024 = (1280, 1024)
    Size1920x1024 = (1920, 1024)

    pygame.init()
    pygame.camera.init()

    webCamList = pygame.camera.list_cameras()
    if webCamList:
        print "List of available cameras = ", webCamList
    else:
        print "!!! No camera!!! "

    # webCam = pygame.camera.Camera(webCamList[0], Size1280x1024)
    webCamCamera = pygame.camera.Camera(webCamList[0], Size640x480)
    webCamCamera.start()

    pygame.display.init()
    # webCamDisplay = pygame.display.set_mode(Size1280x1024, 0)
    webCamDisplay = pygame.display.set_mode(Size640x480, 0)

    # webCamSurface = pygame.surface.Surface(Size1280x1024, 0, webCamDisplay)     
    webCamSurface = pygame.surface.Surface(Size640x480, 0, webCamDisplay)   

    while True:
        if webCamCamera.query_image():
            webCamSurface = webCamCamera.get_image(webCamSurface)
            webCamDisplay.blit(webCamSurface, (0,0))
            pygame.display.flip()

    # pygame.image.save(webCamSurface, "/home/pi/fongtoy/testImage.bmp")

    webCamCamera.stop()
    pygame.quit()

    ftprint.PrintDoubleSpaceLine("*** Sample run end ***")

def TestWebcam03(imageHoldSeconds):

    ftprint.PrintDoubleSpaceLine("*** Sample run begin - Test web cam 2013jun12hkt16:23 ***")    
       
    Size640x480 = (640, 480)
    Size1280x1024 = (1280, 1024)
    Size1920x1024 = (1920, 1024)

    pygame.init()
    pygame.camera.init()

    webCamList = pygame.camera.list_cameras()
    if webCamList:
        print "List of available cameras = ", webCamList
    else:
        print "!!! No camera!!! "

    # webCam = pygame.camera.Camera(webCamList[0], Size1280x1024)
    webCam = pygame.camera.Camera(webCamList[0], Size640x480)
    webCam.start()

    pygame.display.init()
    # webCamDisplay = pygame.display.set_mode(Size1280x1024, 0)
    webCamDisplay = pygame.display.set_mode(Size640x480, 0)

    # webCamSurface = pygame.surface.Surface(Size1280x1024, 0, webCamDisplay)     
    webCamSurface = pygame.surface.Surface(Size640x480, 0, webCamDisplay)   

    webCamSurface = webCam.get_image(webCamSurface)
    time.sleep(0.1)
    
    webCamDisplay.blit(webCamSurface, (0,0))
    pygame.display.flip()
    time.sleep(imageHoldSeconds)

    # pygame.image.save(webCamSurface, "/home/pi/fongtoy/testImage.bmp")

    webCam.stop()
    pygame.quit()

    ftprint.PrintDoubleSpaceLine("*** Sample run end ***")


def TestWebcam():

    ftprint.PrintDoubleSpaceLine("*** Sample run begin - Test web cam 2013jun12hkt16:23 ***")    
    
    webCamWidth  = 640
    webCamHeight = 480

    webCamWidth  = 1920
    webCamHeight = 1024

    pygame.init()
    pygame.camera.init()

    webCamList = pygame.camera.list_cameras()
    if webCamList:
        print "List of available cameras = ", webCamList
        webCam = pygame.camera.Camera(webCamList[0],(webCamWidth, webCamHeight))

    webCam.start()

    imageSurface = webCam.get_image()

    pygame.image.save(imageSurface, "/home/pi/fongtoy/testImage.bmp")

    webCam.stop()
    pygame.quit()

    ftprint.PrintDoubleSpaceLine("*** Sample run end ***")


def TestWebcam01():

    # *** Program begin message ***

    ftprint.PrintDoubleSpaceLine("*** Sample run begin - Test web cam 2013jun12hkt16:23 ***")    
       
    # *** Image/Display size ***

    # * Vga *

    VgaSize = (640, 480)

    # * Logitech C920 *

    LogitechC920size = (1920, 1024)

    # *** initialize pygame.camera module ***

    pygame.init()
    pygame.camera.init()

    pygame.display.get_wm_info()

    # *** Create and start webcam object ***

    webCamList = pygame.camera.list_cameras()
    if webCamList:
        print "List of available cameras = ", webCamList
    else:
        print "!!! No camera!!! "

    webCam = pygame.camera.Camera(webCamList[0],VgaSize)
    webCam.start()

    # *** Create a display  ***

    pygame.display.init()
    webCamDisplay = pygame.display.set_mode(VgaSize, 0)

    # *** Create a surface  ***

    webCamSurface = pygame.surface.Surface(VgaSize, 0, webCamDisplay)     

    # *** Get surface ***

    webCamSurface = webCam.get_image(webCamSurface)
    time.sleep(0.1)
    
    # *** Display surface ***

    webCamDisplay.blit(webCamSurface, (0,0))
    pygame.display.flip()
    time.sleep(1)

    # *** Save surface as a BMP file ***
    # pygame.image.save(webCamSurface, "/home/pi/fongtoy/testImage.bmp")

    # *** stop webcam, quit pygame ***

    webCam.stop()
    pygame.quit()

    # *** Print program end message ***

    ftprint.PrintDoubleSpaceLine("*** Sample run end ***")

# .END

.END

No comments:

Post a Comment