라즈베리 2b용 케이스..

방열판도 못지르고 ㅠㅠ


초음파 센서 2

온습도 센서 1


중고나라에서 구매하면 싼데 라즈베리 케이스 때문에 비싸게 사려니 눈물나네 ㅠㅠ



남은 용돈 이걸로 오링 ㅠㅠ

Posted by 구차니
embeded/raspberry pi2016. 5. 27. 12:33

vlc로는 안되고.. 팟플레이어로는 잘 된다...

아무튼, 초기 로딩은 느린데 딜레이 자체는 0.5초 정도 미만? 꽤 빠르다.

핵심은.. gst-rtsp 패키지를 받아야 하는거고

그걸 통해서 tcp / rtp 스트리밍 한걸 받아서 rtsp로 보내준다.



$ mkdir src

$ cd src

$ wget http://gstreamer.freedesktop.org/src/gst-rtsp/gst-rtsp-0.10.8.tar.bz2

$ tar -xvf gst-rtsp-0.10.8.tar.bz2

$ sudo apt-get install libglib2.0-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev gstreamer-tools gstreamer0.10-plugins-base gstreamer0.10-plugins-good gstreamer0.10-plugins-bad gstreamer0.10-plugins-ugly

$ cd gst-rtsp-0.10.8

$  ./configure

$ make -j4

$ cd examples


$ raspivid -t 0 -n -o - | gst-launch -v fdsrc ! h264parse ! gdppay ! tcpserversink host=127.0.0.1 port=5000 | ./test-launch "( tcpclientsrc host=127.0.0.1 port=5000 ! gdpdepay ! avdec_h264 ! rtph264pay name=pay0 pt=96 )" 

[링크 : http://www.aftermath.kr/entry/GStreamer-RTSP-with-RPi]

+ 2016.06.09

[링크 : https://www.raspberrypi.org/forums/viewtopic.php?p=721798]


팟플레이어는 좀 오래걸려서 그렇지 나오는데(딜레이는 적음)


+ 2015.06.10

지금보니.. bitrate가 0으로 뜨네?


VLC는 이렇게 한 프레임만 디코딩 하고 그 이후로는 디코딩을 하지 못한다...


udp로는 하기 힘드네.. 설정을 찾아 봐야...


$ raspivid -t 0 -n -o - | gst-launch -v fdsrc ! h264parse ! gdppay ! udpsink host=127.0.0.1 port=5000 | ./test-launch "( udpsrc port=5000 caps = 'application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, payload=(int)96' ! gdpdepay ! avdec_h264 ! rtph264pay name=pay0 pt=96 )"


---

cvlc 를 통한 h.264 rtsp 스트리밍은 딜레이가 상당히 크다.

vlc의 버퍼링을 제외하더라도 1초 정도 이상?


gstreamer를 쓰면 딜레는 낮은데

rpi 2b -> b+ 는 b+의 사양으로 끊어지고

rpi b+ -> 2b는 문제없이 재생이 되었던 걸로 기억을 한다.

2015/09/20 - [embeded/raspberry pi] - 라즈베리 파이 gstreamer 시도


아무튼

cvlc / h.264 / rtsp -> vlc

gstreamer h.264 rtp -> gstreamer

은 시도해봤으나..


gstreamer h.264 rtp -> vlc

cvlc / h.264 / rtsp -> gstreamer 

는 아직 미시도..



cvlc로 rtsp 스트리밍 할때 뜨는 sdp 설정

[73c008c8] stream_out_rtp stream out debug: sdp=

v=0

o=- 15776737622825922871 15776737622825922871 IN IP4 raspberrypi

s=Unnamed

i=N/A

c=IN IP4 0.0.0.0

t=0 0

a=tool:vlc 2.2.1

a=recvonly

a=type:broadcast

a=charset:UTF-8

m=video 0 RTP/AVP 96

b=RR:0

a=rtpmap:96 H264/90000

a=fmtp:96 packetization-mode=1 


vlc 에서 보려면 sdp 파일로 만들어서 하라는데...

얘는 mpeg4video - es 인거 같고...

v=0

m=video 5000 RTP/AVP 96

c=IN IP4 127.0.0.1

a=rtpmap:96 MP4V-ES/90000 

[링크 : http://stackoverflow.com/questions/13154983/gstreamer-rtp-stream-to-vlc]


찾아보고.. cvlc sdp 내용 참조하니.. 별로 고칠건 없을 듯?

c=IN IP4 10.5.110.117

m=video 5004 RTP/AVP 96 

a=rtpmap:96 H264/90000

vlc test.sdp

[링크 : http://stackoverflow.com/questions/20538698/minimum-sdp-for-making-a-h264-rtp-stream]


아래는.. 산딸기 마을에서 본거 같은데

아무튼.. rtsp://ip:8554/test 로 하면 된다고 한다.

$  raspivid -t 0 -h 720 -w 1280 -fps 25 -b 2000000 -vf -hf -n -o - | gst-launch -v fdsrc ! h264parse ! gdppay ! tcpserversink host=127.0.0.1 port=5000 | ./test-launch "( tcpclientsrc host=127.0.0.1 port=5000 ! gdpdepay ! avdec_h264 ! rtph264pay name=pay0 pt=96 )"

[링크 : http://www.aftermath.kr/entry/GStreamer-RTSP-with-RPi]

[링크 : http://www.rasplay.org/?p=5607]


$ raspivid -t 0 -w 1280 -h 720 -fps 30 -hf -b 2000000 -n -o - | gst-launch-1.0 -v fdsrc ! h264parse ! rtph264pay config-interval=1 pt=96 ! gdppay ! tcpserversink host=192.168.10.34 port=5000 ! rtspsrc location=rtsp://127.0.0.1:8554/test

mmal: mmal_vc_component_enable: failed to enable component: ENOSPC

mmal: camera component couldn't be enabled

mmal: main: Failed to create camera component

mmal: Failed to run camera app. Please check for firmware updates


WARNING: erroneous pipeline: could not link tcpserversink0 to rtspsrc0


$ raspivid -t 0 -w 1280 -h 720 -fps 30 -hf -b 2000000 -n -o - | gst-launch-1.0 -v fdsrc ! h264parse ! rtph264pay config-interval=1 pt=96 ! gdppay ! rtspsrc location=rtsp://127.0.0.1:8554/test                                mmal: mmal_vc_component_enable: failed to enable component: ENOSPC
mmal: camera component couldn't be enabled
mmal: main: Failed to create camera component
mmal: Failed to run camera app. Please check for firmware updates

WARNING: erroneous pipeline: could not link gdppay0 to rtspsrc0

끄응.. 안되네 ㅠㅠ

[링크 : http://stackoverflow.com/questions/13154983/gstreamer-rtp-stream-to-vlc]


[링크 : https://gstreamer.freedesktop.org/documentation/rtp.html]




2016.06.28


Unfortunately, there are two problems I could not solve so far.


1. The SPS / PPS issue


The omxh264enc plugin sends not regularly the needed SPS / PPS information with it. You can work around the problem by immediately accessing the stream after the start of gst-launch, otherwise VLC (for example) cannot play it.


I have found this wrapper for the camera:

https://github.com/AndyA/psips

[링크 : https://www.raspberrypi.org/forums/viewtopic.php?f=70&t=59412]

Posted by 구차니
embeded/raspberry pi2016. 5. 27. 11:08

raspivid의 제한(?) 인지 1920*1080이 최대라

-md 설정을 이용한 최대 해상도인 2592*1944(5M)는 스트리밍이 불가능...

그래도 확실히 1920보다는 해상도가 오르니 나은건가?


요건 안되고

$ raspivid -o - -t 0 -n -md 2 -w 2592 -h 1944 | cvlc -vvv stream:///dev/stdin --sout '#rtp{sdp=rtsp://:8554/}' :demux=h264


얘는 되고..

$ raspivid -o - -t 0 -n -md 2 | cvlc -vvv stream:///dev/stdin --sout '#rtp{sdp=rtsp://:8554/}' :demux=h264



RASPIVID


-mode, -md

Sets a specified sensor mode, disabling the automatic selection. Possible values are :


Mode Size Aspect Ratio Frame rates FOV Binning

0 automatic selection

1 1920x1080 16:9 1-30fps Partial None

2 2592x1944 4:3 1-15fps Full None


--width,    -w      Set image width <size>

Width of resulting video. This should be between 64 and 1920.


--height,   -h      Set image height <size>

Height of resulting video. This should be between 64 and 1080



[링크 : https://www.raspberrypi.org/documentation/raspbian/applications/camera.md]


캡쳐 해보니.. 화각이랑 해상도가 달라지긴 하네..


2M (1920x1080)


5M(2592x1944)


$ raspivid -t 0 -n -md 2 -v


raspivid Camera App v1.3.12


Width 1920, Height 1080, filename (null)

bitrate 17000000, framerate 30, time delay 0

H264 Profile high

H264 Quantisation level 0, Inline headers No

H264 Intra refresh type (null), period -1

Wait method : Capture forever

Initial state 'record'



Preview No, Full screen Yes

Preview window 0,0,1024,768

Opacity 255

Sharpness 0, Contrast 0, Brightness 50

Saturation 0, ISO 0, Video Stabilisation No, Exposure compensation 0

Exposure Mode 'auto', AWB Mode 'auto', Image Effect 'none'

Metering Mode 'average', Colour Effect Enabled No with U = 128, V = 128

Rotation 0, hflip No, vflip No

ROI x 0.000000, y 0.000000, w 1.000000 h 1.000000

Camera component done

Encoder component done

Starting component connection stage

Connecting camera stills port to encoder input port

Enabling encoder output port 



$ raspivid -t 0 -n -md 2 -w 2592 -h 1944 -v


raspivid Camera App v1.3.12


Width 2592, Height 1944, filename (null)

bitrate 17000000, framerate 30, time delay 0

H264 Profile high

H264 Quantisation level 0, Inline headers No

H264 Intra refresh type (null), period -1

Wait method : Capture forever

Initial state 'record'



Preview No, Full screen Yes

Preview window 0,0,1024,768

Opacity 255

Sharpness 0, Contrast 0, Brightness 50

Saturation 0, ISO 0, Video Stabilisation No, Exposure compensation 0

Exposure Mode 'auto', AWB Mode 'auto', Image Effect 'none'

Metering Mode 'average', Colour Effect Enabled No with U = 128, V = 128

Rotation 0, hflip No, vflip No

ROI x 0.000000, y 0.000000, w 1.000000 h 1.000000

Camera component done

Encoder component done

Starting component connection stage

Connecting camera stills port to encoder input port

mmal: mmal_vc_port_enable: failed to enable port vc.ril.video_encode:in:0(OPQV): EINVAL

mmal: mmal_port_enable: failed to enable connected port (vc.ril.video_encode:in:0(OPQV))0xc9d330 (EINVAL)

mmal: mmal_connection_enable: output port couldn't be enabled

mmal: main: Failed to connect camera video port to encoder input

mmal: Argument is invalid

Closing down

Close down completed, all components disconnected, disabled and destroyed


mmal: Failed to run camera app. Please check for firmware updates 


음... 왜 안되지 ... ㅠㅠ

[링크 : https://www.raspberrypi.org/forums/viewtopic.php?f=43&t=59559]


5M로 설정하면 주기적으로 에러가 발생하는데..

[73d00508] core input error: ES_OUT_SET_(GROUP_)PCR  is called too late (pts_delay increased to 320 ms)

[73d00508] core input error: ES_OUT_RESET_PCR called

[73d00508] core input debug: Buffering 0%

[73d00508] core input debug: Buffering 12%

[73d00508] core input debug: Buffering 24%

[73d00508] core input debug: Buffering 37%

[73d00508] core input debug: Buffering 49%

[73d00508] core input debug: Buffering 62%

[73d00508] core input debug: Buffering 74%

[73d00508] core input debug: Buffering 87%

[73d00508] core input debug: Buffering 99%

[73d00508] core input debug: Stream buffering done (360 ms in 624 ms)

[73d00508] core input debug: Decoder wait done in 0 ms


cpu 점유율은 거의 무의미한 정도의 차이?
2M


5M



+

2016.05.31

음.. 비디오 코어 자체가 fullHD 인코딩이라.. 그 이상의 해상도는 무리인건가?

rpicam v2 에서도 그럼 8M 로 받아와도 2M로 밖에 전송이 불가능할지도?


[링크 : https://en.wikipedia.org/wiki/VideoCore]

Posted by 구차니

크게 쓸일이 느껴지진 않지만....

그래도 지원하는게 의외로 얼마 안되는구나..


[링크 : http://support-kr.canon-ci.co.kr/contents/KR/KR/8201440300.html]

'이론 관련 > 사진 광학 관련' 카테고리의 다른 글

크롭바디 EF / EF-S 렌즈 화각 테스트  (0) 2016.08.29
back focus  (0) 2016.07.22
센서 사이즈별 크기  (0) 2016.05.26
focus peak 찾아내기  (0) 2016.05.25
FEL - Flash Exposure Lock  (0) 2016.05.13
Posted by 구차니

사이즈는... 영어고 크기는 한글? ㅋㅋ

센서 사이즈는 대개 대각선 인치 단위인데

크기는 가로세로 mm 단위


그나저나.. 1인치 라고 해도 의외로 크진 않겠구나 싶어지네..

2/3 인치만 해도 CCTV에서 크다고 하는데..

암만 그래봤자 APS-C(canon) 보다 작다는게...



[링크 : http://photohistory.tistory.com/11906]

'이론 관련 > 사진 광학 관련' 카테고리의 다른 글

back focus  (0) 2016.07.22
eos m 다중노출 미지원  (0) 2016.05.26
focus peak 찾아내기  (0) 2016.05.25
FEL - Flash Exposure Lock  (0) 2016.05.13
플래시 사용방법  (0) 2016.05.12
Posted by 구차니
Programming/xml2016. 5. 26. 11:15


[링크 : http://xmlstar.sourceforge.net/]

[링크 : https://en.wikipedia.org/wiki/XMLStarlet]

[링크 : http://newmkka.tistory.com/382]



$ apt-cache search xml | grep let

xmlstarlet - command line XML toolkit

'Programming > xml' 카테고리의 다른 글

libxml2 - xmlNodeDump()  (0) 2019.07.09
libxml2  (0) 2019.07.04
DOM vs SAX  (0) 2014.11.21
xml parser 선택 / 종류  (0) 2014.11.21
DTD / XSD  (0) 2014.11.11
Posted by 구차니
embeded/raspberry pi2016. 5. 25. 19:42

오랫만에 가지고 놀아 보려고 했더니..

망했어 ㅠㅠ

FFC 저거 구하기 빡센데 ㅠㅠ


일단.. sudo apt-get update; sudo apt-get upgrade로 시스템 업그레이드의 여파인가...

config.txt에서는 gpu_mem=128 였는데...


불 들어 옴

$ raspivid -t 0

mmal: mmal_vc_component_enable: failed to enable component: ENOSPC

mmal: camera component couldn't be enabled

mmal: main: Failed to create camera component

mmal: Failed to run camera app. Please check for firmware updates



불 안들어 옴

$ raspivid -t 0

mmal: mmal_vc_component_create: failed to create component 'vc.ril.camera' (1:ENOMEM)

mmal: mmal_component_create_core: could not create component 'vc.ril.camera' (1)

mmal: Failed to create camera component

mmal: main: Failed to create camera component

mmal: Camera is not detected. Please check carefully the camera module is installed correctly



선 뽑고..

$ raspivid -t 0

mmal: mmal_vc_component_create: failed to create component 'vc.ril.camera' (1:ENOMEM)

mmal: mmal_component_create_core: could not create component 'vc.ril.camera' (1)

mmal: Failed to create camera component

mmal: main: Failed to create camera component

mmal: Camera is not detected. Please check carefully the camera module is installed correctly




Last login: Wed May 25 19:49:45 2016

pi@raspberrypi:~ $ sudo rpi-update

 *** Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom

 *** Performing self-update

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

                                 Dload  Upload   Total   Spent    Left  Speed

100 10670  100 10670    0     0  24776      0 --:--:-- --:--:-- --:--:-- 24756

 *** Relaunching after update

 *** Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom

 *** We're running for the first time

 *** Backing up files (this will take a few minutes)

 *** Backing up firmware

 *** Backing up modules 4.1.19-v7+

#############################################################

This update bumps to rpi-4.4.y linux tree

Be aware there could be compatibility issues with some drivers

Discussion here:

https://www.raspberrypi.org/forums/viewtopic.php?f=29&t=144087

##############################################################

 *** Downloading specific firmware revision (this will take a few minutes)

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

                                 Dload  Upload   Total   Spent    Left  Speed

100   168    0   168    0     0    188      0 --:--:-- --:--:-- --:--:--   188

100 50.5M  100 50.5M    0     0  1059k      0  0:00:48  0:00:48 --:--:-- 1381k

 *** Updating firmware

 *** Updating kernel modules

 *** depmod 4.4.11-v7+

 *** depmod 4.4.11+

 *** Updating VideoCore libraries

 *** Using HardFP libraries

 *** Updating SDK

 *** Running ldconfig

 *** Storing current firmware revision

 *** Deleting downloaded files

 *** Syncing changes to disk

 *** If no errors appeared, your firmware was successfully updated to 2b9c0bfacfc11ee8bb9b30dc9cdb36289698f8a8

 *** A reboot is needed to activate the new firmware


[링크 : http://raspberrypi..../what-causes-enospc-error-when-using-the-raspberry-pi-camera-module]


/boot/cmdline.txt:

dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait bcm2708.w1_gpio_pin=18

[링크 : https://www.raspberrypi.org/...?f=28&t=61922&p=477860&hilit=enospc#p478550]


그냥... 현재 기준 신펌웨어로 바꾸니 문제 없다.

rpi-update로도 펌웨어 변경은 적용 안되는 듯?


Posted by 구차니
이론 관련/전기 전자2016. 5. 25. 18:06

TV system별 클럭차이..

결론(?)은 서브캐리어의 차이인데.. CVBS는 음성 없이 영상만 NTSC/PAL을 실어나르는데..

왜 27MHz로 30fps로 동일하지 -ㅁ-?


28.6363MHz for NTSC or 28.375MHz for PAL

CVBS (30 fps @ 27Mhz)


27MHz crystal clock for subcarrier generation

[링크 : http://datasheet.octopart.com/TW9920-BC1-GR-Intersil-datasheet-14388706.pdf]


In PAL system, the frequency of the system clock and the subcarrier signal are 28.375 MHz and 4.4336 MHz

[링크 : http://www.google.com/patents/US5946053]



In the PAL system, the color subcarrier is 4.43 MHz above the video carrier, while in the NTSC system it is 3.58 MHz above the video carrier. 

[링크 : https://en.wikipedia.org/wiki/Chrominance]


The frequency of this subcarrier is 4.43361875 MHz for PAL, compared to 3.579545 MHz for NTSC. The SECAM system, on the other hand, uses a frequency modulation scheme on its two line alternate colour subcarriers 4.25000 and 4.40625 MHz.

[링크 : https://en.wikipedia.org/wiki/PAL]


[링크 : http://wodnrrns.tistory.com/entry/NTSC-PAL-비교]


'이론 관련 > 전기 전자' 카테고리의 다른 글

27MHz에 1Mohm 저항을 왜 달까?  (2) 2016.10.26
Load Capacitor - CL  (0) 2016.10.26
bayer 포맷 출력...?  (0) 2016.04.14
패럿(farad) / 암페어(ampere) 변환  (0) 2016.04.14
genlock  (0) 2016.04.05
Posted by 구차니

결론(?)은 HPF(High Pass Filter) 인가?


The simplest way to detect microcontrast is through a high pass filter (HPF). In the areas in focus, the detail will trigger a threshold set in the HPF, while out of focus areas wont's do so for being totally blurred in terms of high spatial frequencies.

[링크 : http://forum.luminous-landscape.com/index.php?topic=56246.0]


The simple recipe is to convolve with a Laplacian of Gaussian kernel (3x3, with 8 in the middle surrounded by -1 and take the abs(result)) .

[링크 : http://photo.stackexchange.com/questions/32388/how-can-i-focus-peak-a-photograph]

'이론 관련 > 사진 광학 관련' 카테고리의 다른 글

eos m 다중노출 미지원  (0) 2016.05.26
센서 사이즈별 크기  (0) 2016.05.26
FEL - Flash Exposure Lock  (0) 2016.05.13
플래시 사용방법  (0) 2016.05.12
포칼 리듀서 / 스피드 부스터  (0) 2016.04.26
Posted by 구차니

18-55mm 용 줌렌즈 캡이 없어서 하나 지르면서

겸사겸사 질렀으나...


한 업체에서 ND8을 팔지 않아 그냥 ND 필터는 포기...

22mm f2.0 렌즈 는 확실히 실외에서는 노출 오버라.. ND8 정도로 43mm 짜릴 사야 하는데...

호루스벤누 ND8이 만원으로 가장 싸나.. 취급하는데가 적은 듯 .. ㅠㅠ


나중에 아빠가 살일 있음 꼽사리 껴서 사야지 ㅠㅠ




Posted by 구차니