반응형
반응형

항상 배고픔을 유지하라.
배고픔을 유지하라. 우리는 언제나 호화로움을 갈망하지만
그것은 일시적 자극을 유발하는 진정제일 뿐이다.
우리에게 도움이 되기보다는 방해가 되고 의욕을 앗아간다.
호화로운 생활은 우리의 의식에 대고 긴장을 풀라고, 쉬엄쉬엄하라고 속삭인다.
호화로움은 창의적인 사람들을 위한 것이 아니라 아첨꾼들을 위한 것이다.
- 로드 주드컨스, ‘대체 불가능한 사람이 되라.’에서


‘나는 부족하다’라고 느끼는 것은 좋은 징조입니다.
부족하다고 느끼는 감정은 더 잘하고자 하는 추진력으로 작용합니다.
자기만족적인 사람은 큰 일을 해내지 못합니다.
자기 회의는 늘 부지런하게 살도록 우리를 이끌어줍니다.
자기 회의와 실패에 대한 두려움은 훌륭한 동기요인이며,
쉬지 않고 창조적 자아를 감독하는 에너지입니다.

반응형
반응형

모진 바람에도
쓰러지지 않은 이유가
움켜쥔 뿌리 때문만이 아니란 걸
알아버렸소

흔들리며 넘어가려던
그대의 뿌리를 부둥켜안고
숨도 쉬지 않고 깍지를 풀지 않았던 뜨거운 잇몸

세상에 수많은 나무들이
다시 늠름하게 푸른 아침
고요히 상처 난 뿌리에 입 맞추며
깍지를 푸는 흙이 있었소


- 고창영의 시〈비밀〉(전문)에서 -


* 흙에서 나서 흙으로 돌아갑니다.
흙은 본향입니다. 흙은 진실하고 정직합니다.
흙에 뿌리박으면 모든 것이 생명력을 얻습니다.
당신도 흙으로 돌아갑니다.
당신이 흙입니다.
힐러입니다.

반응형

'아침편지' 카테고리의 다른 글

사람 만드는 목수  (0) 2023.10.25
감사 훈련  (0) 2023.10.24
독서법  (0) 2023.10.23
새벽은 아무에게나 오지 않는다  (0) 2023.10.20
아버지의 손, 아들의 영혼  (0) 2023.10.19
반응형

독서법

 

책을 먹어라

반응형

'아침편지' 카테고리의 다른 글

감사 훈련  (0) 2023.10.24
흙이 있었소  (0) 2023.10.23
새벽은 아무에게나 오지 않는다  (0) 2023.10.20
아버지의 손, 아들의 영혼  (0) 2023.10.19
상처에 빠져 허우적거릴 때  (0) 2023.10.18
반응형

[텃밭] 2023-10-21, 야콘, 가지 수확

반응형
반응형

Create a Video Chat/Video Steaming App using Python

https://medium.com/geekculture/creating-video-chat-app-using-python-9da0a9c386ba

 

Create a Video Chat/Video Steaming App using Python

Due to the pandemic the only way to stay connected through the internet. But due to such a huge activity in Advertisement department, data…

medium.com

Server.py

from pyfiglet import Figlet
os.system("clear")
pyf = Figlet(font='puffy')
a = pyf.renderText("Video Chat App without Multi-Threading")
b = pyf.renderText("Server")
os.system("tput setaf 3")
print(a)
import socket, cv2, pickle,struct
# Socket Create
server_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
host_name  = socket.gethostname()
host_ip = socket.gethostbyname(host_name)
print('HOST IP:',host_ip)
port = 9999
socket_address = (host_ip,port)
# Socket Bind
server_socket.bind(socket_address)
# Socket Listen
server_socket.listen(1)
print("Listening at:",socket_address)
# Socket Accept
while True:
 client_socket,addr = server_socket.accept()
 print('Connected to:',addr)
 if client_socket:
  vid = cv2.VideoCapture(0)
  
  while(vid.isOpened()):
   ret,image = vid.read()
   img_serialize = pickle.dumps(image)
   message = struct.pack("Q",len(img_serialize))+img_serialize
   client_socket.sendall(message)
   
   cv2.imshow('Video from Server',image)
   key = cv2.waitKey(10) 
   if key ==13:
    client_socket.close()

Client.py

from pyfiglet import Figlet
os.system("clear")
pyf = Figlet(font='puffy')
a = pyf.renderText("Video Chat App without Multi-Threading")
b = pyf.renderText("Client")
os.system("tput setaf 3")
print(a)
import socket,cv2, pickle,struct
# create socket
client_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
#  server ip address here
host_ip = '<IP>' 
port = 9999
client_socket.connect((host_ip,port)) 
data = b""
metadata_size = struct.calcsize("Q")
while True:
 while len(data) < metadata_size:
  packet = client_socket.recv(4*1024) 
  if not packet: break
  data += packet
 packed_msg_size = data[:metadata_size]
 data = data[metadata_size:]
 msg_size = struct.unpack("Q",packed_msg_size)[0]
 
 while len(data) < msg_size:
  data += client_socket.recv(4*1024)
  frame_data = data[:msg_size]
  data  = data[msg_size:]
  frame = pickle.loads(frame_data)
  cv2.imshow("Receiving Video ",frame)
  key = cv2.waitKey(10) 
  if key  == 13:
   break
client_socket.close()
반응형

'프로그래밍 > Python' 카테고리의 다른 글

[python] Top 10 Python Libraries  (0) 2023.10.26
[python] Stack in Python  (0) 2023.10.24
[python] PyAudio  (0) 2023.10.20
[Python] savefig 0.0.4  (0) 2023.10.17
[python] pdf to png, 해상도 높게 저장하기  (0) 2023.10.04
반응형

PyAudio

https://pypi.org/project/PyAudio/

 

PyAudio

Cross-platform audio I/O with PortAudio

pypi.org

PyAudio는 크로스 플랫폼 오디오 I/O 라이브러리인 PortAudio v19에 대한 Python 바인딩을 제공합니다. PyAudio를 사용하면 Python을 사용하여 GNU/Linux, Microsoft Windows 및 Apple macOS와 같은 다양한 플랫폼에서 오디오를 쉽게 재생하고 녹음할 수 있습니다.

 

pip install PyAudio

반응형

+ Recent posts