51

Odp: motion z obsługą ffmpeg

@build000
No to teraz ukręciłeś sobie bat na d..e smile
Będziesz musiał odpowiadać na wszystkie żale dotyczące ramipsów... No ale ktoś musi.
"- A dlaczego nie mogę pobrać lib... ?
- Czy aby na pewno w paczkach nie ma wirusa? smile"

A teraz na poważnie:
A testowałeś może tandem mjpeg-streamer + motion-ffmpeg? Znalazłem LINK do posta @eRd, który to robił. Tylko że oni nie mieli ffmpeg-a w motion smile

Xiaomi AX3000T @ Netgear R6220
* DVBT2 - T230C *

52 (edytowany przez build000 2015-11-23 23:11:10)

Odp: motion z obsługą ffmpeg

No nie testowałem - domyślam się, że jak nic wy... mój router (Netgear WNDR4300) w kosmos i zero pozytywów z moją kamerką (Logitech HD Webcam C910), dlatego nawet nie próbowałem...
wink
W wolnej chwili doczytam co i jak, to może się odważę....tak na szybko wyłania się od razu typowa przypadłość - motion + >= 800x600 i robi się *ujnia - tylko domyślam się, że z libffmpeg-full będzie jedynie jeszcze gorzej...

A tam żale...@secam7 pytał, bo zapewne nie obeznany z kompilacją, więc uczyniłem taką najprostszą, żeby miał na testy.
big_smile

...a wirusy, trojany, spamboty i reszta hołoty jak zwykle...wszystkie obecne w moich paczkach...no...qrna...z natury rzeczy (żart) lol

53

Odp: motion z obsługą ffmpeg

@secam7 pewnie nie będzie miał problemów ale jest cała rzesza innych użytkowników ramipsów. Ta platforma może się nieźle rozkręcić (wt3020, xiaomi i inne takie z ali.... ) smile

Xiaomi AX3000T @ Netgear R6220
* DVBT2 - T230C *

54

Odp: motion z obsługą ffmpeg

zobaczymy - czas pokarze...

55

Odp: motion z obsługą ffmpeg

@build000

Wielkie dzięki za pliki! smile
Dobrze zgadłeś, mam klona HAME MPR-A2 i NEXX WT3020 .
Dam znać jak się ten motion zachowuje na moich "zabawkach".

56

Odp: motion z obsługą ffmpeg

mar_w napisał/a:

...
Instalacja tylko dla CC:
1. Skopiuj na router do katalogu /tmp tylko paczkę DLA CC: motion-ffmpeg-ar71xx-CC lub motion-ffmpeg-ar71xx-CC
2. komendy po kolei:

root@OpenWrt:/tmp# opkg update
root@OpenWrt:/tmp# opkg install motion-ffmpeg_3.4.0-20141018-9479d910f2149b5558788bb86f97f26522794212-1_ar71xx.ipk

Wszystko w temacie. Sprawdzałem na każdej wersji. Żadnych dziwnych błędów przy instalacji. A dźwiękiem się nie bawiłem...

Witam. Zrobiłem jak napisane powyżej i podczas instalacji mam poniższe błędy.
Mój system to OpenWrt Chaos Calmer 15.05 (r47662)

opkg install motion-ffmpeg_3.4.0-20141018-9479d910f2149b5558788bb86f97f26522794212-1_ar71xx.ipk
Installing motion-ffmpeg (3.4.0-20141018-9479d910f2149b5558788bb86f97f26522794212-1) to root...
Multiple packages (kmod-sound-core and kmod-sound-core) providing same name marked HOLD or PREFER. Using latest.
Installing libffmpeg-full (2.6.2-1) to root...
Downloading [url]http://downloads.openwrt.org/chaos_calmer/15.05/ar71xx/nand/packages/packages/libffmpeg-full_2.6.2-1_ar71xx.ipk.[/url]
Collected errors:
 * check_data_file_clashes: Package libffmpeg-full wants to install file /usr/lib/libavcodec.so.56.26.100
        But that file is already provided by package  * libffmpeg-mini
 * check_data_file_clashes: Package libffmpeg-full wants to install file /usr/lib/libavformat.so.56
        But that file is already provided by package  * libffmpeg-mini
 * check_data_file_clashes: Package libffmpeg-full wants to install file /usr/lib/libavutil.so.54
        But that file is already provided by package  * libffmpeg-mini
 * check_data_file_clashes: Package libffmpeg-full wants to install file /usr/lib/libavutil.so.54.20.100
        But that file is already provided by package  * libffmpeg-mini
 * check_data_file_clashes: Package libffmpeg-full wants to install file /usr/lib/libavcodec.so.56
        But that file is already provided by package  * libffmpeg-mini
 * check_data_file_clashes: Package libffmpeg-full wants to install file /usr/lib/libavformat.so.56.25.101
        But that file is already provided by package  * libffmpeg-mini
 * opkg_install_cmd: Cannot install package motion-ffmpeg.

Jakieś pomysły ?

TP-Link TL-WDR4300 Mod, CPU 700MHz, Flash 16 MB, Gargoyle 1.5.11.4, extroot + dysk zewnętrzny Samsung (S2), kamerka MS LifeCam HD-5000
TP-Link TL-WR1043ND Mod, RAM 64 MB, chłodzenie pasywne, Gargoyle 1.5.10.14, extroot, kamerka Logitech HD Webcam C270

57

Odp: motion z obsługą ffmpeg

Odinstaluj libffmpeg-mini wcześniej.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

58

Odp: motion z obsługą ffmpeg

No tak, po chwili doczytałem się. Ale znowu libffmpeg-mini jest potrzebne do minidlna. I nie da się odinstalować ?

root@OpenWrt:~# opkg remove libffmpeg-mini
No packages removed.
Collected errors:
 * print_dependents_warning: Package libffmpeg-mini is depended upon by packages:
 * print_dependents_warning:    minidlna
 * print_dependents_warning: These might cease to work if package libffmpeg-mini is removed.

 * print_dependents_warning: Force removal of this package with --force-depends.
 * print_dependents_warning: Force removal of this package and its dependents
 * print_dependents_warning: with --force-removal-of-dependent-packages.
TP-Link TL-WDR4300 Mod, CPU 700MHz, Flash 16 MB, Gargoyle 1.5.11.4, extroot + dysk zewnętrzny Samsung (S2), kamerka MS LifeCam HD-5000
TP-Link TL-WR1043ND Mod, RAM 64 MB, chłodzenie pasywne, Gargoyle 1.5.10.14, extroot, kamerka Logitech HD Webcam C270

59

Odp: motion z obsługą ffmpeg

minidlna wymaga libffmpeg który jest dostarczany przez libffmpeg-mini lub libffmpeg-full. Więc śmiało możesz tylko jedną z tych bibliotek zainstalować, nie musisz mieć obu.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

60

Odp: motion z obsługą ffmpeg

czyli tak, odinstalować minidlna następnie odinstalować libffmpeg-mini następnie zainstalować libffmpeg-full i dopiero potem zainstalować minidlna ?

TP-Link TL-WDR4300 Mod, CPU 700MHz, Flash 16 MB, Gargoyle 1.5.11.4, extroot + dysk zewnętrzny Samsung (S2), kamerka MS LifeCam HD-5000
TP-Link TL-WR1043ND Mod, RAM 64 MB, chłodzenie pasywne, Gargoyle 1.5.10.14, extroot, kamerka Logitech HD Webcam C270

61

Odp: motion z obsługą ffmpeg

Tak, albo użyj odpowiednich przełączników żeby odinstalować libffmpeg-mini bez ruszana minidlna. To praca domowa smile

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

62

Odp: motion z obsługą ffmpeg

Cezary napisał/a:

Tak, albo użyj odpowiednich przełączników żeby odinstalować libffmpeg-mini bez ruszana minidlna. To praca domowa smile

Dobre, spróbuje odrobić pracę domową.

TP-Link TL-WDR4300 Mod, CPU 700MHz, Flash 16 MB, Gargoyle 1.5.11.4, extroot + dysk zewnętrzny Samsung (S2), kamerka MS LifeCam HD-5000
TP-Link TL-WR1043ND Mod, RAM 64 MB, chłodzenie pasywne, Gargoyle 1.5.10.14, extroot, kamerka Logitech HD Webcam C270

63

Odp: motion z obsługą ffmpeg

Podpowiedź: musisz mocy użyć (--force-xxx)

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

64

Odp: motion z obsługą ffmpeg

Praca domowa odrobiona: opkg remove --force-depends libffmpeg-mini

Zainstalowałem motion-ffmpeg_3.4.0...... ponownie, ogólnie poszło. Jedynie niepokoi mnie ta informacja.

Multiple packages (kmod-sound-core and kmod-sound-core) providing same name marked HOLD or PREFER. Using latest.

Co to oznacza że mam już zainstalowany najnowszy pakiet kmod-sound-core

Poniżej całość informacji z przebiegu instalacji:

root@OpenWrt:/tmp# opkg install motion-ffmpeg_3.4.0-20141018-9479d910f2149b5558788bb86f97f26522794212-1_ar71xx.ipk
Installing motion-ffmpeg (3.4.0-20141018-9479d910f2149b5558788bb86f97f26522794212-1) to root...
Multiple packages (kmod-sound-core and kmod-sound-core) providing same name marked HOLD or PREFER. Using latest.
Installing libffmpeg-full (2.6.2-1) to root...
Downloading [url]http://downloads.openwrt.org/chaos_calmer/15.05/ar71xx/nand/packages/packages/libffmpeg-full_2.6.2-1_ar71xx.ipk.[/url]
Installing alsa-lib (1.0.28-1) to root...
Downloading [url]http://downloads.openwrt.org/chaos_calmer/15.05/ar71xx/nand/packages/packages/alsa-lib_1.0.28-1_ar71xx.ipk.[/url]
Configuring alsa-lib.
Configuring libffmpeg-full.
Configuring motion-ffmpeg.
TP-Link TL-WDR4300 Mod, CPU 700MHz, Flash 16 MB, Gargoyle 1.5.11.4, extroot + dysk zewnętrzny Samsung (S2), kamerka MS LifeCam HD-5000
TP-Link TL-WR1043ND Mod, RAM 64 MB, chłodzenie pasywne, Gargoyle 1.5.10.14, extroot, kamerka Logitech HD Webcam C270

65

Odp: motion z obsługą ffmpeg

Że w repozytoriach jest kilka pakietów kmod-sound-core  a on użyje ostatniej dostępnej. Całkiem przypadkiem tej którą masz zainstalowaną.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

66

Odp: motion z obsługą ffmpeg

Mam nadzieję że to ostatni problem na dziś.

root@OpenWrt:~# /etc/init.d/mjpg-streamer start
/etc/init.d/mjpg-streamer: device '/dev/video0' does not exist

Przez co motion nie chce się uruchomić.

root@OpenWrt:~# motion
[0] [ALR] [ALL] conf_load: could not open configfile /etc/motion/motion.conf: No such file or directory
[0] [CRT] [ALL] conf_load: Not config file to process using default values
[0] [NTC] [ALL] motion_startup: Using default log level (NTC) (6)
[0] [NTC] [ALL] motion_startup: Motion 3.4.0-Git-78ba2da Started
[0] [NTC] [ALL] motion_startup: Logging to syslog
[0] [NTC] [ALL] motion_startup: Using default log type (ALL)
[0] [NTC] [ALL] motion_startup: Using log type (ALL) log level (NTC)
[0] [NTC] [ENC] ffmpeg_init: ffmpeg LIBAVCODEC_BUILD 3676772 LIBAVFORMAT_BUILD 3676517
[0] [NTC] [ALL] main: Thread 1 is device: /dev/video0 input -1
[0] [NTC] [ALL] main: Stream port 0
[0] [NTC] [ALL] main: Waiting for threads to finish, pid: 3028
[1] [NTC] [ALL] motion_init: Thread 1 started , motion detection Enabled
[1] [NTC] [VID] vid_v4lx_start: Using videodevice /dev/video0 and input -1
[1] [ALR] [VID] vid_v4lx_start: Failed to open video device /dev/video0: No such file or directory
[1] [WRN] [ALL] motion_init: Could not fetch initial image from camera Motion continues using width and height from config file(s)
[1] [NTC] [ALL] image_ring_resize: Resizing pre_capture buffer to 1 items
[1] [WRN] [ALL] motion_loop: Retrying until successful connection with camera
[1] [NTC] [VID] vid_v4lx_start: Using videodevice /dev/video0 and input -1
[1] [ALR] [VID] vid_v4lx_start: Failed to open video device /dev/video0: No such file or directory
^C[1] [NTC] [ALL] motion_loop: End of event 1
[1] [NTC] [ALL] motion_loop: Thread exiting
[0] [NTC] [ALL] main: Threads finished
[0] [NTC] [ALL] main: Motion terminating

Kamerka Microsoft LIFECAM HD-5000 na Gargoyle z Pluginem Webcam działa dobrze, bez kombinacji.

Rozumiem że brakuje mi sterownika mojej kamery ? np. opkg install kmod-video-uvc
Jak sprawdzić jaki sterownik mam zainstalować ?

TP-Link TL-WDR4300 Mod, CPU 700MHz, Flash 16 MB, Gargoyle 1.5.11.4, extroot + dysk zewnętrzny Samsung (S2), kamerka MS LifeCam HD-5000
TP-Link TL-WR1043ND Mod, RAM 64 MB, chłodzenie pasywne, Gargoyle 1.5.10.14, extroot, kamerka Logitech HD Webcam C270

67

Odp: motion z obsługą ffmpeg

Jak działa z pluginem to /dev/video0 musi być.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

68 (edytowany przez krynio 2015-12-21 21:20:18)

Odp: motion z obsługą ffmpeg

Cezary napisał/a:

Jak działa z pluginem to /dev/video0 musi być.

Tak tylko teraz ta kamerka nie jest podpięta do routera z Gargoyle tylko do innego routera z Twoim CC  luci-15.05-ar71xx....

Edycja
Doinstalowałem:
kmod-video-gspca-zc3xx
kmod-video-uvc

I z    /etc/init.d/mjpg-streamer start   nie mam już problemów, startuje bez wypluwania błędów, led na kamerce zapala się.

Lecz po wydaniu polecenia uruchomienia "motion" wywala błędy:

root@OpenWrt:~# motion
[0] [ALR] [ALL] conf_load: could not open configfile /etc/motion/motion.conf: No such file or directory
[0] [CRT] [ALL] conf_load: Not config file to process using default values
[0] [NTC] [ALL] motion_startup: Using default log level (NTC) (6)
[0] [NTC] [ALL] motion_startup: Motion 3.4.0-Git-78ba2da Started
[0] [NTC] [ALL] motion_startup: Logging to syslog
[0] [NTC] [ALL] motion_startup: Using default log type (ALL)
[0] [NTC] [ALL] motion_startup: Using log type (ALL) log level (NTC)
[0] [NTC] [ENC] ffmpeg_init: ffmpeg LIBAVCODEC_BUILD 3676772 LIBAVFORMAT_BUILD 3676517
[0] [NTC] [ALL] main: Thread 1 is device: /dev/video0 input -1
[0] [NTC] [ALL] main: Stream port 0
[0] [NTC] [ALL] main: Waiting for threads to finish, pid: 2767
[1] [NTC] [ALL] motion_init: Thread 1 started , motion detection Enabled
[1] [NTC] [VID] vid_v4lx_start: Using videodevice /dev/video0 and input -1
[1] [NTC] [VID] v4l2_get_capability:
------------------------
cap.driver: "uvcvideo"
cap.card: "Microsoft® LifeCam HD-5000"
cap.bus_info: "usb-ehci-platform.1-1.3"
cap.capabilities=0x84000001
------------------------
[1] [NTC] [VID] v4l2_get_capability: - VIDEO_CAPTURE
[1] [NTC] [VID] v4l2_get_capability: - STREAMING
[1] [NTC] [VID] v4l2_select_input: name = "Camera 1", type 0x00000002, status 00000000
[1] [NTC] [VID] v4l2_select_input: - CAMERA
[1] [ERR] [VID] v4l2_select_input: Error selecting input 0 VIDIOC_S_INPUT: Device or resource busy
[1] [NTC] [VID] vid_v4lx_start: Using V4L1
[1] [NTC] [ALL] image_ring_resize: Resizing pre_capture buffer to 1 items
[1] [ERR] [ALL] motion_init: Error capturing first image
[1] [ERR] [ALL] motion_loop: Video device fatal error - Closing video device
[1] [NTC] [VID] vid_close: Closing video device /dev/video0
[1] [WRN] [ALL] motion_loop: Retrying until successful connection with camera
[1] [NTC] [VID] vid_v4lx_start: Using videodevice /dev/video0 and input -1
[1] [NTC] [VID] v4l2_get_capability:
------------------------
cap.driver: "uvcvideo"
cap.card: "Microsoft® LifeCam HD-5000"
cap.bus_info: "usb-ehci-platform.1-1.3"
cap.capabilities=0x84000001
------------------------
[1] [NTC] [VID] v4l2_get_capability: - VIDEO_CAPTURE
[1] [NTC] [VID] v4l2_get_capability: - STREAMING
[1] [NTC] [VID] v4l2_select_input: name = "Camera 1", type 0x00000002, status 00000000
[1] [NTC] [VID] v4l2_select_input: - CAMERA
[1] [ERR] [VID] v4l2_select_input: Error selecting input 0 VIDIOC_S_INPUT: Device or resource busy
[1] [NTC] [VID] vid_v4lx_start: Using V4L1
[1] [ERR] [ALL] motion_loop: Video device fatal error - Closing video device
[1] [NTC] [VID] vid_close: Closing video device /dev/video0
[1] [WRN] [ALL] motion_loop: Retrying until successful connection with camera
[1] [NTC] [VID] vid_v4lx_start: Using videodevice /dev/video0 and input -1
[1] [NTC] [VID] v4l2_get_capability:
------------------------
cap.driver: "uvcvideo"
cap.card: "Microsoft® LifeCam HD-5000"
cap.bus_info: "usb-ehci-platform.1-1.3"
cap.capabilities=0x84000001
------------------------
[1] [NTC] [VID] v4l2_get_capability: - VIDEO_CAPTURE
[1] [NTC] [VID] v4l2_get_capability: - STREAMING
[1] [NTC] [VID] v4l2_select_input: name = "Camera 1", type 0x00000002, status 00000000
[1] [NTC] [VID] v4l2_select_input: - CAMERA
[1] [ERR] [VID] v4l2_select_input: Error selecting input 0 VIDIOC_S_INPUT: Device or resource busy
[1] [NTC] [VID] vid_v4lx_start: Using V4L1
[1] [ERR] [ALL] motion_loop: Video device fatal error - Closing video device
[1] [NTC] [VID] vid_close: Closing video device /dev/video0
^C[1] [NTC] [ALL] motion_loop: End of event 1
[1] [NTC] [ALL] motion_loop: Thread exiting
[0] [NTC] [ALL] main: Threads finished
[0] [NTC] [ALL] main: Motion terminating

Jedynie co z w/w zauważyłem to zła lokalizacja do pliku configfile /etc/motion/motion.conf

Ponieważ moja lokalizacja to /etc/motion.conf

TP-Link TL-WDR4300 Mod, CPU 700MHz, Flash 16 MB, Gargoyle 1.5.11.4, extroot + dysk zewnętrzny Samsung (S2), kamerka MS LifeCam HD-5000
TP-Link TL-WR1043ND Mod, RAM 64 MB, chłodzenie pasywne, Gargoyle 1.5.10.14, extroot, kamerka Logitech HD Webcam C270

69 (edytowany przez mar_w 2015-12-21 22:01:28)

Odp: motion z obsługą ffmpeg

krynio napisał/a:

Jedynie co z w/w zauważyłem to zła lokalizacja do pliku configfile /etc/motion/motion.conf

Ponieważ moja lokalizacja to /etc/motion.conf

To zrób:

#mkdir /etc/motion
#mv /etc/motion.conf /etc/motion/

dodatkowo z tego co widziałem w sieci to uruchomienie mjpeg_streamer + motion ludzie robią tak:

mjpg_streamer -i "input_uvc.so -d /dev/video0" -o "output_http.so"

oraz zmiana konfiguracji motion-a (/etc/motion/motion.conf):

netcam_url http://localhost:8080/?action=stream

Bo mam wrażenie że oba serwery chcą na raz używać /dev/video0 które jest zajęte przez program uruchomiony w pierwszej kolejności.

Xiaomi AX3000T @ Netgear R6220
* DVBT2 - T230C *

70

Odp: motion z obsługą ffmpeg

Panowie, dzięki za wsparcie.

Zrobiłem zalecenia @mar_w i jest progres. Tzn sypie dalej błędami ale w niektórych przypadkach jest obraz na żywo pod adresem http://192.168.2.4:8080. Szkoda mi to na tym etapie porzucić, więc proszę o dalsze podpowiedzi. Poniżej szczegóły z różnych sposobów uruchomienia usługi.
1. /etc/init.d/mjpg-streamer start
następnie polecenie motion.

root@OpenWrt:~# motion
[0] [NTC] [ALL] conf_load: Processing thread 0 - config file /etc/motion/motion.conf
[0] [NTC] [ALL] motion_startup: Motion 3.4.0-Git-78ba2da Started
[0] [NTC] [ALL] motion_startup: Logging to syslog
[0] [NTC] [ALL] motion_startup: Using log type (ALL) log level (NTC)
[0] [NTC] [ENC] ffmpeg_init: ffmpeg LIBAVCODEC_BUILD 3676772 LIBAVFORMAT_BUILD 3676517
[0] [NTC] [ALL] main: Thread 1 is from /etc/motion/motion.conf
[0] [NTC] [ALL] main: Thread 1 is device: http://localhost:8080/?action=stream input -1
[0] [NTC] [ALL] main: Stream port 8081
[0] [NTC] [ALL] main: Waiting for threads to finish, pid: 2973
[0] [NTC] [STR] httpd_run: motion-httpd testing : IPV4 addr: 127.0.0.1 port: 8080
[0] [ERR] [STR] httpd_run: motion-httpd failed bind() interface 127.0.0.1 / port 8080, retrying: Address already in use
[0] [ERR] [STR] httpd_run: motion-httpd socket failed interface 127.0.0.1 / port 8080, retrying: Address already in use
[0] [CRT] [STR] httpd_run: motion-httpd ERROR bind() [interface 127.0.0.1 port 8080]: Address already in use
[0] [NTC] [STR] motion_web_control: motion-httpd thread exit
[1] [NTC] [ALL] motion_init: Thread 1 started , motion detection Enabled
[1] [ALR] [NET] netcam_start: Network Camera thread starting... for url (http://localhost:8080/?action=stream)
[1] [NTC] [NET] netcam_setup_html: connected, going on to read image.
[1] [NTC] [NET] netcam_read_html_jpeg: disconnecting netcam since keep-alive not set.
[1] [NTC] [NET] netcam_read_html_jpeg: leaving netcam connected.
[1] [CRT] [NET] netcam_start: libjpeg decompression failure on first frame - giving up!
[1] [WRN] [ALL] motion_init: Could not fetch initial image from camera Motion continues using width and height from config file(s)
[1] [NTC] [ALL] image_ring_resize: Resizing pre_capture buffer to 1 items
[1] [NTC] [STR] http_bindsock: motion-stream testing : IPV4 addr: 127.0.0.1 port: 8081
[1] [NTC] [STR] http_bindsock: motion-stream Bound : IPV4 addr: 127.0.0.1 port: 8081
[1] [NTC] [ALL] motion_init: Started motion-stream server in port 8081 auth Disabled
[1] [WRN] [ALL] motion_loop: Retrying until successful connection with camera
[1] [ALR] [NET] netcam_start: Network Camera thread starting... for url (http://localhost:8080/?action=stream)
[1] [NTC] [NET] netcam_setup_html: connected, going on to read image.
[1] [NTC] [NET] netcam_read_html_jpeg: disconnecting netcam since keep-alive not set.
[1] [NTC] [NET] netcam_read_html_jpeg: leaving netcam connected.
[1] [CRT] [NET] netcam_start: libjpeg decompression failure on first frame - giving up!
[1] [WRN] [ALL] motion_loop: Retrying until successful connection with camera
[1] [ALR] [NET] netcam_start: Network Camera thread starting... for url (http://localhost:8080/?action=stream)
[1] [NTC] [NET] netcam_setup_html: connected, going on to read image.
[1] [NTC] [NET] netcam_read_html_jpeg: disconnecting netcam since keep-alive not set.
[1] [NTC] [NET] netcam_read_html_jpeg: leaving netcam connected.
[1] [CRT] [NET] netcam_start: libjpeg decompression failure on first frame - giving up!
[1] [WRN] [ALL] motion_loop: Retrying until successful connection with camera
[1] [ALR] [NET] netcam_start: Network Camera thread starting... for url (http://localhost:8080/?action=stream)
[1] [NTC] [NET] netcam_setup_html: connected, going on to read image.
[1] [NTC] [NET] netcam_read_html_jpeg: disconnecting netcam since keep-alive not set.
[1] [NTC] [NET] netcam_read_html_jpeg: leaving netcam connected.
[1] [CRT] [NET] netcam_start: libjpeg decompression failure on first frame - giving up!
[1] [NTC] [ALL] motion_loop: Video signal lost - Adding grey image
[1] [WRN] [ALL] motion_loop: Retrying until successful connection with camera
[1] [ALR] [NET] netcam_start: Network Camera thread starting... for url (http://localhost:8080/?action=stream)
[1] [NTC] [NET] netcam_setup_html: connected, going on to read image.
[1] [NTC] [NET] netcam_read_html_jpeg: disconnecting netcam since keep-alive not set.
[1] [NTC] [NET] netcam_read_html_jpeg: leaving netcam connected.
[1] [CRT] [NET] netcam_start: libjpeg decompression failure on first frame - giving up!
[1] [WRN] [ALL] motion_loop: Retrying until successful connection with camera
[1] [ALR] [NET] netcam_start: Network Camera thread starting... for url (http://localhost:8080/?action=stream)
[1] [NTC] [NET] netcam_setup_html: connected, going on to read image.
[1] [NTC] [NET] netcam_read_html_jpeg: disconnecting netcam since keep-alive not set.
[1] [NTC] [NET] netcam_read_html_jpeg: leaving netcam connected.
[1] [CRT] [NET] netcam_start: libjpeg decompression failure on first frame - giving up!
[1] [WRN] [ALL] motion_loop: Retrying until successful connection with camera
[1] [ALR] [NET] netcam_start: Network Camera thread starting... for url (http://localhost:8080/?action=stream)
[1] [NTC] [NET] netcam_setup_html: connected, going on to read image.
[1] [NTC] [NET] netcam_read_html_jpeg: disconnecting netcam since keep-alive not set.
[1] [NTC] [NET] netcam_read_html_jpeg: leaving netcam connected.
[1] [CRT] [NET] netcam_start: libjpeg decompression failure on first frame - giving up!
[1] [WRN] [ALL] motion_loop: Retrying until successful connection with camera
[1] [ALR] [NET] netcam_start: Network Camera thread starting... for url (http://localhost:8080/?action=stream)
[1] [NTC] [NET] netcam_setup_html: connected, going on to read image.
[1] [NTC] [NET] netcam_read_html_jpeg: disconnecting netcam since keep-alive not set.
[1] [NTC] [NET] netcam_read_html_jpeg: leaving netcam connected.
[1] [CRT] [NET] netcam_start: libjpeg decompression failure on first frame - giving up!
^C[1] [NTC] [ALL] motion_loop: End of event 1
[1] [NTC] [ALL] motion_loop: Thread exiting
[1] [NTC] [STR] stream_stop: Closing motion-stream listen socket & active motion-stream sockets
[1] [NTC] [STR] stream_stop: Closed motion-stream listen socket & active motion-stream sockets
[0] [NTC] [ALL] main: Threads finished
[0] [NTC] [ALL] main: Motion terminating

Pomimo w/w jest podgląd na żywo pod adresem http://192.168.2.4:8080

2. /etc/init.d/mjpg-streamer stop
następnie polecenie mjpg_streamer -i "input_uvc.so -d /dev/video0" -o "output_http.so"

root@OpenWrt:~# /etc/init.d/mjpg-streamer stop
root@OpenWrt:~# mjpg_streamer -i "input_uvc.so -d /dev/video0" -o "output_http.so"
MJPG Streamer Version: svn rev: exported
 i: Using V4L2 device.: /dev/video0
 i: Desired Resolution: 640 x 480
 i: Frames Per Second.: not limited
 i: Format............: JPEG
 i: TV-Norm...........: DEFAULT
 o: www-folder-path...: disabled
 o: HTTP TCP port.....: 8080
 o: username:password.: disabled
 o: commands..........: enabled


Brak obrazu, pod adresem http://192.168.2.4:8080 wyświetla się 501: Not Implemented! no www-folder configured

3. /etc/init.d/mjpg-streamer start
następnie polecenie mjpg_streamer -i "input_uvc.so -d /dev/video0" -o "output_http.so"

root@OpenWrt:~# /etc/init.d/mjpg-streamer start
root@OpenWrt:~# mjpg_streamer -i "input_uvc.so -d /dev/video0" -o "output_http.so"
MJPG Streamer Version: svn rev: exported
 i: Using V4L2 device.: /dev/video0
 i: Desired Resolution: 640 x 480
 i: Frames Per Second.: not limited
 i: Format............: JPEG
 i: TV-Norm...........: DEFAULT
Unable to set format: 1196444237 res: 640x480
 Init v4L2 failed !! exit fatal
 i: init_VideoIn failed

Pomimo w/w jest podgląd na żywo pod adresem http://192.168.2.4:8080

Poniżej mój config /etc/motion/motion.conf

# Rename this distribution example file to motion.conf
#
# This config file was generated by motion 3.4.0-Git-78ba2da


############################################################
# Daemon
############################################################

# Start in daemon (background) mode and release terminal (default: off)
daemon off

# File to store the process ID, also called pid file. (default: not defined)
process_id_file /var/run/motion/motion.pid

############################################################
# Basic Setup Mode
############################################################

# Start in Setup-Mode, daemon disabled. (default: off)
setup_mode off


# Use a file to save logs messages, if not defined stderr and syslog is used. (default: not defined)
;logfile /tmp/motion.log

# Level of log messages [1..9] (EMR, ALR, CRT, ERR, WRN, NTC, INF, DBG, ALL). (default: 6 / NTC)
log_level 6

# Filter to log messages by type (COR, STR, ENC, NET, DBL, EVT, TRK, VID, ALL). (default: ALL)
log_type all

###########################################################
# Capture device options
############################################################

# Videodevice to be used for capturing  (default /dev/video0)
# for FreeBSD default is /dev/bktr0
videodevice /dev/video0

# v4l2_palette allows to choose preferable palette to be use by motion
# to capture from those supported by your videodevice. (default: 17)
# E.g. if your videodevice supports both V4L2_PIX_FMT_SBGGR8 and
# V4L2_PIX_FMT_MJPEG then motion will by default use V4L2_PIX_FMT_MJPEG.
# Setting v4l2_palette to 2 forces motion to use V4L2_PIX_FMT_SBGGR8
# instead.
#
# Values :
# V4L2_PIX_FMT_SN9C10X : 0  'S910'
# V4L2_PIX_FMT_SBGGR16 : 1  'BYR2'
# V4L2_PIX_FMT_SBGGR8  : 2  'BA81'
# V4L2_PIX_FMT_SPCA561 : 3  'S561'
# V4L2_PIX_FMT_SGBRG8  : 4  'GBRG'
# V4L2_PIX_FMT_SGRBG8  : 5  'GRBG'
# V4L2_PIX_FMT_PAC207  : 6  'P207'
# V4L2_PIX_FMT_PJPG    : 7  'PJPG'
# V4L2_PIX_FMT_MJPEG   : 8  'MJPEG'
# V4L2_PIX_FMT_JPEG    : 9  'JPEG'
# V4L2_PIX_FMT_RGB24   : 10 'RGB3'
# V4L2_PIX_FMT_SPCA501 : 11 'S501'
# V4L2_PIX_FMT_SPCA505 : 12 'S505'
# V4L2_PIX_FMT_SPCA508 : 13 'S508'
# V4L2_PIX_FMT_UYVY    : 14 'UYVY'
# V4L2_PIX_FMT_YUYV    : 15 'YUYV'
# V4L2_PIX_FMT_YUV422P : 16 '422P'
# V4L2_PIX_FMT_YUV420  : 17 'YU12'
#
v4l2_palette 17

# Tuner device to be used for capturing using tuner as source (default /dev/tuner0)
# This is ONLY used for FreeBSD. Leave it commented out for Linux
; tunerdevice /dev/tuner0

# The video input to be used (default: -1)
# Should normally be set to 0 or 1 for video/TV cards, and -1 for USB cameras
input -1

# The video norm to use (only for video capture and TV tuner cards)
# Values: 0 (PAL), 1 (NTSC), 2 (SECAM), 3 (PAL NC no colour). Default: 0 (PAL)
norm 0

# The frequency to set the tuner to (kHz) (only for TV tuner cards) (default: 0)
frequency 0

# Rotate image this number of degrees. The rotation affects all saved images as
# well as movies. Valid values: 0 (default = no rotation), 90, 180 and 270.
rotate 0

# Image width (pixels). Valid range: Camera dependent, default: 352
width 320

# Image height (pixels). Valid range: Camera dependent, default: 288
height 240

# Maximum number of frames to be captured per second.
# Valid range: 2-100. Default: 100 (almost no limit).
framerate 2

# Minimum time in seconds between capturing picture frames from the camera.
# Default: 0 = disabled - the capture rate is given by the camera framerate.
# This option is used when you want to capture images at a rate lower than 2 per second.
minimum_frame_time 0

# URL to use if you are using a network camera, size will be autodetected (incl http:// ftp:// mjpg:// rtsp:// mjpeg:// or file:///)
# Must be a URL that returns single jpeg pictures or a raw mjpeg stream. Default: Not defined
netcam_url http://localhost:8080/?action=stream

# Username and password for network camera (only if required). Default: not defined
# Syntax is user:password
; netcam_userpass value

# The setting for keep-alive of network socket, should improve performance on compatible net cameras.
# off:   The historical implementation using HTTP/1.0, closing the socket after each http request.
# force: Use HTTP/1.0 requests with keep alive header to reuse the same connection.
# on:    Use HTTP/1.1 requests that support keep alive as default.
# Default: off
netcam_keepalive off

# URL to use for a netcam proxy server, if required, e.g. "http://myproxy".
# If a port number other than 80 is needed, use "http://myproxy:1234".
# Default: not defined
; netcam_proxy value

# Set less strict jpeg checks for network cameras with a poor/buggy firmware.
# Default: off
netcam_tolerant_check off

# RTSP connection uses TCP to communicate to the camera. Can prevent image corruption.
# Default: on
rtsp_uses_tcp on

# Let motion regulate the brightness of a video device (default: off).
# The auto_brightness feature uses the brightness option as its target value.
# If brightness is zero auto_brightness will adjust to average brightness value 128.
# Only recommended for cameras without auto brightness
auto_brightness off

# Set the initial brightness of a video device.
# If auto_brightness is enabled, this value defines the average brightness level
# which Motion will try and adjust to.
# Valid range 0-255, default 0 = disabled
brightness 0

# Set the contrast of a video device.
# Valid range 0-255, default 0 = disabled
contrast 0

# Set the saturation of a video device.
# Valid range 0-255, default 0 = disabled
saturation 0

# Set the hue of a video device (NTSC feature).
# Valid range 0-255, default 0 = disabled
hue 0


############################################################
# Round Robin (multiple inputs on same video device name)
############################################################

# Number of frames to capture in each roundrobin step (default: 1)
roundrobin_frames 1

# Number of frames to skip before each roundrobin step (default: 1)
roundrobin_skip 1

# Try to filter out noise generated by roundrobin (default: off)
switchfilter off


############################################################
# Motion Detection Settings:
############################################################

# Threshold for number of changed pixels in an image that
# triggers motion detection (default: 1500)
threshold 1500

# Automatically tune the threshold down if possible (default: off)
threshold_tune off

# Noise threshold for the motion detection (default: 32)
noise_level 32

# Automatically tune the noise threshold (default: on)
noise_tune on

# Despeckle motion image using (e)rode or (d)ilate or (l)abel (Default: not defined)
# Recommended value is EedDl. Any combination (and number of) of E, e, d, and D is valid.
# (l)abeling must only be used once and the 'l' must be the last letter.
# Comment out to disable
despeckle_filter EedDl

# Detect motion in predefined areas (1 - 9). Areas are numbered like that:  1 2 3
# A script (on_area_detected) is started immediately when motion is         4 5 6
# detected in one of the given areas, but only once during an event.        7 8 9
# One or more areas can be specified with this option. Take care: This option
# does NOT restrict detection to these areas! (Default: not defined)
; area_detect value

# PGM file to use as a sensitivity mask.
# Full path name to. (Default: not defined)
; mask_file value

# Dynamically create a mask file during operation (default: 0)
# Adjust speed of mask changes from 0 (off) to 10 (fast)
smart_mask_speed 0

# Ignore sudden massive light intensity changes given as a percentage of the picture
# area that changed intensity. Valid range: 0 - 100 , default: 0 = disabled
lightswitch 0

# Picture frames must contain motion at least the specified number of frames
# in a row before they are detected as true motion. At the default of 1, all
# motion is detected. Valid range: 1 to thousands, recommended 1-5
minimum_motion_frames 1

# Specifies the number of pre-captured (buffered) pictures from before motion
# was detected that will be output at motion detection.
# Recommended range: 0 to 5 (default: 0)
# Do not use large values! Large values will cause Motion to skip video frames and
# cause unsmooth movies. To smooth movies use larger values of post_capture instead.
pre_capture 0

# Number of frames to capture after motion is no longer detected (default: 0)
post_capture 0

# Event Gap is the seconds of no motion detection that triggers the end of an event.
# An event is defined as a series of motion images taken within a short timeframe.
# Recommended value is 60 seconds (Default). The value -1 is allowed and disables
# events causing all Motion to be written to one single movie file and no pre_capture.
# If set to 0, motion is running in gapless mode. Movies don't have gaps anymore. An
# event ends right after no more motion is detected and post_capture is over.
event_gap 60

# Maximum length in seconds of a movie
# When value is exceeded a new movie file is created. (Default: 0 = infinite)
max_movie_time 0

# Always save images even if there was no motion (default: off)
emulate_motion off


############################################################
# Image File Output
############################################################

# Output 'normal' pictures when motion is detected (default: on)
# Valid values: on, off, first, best, center
# When set to 'first', only the first picture of an event is saved.
# Picture with most motion of an event is saved when set to 'best'.
# Picture with motion nearest center of picture is saved when set to 'center'.
# Can be used as preview shot for the corresponding movie.
output_pictures on

# Output pictures with only the pixels moving object (ghost images) (default: off)
output_debug_pictures off

# The quality (in percent) to be used by the jpeg compression (default: 75)
quality 75

# Type of output images
# Valid values: jpeg, ppm (default: jpeg)
picture_type jpeg

############################################################
# FFMPEG related options
# Film (movies) file output, and deinterlacing of the video input
# The options movie_filename and timelapse_filename are also used
# by the ffmpeg feature
############################################################

# Use ffmpeg to encode movies in realtime (default: off)
ffmpeg_output_movies on

# Use ffmpeg to make movies with only the pixels moving
# object (ghost images) (default: off)
ffmpeg_output_debug_movies off

# Use ffmpeg to encode a timelapse movie
# Default value 0 = off - else save frame every Nth second
ffmpeg_timelapse 0

# The file rollover mode of the timelapse video
# Valid values: hourly, daily (default), weekly-sunday, weekly-monday, monthly, manual
ffmpeg_timelapse_mode daily

# Bitrate to be used by the ffmpeg encoder (default: 400000)
# This option is ignored if ffmpeg_variable_bitrate is not 0 (disabled)
ffmpeg_bps 400000

# Enables and defines variable bitrate for the ffmpeg encoder.
# ffmpeg_bps is ignored if variable bitrate is enabled.
# Valid values: 0 (default) = fixed bitrate defined by ffmpeg_bps,
# or the range 2 - 31 where 2 means best quality and 31 is worst.
ffmpeg_variable_bitrate 0

# Codec to used by ffmpeg for the video compression.
# Timelapse videos have two options.
#   swf - Creates swf file with mpeg-2 encoding.
#     If motion is shutdown and restarted, new pics will be appended
#     to any previously created file with name indicated for timelapse.
#   mpeg4 - Creates avi file with the default encoding.
#     If motion is shutdown and restarted, new pics will create a
#     new file with the name indicated for timelapse.
# Supported formats are:
# mpeg4 or msmpeg4 - gives you files with extension .avi
# msmpeg4 is recommended for use with Windows Media Player because
# it requires no installation of codec on the Windows client.
# swf - gives you a flash film with extension .swf
# flv - gives you a flash video with extension .flv
# ffv1 - FF video codec 1 for Lossless Encoding ( experimental )
# mov - QuickTime ( testing )
# ogg - Ogg/Theora ( testing )
ffmpeg_video_codec mpeg4

# Use ffmpeg to deinterlace video. Necessary if you use an analog camera
# and see horizontal combing on moving objects in video or pictures.
# (default: off)
ffmpeg_deinterlace off

############################################################
# SDL Window
############################################################

# Number of motion thread to show in SDL Window (default: 0 = disabled)
#sdl_threadnr 0

############################################################
# External pipe to video encoder
# Replacement for FFMPEG builtin encoder for ffmpeg_output_movies only.
# The options movie_filename and timelapse_filename are also used
# by the ffmpeg feature
#############################################################

# Bool to enable or disable extpipe (default: off)
use_extpipe off

# External program (full path and opts) to pipe raw video to
# Generally, use '-' for STDIN...
;extpipe mencoder -demuxer rawvideo -rawvideo w=320:h=240:i420 -ovc x264 -x264encopts bframes=4:frameref=1:subq=1:scenecut=-1:nob_adapt:threads=1:keyint=1000:8x8dct:vbv_bufsize=4000:crf=24:partitions=i8x8,i4x4:vbv_maxrate=800:no-chroma-me -vf denoise3d=16:12:48:4,pp=lb -of   avi -o %f.avi - -fps %fps



############################################################
# Snapshots (Traditional Periodic Webcam File Output)
############################################################

# Make automated snapshot every N seconds (default: 0 = disabled)
snapshot_interval 0


############################################################
# Text Display
# %Y = year, %m = month, %d = date,
# %H = hour, %M = minute, %S = second, %T = HH:MM:SS,
# %v = event, %q = frame number, %t = thread (camera) number,
# %D = changed pixels, %N = noise level, \n = new line,
# %i and %J = width and height of motion area,
# %K and %L = X and Y coordinates of motion center
# %C = value defined by text_event - do not use with text_event!
# You can put quotation marks around the text to allow
# leading spaces
############################################################

# Locate and draw a box around the moving object.
# Valid values: on, off, preview (default: off)
# Set to 'preview' will only draw a box in preview_shot pictures.
locate_motion_mode off

# Set the look and style of the locate box if enabled.
# Valid values: box, redbox, cross, redcross (default: box)
# Set to 'box' will draw the traditional box.
# Set to 'redbox' will draw a red box.
# Set to 'cross' will draw a little cross to mark center.
# Set to 'redcross' will draw a little red cross to mark center.
locate_motion_style box

# Draws the timestamp using same options as C function strftime(3)
# Default: %Y-%m-%d\n%T = date in ISO format and time in 24 hour clock
# Text is placed in lower right corner
text_right %Y-%m-%d\n%T-%q

# Draw a user defined text on the images using same options as C function strftime(3)
# Default: Not defined = no text
# Text is placed in lower left corner
; text_left CAMERA %t

# Draw the number of changed pixed on the images (default: off)
# Will normally be set to off except when you setup and adjust the motion settings
# Text is placed in upper right corner
text_changes off

# This option defines the value of the special event conversion specifier %C
# You can use any conversion specifier in this option except %C. Date and time
# values are from the timestamp of the first image in the current event.
# Default: %Y%m%d%H%M%S
# The idea is that %C can be used filenames and text_left/right for creating
# a unique identifier for each event.
text_event %Y%m%d%H%M%S

# Draw characters at twice normal size on images. (default: off)
text_double off


# Text to include in a JPEG EXIF comment
# May be any text, including conversion specifiers.
# The EXIF timestamp is included independent of this text.
;exif_text %i%J/%K%L

############################################################
# Target Directories and filenames For Images And Films
# For the options snapshot_, picture_, movie_ and timelapse_filename
# you can use conversion specifiers
# %Y = year, %m = month, %d = date,
# %H = hour, %M = minute, %S = second,
# %v = event, %q = frame number, %t = thread (camera) number,
# %D = changed pixels, %N = noise level,
# %i and %J = width and height of motion area,
# %K and %L = X and Y coordinates of motion center
# %C = value defined by text_event
# Quotation marks round string are allowed.
############################################################

# Target base directory for pictures and films
# Recommended to use absolute path. (Default: current working directory)
target_dir /mnt/dysk_ext4/motion

# File path for snapshots (jpeg or ppm) relative to target_dir
# Default: %v-%Y%m%d%H%M%S-snapshot
# Default value is equivalent to legacy oldlayout option
# For Motion 3.0 compatible mode choose: %Y/%m/%d/%H/%M/%S-snapshot
# File extension .jpg or .ppm is automatically added so do not include this.
# Note: A symbolic link called lastsnap.jpg created in the target_dir will always
# point to the latest snapshot, unless snapshot_filename is exactly 'lastsnap'
snapshot_filename %v-%Y%m%d%H%M%S-snapshot

# File path for motion triggered images (jpeg or ppm) relative to target_dir
# Default: %v-%Y%m%d%H%M%S-%q
# Default value is equivalent to legacy oldlayout option
# For Motion 3.0 compatible mode choose: %Y/%m/%d/%H/%M/%S-%q
# File extension .jpg or .ppm is automatically added so do not include this
# Set to 'preview' together with best-preview feature enables special naming
# convention for preview shots. See motion guide for details
picture_filename %v-%Y%m%d%H%M%S-%q

# File path for motion triggered ffmpeg films (movies) relative to target_dir
# Default: %v-%Y%m%d%H%M%S
# File extensions(.swf .avi) are automatically added so do not include them
movie_filename %v-%Y%m%d%H%M%S

# File path for timelapse movies relative to target_dir
# Default: %Y%m%d-timelapse
# File extensions(.swf .avi) are automatically added so do not include them
timelapse_filename %Y%m%d-timelapse

############################################################
# Global Network Options
############################################################
# Enable or disable IPV6 for http control and stream (default: off )
ipv6_enabled off

############################################################
# Live Stream Server
############################################################

# The mini-http server listens to this port for requests (default: 0 = disabled)
stream_port 8081

# Quality of the jpeg (in percent) images produced (default: 50)
stream_quality 50

# Output frames at 1 fps when no motion is detected and increase to the
# rate given by stream_maxrate when motion is detected (default: off)
stream_motion off

# Maximum framerate for stream streams (default: 1)
stream_maxrate 1

# Restrict stream connections to localhost only (default: on)
stream_localhost on

# Limits the number of images per connection (default: 0 = unlimited)
# Number can be defined by multiplying actual stream rate by desired number of seconds
# Actual stream rate is the smallest of the numbers framerate and stream_maxrate
stream_limit 0

# Set the authentication method (default: 0)
# 0 = disabled
# 1 = Basic authentication
# 2 = MD5 digest (the safer authentication)
stream_auth_method 0

# Authentication for the stream. Syntax username:password
# Default: not defined (Disabled)
; stream_authentication username:password


############################################################
# HTTP Based Control
############################################################

# TCP/IP port for the http server to listen on (default: 0 = disabled)
webcontrol_port 8080

# Restrict control connections to localhost only (default: on)
webcontrol_localhost on

# Output for http server, select off to choose raw text plain (default: on)
webcontrol_html_output on

# Authentication for the http based control. Syntax username:password
# Default: not defined (Disabled)
; webcontrol_authentication username:password


############################################################
# Tracking (Pan/Tilt)
#############################################################

# Type of tracker (0=none (default), 1=stepper, 2=iomojo, 3=pwc, 4=generic, 5=uvcvideo, 6=servo)
# The generic type enables the definition of motion center and motion size to
# be used with the conversion specifiers for options like on_motion_detected
track_type 0

# Enable auto tracking (default: off)
track_auto off

# Serial port of motor (default: none)
;track_port /dev/ttyS0

# Motor number for x-axis (default: 0)
;track_motorx 0

# Set motorx reverse (default: 0)
;track_motorx_reverse 0

# Motor number for y-axis (default: 0)
;track_motory 1

# Set motory reverse (default: 0)
;track_motory_reverse 0

# Maximum value on x-axis (default: 0)
;track_maxx 200

# Minimum value on x-axis (default: 0)
;track_minx 50

# Maximum value on y-axis (default: 0)
;track_maxy 200

# Minimum value on y-axis (default: 0)
;track_miny 50

# Center value on x-axis (default: 0)
;track_homex 128

# Center value on y-axis (default: 0)
;track_homey 128

# ID of an iomojo camera if used (default: 0)
track_iomojo_id 0

# Angle in degrees the camera moves per step on the X-axis
# with auto-track (default: 10)
# Currently only used with pwc type cameras
track_step_angle_x 10

# Angle in degrees the camera moves per step on the Y-axis
# with auto-track (default: 10)
# Currently only used with pwc type cameras
track_step_angle_y 10

# Delay to wait for after tracking movement as number
# of picture frames (default: 10)
track_move_wait 10

# Speed to set the motor to (stepper motor option) (default: 255)
track_speed 255

# Number of steps to make (stepper motor option) (default: 40)
track_stepsize 40


############################################################
# External Commands, Warnings and Logging:
# You can use conversion specifiers for the on_xxxx commands
# %Y = year, %m = month, %d = date,
# %H = hour, %M = minute, %S = second,
# %v = event, %q = frame number, %t = thread (camera) number,
# %D = changed pixels, %N = noise level,
# %i and %J = width and height of motion area,
# %K and %L = X and Y coordinates of motion center
# %C = value defined by text_event
# %f = filename with full path
# %n = number indicating filetype
# Both %f and %n are only defined for on_picture_save,
# on_movie_start and on_movie_end
# Quotation marks round string are allowed.
############################################################

# Do not sound beeps when detecting motion (default: on)
# Note: Motion never beeps when running in daemon mode.
quiet on

# Command to be executed when an event starts. (default: none)
# An event starts at first motion detected after a period of no motion defined by event_gap
; on_event_start value

# Command to be executed when an event ends after a period of no motion
# (default: none). The period of no motion is defined by option event_gap.
; on_event_end value

# Command to be executed when a picture (.ppm|.jpg) is saved (default: none)
# To give the filename as an argument to a command append it with %f
; on_picture_save value

# Command to be executed when a motion frame is detected (default: none)
; on_motion_detected value

# Command to be executed when motion in a predefined area is detected
# Check option 'area_detect'.   (default: none)
; on_area_detected value

# Command to be executed when a movie file (.mpg|.avi) is created. (default: none)
# To give the filename as an argument to a command append it with %f
; on_movie_start value

# Command to be executed when a movie file (.mpg|.avi) is closed. (default: none)
# To give the filename as an argument to a command append it with %f
; on_movie_end value

# Command to be executed when a camera can't be opened or if it is lost
# NOTE: There is situations when motion don't detect a lost camera!
# It depends on the driver, some drivers dosn't detect a lost camera at all
# Some hangs the motion thread. Some even hangs the PC! (default: none)
; on_camera_lost value

#####################################################################
# Common Options for database features.
# Options require database options to be active also.
#####################################################################

# Log to the database when creating motion triggered picture file  (default: on)
; sql_log_picture on

# Log to the database when creating a snapshot image file (default: on)
; sql_log_snapshot on

# Log to the database when creating motion triggered movie file (default: off)
; sql_log_movie off

# Log to the database when creating timelapse movies file (default: off)
; sql_log_timelapse off

# SQL query string that is sent to the database
# Use same conversion specifiers has for text features
# Additional special conversion specifiers are
# %n = the number representing the file_type
# %f = filename with full path
# Default value:
# Create tables :
##
# Mysql
# CREATE TABLE security (camera int, filename char(80) not null, frame int, file_type int, time_stamp timestamp(14), event_time_stamp timestamp(14));
#
# Postgresql
# CREATE TABLE security (camera int, filename char(80) not null, frame int, file_type int, time_stamp timestamp without time zone, event_time_stamp timestamp without time zone);
#
# insert into security(camera, filename, frame, file_type, time_stamp, text_event) values('%t', '%f', '%q', '%n', '%Y-%m-%d %T', '%C')
; sql_query insert into security(camera, filename, frame, file_type, time_stamp, event_time_stamp) values('%t', '%f', '%q', '%n', '%Y-%m-%d %T', '%C')


############################################################
# Database Options
############################################################

# database type : mysql, postgresql, sqlite3 (default : not defined)
; database_type value

# database to log to (default: not defined)
; database_dbname value

# The host on which the database is located (default: localhost)
; database_host value

# User account name for database (default: not defined)
; database_user value

# User password for database (default: not defined)
; database_password value

# Port on which the database is located
#  mysql 3306 , postgresql 5432 (default: not defined)
; database_port value

############################################################
# Database Options For SQLite3
############################################################

# SQLite3 database (file path) (default: not defined)
; sqlite3_db value



############################################################
# Video Loopback Device (vloopback project)
############################################################

# Output images to a video4linux loopback device
# The value '-' means next available (default: not defined)
; video_pipe value

# Output motion images to a video4linux loopback device
# The value '-' means next available (default: not defined)
; motion_video_pipe value


##############################################################
# Thread config files - One for each camera.
# Except if only one camera - You only need this config file.
# If you have more than one camera you MUST define one thread
# config file for each camera in addition to this config file.
##############################################################

# Remember: If you have more than one camera you must have one
# thread file for each camera. E.g. 2 cameras requires 3 files:
# This motion.conf file AND thread1.conf and thread2.conf.
# Only put the options that are unique to each camera in the
# thread config files.
; thread /usr/etc/motion/thread1.conf
; thread /usr/etc/motion/thread2.conf
; thread /usr/etc/motion/thread3.conf
; thread /usr/etc/motion/thread4.conf

Oraz config /etc/config/mjpg-streamer

config mjpg-streamer 'core'
    option input 'uvc'
    option output 'http'
    option device '/dev/video0'
    option resolution '640x480'
    option yuv '0'
    option quality '80'
    option fps '5'
    option led 'auto'
    option www '/www/webcam'
    option port '8080'
    option username 'openwrt'
    option password 'openwrt'
    option enabled '1'
TP-Link TL-WDR4300 Mod, CPU 700MHz, Flash 16 MB, Gargoyle 1.5.11.4, extroot + dysk zewnętrzny Samsung (S2), kamerka MS LifeCam HD-5000
TP-Link TL-WR1043ND Mod, RAM 64 MB, chłodzenie pasywne, Gargoyle 1.5.10.14, extroot, kamerka Logitech HD Webcam C270

71

Odp: motion z obsługą ffmpeg

  • Moim zdaniem to albo uruchamiasz mjpeg_streamer przez:

/etc/init.d/mjpeg-streamer start

albo przez linijkę

 mjpg_streamer -i "input_uvc.so -d /dev/video0" -o "output_http.so"

Nie wiem tego na 100% ponieważ moja badziewna kamera nie wyświetla nic pod mjpeg-streamer, więc nie mam jak sprawdzić ale na początek zastosowałbym tylko linijkę nr 2.

  • skoro teraz motion będzie brał obraz z "kamery ip" to zahaszowałbym (tak dla zasady) videodevice /dev/video0 w pliku
    /etc/motion/motion.conf

# Videodevice to be used for capturing  (default /dev/video0)
# for FreeBSD default is /dev/bktr0
#videodevice /dev/video0
  • sprawdziłbym w przeglądarce czy wyświetlany jest obraz z "kamery ip" pod adresem 192.168.2.4:8080/?action=stream. Jeżeli tak, to zmieniłbym konfigurację motion-a na taką linijkę

netcam_url http://192.168.2.4:8080/?action=stream

Nie odpowiadam za powstałe szkody smile

Xiaomi AX3000T @ Netgear R6220
* DVBT2 - T230C *

72 (edytowany przez krynio 2015-12-23 09:13:46)

Odp: motion z obsługą ffmpeg

mjpg_streamer -i "input_uvc.so -d /dev/video0" -o "output_http.so"

Powyższa komenda nie włącza mjpg_streamer = brak obrazu na żywo.

Pozostałe zmiany:
#videodevice /dev/video0
netcam_url http://192.168.2.4:8080/?action=stream

Nic nowego nie wnoszą, tzn podgląd http://192.168.2.4:8080 jest ale motion nie włącza się, a przy próbie uruchomienia sypie dalej błędami.

O ile się nie mylę działa tylko mjpg_streamer co daje obraz z kamerki na żywo. Motion ani razu nie włączył się, nie widzę go w procesach. Wygląda mi na to że mjpg_streamer jest programem "samodzielnym" i nie potrzebuje motion.

Może ktoś coś jeszcze podpowie. Jeśli nie to zrobię test: odinstaluje motion wraz z zależnościami i zainstaluje motion oficjalne z repo. Rozumiem że tylko nagrywanie ffmpeg nie powinno działać, lecz z zapisem zdjęć jpg oraz mjpg_streamer chyba nie powinno być problemów.

Mimo wszystko bardzo Ci dziękuję za chęć pomocy.

TP-Link TL-WDR4300 Mod, CPU 700MHz, Flash 16 MB, Gargoyle 1.5.11.4, extroot + dysk zewnętrzny Samsung (S2), kamerka MS LifeCam HD-5000
TP-Link TL-WR1043ND Mod, RAM 64 MB, chłodzenie pasywne, Gargoyle 1.5.10.14, extroot, kamerka Logitech HD Webcam C270

73

Odp: motion z obsługą ffmpeg

Zainstalowałem motion z repo i próbowałem różne ustawienia w /etc/motion/motion.conf
Fakt ffmpeg nie obsługuje ale reszta działa tzn.
- robi zdjęcia jpg do pliku po wykryciu ruchu
- jest podgląd na żywo "Live Stream"

Co ważne błędem było instalowanie oddzielnego programu mjpg-streamer do Live Stream. Ponieważ w praktyce gdy uruchomimy mjpg-streamer (mamy obraz na żywo) to już motion nie da się uruchomić. Analogicznie odwrotnie też tak będzie, lecz nie sprawdzałem. Wygląda na to że dwa oddzielne programy nie mogą korzystać z jednego urządzenia - kamerki w tym samym czasie.

@mar_w jest duże prawdopodobieństwo że z Twoim motion-ffmpeg było wszystko ok, tyle że nie chciało działać z powodu konfliktu z mjpg-streamer.

Motion ma własny Live Stream Server który jest do skonfigurowania w /etc/motion/motion.conf
Do włączenia jest też również "daemon on"
Naprowadził mnie ten filmik
Zauważyć się da że Live Stream oferowany przez motion jest trochę mniej płynny od mjpg-streamer, lecz co ważne posiada również możliwości autoryzacji.

Po właściwej konfiguracji, motion po włączeniu w konsoli przedstawia się tak:

root@OpenWrt:~# motion
[0] [NTC] [ALL] conf_load: Processing thread 0 - config file /etc/motion/motion.conf
[0] [NTC] [ALL] motion_startup: Motion 3.4.0-Git-78ba2da Started
[0] [NTC] [ALL] motion_startup: Logging to syslog
[0] [NTC] [ALL] motion_startup: Using log type (ALL) log level (NTC)
[0] [NTC] [ALL] become_daemon: Motion going to daemon mode
root@OpenWrt:~#

Teraz czas na pytania smile
1. Chciałbym zmniejszyć czułość wykrycia ruchu, ponieważ teraz jakikolwiek najmniejszy ruch i już dziesiątki zdjęć.
Wiem że do tego służy opcja area_detect value

# Detect motion in predefined areas (1 - 9). Areas are numbered like that:  1 2 3
# A script (on_area_detected) is started immediately when motion is         4 5 6
# detected in one of the given areas, but only once during an event.        7 8 9
# One or more areas can be specified with this option. Take care: This option
# does NOT restrict detection to these areas! (Default: not defined)
; area_detect value

i być może jeszcze te dwie opcje

# Command to be executed when a motion frame is detected (default: none)
; on_motion_detected value

# Command to be executed when motion in a predefined area is detected
# Check option 'area_detect'.   (default: none)
; on_area_detected value

Proszę o przykład jak to powinno wyglądać, zamiast value należy wstawiać wartości liczbowe, im mniejsza wartość to mniejsza czułość ?

2. Jaką treść powinien mieć skrypt który kasowałby wszystkie zdjęcia *.jpg z lokalizacji /mnt/dysk_ext4/motion
Chciałbym dodać ten skrypt do cron-a żeby powiedzmy co 2 tygodnie usuwał wszystkie zdjęcia jpg.

3. Jeśli to nie problem może pochwalicie się swoimi zmianami w ustawieniach /etc/motion/motion.conf

TP-Link TL-WDR4300 Mod, CPU 700MHz, Flash 16 MB, Gargoyle 1.5.11.4, extroot + dysk zewnętrzny Samsung (S2), kamerka MS LifeCam HD-5000
TP-Link TL-WR1043ND Mod, RAM 64 MB, chłodzenie pasywne, Gargoyle 1.5.10.14, extroot, kamerka Logitech HD Webcam C270

74

Odp: motion z obsługą ffmpeg

krynio napisał/a:

Proszę o przykład jak to powinno wyglądać, zamiast value należy wstawiać wartości liczbowe, im mniejsza wartość to mniejsza czułość ?

Wydaje mi się, że to będą opcje:         noise_level    oraz   noise_tune 
http://www.lavrsen.dk/foswiki/bin/view/ … oise_level

krynio napisał/a:

2. Jaką treść powinien mieć skrypt który kasowałby wszystkie zdjęcia *.jpg z lokalizacji /mnt/dysk_ext4/motion
Chciałbym dodać ten skrypt do cron-a żeby powiedzmy co 2 tygodnie usuwał wszystkie zdjęcia jpg.

Pokombinuj. Masz świetny poradnik http://eko.one.pl/?p=openwrt-cron
może tak:
* * */14 * * polecenie_do_wykonania
lub
* * 14 * * polecenie_do_wykonania
* * 28 * * polecenie_do_wykonania

build000 napisał/a:

Mam ten sam problem - czy z ffmpeg, czy bez, ze sterownikiem kmod-usb-audio lub bez, nie zgrywa dźwięku - tylko obraz - a kamerkę mam niebanalną i działa pod każdym linuchem, nawet tymi starszymi (też typu uvc).

W końcu dorwałem kamerę która ma mikrofon "na usb" zamiast na jack-a i rzeczywiście nie zgrywa dźwięku, ale Motion jako aplikacja, podobno nie potrafi tego robić. Wykorzystuje on inną aplikację do tego celu, a mianowicie:

root@OpenWrt:/tmp/motion# arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: Camera [USB 2.0 Camera], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

czyli trzeba dodać odpowiednie wpisy do pliku motion.conf     #U mnie są to takie wpisy:

on_movie_start arecord -D plughw:0,0 -f S16_LE -r 16000 /tmp/motion/sound/%Y%m%d-%H%M%S-camera%t.wav
on_movie_end killall arecord

można te opcje dodać też do:         on_event_start    oraz    on_event_end     (albo movie albo event)
wynik tej operacji to u mnie 2 pliki:

root@OpenWrt:/tmp/motion# ls -Ral 
.:
drwxrwxrwx    3 root     root            80 Dec 31 08:43 .
drwxrwxrwt   19 root     root           480 Dec 31 08:10 ..
-rw-r--r--    1 root     root        345130 Dec 31 08:43 20151231-084316-camera1.avi
drwxrwxrwx    2 root     root            60 Dec 31 08:43 sound

./sound:
drwxrwxrwx    2 root     root            60 Dec 31 08:43 .
drwxrwxrwx    3 root     root            80 Dec 31 08:43 ..
-rw-r--r--    1 root     root        540044 Dec 31 08:43 20151231-084316-camera1.wav
Xiaomi AX3000T @ Netgear R6220
* DVBT2 - T230C *

75 (edytowany przez ad2014 2016-01-01 16:31:24)

Odp: motion z obsługą ffmpeg

Dobrze  to  "obcykałeś "  mar_w  - dzięki   

potwierdzam  działa  dzwiek   -  dodam tylko    warto  przeczytać  http://openrouter.info/forum/viewtopic. … &t=388      bo  dzwięk nagrywany  jest  waw  .
Aby  to ruszyło  w gargoyle  trza jeszcze  doinstalowac      alsa-utils   oraz  utworzyć  grupe audio   

echo "audio:x:1000:" >> /etc/group

oraz utworzyc  wymagane  katalogi   = czyli  w tmp/motion    oraz  tmp/motion/sound