MOTION(1) گزینه‌ها و فایل‌های پیکربندی Motion MOTION(1) نام (NAME) motion - برنامه نظارت تصویری و تشخیص حرکت با دوربین خلاصه دستور (SYNOPSIS) motion [ -hbnsm ] [ -c مسیر_فایل_پیکربندی ] [ -d سطح ] [ -k سطح ] [ -p فایل_pid ] [ -l فایل_گزارش ] توضیحات (DESCRIPTION) Motion از یک دستگاه video4linux یا دوربین تحت شبکه برای تشخیص حرکت استفاده می‌کند. در صورت تشخیص حرکت، می‌توان هم تصاویر معمولی و هم تصاویر متحرک (ویدیو) ثبت کرد. همچنین در صورت نیاز، Motion می‌تواند اقداماتی را جهت ارسال اعلان و هشدار انجام دهد. امکان ایجاد خودکار اسنپ‌شات (عکس‌های لحظه‌ای دوره‌ای) نیز وجود دارد. گزینه‌ها (OPTIONS) -c مسیر کامل و نام فایل پیکربندی. به عنوان مثال: /home/kurt/motion.conf مقدار پیش‌فرض /usr/local/etc/motion است مگر اینکه هنگام کامپایل و ساخت Motion به شکل متفاوتی مشخص شده باشد. بسیاری از بسته‌های RPM و Debian از /etc یا /etc/motion به عنوان مسیر پیش‌فرض استفاده می‌کنند. -h نمایش صفحه راهنما. -b اجرا در حالت دیمن (پردازه پس‌زمینه). -n اجرا در حالت غیر دیمن (پیش‌زمینه). -s اجرا در حالت راه‌اندازی و تنظیمات (Setup mode). همچنین حالت غیر دیمن را اجباری می‌کند. -d اجرا با سطح گزارش پیام (log level) از ۱ تا ۹. -k اجرا با نوع گزارش پیام (log type) از ۱ تا ۹. -l مسیر کامل و نام فایل برای ذخیره گزارش‌ها (لاگ). -p مسیر کامل و نام فایل برای ذخیره شناسه پردازه (فایل pid)، مانند /var/run/motion.pid. به صورت پیش‌فرض تعریف نشده است. فایل pid فقط زمانی ایجاد می‌شود که Motion در حالت دیمن شروع به کار کند. -m شروع در حالت تعلیق/توقف موقت (pause mode). گزینه‌های فایل پیکربندی (CONFIG FILE OPTIONS) این‌ها گزینه‌هایی هستند که می‌توان در فایل پیکربندی استفاده کرد. این گزینه‌ها توسط گزینه‌های خط فرمان بازنویسی می‌شوند! تمام مقادیر عددی، عدد صحیح هستند (مقادیر اعشاری مجاز نیستند). گزینه‌های بولی (دودویی) می‌توانند روشن یا خاموش باشند (مقادیر "1"، "yes" و "on" همگی به معنی درست/فعال و هر مقدار دیگری به معنی نادرست/غیرفعال است). daemon مقادیر: on/off پیش‌فرض: off توضیحات: هنگامی که روی on تنظیم شود، Motion به حالت دیمن (پردازه پس‌زمینه) می‌رود و ترمینال را آزاد می‌کند. setup_mode مقادیر: on/off پیش‌فرض: off توضیحات: شروع در حالت راه‌اندازی (Setup-Mode) با غیرفعال بودن حالت دیمن. pid_file مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: فایلی برای ذخیره شناسه پردازه (PID) که فایل pid نیز نامیده می‌شود. log_file مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: فایلی برای ذخیره پیام‌های گزارش؛ در صورت تعریف نشدن از stderr و syslog استفاده می‌شود. log_level مقادیر: 1 تا 9 (EMG, ALR, CRT, ERR, WRN, NTC, INF, DBG, ALL) پیش‌فرض: 6 / NTC توضیحات: تعیین سطح جزئیات پیام‌های ارسالی به فایل گزارش. log_type مقادیر: COR, STR, ENC, NET, DBL, EVT, TRK, VID, ALL پیش‌فرض: ALL توضیحات: فیلتر کردن پیام‌های گزارش بر اساس نوع. quiet مقادیر: on/off پیش‌فرض: on توضیحات: هنگام تشخیص حرکت بوق صوتی پخش نشود. native_language مقادیر: بولی (on/off) پیش‌فرض: on توضیحات: استفاده از این گزینه برای فعال‌سازی زبان بومی در کنترل تحت وب و پیام‌های گزارش. در صورت تنظیم روی off پیام‌ها به زبان انگلیسی ارائه می‌شوند. camera_name مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: رشته مشخص‌شده توسط کاربر برای توصیف دوربین. camera_id مقادیر: شناسه عددی برای دوربین پیش‌فرض: ترتیبی که دوربین توسط Motion باز می‌شود توضیحات: استفاده از این گزینه برای تخصیص یک شماره به هر دوربین به طوری که در هر بار اجرای Motion یکسان و پایدار بماند. به طور پیش‌فرض Motion بر اساس ترتیبی که پیکربندی را می‌خواند شماره اختصاص می‌دهد و ممکن است این ترتیب در هر بار شروع یکسان نباشد. camera مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: این گزینه مسیر کامل و نام فایل مربوط به فایل‌های پیکربندی اختصاصی هر دوربین را مشخص می‌کند. این گزینه می‌تواند چندین بار ذکر شود. هر فایل دوربین باید شامل گزینه‌هایی باشد که منحصر به آن دوربین یا دستگاه ویدیویی است. گزینه‌های مشترک از فایل motion.conf خوانده شده و مقادیر در هر فایل دوربین بازنویسی می‌شوند. با اینکه motion.conf شامل چهار فایل نمونه دوربین است، محدودیت واقعی تعداد دوربین‌ها فقط به توانایی سخت‌افزار بستگی دارد. به یاد داشته باشید: اگر بیش از یک دوربین دارید، باید علاوه بر فایل motion.conf برای هر دوربین یک فایل پیکربندی جداگانه داشته باشید. به عنوان مثال، ۲ دوربین به ۳ فایل نیاز دارد: فایل motion.conf و فایل‌های camera1.conf و camera2.conf. فقط گزینه‌هایی را که مختص هر دوربین است در فایل‌های پیکربندی آن دوربین قرار دهید. camera_dir مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: این گزینه زیرپوشه اختیاری حاوی فایل‌های پیکربندی دوربین‌ها را مشخص می‌کند. target_dir مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: شاخه پایه مقصد برای ذخیره تصاویر و فیلم‌ها. توصیه می‌شود از یک مسیر مطلق استفاده شود. اگر این گزینه تعریف نشده باشد، از شاخه کاری جاری استفاده می‌شود. این گزینه مشخص‌کننده‌های تبدیل فرمت ذکر شده در انتهای این راهنما را می‌پذیرد. video_device مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: /dev/video0 توضیحات: رشته‌ای برای تعیین دستگاه ویدیویی مورد استفاده جهت ضبط. فرمت آن معمولاً به صورت /dev/videoX است که X بسته به دستگاه‌های ویدیویی متصل به رایانه متغیر است. در سیستم‌عامل FreeBSD برخی دستگاه‌ها از زیرسیستم bktr استفاده می‌کنند و از /dev/bktr0 استفاده خواهند کرد. video_params مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: None توضیحات: رشته‌ای برای تعیین پارامترهای ارسالی به یک video_device. پارامترهای مجاز بسته به دستگاه متفاوت است. این گزینه فقط برای دستگاه‌های V4L2 کاربرد دارد. گزارش‌های Motion تمام گزینه‌های موجود برای دستگاه را گزارش می‌دهند. auto_brightness مقادیر: 0 - 3 پیش‌فرض: 0 توضیحات: قابلیت auto_brightness از گزینه‌های دستگاه برای تنظیم روشنایی استفاده می‌کند. تنها برای دوربین‌های فاقد تنظیم روشنایی خودکار توصیه می‌شود. 0=غیرفعال، 1=استفاده از روشنایی (brightness)، 2=استفاده از نوردهی (exposure)، 3=استفاده از نوردهی مطلق (absolute exposure). tuner_device مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: /dev/tuner0 توضیحات: دستگاه تیونر مورد استفاده برای تصویربرداری. این گزینه فقط در FreeBSD کاربرد دارد. roundrobin_frames مقادیر: 1 تا نامحدود پیش‌فرض: 1 توضیحات: تعداد فریم‌های ضبط‌شده در هر گام نوبت‌گردشی (roundrobin). roundrobin_skip مقادیر: 1 تا نامحدود پیش‌فرض: 1 توضیحات: تعداد فریم‌هایی که قبل از هر گام نوبت‌گردشی باید نادیده گرفته شوند. roundrobin_switchfilter مقادیر: on/off پیش‌فرض: off توضیحات: فیلتر کردن و حذف نویزهای ایجادشده توسط نوبت‌گردشی (roundrobin). netcam_url مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: None توضیحات: رشته نشانی اینترنتی (URL) کامل اتصال به دوربین تحت شبکه. علاوه بر پروتکل‌های استاندارد دوربین، پیشوندهای زیر نیز توسط برنامه Motion پشتیبانی می‌شوند: ftp:// mjpg:// mjpeg:// file:// v4l2:// رشته اتصال مختص هر دوربین است. معمولاً همان نشانی است که سایر برنامه‌های پخش ویدیو برای اتصال به جریان دوربین استفاده می‌کنند. netcam_params مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: پارامترهای مشخص‌شده توسط کاربر برای دوربین تحت شبکه. netcam_high_url مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: None توضیحات: رشته نشانی کامل اتصال برای دوربین‌های تحت شبکه با وضوح بالا. این نشانی باید به جای یک تصویر ثابت، جریانی از تصاویر ویدیویی ارائه دهد. پیشوندهای زیر شناسایی می‌شوند: rtsp:// rtmp:// رشته اتصال مختص هر دوربین است. معمولاً همان نشانی است که سایر برنامه‌های پخش ویدیو برای اتصال به جریان دوربین استفاده می‌کنند. در حال حاضر Motion فقط از احراز هویت پایه‌ای (basic authentication) برای دوربین‌ها پشتیبانی می‌کند. احراز هویت Digest در حال حاضر پشتیبانی نمی‌شود. احراز هویت پایه‌ای را می‌توان درون URL یا از طریق گزینه netcam_userpass مشخص کرد. netcam_high_params مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: پارامترهای مشخص‌شده توسط کاربر برای دوربین تحت شبکه با وضوح بالا. netcam_userpass مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: نام کاربری و گذرواژه لازم برای دسترسی به دوربین تحت شبکه. در حال حاضر فقط از احراز هویت پایه‌ای (Basic) پشتیبانی می‌شود. در صورتی که هم نام کاربری و هم گذرواژه لازم باشد، فرمت آن به صورت user:password است. width مقادیر: وابسته به دستگاه ویدیویی پیش‌فرض: 640 توضیحات: عرض تصویر به پیکسل برای دستگاه ویدیویی. height مقادیر: وابسته به دستگاه ویدیویی پیش‌فرض: 480 توضیحات: ارتفاع تصویر به پیکسل برای دستگاه ویدیویی. framerate مقادیر: 2 - 100 پیش‌فرض: 15 توضیحات: حداکثر تعداد فریم‌های ضبط‌شده در ۱ ثانیه. مقدار پیش‌فرض معمولاً توسط قابلیت‌های دستگاه ویدیویی محدود می‌شود. دستگاه‌های ویدیویی معمولی حداکثر نرخ ۳۰ فریم بر ثانیه دارند. minimum_frame_time مقادیر: 0 تا نامحدود پیش‌فرض: 0 توضیحات: حداقل زمان بر حسب ثانیه بین ضبط فریم‌های تصویر از دوربین. مقدار پیش‌فرض 0 این گزینه را غیرفعال کرده و به نرخ ضبط خود دوربین تکیه می‌کند. از این گزینه زمانی استفاده می‌شود که بخواهید تصاویر را با نرخی کمتر از ۲ فریم در ثانیه ضبط کنید. rotate مقادیر: 0, 90, 180, 270 پیش‌فرض: 0 توضیحات: چرخش تصویر به این تعداد درجه. چرخش بر روی تمامی تصاویر ذخیره‌شده و همچنین ویدیوها اعمال می‌شود. flip_axis مقادیر: none, v, h پیش‌فرض: none توضیحات: وارونه کردن تصاویر به صورت عمودی (v) یا افقی (h). وارونه‌سازی بر تمامی تصاویر ذخیره‌شده و همچنین ویدیوها اعمال می‌شود. locate_motion_mode مقادیر: on/off/preview پیش‌فرض: off توضیحات: هنگامی که روی 'on' تنظیم شود، شیء متحرک مکان‌یابی شده و کادری به دور آن کشیده می‌شود. هنگامی که روی 'preview' تنظیم شود، کادر فقط در تصاویر پیش‌نمایش (preview_shot) کشیده می‌شود. locate_motion_style مقادیر: box : رسم کادر مستطیلی مرسوم در اطراف بخشی از تصویر که حرکت ایجاد کرده است redbox : رسم کادر قرمز در اطراف بخشی از تصویر که حرکت ایجاد کرده است cross : رسم علامت بعلاوه (+) بر روی بخشی از تصویر که حرکت ایجاد کرده است redcross : رسم علامت بعلاوه قرمز (+) بر روی بخشی از تصویر که حرکت ایجاد کرده است پیش‌فرض: box توضیحات: هنگامی که locate_motion_mode فعال باشد، این گزینه نحوه نمایش و علامت‌گذاری حرکت روی تصویر را مشخص می‌کند. text_left مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: متنی که در گوشه پایین سمت چپ تصویر قرار می‌گیرد. مشخص‌کننده‌های فرمت از تابع strftime(3) در C پیروی می‌کنند. text_right مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: %Y-%m-%d\n%T توضیحات: متنی که در گوشه پایین سمت راست تصویر قرار می‌گیرد. مشخص‌کننده‌های فرمت از تابع strftime(3) در C پیروی می‌کنند. text_changes مقادیر: on/off پیش‌فرض: off توضیحات: هنگامی که مشخص شود، تعداد پیکسل‌های تغییر‌یافته را بر روی تصاویر رسم می‌کند. این گزینه معمولاً خاموش (off) خواهد بود، مگر زمانی که در حال راه‌اندازی و تنظیم گزینه‌های حرکت باشید. متن در گوشه بالا سمت راست تصویر قرار می‌گیرد. text_scale مقادیر: 1 تا 10 پیش‌فرض: 1 توضیحات: مقیاس و اندازه رسم متن روی تصویر. text_event مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: %Y%m%d%H%M%S توضیحات: تعریف مقدار مشخص‌کننده ویژه تبدیل رخداد %C. کاربر می‌تواند از هر مشخص‌کننده تبدیلی در این گزینه به جز خود %C استفاده کند. مقادیر تاریخ و زمان از برچسب زمانی اولین تصویر در رخداد جاری گرفته می‌شوند. مشخص‌کننده %C می‌تواند در نام فایل‌ها و گزینه‌های text_left/right برای ایجاد یک شناسه منحصر‌به‌فرد برای هر رخداد استفاده شود. emulate_motion مقادیر: on/off پیش‌فرض: off توضیحات: همیشه تصاویر را ذخیره کند حتی اگر حرکتی وجود نداشته باشد. pause مقادیر: on/off پیش‌فرض: off توضیحات: هنگام راه‌اندازی Motion، تشخیص حرکت به حالت تعلیق (pause) درآید. threshold مقادیر: 1 تا نامحدود پیش‌فرض: 1500 توضیحات: آستانه تعداد پیکسل‌های تغییر‌یافته در یک تصویر که باعث فعال شدن تشخیص حرکت می‌شود. threshold_maximum مقادیر: 0، 1 تا نامحدود پیش‌فرض: 0 توضیحات: حداکثر تعداد پیکسل‌های تغییر‌یافته در تصویر که باعث فعال شدن تشخیص حرکت می‌شود. مقدار صفر این گزینه را غیرفعال می‌کند. threshold_tune مقادیر: on/off پیش‌فرض: off توضیحات: تنظیم خودکار آستانه رو به پایین در صورت امکان. noise_level مقادیر: 1 تا نامحدود پیش‌فرض: 32 توضیحات: آستانه نویز برای تشخیص حرکت. noise_tune مقادیر: on/off پیش‌فرض: on توضیحات: تنظیم خودکار آستانه نویز. despeckle_filter مقادیر: e/E : سایش (erode) d/D : انبساط (dilate) l : برچسب‌گذاری (label) پیش‌فرض: تعریف‌نشده توضیحات: حذف لکه‌ها و نویزهای تصویر حرکت با استفاده از سایش (e/E)، انبساط (d/D) یا برچسب‌گذاری (l). مقدار توصیه‌شده EedDl است. هر ترکیبی (و به هر تعداد) از E، e، d و D معتبر است. برچسب‌گذاری (l) فقط باید یک بار استفاده شود و حرف 'l' باید آخرین حرف باشد. برای غیرفعال کردن این خط را کامنت کنید. area_detect مقادیر: 1 تا 9 پیش‌فرض: تعریف‌نشده توضیحات: هنگامی که حرکت در نواحی از پیش تعریف‌شده مشخص‌شده در زیر تشخیص داده شود، اسکریپت تعیین‌شده توسط on_area_detected فراخوانی می‌شود. این راه‌انداز تنها یک بار در طول یک رخداد فعال می‌شود. یک یا چند ناحیه را می‌توان با این گزینه تعیین کرد. توجه داشته باشید که این گزینه فقط برای اجرای اسکریپت تعیین‌شده استفاده می‌شود و تمام رخدادهای تشخیص حرکت را فقط به ناحیه مشخص‌شده محدود نمی‌کند. نواحی تصویر: 123 456 789 mask_file مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: هنگامی که بخواهید ناحیه خاصی برای تشخیص حرکت نادیده گرفته شود، می‌توان با استفاده از یک فایل ماسک PGM به این هدف رسید. فایل ماسک PGM یک فایل ماسک با ساختار ویژه است که به کاربر اجازه می‌دهد نواحی مورد نظر برای پایش حرکت را مشخص کند. این گزینه مسیر کامل و نام فایل ماسک را مشخص می‌کند. mask_privacy مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: فایل ماسک PGM یک فایل ماسک با ساختار ویژه است که به کاربر اجازه می‌دهد نواحی مورد نظر برای حذف از تمام تصاویر (پوشاندن حریم خصوصی) را مشخص کند. این گزینه مسیر کامل و نام فایل ماسک حریم خصوصی را مشخص می‌کند. smart_mask_speed مقادیر: 0 تا 10 پیش‌فرض: 0 (خاموش) توضیحات: سرعت تغییرات ماسک هنگام ایجاد یک فایل ماسک پویا. lightswitch_percent مقادیر: 0 تا 100 پیش‌فرض: 0 توضیحات: نادیده گرفتن تغییرات ناگهانی و شدید شدت نور. زمانی فعال می‌شود که درصد مساحت تصویر که شدت نور آن تغییر کرده است، بیشتر از این مقدار باشد. lightswitch_frames مقادیر: 1 تا 1000 پیش‌فرض: 5 توضیحات: تعداد فریم‌هایی که هنگام فعال شدن کلید تغییر نور باید نادیده گرفته شوند. minimum_motion_frames مقادیر: 1 تا نامحدود پیش‌فرض: 1 توضیحات: حداقل تعداد فریم‌های متوالی تصویر که باید شامل حرکت باشند تا یک رخداد آغاز شود. مقدار پیش‌فرض 1 به این معنی است که تمام حرکات بلافاصله شناسایی می‌شوند. محدوده توصیه‌شده ۱ تا ۵ است. event_gap مقادیر: -1 تا نامحدود پیش‌فرض: 60 توضیحات: تعداد ثانیه‌های بدون حرکت که پایان یک رخداد را مشخص می‌کند. یک رخداد به صورت مجموعه‌ای از تصاویر حرکت گرفته‌شده در یک بازه زمانی کوتاه تعریف می‌شود. مقدار توصیه‌شده ۶۰ ثانیه است. مقدار -1 مجاز است و باعث غیرفعال شدن رخدادها می‌شود، به این ترتیب که تمام حرکات در یک فایل ویدیویی واحد نوشته می‌شوند و پیش‌ضبط (pre_capture) انجام نمی‌شود. اگر روی 0 تنظیم شود، Motion در حالت بدون وقفه (gapless) اجرا می‌شود. فیلم‌ها دیگر شکاف نخواهند داشت. یک رخداد بلافاصله پس از عدم تشخیص حرکت و اتمام post_capture به پایان می‌رسد. pre_capture مقادیر: 0 تا نامحدود پیش‌فرض: 0 توضیحات: تعداد تصاویر از پیش ثبت‌شده (بافری) قبل از تشخیص حرکت که به هنگام تشخیص حرکت در خروجی ذخیره می‌شوند. محدوده توصیه‌شده ۰ تا ۵ است. استفاده از مقادیر بزرگ توصیه نمی‌شود زیرا باعث می‌شود Motion فریم‌ها را از دست بدهد (اسکیپ کند). برای روان‌تر شدن فیلم‌ها به جای آن از مقادیر بزرگ‌تر post_capture استفاده کنید. post_capture مقادیر: 0 تا نامحدود پیش‌فرض: 0 توضیحات: تعداد فریم‌هایی که پس از توقف تشخیص حرکت ضبط می‌شوند. گزینه‌های اسکریپت (Script Options) on_event_start, on_event_end, on_picture_save on_motion_detected, on_area_detected, on_movie_start on_movie_end, on_camera_lost, on_camera_found مقادیر: رشته تعریف‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: تعیین مسیر کامل و نام فایل برای اسکریپتی که هنگام وقوع رخداد مشخص‌شده اجرا می‌شود. هنگامی که نام فایل برای اسکریپت لازم باشد، %f را به انتهای رشته اسکریپت اضافه کنید. picture_output مقادیر: on, off, first, best, center پیش‌فرض: off توضیحات: ذخیره تصاویر در هنگام تشخیص حرکت. هنگامی که روی 'first' تنظیم شود، فقط اولین تصویر یک رخداد ذخیره می‌شود. هنگامی که روی 'best' تنظیم شود، تصویر با بیشترین میزان حرکت در رخداد ذخیره می‌شود. هنگامی که روی 'center' تنظیم شود، تصویری که حرکت آن نزدیک‌ترین به مرکز تصویر است ذخیره می‌شود. می‌تواند به عنوان تصویر پیش‌نمایش برای ویدیوی متناظر استفاده شود. picture_output_motion مقادیر: on/off پیش‌فرض: off توضیحات: ذخیره تصاویر فقط با پیکسل‌های شیء متحرک (تصاویر شبحی/ghost). picture_type مقادیر: jpeg/ppm/webp/grey پیش‌فرض: jpeg توضیحات: نوع فایل تصاویر خروجی. picture_quality مقادیر: 1 تا 100 پیش‌فرض: 75 توضیحات: کیفیت (به درصد) مورد استفاده برای فشرده‌سازی jpeg و webp. picture_exif مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: متنی برای درج در توضیحات EXIF فایل‌های JPEG. picture_filename مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: %v-%Y%m%d%H%M%S-%q توضیحات: مسیر فایل برای تصاویر ایجادشده در اثر حرکت (jpeg، ppm یا webp) به صورت نسبی نسبت به target_dir. پسوند فایل (.jpg، .ppm یا .webp) به طور خودکار اضافه می‌شود بنابراین آن را وارد نکنید. تنظیم این گزینه روی 'preview' به همراه ویژگی best-preview نام‌گذاری ویژه‌ای را برای عکس‌های پیش‌نمایش فعال می‌کند. این گزینه مشخص‌کننده‌های تبدیل ذکرشده در انتهای این راهنما را می‌پذیرد. snapshot_interval مقادیر: 0 تا نامحدود پیش‌فرض: 0 توضیحات: هنگامی که روی 0 تنظیم شود، قابلیت اسنپ‌شات غیرفعال است. هنگامی که یک مقدار مشخص شود، نشان‌دهنده تعداد ثانیه‌های بین هر اسنپ‌شات خواهد بود. snapshot_filename مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: %v-%Y%m%d%H%M%S-snapshot توضیحات: مسیر فایل اسنپ‌شات‌ها به صورت نسبی نسبت به target_dir. پسوند فایل (.jpg، .ppm یا .webp) به طور خودکار اضافه می‌شود بنابراین آن را وارد نکنید. یک پیوند نمادین (symlink) به نام lastsnap.jpg در target_dir ایجاد می‌شود که همیشه به آخرین اسنپ‌شات اشاره می‌کند، مگر اینکه snapshot_filename دقیقاً 'lastsnap' باشد. این گزینه مشخص‌کننده‌های تبدیل ذکرشده در انتهای این راهنما را می‌پذیرد. movie_output مقادیر: on/off پیش‌فرض: on توضیحات: استفاده از ffmpeg برای کدگذاری و ساخت فیلم‌های ویدیویی از حرکت. movie_output_motion مقادیر: on/off پیش‌فرض: off توضیحات: استفاده از ffmpeg برای ساخت فیلم‌هایی که فقط شامل پیکسل‌های شیء متحرک هستند (تصاویر شبحی). movie_max_time مقادیر: 0 تا نامحدود پیش‌فرض: 120 توضیحات: حداکثر طول مدت فیلم بر حسب ثانیه. هنگامی که زمان از این مقدار بیشتر شود، یک فایل ویدیویی جدید ایجاد می‌شود. مقدار 0 به این معنی است که هیچ محدودیتی وجود ندارد. movie_bps مقادیر: 0 تا نامحدود پیش‌فرض: 400000 توضیحات: نرخ بیت (Bitrate) مورد استفاده توسط رمزگذار ffmpeg. در صورتی که movie_quality برابر با 0 نباشد، این گزینه نادیده گرفته می‌شود. movie_quality مقادیر: 0 تا 100 پیش‌فرض: 60 توضیحات: فعال‌سازی و تعیین نرخ بیت متغیر برای رمزگذار ffmpeg. در صورت فعال بودن نرخ بیت متغیر، مقدار movie_bps نادیده گرفته می‌شود. هنگامی که روی 0 تنظیم شود، از نرخ بیت ثابت تعریف‌شده توسط movie_bps استفاده می‌شود. هنگامی که بین ۱ تا ۱۰۰ تنظیم شود، کیفیت ویدیو متغیر خواهد بود. مقدار ۱ کمترین کیفیت و مقدار ۱۰۰ بالاترین کیفیت است. movie_codec مقادیر: ویدیوهای Motion: mpeg4 - ایجاد فایل avi. msmpeg4 - ایجاد فایل avi. swf - فایل فلش با پسوند swf. flv - ویدیوی فلش با پسوند flv. ffv1 - کدک ویدیویی FF نسخه ۱ برای فشرده‌سازی بدون اتلاف (Lossless) mov - فرمت QuickTime mp4 - کدگذاری MPEG-4 Part 14 H264 mkv - کدگذاری Matroska H264 hevc - کدگذاری H.265 / HEVC (کدگذاری ویدیویی با بازده بالا) پیش‌فرض: mkv توضیحات: برای ویدیوهای حرکتی عادی، کانتینر/کدک باید در نسخه ffmpeg نصب‌شده روی رایانه موجود باشد. movie_duplicate_frames مقادیر: on/off پیش‌فرض: off توضیحات: هنگام ایجاد ویدیوها، آیا برای حفظ نرخ فریم درخواستی، فریم‌ها تکثیر شوند. movie_passthrough مقادیر: on/off پیش‌فرض: off توضیحات: هنگام استفاده از دوربین rtsp، فیلم‌ها بدون رمزگشایی جریان داده (بدون بازکدگذاری) ذخیره شوند. movie_filename مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: %v-%Y%m%d%H%M%S توضیحات: مسیر فایل برای فیلم‌های ایجادشده توسط ffmpeg به صورت نسبی نسبت به target_dir. پسوندها (.swf, .avi, ...) به طور خودکار اضافه می‌شوند، بنابراین آن‌ها را وارد نکنید. این گزینه مشخص‌کننده‌های تبدیل ذکرشده در انتهای این راهنما را می‌پذیرد. movie_extpipe_use مقادیر: on/off پیش‌فرض: off توضیحات: استفاده از لوله خارجی (external pipe) برای کدگذاری ویدیوها. این گزینه جایگزینی برای رمزگذار داخلی FFMPEG و فقط برای movie_output است. گزینه‌های movie_filename و timelapse_filename نیز از قابلیت ffmpeg استفاده می‌کنند. movie_extpipe مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: رشته دستور خط فرمان برای دریافت و پردازش لوله‌ای از تصاویر جهت کدگذاری. به طور معمول، از '-' برای STDIN استفاده کنید. timelapse_interval مقادیر: 0 تا نامحدود پیش‌فرض: 0 توضیحات: تعداد ثانیه‌های بین ضبط هر فریم برای ویدیوی گذر زمان (تایم‌لپس). مقدار 0 را برای غیرفعال کردن تایم‌لپس مشخص کنید. timelapse_mode مقادیر: hourly (ساعتی) daily (روزانه) weekly-sunday (هفتگی - یکشنبه) weekly-monday (هفتگی - دوشنبه) monthly (ماهانه) manual (دستی) پیش‌فرض: daily توضیحات: حالت جابه‌جایی و چرخش فایل (rollover) برای ویدیوی تایم‌لپس. timelapse_fps مقادیر: 0 تا نامحدود پیش‌فرض: 30 توضیحات: تعداد فریم بر ثانیه برای پخش ویدیوی تایم‌لپس. timelapse_codec مقادیر: mpg - ایجاد فایل mpg با کدگذاری mpeg-2. mpeg4 - ایجاد فایل avi با کدگذاری پیش‌فرض. پیش‌فرض: mpg توضیحات: برای ویدیوهای تایم‌لپس mpg، در صورت خاموش شدن و راه‌اندازی مجدد Motion، تصاویر جدید به انتهای فایل قبلی ایجادشده با نام مشخص‌شده برای تایم‌لپس پیوست می‌شوند. برای ویدیوهای تایم‌لپس mpeg4، در صورت خاموش شدن و راه‌اندازی مجدد Motion، تصاویر جدید فایلی تازه با نام تعیین‌شده برای تایم‌لپس ایجاد خواهند کرد. timelapse_filename مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: %Y%m%d-timelapse توضیحات: مسیر فایل ویدیوهای تایم‌لپس به صورت نسبی نسبت به target_dir. پسوندهای فایل (.mpg .avi) به طور خودکار اضافه می‌شوند بنابراین آن‌ها را وارد نکنید. این گزینه مشخص‌کننده‌های تبدیل ذکرشده در انتهای این راهنما را می‌پذیرد. video_pipe مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: ارسال تصاویر خروجی به یک دستگاه لوپ‌بک video4linux. video_pipe_motion مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: ارسال تصاویر حرکت به یک دستگاه لوپ‌بک video4linux. webcontrol_port مقادیر: 0 تا حداکثر شماره پورت پیش‌فرض: 0 توضیحات: شماره پورت برای صفحه پیش‌نمایش و کنترل وب. webcontrol_ipv6 مقادیر: on/off پیش‌فرض: off توضیحات: گوش دادن به IPv6 localhost به جای IPv4. این گزینه همچنین برای تمامی جریان‌ها اعمال می‌شود. webcontrol_localhost مقادیر: on/off پیش‌فرض: on توضیحات: محدود کردن اتصالات کنترلی فقط به localhost. webcontrol_parms مقادیر: 0 = هیچ پارامتری برای تغییر در کنترل وب در دسترس نیست 1 = فهرست محدودی از پارامترها برای تغییر در دسترس است 2 = فهرست پیشرفته پارامترها (معمولاً برای اعمال نیاز به راه‌اندازی مجدد دارد) 3 = فهرست محدودشده پارامترها (شناسه‌های کاربری، گذرواژه‌ها، دستورات اجرایی و غیره) پیش‌فرض: 0 توضیحات: نوع پارامترهایی که از طریق رابط وب قابل تغییر هستند. این پارامتر هرگز از طریق رابط وب قابل ویرایش نیست و باید مستقیماً در فایل پیکربندی مشخص شود. webcontrol_interface مقادیر: 0-2 پیش‌فرض: 0 توضیحات: نوع رابط کنترل وب: 0=css و 1=text و 2=legacy. webcontrol_auth_method مقادیر: 0 = غیرفعال 1 = احراز هویت پایه‌ای (Basic) 2 = احراز هویت MD5 digest (روش امن‌تر) پیش‌فرض: 0 توضیحات: روش احراز هویت مورد استفاده برای کنترل تحت وب. webcontrol_authentication مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: نام کاربری و گذرواژه برای احراز هویت در کنترل وب. فرمت آن به صورت Username:Password است. webcontrol_tls مقادیر: on/off پیش‌فرض: off توضیحات: در صورت تنظیم روی on، از SSL/TLS برای کنترل وب استفاده می‌شود. webcontrol_cert مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: مسیر کامل فایل گواهی SSL برای کنترل وب. webcontrol_key مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: مسیر کامل فایل کلید اختصاصی SSL برای کنترل وب. webcontrol_header_params مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: جفت‌های هدر=مقدار (header=value) که با کاما جدا شده‌اند برای ارسال در پاسخ‌های کنترل وب. webcontrol_lock_attempts مقادیر: عدد صحیح پیش‌فرض: 5 توضیحات: تعداد دفعات تلاش ناموفق برای احراز هویت قبل از مسدود شدن آدرس IP. webcontrol_lock_minutes مقادیر: عدد صحیح پیش‌فرض: 5 توضیحات: مدت زمان (بر حسب دقیقه) مسدود ماندن آدرس IP که احراز هویت ناموفق داشته است. webcontrol_lock_max_ips مقادیر: عدد صحیح پیش‌فرض: 5 توضیحات: حداکثر تعداد آدرس‌های IP همزمان که می‌توانند مسدود شوند. stream_port مقادیر: 0 تا حداکثر شماره پورت پیش‌فرض: 0 توضیحات: شماره پورتی که سرور mini-http برای پخش زنده جریان تصاویر روی آن گوش می‌دهد. stream_localhost مقادیر: on/off پیش‌فرض: on توضیحات: محدود کردن اتصالات پخش زنده فقط به localhost. stream_auth_method مقادیر: 0 = غیرفعال 1 = احراز هویت پایه‌ای (Basic) 2 = احراز هویت MD5 digest (روش امن‌تر) پیش‌فرض: 0 توضیحات: روش احراز هویت مورد استفاده برای مشاهده جریان تصویر. stream_authentication مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: نام کاربری و گذرواژه برای احراز هویت جریان تصویر. فرمت آن به صورت Username:Password است. stream_tls مقادیر: on/off پیش‌فرض: off توضیحات: در صورت تنظیم روی on، از SSL/TLS برای پورت پخش زنده تصویر استفاده می‌شود. stream_header_params مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: جفت‌های هدر=مقدار جداشده با کاما برای ارسال در پاسخ‌های جریان تصویر. stream_preview_scale مقادیر: 1 تا 100 پیش‌فرض: 25 توضیحات: تعیین درصد مقیاس‌بندی تصویر جریان برای نمایش در صفحه پیش‌نمایش. stream_preview_newline مقادیر: on/off پیش‌فرض: off توضیحات: آیا هنگام قرارگیری تصویر روی صفحه پیش‌نمایش، تصویر در خط جدیدی آغاز شود یا خیر. این گزینه به کاربر امکان می‌دهد تعیین کند که تصاویر پیش‌نمایش در کنار هم قرار گیرند یا روی هم چیده شوند. stream_preview_method مقادیر: 0 تا 2 پیش‌فرض: 0 توضیحات: روش نمایش تصاویر در صفحه وب‌کنترل: 0=کامل (Full)، 1=زیرجریان (Substream)، 2=ایستا (Static). stream_quality مقادیر: 1 تا 100 پیش‌فرض: 50 توضیحات: کیفیت بر حسب درصد برای تصاویر jpg پخش‌شده در جریان. stream_grey مقادیر: on/off پیش‌فرض: off توضیحات: ارسال جریان زنده دوربین به صورت سیاه‌وسفید (خاکستری) به جای رنگی. stream_maxrate مقادیر: 1 تا نامحدود پیش‌فرض: 1 توضیحات: حداکثر نرخ فریم برای ارسال به جریان تصویر. stream_motion مقادیر: on, off پیش‌فرض: off توضیحات: محدود کردن جریان تصویر به ۱ فریم در ثانیه هنگامی که هیچ حرکتی تشخیص داده نمی‌شود. database_type مقادیر: mysql, mariadb, postgresql, sqlite3 پیش‌فرض: تعریف‌نشده توضیحات: نوع پایگاه داده مورد استفاده. database_dbname مقادیر: رشته تعریف‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: نام پایگاه داده مورد استفاده (dbname). برای SQLite3، مسیر کامل فایل پایگاه داده است. database_host مقادیر: رشته تعریف‌شده توسط کاربر پیش‌فرض: localhost توضیحات: نام میزبان، نام دامنه (DNS) یا آدرس IP که پایگاه داده روی آن در حال اجراست. در PostgreSQL، به صورت اختیاری مسیر کامل شاخه محلی حاوی لوله دامنه یونیکس آن. برای SQLite3 این مقدار نادیده گرفته می‌شود. database_port مقادیر: 0 تا حداکثر شماره پورت پیش‌فرض: تعریف‌نشده توضیحات: شماره پورت TCP مورد استفاده برای دسترسی به پایگاه داده. برای SQLite3 نادیده گرفته می‌شود. پورت‌های پیش‌فرض سیستم‌های مدیریت پایگاه داده: MySQL و MariaDB برابر ۳۳۰۶؛ PostgreSQL برابر ۵۴۳۲. database_user مقادیر: رشته تعریف‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: نام کاربری برای دسترسی به پایگاه داده. برای SQLite3 نادیده گرفته می‌شود. database_password مقادیر: رشته تعریف‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: گذرواژه پایگاه داده برای دسترسی کاربر به پایگاه داده. برای SQLite3 نادیده گرفته می‌شود. database_busy_timeout مقادیر: 0 تا نامحدود پیش‌فرض: 0 توضیحات: فقط برای SQLite3: مدت زمان انتظار پایگاه داده بر حسب میلی‌ثانیه برای باز شدن قفل پایگاه داده پیش از بازگرداندن خطای قفل بودن پایگاه داده. sql_log_picture مقادیر: on/off پیش‌فرض: off توضیحات: ثبت گزارش در پایگاه داده هنگام ایجاد فایل تصویر ناشی از تشخیص حرکت. sql_log_snapshot مقادیر: on/off پیش‌فرض: off توضیحات: ثبت گزارش در پایگاه داده هنگام ایجاد فایل تصویر اسنپ‌شات. sql_log_movie مقادیر: on/off پیش‌فرض: off توضیحات: ثبت گزارش در پایگاه داده هنگام ایجاد فایل ویدیویی ناشی از تشخیص حرکت. sql_log_timelapse مقادیر: on/off پیش‌فرض: off توضیحات: ثبت گزارش در پایگاه داده هنگام ایجاد فایل ویدیوی تایم‌لپس. sql_query مقادیر: رشته تعریف‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: دستور SQL برای اجرا هنگام ذخیره فایل تصویر توسط Motion یا شروع ضبط ویدیو، در صورتی که گزینه پیکربندی sql_log_* متناظر با آن نوع فایل روی on باشد. از همان مشخص‌کننده‌های تبدیل مانند ویژگی‌های متنی استفاده کنید. مشخص‌کننده‌های تبدیل ویژه اضافی عبارتند از: %n = عدد نشان‌دهنده file_type %f = نام فایل همراه با مسیر کامل نمونه ساخت جدول (نه sql_query): Mysql: CREATE TABLE security (camera INTEGER NOT NULL, filename CHAR(80) NOT NULL, frame INTEGER, file_type INTEGER NOT NULL, time_stamp DATETIME NOT NULL, text_event CHAR(255)); Postgresql: CREATE TABLE security (camera INTEGER NOT NULL, filename VARCHAR NOT NULL, frame INTEGER, file_type INTEGER NOT NULL, time_stamp TIMESTAMP NOT NULL, text_event VARCHAR); نمونه sql_query: INSERT INTO security(camera, filename, frame, file_type, time_stamp, text_event) VALUES(%t, '%f', %q, %n, '%Y-%m-%d %T', '%C') sql_query_start مقادیر: رشته تعریف‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: دستور SQL برای اجرا در ابتدای یک رخداد حرکت. هنگامی که ساختار جدول مرتبط (و برای PostgreSQL، وجود یک بند RETURNING در این دستور) آن را فراهم کند، پایگاه داده یک شناسه رخداد منحصربه‌فرد در سطح جدول تولید می‌کند که بازگردانده شده و جایگزین مشخص‌کننده تبدیل %{dbeventid} می‌شود. اگر مقدار معتبری بازگردانده نشود، %{dbeventid} با صفر جایگزین می‌شود. sql_query_stop مقادیر: رشته تعریف‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: دستور SQL برای اجرا پس از بستن و تکمیل فایل فیلم رخداد حرکت یا فیلم تایم‌لپس، مشروط بر اینکه گزینه پیکربندی sql_log_* مربوط به آن نوع فایل روی on تنظیم شده باشد. track_type مقادیر: 0 = none 1 = stepper 2 = iomojo 3 = pwc 4 = generic 5 = uvcvideo 6 = servo پیش‌فرض: 0 توضیحات: این گزینه نوع ردیاب را مشخص می‌کند. نوع generic امکان تعریف مرکز حرکت و اندازه حرکت را جهت استفاده با مشخص‌کننده‌های تبدیل برای گزینه‌هایی مانند on_motion_detected فراهم می‌سازد. track_auto مقادیر: on/off پیش‌فرض: off توضیحات: فعال/غیرفعال‌سازی ردیابی خودکار. track_port مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: پورت سریال موتور ردیاب؛ به عنوان مثال /dev/ttyS0. گزینه‌های ردیابی (Tracking options) track_motorx, track_motorx_reverse, track_motory, track_motory_reverse track_maxx, track_minx, track_maxy, track_miny, track_homex, track_homey track_iomojo_id, track_step_angle_x, track_step_angle_y, track_move_wait track_speed, track_stepsize مقادیر: وابسته به دستگاه پیش‌فرض: 0 توضیحات: این گزینه‌ها پارامترهای دوربین‌های دارای قابلیت ردیابی مکانیکی را مشخص می‌کنند. track_generic_move مقادیر: رشته مشخص‌شده توسط کاربر پیش‌فرض: تعریف‌نشده توضیحات: مسیر کامل و نام فایل برای اسکریپتی که جهت حرکت دادن دوربین در حالت ردیابی عمومی (generic) اجرا می‌شود. سیگنال‌ها (SIGNALS) برنامه Motion به سیگنال‌های زیر پاسخ می‌دهد: SIGHUP فایل پیکربندی مجدداً خوانده خواهد شد. SIGTERM در صورت نیاز، Motion فایل ویدیویی آخرین رخداد را ایجاد کرده و خارج می‌شود. SIGUSR1 برنامه Motion فایل ویدیویی رخداد جاری را ایجاد می‌کند. نکات (NOTES) اسنپ‌شات (Snapshot) اسنپ‌شات تصویری است که در فواصل زمانی منظم، مستقل از هرگونه حرکت در تصویر گرفته می‌شود. تصویر حرکت (Motion image) یک تصویر یا فیلم «حرکت»، پیکسل‌هایی را نشان می‌دهد که واقعاً در طول آخرین فریم‌ها تغییر کرده‌اند. این تصاویر برای نمایش عمومی چندان کاربردی نیستند اما برای تست، تنظیم دقیق و ساخت فایل‌های ماسک بسیار مفید هستند زیرا می‌توانید دقیقاً ببینید Motion در کجا حرکت را تشخیص می‌دهد. حرکت با طیف خاکستری نشان داده می‌شود. اگر برچسب‌گذاری فعال باشد، بزرگ‌ترین ناحیه با رنگ آبی مشخص می‌شود. ماسک هوشمند با رنگ قرمز نشان داده می‌شود. تصویر معمولی (Normal image) یک تصویر «معمولی» همان تصویر واقعی گرفته‌شده توسط دوربین به همراه متن‌های درج‌شده روی آن است. دوربین‌ها و فایل‌های پیکربندی (Cameras and config files) اگر Motion با گزینه خط فرمان -c به همراه مسیر فراخوانی شود، انتظار دارد فایل پیکربندی دقیقاً همان فایل مشخص‌شده باشد. هنگامی که فایل پیکربندی را در خط فرمان با -c مشخص می‌کنید، می‌توانید هر نامی روی آن بگذارید. اگر -c را مشخص نکنید یا فایلی که نام برده‌اید وجود نداشته باشد، Motion فایل پیکربندی به نام 'motion.conf' را به ترتیب زیر جستجو می‌کند: ۱. شاخه جاری که Motion از آنجا اجرا شده است. ۲. سپس در پوشه‌ای به نام '.motion' در شاخه خانگی کاربر جاری (متغیر محیطی شل $HOME)، مانند /home/goofy/.motion/motion.conf. ۳. زیرپوشه motion/ درون شاخه‌ای که با --sysconfdir=DIR در زمان اجرای configure. هنگام نصب Motion تعیین شده است (اگر این گزینه تعریف نشده باشد، پیش‌فرض /usr/local/etc/ است). اگر به /usr/local/etc/motion دسترسی نوشتن دارید، توصیه می‌شود فقط یک فایل motion.conf در شاخه پیش‌فرض /usr/local/etc/motion داشته باشید. برنامه Motion در بسته توزیعی خود فایلی به نام motion-dist.conf دارد. هنگامی که 'make install' را اجرا می‌کنید، این فایل در پوشه /usr/local/etc/motion کپی می‌شود. نام این فایل پیکربندی باید از motion-dist.conf به motion.conf تغییر یابد. نام فایل اصلی motion-dist.conf گذاشته شده تا فایل motion.conf کاملاً تنظیم‌شده شما هنگام نصب مجدد یا ارتقا به نسخه‌های جدیدتر به طور تصادفی بازنویسی نشود. اگر بیش از یک دوربین دارید، نباید سعی کنید Motion را چندین بار اجرا کنید. Motion طوری ساخته شده است که با چندین دوربین به شکلی بسیار کارآمد و تمیز کار کند و روش انجام آن ایجاد تعدادی فایل پیکربندی برای دوربین‌ها است. سپس Motion برای هر دوربین یک ریسه (thread) اضافی از خود ایجاد می‌کند. اگر فقط یک دوربین دارید، فقط به فایل motion.conf نیاز دارید. به محض اینکه دو یا چند دوربین داشته باشید، علاوه بر فایل motion.conf باید به ازای هر دوربین یک فایل پیکربندی دوربین جداگانه داشته باشید. بنابراین برای مثال اگر دو دوربین دارید به motion.conf و دو فایل پیکربندی دوربین نیاز دارید (در مجموع ۳ فایل پیکربندی). گزینه‌ای که برای همه دوربین‌ها مشترک است می‌تواند در motion.conf قرار گیرد (می‌توانید تمام پارامترها را در فایل‌های دوربین نیز بگذارید، اما این کار هنگام تغییر یک تنظیم مشترک، ویرایش‌های زیادی به همراه خواهد داشت). گزینه‌ای که مختص یک دوربین است باید در فایل همان دوربین تعریف شود. دوربین اول در اولین فایل دوربینی که از motion.conf فراخوانی شده تعریف می‌شود، دوربین دوم در دومین فایل دوربینی که از motion.conf فراخوانی شده و به همین ترتیب. هر گزینه‌ای که در motion.conf تعریف شود برای همه دوربین‌ها استفاده خواهد شد، مگر برای دوربین‌هایی که همان گزینه در فایل پیکربندی اختصاصی‌شان تعریف شده باشد. برنامه Motion پارامترهای پیکربندی خود را با توالی زیر می‌خواند. اگر یک پارامتر در بیش از یک مکان وجود داشته باشد، آخرین مقداری که خوانده شده اعمال می‌شود: ۱. ابتدا فایل پیکربندی motion.conf را از ابتدای فایل سطر به سطر می‌خواند. ۲. اگر گزینه "camera" در motion.conf تعریف شده باشد، فایل(های) پیکربندی دوربین خوانده می‌شود. ۳. برنامه Motion به خواندن بقیه فایل motion.conf ادامه می‌دهد. هر گزینه‌ای از این نقطه به بعد، گزینه مشابهی را که قبلاً در فایل دوربین تعریف شده بود لغو و بازنویسی می‌کند. ۴. برنامه گزینه‌های خط فرمان را می‌خواند که مجدداً تمامی گزینه‌های قبلاً تعریف‌شده را بازنویسی می‌کند. بنابراین همیشه فایل‌های پیکربندی دوربین را در انتهای فایل motion.conf فراخوانی کنید. اگر گزینه‌ها را در motion.conf بعد از فراخوانی فایل‌های دوربین تعریف کنید، همان گزینه‌ها در فایل‌های دوربین هرگز استفاده نخواهند شد. اگر Motion بدون ویژگی‌های خاصی مانند ffmpeg یا mysql ساخته شده باشد، گزینه‌های مربوط به این ویژگی‌ها را نادیده می‌گیرد و نیازی به حذف یا کامنت کردن آن‌ها ندارید. اگر دستور کنترل وب http://host:port/0/config/writeyes را اجرا کنید، Motion فایل motion.conf و تمام فایل‌های camera.conf را با فایل‌های پیکربندی خودکار تولیدشده و با فرمت مرتب که فقط شامل ویژگی‌های موجود در نسخه کامپایل‌شده Motion هستند بازنویسی می‌کند. اگر بعداً Motion را با ویژگی‌های بیشتری بازسازی کنید یا به نسخه جدید ارتقا دهید، می‌توانید از فایل‌های پیکربندی قدیمی خود استفاده کرده و دستور write را اجرا کنید تا فایل‌های پیکربندی جدید با گزینه‌های جدید که همگی روی مقادیر پیش‌فرض تنظیم شده‌اند داشته باشید. این کار ارتقا را بسیار آسان می‌کند. مشخص‌کننده‌های تبدیل برای نام‌گذاری پیشرفته فایل‌ها و ویژگی‌های متنی جدول زیر تمامی مشخص‌کننده‌های تبدیل پشتیبانی‌شده را نشان می‌دهد که می‌توانید در گزینه‌های text_left، text_right، snapshot_filename، jpeg_filename، ffmpeg_filename، timelapse_filename، on_event_start، on_event_end، on_picture_save، on_movie_start، on_movie_end و on_motion_detected استفاده کنید. در گزینه‌های text_left و text_right همچنین می‌توانید از '\n' برای رفتن به خط جدید استفاده کنید. %a نام اختصاری روز هفته بر اساس موقعیت مکانی (locale) جاری. %A نام کامل روز هفته بر اساس locale جاری. %b نام اختصاری ماه بر اساس locale جاری. %B نام کامل ماه بر اساس locale جاری. %c نمایش تاریخ و زمان ترجیحی برای locale جاری. %C متن تعریف‌شده توسط ویژگی text_event. %d روز ماه به صورت یک عدد دهدهی (محدوده 01 تا 31). %D تعداد پیکسل‌های تشخیص‌داده‌شده به عنوان حرکت. در صورت فعال بودن برچسب‌گذاری، این عدد نشان‌دهنده تعداد پیکسل‌ها در بزرگ‌ترین ناحیه حرکتی برچسب‌گذاری‌شده است. %E تغییردهنده فرمت: استفاده از فرمت جایگزین، به توضیحات زیر مراجعه کنید. %f نام فایل - مورد استفاده در ویژگی‌های on_picture_save، on_movie_start، on_movie_end و sql_query. %F معادل %Y-%m-%d (فرمت تاریخ استاندارد ISO 8601). %h ارتفاع تصویر. %H ساعت به صورت عدد ده‌دهی با قالب ۲۴ ساعته (محدوده 00 تا 23). %i عرض مستطیل حاوی پیکسل‌های حرکت (مستطیلی که هنگام روشن بودن locate روی تصویر نشان داده می‌شود). %I ساعت به صورت عدد ده‌دهی با قالب ۱۲ ساعته (محدوده 01 تا 12). %j روز سال به صورت یک عدد ده‌دهی (محدوده 001 تا 366). %J ارتفاع مستطیل حاوی پیکسل‌های حرکت (مستطیلی که هنگام روشن بودن locate روی تصویر نشان داده می‌شود). %k ساعت (قالب ۲۴ ساعته) به صورت عدد ده‌دهی (محدوده 0 تا 23)؛ اعداد تک‌رقمی با یک فاصله خالی در ابتدا همراه هستند (به %H نیز مراجعه کنید). %K مختصات X به پیکسل برای نقطه مرکزی حرکت. مبدأ گوشه بالا سمت چپ است. %l ساعت (قالب ۱۲ ساعته) به صورت عدد ده‌دهی (محدوده 1 تا 12)؛ اعداد تک‌رقمی با یک فاصله خالی در ابتدا همراه هستند (به %I نیز مراجعه کنید). %L مختصات Y به پیکسل برای نقطه مرکزی حرکت. مبدأ گوشه بالا سمت چپ است و اعداد به سمت پایین مثبت هستند. %m ماه به صورت یک عدد ده‌دهی (محدوده 01 تا 12). %M دقیقه به صورت یک عدد ده‌دهی (محدوده 00 تا 59). %n نوع فایل مورد استفاده در ویژگی‌های on_picture_save، on_movie_start، on_movie_end و sql_query. %N سطح نویز. %o آستانه. تعداد پیکسل‌های شناسایی‌شده لازم برای ایجاد رخداد حرکت. هنگامی که threshold_tune روی 'on' باشد، می‌توان از این مورد برای نمایش مقدار تنظیم‌شده جاری آستانه استفاده کرد. %p عبارت 'AM' یا 'PM' بر اساس مقدار زمان داده‌شده یا رشته‌های متناظر در locale جاری. ظهر به عنوان 'pm' و نیمه‌شب به عنوان 'am' در نظر گرفته می‌شود. %P مشابه %p اما با حروف کوچک: 'am' یا 'pm' یا رشته متناظر در locale جاری. %q شماره فریم تصویر در ثانیه جاری. برای نام فایل‌های jpeg، در صورتی که بیش از ۱ تصویر در ثانیه ذخیره می‌کنید باید همیشه این مشخص‌کننده را اضافه کنید تا از یکتایی نام فایل‌ها اطمینان حاصل شود. در نام فایل‌های mpeg نیازی به آن نیست. %Q تعداد برچسب‌های شناسایی‌شده توسط ویژگی despeckle. %r زمان با قالب a.m. یا p.m. %R زمان با قالب ۲۴ ساعته (%H:%M). %s تعداد ثانیه‌های سپری‌شده از مبدأ یونیکس (Epoch)، یعنی از 1970-01-01 00:00:00 UTC. %S ثانیه به صورت یک عدد ده‌دهی (محدوده 00 تا 61). %t شماره شناسه دوربین. %T زمان با قالب ۲۴ ساعته (%H:%M:%S). %u روز هفته به صورت عدد ده‌دهی، محدوده ۱ تا ۷ که ۱ روز دوشنبه است (به %w نیز مراجعه کنید). %U شماره هفته سال جاری به صورت عدد ده‌دهی، محدوده 00 تا 53، که با اولین یکشنبه به عنوان نخستین روز هفته 01 آغاز می‌شود (به %V و %W نیز مراجعه کنید). %v شماره رخداد. یک رخداد مجموعه‌ای از تشخیص‌های حرکت است که با فاصله‌ای کمتر از 'gap' ثانیه رخ می‌دهند. %V شماره هفته در سال بر اساس استاندارد ISO 8601:1988 به صورت عدد ده‌دهی، محدوده 01 تا 53، که در آن هفته 1 اولین هفته‌ای است که حداقل ۴ روز در سال جاری دارد و دوشنبه نخستین روز هفته است (به %U و %W نیز مراجعه کنید). %w روز هفته به صورت یک عدد ده‌دهی، محدوده 0 تا 6 که 0 یکشنبه است (به %u نیز مراجعه کنید). %W شماره هفته در سال جاری به صورت عدد ده‌دهی، محدوده 00 تا 53، با شروع از اولین دوشنبه به عنوان نخستین روز هفته 01. %x نمایش تاریخ ترجیحی برای locale جاری بدون زمان. %X نمایش زمان ترجیحی برای locale جاری بدون تاریخ. %y سال به صورت یک عدد ده‌دهی دو رقمی بدون قرن (محدوده 00 تا 99). %Y سال به صورت یک عدد ده‌دهی شامل قرن. %z منطقه زمانی به عنوان اختلاف ساعت با GMT. %Z نام، اختصار یا منطقه زمانی. %$ نام دوربین. %{host} نام میزبان رایانه. %{fps} نرخ فریم بر ثانیه. %{dbeventid} شماره شناسه بازگردانده‌شده از mysql_insert_id. %{ver} شماره نسخه برنامه Motion. اطلاعات بیشتر (More information) صفحه اصلی Motion: راهنمای Motion (راهنمای کاربری و نصب): /usr/share/doc/motion/motion_guide.html نویسندگان (AUTHORS) Jeroen Vreeken (pe1rxq@amsat.org), Folkert van Heusden, Kenneth Lavrsen (kenneth@lavrsen.dk), Juan Angulo Moreno , تیم پروژه motion-project و افراد بسیار دیگر. Motion 2020-10-19 MOTION(1)