2달 반정도 개인적으로 개발했던 프로젝트입니다.
어플리케이션 이름 : DailyTV
-> 혼자 생활하는 1인가구가 늘면서 자신의 일상을 공유할 수 있는 인스타그램, 블로그 등의 활동이 늘면서
자신의 일상을 공유하고 사람들과 소통 할 수 있는 인터넷 방송 플랫폼이 있으면 좋겠다는 생각에
스트리밍 방송 어플리케이션을 기획하게 되었습니다.
<사용 기술>
* Language : Java, PHP7, C++
* OS : Linux (Ubuntu 16.04)
* Web Server : Nginx
* Web FrameWork : Netty
* Platform : Android
* Database : PostgreSQL, Redis, SQLite
* Library : Okhttp3, Argument-Reality, OpenCV, Glide, GoogleMap API, TMap API, FFMpeg, ExoPlayer
* Protocol : HTTP, RTMP, Mpeg-Dash, WebRTC
<기능 설명>
1. 영상 채팅 기능
- WebRTC를 통한 영상 채팅기능
2. 프로필 사진 업로드
- OpenCV 라이브러리를 이용한 FaceDetecting 마스크 씌우기, 필터 적용
- Http를 통해 서버로 프로필 사진 업로드
3. 동영상 스트리밍 기능
- RTMP를 이용하여 서버로 동영상 실시간 전송
- Mpeg-Dash를 이용하여 방송 시청자에게 동영상 스트리밍
- 녹화 시 녹화가 종료되면 mp4 동영상 서버 업로드
4. 방송목록 업데이트
- 현재 방송중인 방 목록을 Redis DB에 업로드. Client에서 ListView를 이용해 표시
- 서버에서 FFMPEG를 이용한 썸네일 기능 구현
5. 채팅, 별풍선 기능
- Netty 프레임워크를 이용한 시청자들간의 멀티채팅 구현
- BJ에게 별풍선 전송 (선물 시 간단한 애니메이션 동작, 서버의 DB 업로드)
6. 동영상 댓글 게시판 구축
- 업로드 된 동영상에 대한 댓글을 다는 게시판 구축
- 좋아요, 댓글삭제, 댓글 수정 기능 추가
7. 지도에 방송 위치 표시하기
- GoogleMap을 이용해 Live방송 및 저장된 방송 동영상의 위치를 표시하는 커스텀 마커 표시
- GoogleMap을 이용한 마커 클러스터링
8. 광고 마커 삽입 (가상현실)
- GoogleMap에 VR을 이용해 스트리트뷰를 볼 수 있는 광고 마커삽입
9. 길찾기 기능 구현 (증강현실)
- 방송한 위치를 AR을 화살표를 이용해 찾아 갈 수 있는 길찾기 기능 구현
'행사 및 개인 프로젝트 > 개인 프로젝트 동영상' 카테고리의 다른 글
Letsee : WebAR 프로젝트 목록 (0) | 2021.07.18 |
---|---|
성경 프로젝트 (The Bible) - React Native (2) | 2021.07.10 |
점심한끼 - 맛집 등록 어플리케이션 (0) | 2018.02.08 |
중고책 나라 - 중고책 거래 웹사이트 (1) | 2018.02.08 |