Menu

Skip to content
AppleScriptの穴
  • Home
  • Products
  • Books
  • Docs
  • Events
  • Forum
  • About This Blog
  • License
  • 仕事依頼

AppleScriptの穴

Useful & Practical AppleScript archive. Click '★Click Here to Open This Script' Link to download each AppleScript

FaceTimeカメラから取り込み v1

Posted on 10月 8 by Takaaki Naganoya

MacBook Air/Pro/iMac搭載のFaceTime HDカメラから静止画を取り込むAppleScriptです。

QRコードの画像を取り込んで、QRコードを認識させて、URLを含んでいる場合にはWebブラウザでオープンするといったワークフローを作っておこうかと考えて書いてみました。

ただ、まだ調べ始めて日がないため、取り込み中の画像のプレビューは表示されません。FaceTime HDカメラが点灯して2秒ぐらいで何も言わずに画像取り込みされる無愛想なプログラムになっています。

本当はAVCaptureViewを用いてプレビュー表示が行われることがベストです。アラートダイアログ上にプレビューが表示できれば……そのうち、できるようになるのではないかと。

AppleScript名:FaceTimeカメラから取り込み v1.scptd
—
–  Created by: Takaaki Naganoya
–  Created on: 2025/10/07
—
–  Copyright © 2025 Piyomaru Software, All Rights Reserved
—

use AppleScript version "2.8"
use framework "Foundation"
use framework "AVFoundation"
use scripting additions

property captureSession : missing value
property stillOutput : missing value
property saveURL : missing value

on run
  set aPath to POSIX path of (choose file name)
  
my captureStillImage(aPath)
end run

on captureStillImage(aPath)
  set saveURL to current application’s |NSURL|’s fileURLWithPath:aPath
  
  
— セッション作成
  
set captureSession to current application’s AVCaptureSession’s alloc()’s init()
  
captureSession’s setSessionPreset:(current application’s AVCaptureSessionPresetPhoto)
  
  
— カメラデバイスを取得
  
set device to (current application’s AVCaptureDevice’s defaultDeviceWithMediaType:(current application’s AVMediaTypeVideo))
  
if device = missing value then
    display dialog "カメラが見つかりません。" buttons {"OK"} default button 1
    
return
  end if
  
  
— 入力設定
  
set input to (current application’s AVCaptureDeviceInput’s deviceInputWithDevice:device |error|:(missing value))
  
if input = missing value then
    display dialog "カメラ入力を初期化できません。" buttons {"OK"} default button 1
    
return
  end if
  
  
if (captureSession’s canAddInput:input) as boolean then
    captureSession’s addInput:input
  else
    display dialog "入力を追加できません。" buttons {"OK"} default button 1
    
return
  end if
  
  
  
— 出力設定
  
set stillOutput to current application’s AVCapturePhotoOutput’s alloc()’s init()
  
if (captureSession’s canAddOutput:stillOutput) as boolean then
    captureSession’s addOutput:stillOutput
  else
    display dialog "出力を追加できません。" buttons {"OK"} default button 1
    
return
  end if
  
  
  
— セッション開始
  
captureSession’s startRunning()
  
delay 1 — カメラ起動待機
  
  
— 写真設定
  
set photoSet to (current application’s AVCapturePhotoSettings’s photoSettings)
  
  
— 撮影
  (
stillOutput’s capturePhotoWithSettings:photoSet delegate:me)
  
  
delay 2
  
captureSession’s stopRunning()
end captureStillImage

on captureOutput:(output) didFinishProcessingPhoto:(photo) |error|:err
  if err ≠ missing value then
    display dialog "撮影エラー: " & (err’s localizedDescription() as text)
    
return
  end if
  
set imageData to photo’s fileDataRepresentation()
  
imageData’s writeToURL:saveURL atomically:true
  
display notification "画像を保存しました。" with title "カメラキャプチャ"
end captureOutput:didFinishProcessingPhoto:|error|:

★Click Here to Open This Script 

(Visited 1 times, 1 visits today)
Posted in Image System | Tagged 15.0savvy 26.0savvy | Leave a comment

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

電子書籍(PDF)をオンラインストアで販売中!

Google Search

Popular posts

  • Numbersで選択範囲のセルの前後の空白を削除
  • macOS 26, Tahoe
  • macOS 15でも変化したText to Speech環境
  • KagiのWebブラウザ、Orion
  • Script Debuggerの開発と販売が2025年に終了
  • 【続報】macOS 15.5で特定ファイル名パターンのfileをaliasにcastすると100%クラッシュするバグ
  • macOS 15 リモートApple Eventsにバグ?
  • NSObjectのクラス名を取得 v2.1
  • 2024年に書いた価値あるAppleScript
  • 有害ではなくなっていたSpaces
  • macOS 15:スクリプトエディタのAppleScript用語辞書を確認できない
  • Xcode上のAppleScriptObjCのプログラムから、Xcodeのログ欄へのメッセージ出力を実行
  • (確認中)AppleScript Dropletのバグっぽい動作が解消?
  • AVSpeechSynthesizerで読み上げテスト
  • AppleScript Dropletのバグっぽい動作が「復活」(macOS 15.5β)
  • 指定フォルダ以下の画像のMD5チェックサムを求めて、重複しているものをピックアップ
  • macOS 26, 15.5でShortcuts.app「AppleScriptを実行」アクションのバグが修正される
  • Numbersで選択中の2列のセルを比較して並べ直して書き戻す v2
  • Apple、macOS標準搭載アプリ「写真」のバージョン表記を間違える
  • Script DebuggerがmacOS 15.x上で起動せず→起動

Tags

10.11savvy (1101) 10.12savvy (1242) 10.13savvy (1391) 10.14savvy (587) 10.15savvy (438) 11.0savvy (283) 12.0savvy (212) 13.0savvy (204) 14.0savvy (159) 15.0savvy (153) CotEditor (66) Finder (52) Keynote (119) NSAlert (61) NSArray (51) NSBitmapImageRep (20) NSBundle (20) NSButton (34) NSColor (53) NSDictionary (28) NSFileManager (23) NSFont (21) NSImage (41) NSJSONSerialization (21) NSMutableArray (63) NSMutableDictionary (22) NSPredicate (36) NSRunningApplication (56) NSScreen (30) NSScrollView (22) NSString (119) NSURL (98) NSURLRequest (23) NSUTF8StringEncoding (30) NSView (33) NSWorkspace (20) Numbers (76) Pages (56) Pixelmator Pro (20) Safari (44) Script Editor (27) WKUserContentController (21) WKUserScript (20) WKWebView (23) WKWebViewConfiguration (22)

カテゴリー

  • 2D Bin Packing
  • 3D
  • AirDrop
  • AirPlay
  • Animation
  • AppleScript Application on Xcode
  • Beginner
  • Benchmark
  • beta
  • Bluetooth
  • Books
  • boolean
  • bounds
  • Bug
  • Calendar
  • call by reference
  • check sum
  • Clipboard
  • Cocoa-AppleScript Applet
  • Code Sign
  • Color
  • Custom Class
  • date
  • dialog
  • diff
  • drive
  • Droplet
  • exif
  • file
  • File path
  • filter
  • folder
  • Font
  • Font
  • GAME
  • geolocation
  • GUI
  • GUI Scripting
  • Hex
  • History
  • How To
  • iCloud
  • Icon
  • Image
  • Input Method
  • Internet
  • iOS App
  • JavaScript
  • JSON
  • JXA
  • Keychain
  • Keychain
  • Language
  • Library
  • list
  • Locale
  • Localize
  • Machine Learning
  • Map
  • Markdown
  • Menu
  • Metadata
  • MIDI
  • MIME
  • Natural Language Processing
  • Network
  • news
  • Newt On Project
  • Noification
  • Notarization
  • Number
  • Object control
  • OCR
  • OSA
  • parallel processing
  • PDF
  • Peripheral
  • process
  • PRODUCTS
  • QR Code
  • Raw AppleEvent Code
  • Record
  • rectangle
  • recursive call
  • regexp
  • Release
  • Remote Control
  • Require Control-Command-R to run
  • REST API
  • Review
  • RTF
  • Sandbox
  • Screen Saver
  • Script Libraries
  • Scripting Additions
  • sdef
  • search
  • Security
  • selection
  • shell script
  • Shortcuts Workflow
  • Sort
  • Sound
  • Spellchecker
  • Spotlight
  • SVG
  • System
  • Tag
  • Telephony
  • Text
  • Text to Speech
  • timezone
  • Tools
  • Update
  • URL
  • UTI
  • Web Contents Control
  • WiFi
  • XML
  • XML-RPC
  • イベント(Event)
  • 未分類

アーカイブ

  • 2025年10月
  • 2025年9月
  • 2025年8月
  • 2025年7月
  • 2025年6月
  • 2025年5月
  • 2025年4月
  • 2025年3月
  • 2025年2月
  • 2025年1月
  • 2024年12月
  • 2024年11月
  • 2024年10月
  • 2024年9月
  • 2024年8月
  • 2024年7月
  • 2024年6月
  • 2024年5月
  • 2024年4月
  • 2024年3月
  • 2024年2月
  • 2024年1月
  • 2023年12月
  • 2023年11月
  • 2023年10月
  • 2023年9月
  • 2023年8月
  • 2023年7月
  • 2023年6月
  • 2023年5月
  • 2023年4月
  • 2023年3月
  • 2023年2月
  • 2023年1月
  • 2022年12月
  • 2022年11月
  • 2022年10月
  • 2022年9月
  • 2022年8月
  • 2022年7月
  • 2022年6月
  • 2022年5月
  • 2022年4月
  • 2022年3月
  • 2022年2月
  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月
  • 2021年8月
  • 2021年7月
  • 2021年6月
  • 2021年5月
  • 2021年4月
  • 2021年3月
  • 2021年2月
  • 2021年1月
  • 2020年12月
  • 2020年11月
  • 2020年10月
  • 2020年9月
  • 2020年8月
  • 2020年7月
  • 2020年6月
  • 2020年5月
  • 2020年4月
  • 2020年3月
  • 2020年2月
  • 2020年1月
  • 2019年12月
  • 2019年11月
  • 2019年10月
  • 2019年9月
  • 2019年8月
  • 2019年7月
  • 2019年6月
  • 2019年5月
  • 2019年4月
  • 2019年3月
  • 2019年2月
  • 2019年1月
  • 2018年12月
  • 2018年11月
  • 2018年10月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年6月
  • 2018年5月
  • 2018年4月
  • 2018年3月
  • 2018年2月

https://piyomarusoft.booth.pm/items/301502

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org

Forum Posts

  • 人気のトピック
  • 返信がないトピック

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org
Proudly powered by WordPress
Theme: Flint by Star Verte LLC