안드로이드 기반 미디어 스트리밍 기기(미박스, 크롬캐스트 with Google TV 등)를 위한 Flutter 기반 오픈소스 미디어 허브입니다. 낡은 TV를 최신 스마트 TV처럼 활용하세요. 본 프로젝트는 바이브코딩과 생성형 ai를 활용해 생산성을 높여 진행될 예정이며, 진행사항은 blog에 공유될 예정입니다.
PoormCast는 특정 서비스의 폐쇄적인 비공개 정책에 반대하며, **"누구나 코드를 확인하고 기여할 수 있는 투명한 오픈소스"**를 지향합니다.
- 본질에 집중: 스마트 기능이 없는 TV에서 OTT(Wavve, TVING 등)를 가장 쾌적하게 시청하는 환경을 제공합니다.
- 오픈소스 가치: 내부 동작 원리를 투명하게 공개합니다. 커뮤니티와 함께 보안과 기능을 검증하며 발전해 나갑니다.
- 성능 최적화: 저사양 하드웨어에서도 AV1 코덱과 하드웨어 가속을 통해 끊김 없는 시청 경험을 제공합니다.
- OTT 통합 인터페이스: 여러 OTT 서비스를 한곳에서 관리하는 직관적인 TV 전용 UI. 홈 → OTT별 채널 목록 → 전체 화면 재생 흐름이며, 플레이어에서 뒤로 가면 채널 목록으로 돌아옵니다.
- 고성능 재생 엔진:
media_kit(libmpv)기반의 강력한 디코딩 (4K, AV1 지원). - 리모컨(D-Pad) 최적화: TV 리모컨 조작에 맞춘 포커스·UX. 채널 목록에서 확인(OK)을 약 2초간 누르면 해당 채널을 즐겨찾기에 등록하거나 해제할 수 있습니다.
- 로그인·계정: 설정에서 OTT별 로그인, TV용 가상 키보드 입력, 저장된 계정의 자동 로그인(앱 실행 시 복구) 켜기/끄기를 지원합니다.
- 경량화 및 효율성: 백그라운드 리소스 사용을 최소화하여 저사양 기기에서도 부드러운 작동.
- Framework: Flutter (Dart)
- Video Engine:
media_kit(AV1 코덱 & 하드웨어 가속 지원) - State Management:
Flutter Bloc(예측 가능한 상태 관리) - Networking:
Dio&Retrofit(안정적인 인증 및 API 통신)
PoormCast는 별도의 빌드 과정 없이 Releases 탭에서 최신 설치 파일을 내려받아 바로 사용할 수 있습니다.
- 다운로드: 우측 [Releases] 섹션에서 최신 버전의
PoormCast-vX.X.X.zip파일을 다운로드합니다. - 압축 해제: PC에서 압축을 푼 뒤, 추출된
.apk파일을 USB 메모리에 담거나ADB등을 통해 TV 기기로 전송합니다. - 설치: 안드로이드 TV 기기의 '파일 관리자' 앱을 통해
.apk파일을 실행하여 설치합니다.- 참고: 설정에서 '알 수 없는 출처의 앱 설치' 허용이 필요할 수 있습니다.
직접 빌드하거나 개발에 참여하고 싶다면 아래 문서를 참고하세요.
| 문서 | 내용 |
|---|---|
| docs/SETUP.md | 개발 환경 설치 (Flutter, Android SDK, Java) |
| docs/BUILD.md | 빌드, 실행, 디버깅, GitHub Actions 릴리스 ZIP |
코드를 숨기지 않습니다. 버그 수정, 새로운 기능 제안, 또는 코드 리뷰는 언제나 환영입니다.
- Issue: 버그나 개선 아이디어가 있다면 이슈를 생성해 주세요.
- Pull Request: 직접 코드를 개선하고 싶다면 언제든 PR을 보내주세요. 모든 과정은 투명하게 검토됩니다.
이 프로젝트는 MIT License 를 따릅니다. 상업적 이용, 수정, 배포가 자유로우며 소스 코드의 투명한 공개를 원칙으로 합니다.
본 프로젝트는 poorm.com 블로그에서 진행하는 오픈소스 프로젝트입니다. 더 자세한 개발기나 팁은 블로그에서 확인하실 수 있습니다.