synology.forum архив спільноти · 2005–2022
ai.synology.forum →
ГлавнаяPhotoStation › Преобразование фоток по расписанию

Преобразование фоток по расписанию

gvitalik · 26.02.2014

Добрый день,

 

Есть такая чудесная функция, когда фотка попадает в определенную папку автоматически преобразовывать её ко формату для просмотра через web-бразуер и с телефона. Но вот незадача, если загрузить много новых фотографий и видео роликов, то эта функция очень сильно грузит процессор и работать с NAS'ом становиться невозможно. В DSM можно приостановить распознавание на 1, 3, 6 часов, но может знает кто-нибудь, как сделать так, чтобы преобразование запускалось по расписанию в указанный промежуток времени.

 

Заранее спасибо!

Chiller · 27.02.2014

Штатно такой функции точно нет.

gvitalik · 27.02.2014

В DSM вроде, как есть возможность запускать скрипты по расписанию. Никто не знает, как при помощи скриптов останавливать и запускать это преобразование? Или хотя бы как из скрипта откладывать на 1 час?

gvitalik · 02.03.2014
В DSM вроде, как есть возможность запускать скрипты по расписанию. Никто не знает, как при помощи скриптов останавливать и запускать это преобразование? Или хотя бы как из скрипта откладывать на 1 час?

 

Может кому-то понадобиться. Сделал через планировщик задач и скрипты. Запланировал на каждый день в 00-00 запускается скрипт, который запускает индексацию новых фото и видео файлов:

/usr/syno/etc/rc.d/S77synomkthumbd.sh start

 

А в 08-00 у меня запускается скрипт, который останавливает конвертирование:

/usr/syno/etc/rc.d/S77synomkthumbd.sh stop

kmx236 · 21.03.2014
Может кому-то понадобиться. Сделал через планировщик задач и скрипты. Запланировал на каждый день в 00-00 запускается скрипт, который запускает индексацию новых фото и видео файлов:

/usr/syno/etc/rc.d/S77synomkthumbd.sh start

 

А в 08-00 у меня запускается скрипт, который останавливает конвертирование:

/usr/syno/etc/rc.d/S77synomkthumbd.sh stop

Не могли бы Вы выложить скрипты тут, а то в DSM 5.0 я их что-то не нашел?

gvitalik · 21.03.2014
Не могли бы Вы выложить скрипты тут, а то в DSM 5.0 я их что-то не нашел?

 

Скрипт всего один. В первом случае он запускает сервис конвертирования, во-втором останавливает.

#!/bin/sh
# Copyright (c) 2000-2005 Synology Inc. All rights reserved.
KERNEL_VERSION=`uname -r`

CheckProcDead() {
        killall $1 > /dev/null 2>&1

        count=5
        while [ $count -gt 0 ]; do
                pidof $1 > /dev/null 2>&1
                if [ $? -ne 0 ]; then
                        return 0
                fi
                sleep 1
                killall $1 > /dev/null 2>&1
                count=`expr $count - 1`
        done
}

SYNOMKTHUMBD="/usr/syno/bin/synomkthumbd"

case $1 in
        start)
                echo "Starting Synology Make Thumb Daemon..."
                case "$KERNEL_VERSION" in
                "2.4.22-uc0" | "2.6.15" | "2.6.24")
                        sleep 180 && $SYNOMKTHUMBD &
                       ;;
                *)
                        $SYNOMKTHUMBD
                       ;;
                esac
       ;;
        stop)
                echo "Stopping Synology Make Thumb Daemon..."

                #To ensure that thumb is dead before volume removed
                CheckProcDead synomkthumbd
                CheckProcDead synothumb
                CheckProcDead convert
                CheckProcDead dcraw
               ;;
        restart)
                $0 stop
                sleep 1
                $0 start
               ;;
        *)
                echo "Usage: $0 start|stop|restart"
       ;;
esac

 

Единственное заметил один большой недостаток. Этот скрипт останавливает только конвертирование картинок, если среди загружаемых файлов есть видео, то оно конвертируется.

 

gvitalik · 21.03.2014

Нашел еще один скрипт, называется /usr/syno/etc/rc.d/S88synomkflvd.sh По-идее он отвечает за конвертирование видео.

Но я нашел его только сейчас и не проверял, как он работает.

 

На всякий случай его содержимое:

#!/bin/sh
# Copyright (c) 2000-2007 Synology Inc. All rights reserved.
KERNEL_VERSION=`uname -r`

CheckProcDead() {
        killall $1 > /dev/null 2>&1

        count=5
        while [ $count -gt 0 ]; do
                pidof $1 > /dev/null 2>&1
                if [ $? -ne 0 ]; then
                        return 0
                fi
                sleep 1
                killall $1 > /dev/null 2>&1
                count=`expr $count - 1`
        done
}

SYNOMKFLVD="/usr/syno/sbin/synomkflvd"

case $1 in
        start)
                Support=`/bin/get_key_value /etc.defaults/synoinfo.conf supportvideostation`
                case "$Support" in
                [Yy][Ee][Ss])
                       ;;
                *)
                        echo "Video Station service is not support. Skip..."
                        exit;
                       ;;
                esac

                echo "Starting Synology Make FLV Daemon ..."
                case "$KERNEL_VERSION" in
                "2.4.22-uc0" | "2.6.15" | "2.6.24")
                        sleep 180 && $SYNOMKFLVD &
                       ;;
                *)
                        $SYNOMKFLVD
                       ;;
                esac

       ;;
        stop)
                echo "Stopping Synology Make FLV Daemon ..."

                #To ensure that mkflv is dead before volume removed
                CheckProcDead synomkflvd
                CheckProcDead synoflvconv
                CheckProcDead ffmpeg
               ;;
        restart)
                $0 stop
                sleep 1
                $0 start
               ;;
        *)
                echo "Usage: $0 start|stop|restart"
       ;;
esac

kmx236 · 22.03.2014

Благодарю!