Плана нет, проект развивается исключительно в свободное время. А с этим, как вы понимаете, всегда проблемы.
В идеале нужен второй программист (заинтересованный в использовании приложения), готовый внести вклад в развитие (кодом, конечно). Пока был лишь один пулл-реквест с Бразильской локализацией.
Камеры поддерживаются, обновляются и находятся в актуальном состоянии, критичных багов нет. Времени на всё не хватает, но проект открыт, пулл реквесты принимаются;).
Спасибо, мысль интересная. Но начать воспроизведение не получится без ключевого кадра. Значит, минимально возможное отставание времени всё же будет от нуля до 1 GOP в теории, если не двигать вперёд время воспроизведения элемента video.
Мы ведь говорим об отставании текущего кадра от реального времени, верно? Можете рассказать подробней?
На настоящий момент (версия 2.0) остановка самого потока на клиенте не обрабатывается (визуально картинка просто останавливается), обрабатывается только потеря связи.
рассылки можно отключить при обращении в поддержку банков
Можно, но через некоторое время они иногда волшебным образом включаются обратно. В некоторые особо выдающиеся банки мне доводилось приходить лично, чтобы отключить какую-нибудь обязательную, по их мнению, фигню.
сотрудники будут заниматься попрошайками
Предлагаю просто оставаться людьми в любой ситуации, честными перед собой и друг перед другом. И то, что творят спамеры в масштабах планеты, имхо, хуже паразитной нагрузки.
Если человек занят - он не возьмет трубку
Мой друг умирал от рака. Телефон выключить не мог. В течении дня пытался уснуть, борясь с адскими болями. Как ты оценишь ущерб от бессмысленных звонков в этом случае?
Да, пока реализован не весь функционал, но для просмотра камер приложение уже активно используется и даже опубликовано на F-Droid.
Сейчас в разработке заявленная фича просмотра архива по SFTP. В целом, задач больше, чем свободного времени, придется расставлять приоритеты с учетом того, что это open source и KISS)
Спасибо, коллега!) Прочитал вашу статью. Действительно, ffmpeg отлично умеет перегонять rtsp в hls. Вот только веб не умеет это воспроизводить в h.265. В этой статье я исследовал возможности обойти это досадное недоразумение.
Да, пропустил момент про карты. Я в свое время от них отказался из-за безопасности. Если камеру с картой снимут, запись тоже пропадет. А так хотябы останется физиономия вандала.
За ColorVu спасибо. Правда, PoE не нашел в этой серии на вскидку.
Облако нравится, не нравятся возможные перебои с и-нетом и питанием. Надежней писать локально, полагаясь на бесперебойник. Ну и отрыть камеру напрямую с мобильника, опять же, надежнее. Это если ты находишься на месте. Если на объекте никого нет, можно писать на удаленном сервере (у меня установлены две копии скрипта - одна на объекте, вторая в Германии), ну или да, в облако.
Определение движения для улицы работает у меня из рук вон плохо - ветер имеет привычку шевелить предметы, а про снег, особенно ночью, уже и говорить нечего. А вот H.265+, на удивление, отлично помогает в этом вопросе - во файлах, которые заметно больше соседних по размеру, точно есть движение (у меня фрагменты по 10 минут).
Вполне уместно. У меня примерно так и было до этой статьи, только я вместо крона таймеры systemd использовал - следующий гарантированно запустится после остановки предыдущего. Для примера:
camera2.sh
#!/bin/sh
URL="rtsp://login:password@192.168.0.110:554/ISAPI/Streaming/Channels/101"
DIR="/path-to-storage/camera2"
DATE="`date +%Y-%m-%d`"
TTL=600
cd $DIR
if [ ! -d $DATE ]; then
mkdir $DATE
fi
cd $DATE
NAME="`date +%H-%M`"
timeout $TTL mencoder -nocache -really-quiet -rtsp-stream-over-tcp $URL -ovc copy -o $NAME.avi
if [ "$NAME" \> "06-00" ] && [ "$NAME" \< "06-15" ]; then
find $DIR -type d -mtime +12 -exec rm -rf {} \;
echo "ok, daily deleting of old dir"
else
echo "ok"
fi
/etc/systemd/system/camera2.timer
[Unit]
Description="Saving movie from camera 2"
[Timer]
OnCalendar=*:0/10
Persistent=true
[Install]
WantedBy=timers.target
/etc/systemd/system/camera2.service
[Unit]
Description="Saving movie from camera 2"
[Service]
ExecStart=/path-to-script/camera2.sh
[Install]
WantedBy=multi-user.target
Запустить нужно таймер (не сервис):
sudo systemctl enable camera1.timer
Ротацию можно сделать еще проще, без ифов, как в примере на гитхабе:
find <storage_path> -type d -mtime +<storage_period_days> -delete
find <storage_path> -type f -mtime +<storage_period_days> -delete
И не делать отдельную пару таймер/сервис под каждую камеру, а использовать @.
В статье просто весь функционал собран в одном месте.
Кстати, с ffmpeg для H.265+ у меня не срослось - если указать -c:v copy, он портит заголовки видеофайла, а если указать кодек явно, то начинает транскодировать, есть CPU и теряет плюс (который 265+). А он мне очень нужен для экономии места на диске.
Если вдруг кто знает, как это лечить, поделитесь, пожалуйста!
PEP-0484 рекомендует в аннотации типа метода
__init__
указывать None. Вероятно, для совместимости.Фильм "Черновик" 2018 года тут просто ну никак нельзя не вспомнить)
Плана нет, проект развивается исключительно в свободное время. А с этим, как вы понимаете, всегда проблемы.
В идеале нужен второй программист (заинтересованный в использовании приложения), готовый внести вклад в развитие (кодом, конечно). Пока был лишь один пулл-реквест с Бразильской локализацией.
Да, есть такое в трекере задач.
API отключен только для плюсов, с обычными кодеками H.264/265 все работает.
Камеры поддерживаются, обновляются и находятся в актуальном состоянии, критичных багов нет. Времени на всё не хватает, но проект открыт, пулл реквесты принимаются;).
Какое именно развитие вы хотели бы видеть?
Спасибо, мысль интересная. Но начать воспроизведение не получится без ключевого кадра. Значит, минимально возможное отставание времени всё же будет от нуля до 1 GOP в теории, если не двигать вперёд время воспроизведения элемента video.
Мы ведь говорим об отставании текущего кадра от реального времени, верно? Можете рассказать подробней?
Спасибо, надо будет посмотреть. HEVC, правда, в моем случае обязателен, без него никак.
На настоящий момент (версия 2.0) остановка самого потока на клиенте не обрабатывается (визуально картинка просто останавливается), обрабатывается только потеря связи.
1) Да, с ботами сложнее.
2)
Можно, но через некоторое время они иногда волшебным образом включаются обратно. В некоторые особо выдающиеся банки мне доводилось приходить лично, чтобы отключить какую-нибудь обязательную, по их мнению, фигню.
Предлагаю просто оставаться людьми в любой ситуации, честными перед собой и друг перед другом. И то, что творят спамеры в масштабах планеты, имхо, хуже паразитной нагрузки.
Мой друг умирал от рака. Телефон выключить не мог. В течении дня пытался уснуть, борясь с адскими болями. Как ты оценишь ущерб от бессмысленных звонков в этом случае?
Да, пока реализован не весь функционал, но для просмотра камер приложение уже активно используется и даже опубликовано на F-Droid.
Сейчас в разработке заявленная фича просмотра архива по SFTP. В целом, задач больше, чем свободного времени, придется расставлять приоритеты с учетом того, что это open source и KISS)
Вопрос времени - да, соглашусь. Но не ближайшего времени точно. По данным caniuse картина совсем не радужная:
Спасибо, коллега!)
Прочитал вашу статью. Действительно, ffmpeg отлично умеет перегонять rtsp в hls. Вот только веб не умеет это воспроизводить в h.265. В этой статье я исследовал возможности обойти это досадное недоразумение.
Спасибо. Не нашел в описании, переключение протоколов TCP/UDP есть? Подключаться через fallback сильно долго.
Спасибо, это работает.
В примере выше у Хика, при почти одинаковой цене, характеристики заметно лучше. Имхо.
Ага, у этой модели есть, буду иметь в виду, спасибо.
Да, пропустил момент про карты. Я в свое время от них отказался из-за безопасности. Если камеру с картой снимут, запись тоже пропадет. А так хотябы останется физиономия вандала.
За ColorVu спасибо. Правда, PoE не нашел в этой серии на вскидку.
Облако нравится, не нравятся возможные перебои с и-нетом и питанием. Надежней писать локально, полагаясь на бесперебойник. Ну и отрыть камеру напрямую с мобильника, опять же, надежнее. Это если ты находишься на месте. Если на объекте никого нет, можно писать на удаленном сервере (у меня установлены две копии скрипта - одна на объекте, вторая в Германии), ну или да, в облако.
Определение движения для улицы работает у меня из рук вон плохо - ветер имеет привычку шевелить предметы, а про снег, особенно ночью, уже и говорить нечего. А вот H.265+, на удивление, отлично помогает в этом вопросе - во файлах, которые заметно больше соседних по размеру, точно есть движение (у меня фрагменты по 10 минут).
Вполне уместно. У меня примерно так и было до этой статьи, только я вместо крона таймеры systemd использовал - следующий гарантированно запустится после остановки предыдущего. Для примера:
camera2.sh
/etc/systemd/system/camera2.timer
/etc/systemd/system/camera2.service
Запустить нужно таймер (не сервис):
Ротацию можно сделать еще проще, без ифов, как в примере на гитхабе:
И не делать отдельную пару таймер/сервис под каждую камеру, а использовать @.
В статье просто весь функционал собран в одном месте.
Кстати, с ffmpeg для H.265+ у меня не срослось - если указать -c:v copy, он портит заголовки видеофайла, а если указать кодек явно, то начинает транскодировать, есть CPU и теряет плюс (который 265+). А он мне очень нужен для экономии места на диске.
Если вдруг кто знает, как это лечить, поделитесь, пожалуйста!
Да, ценник приличный. И это, похоже, под 19" стойку. Даже не знаю, каждому свое, наверное)