Repolode
YusufB5

YusufB5/ASCILINE

동영상을 ASCII 문자 또는 픽셀 블록 프레임으로 변환해 HTML5 Canvas 플레이어로 실시간 스트리밍하는 Python 및 JavaScript 엔진입니다.

스타
2,772
포크
315
열린 이슈
1
마지막 커밋
18시간 전

어떤 프로젝트인가요?

ASCILINE은 동영상을 텍스트 기반 프레임으로 변환합니다. FastAPI를 기반으로 한 Python 백엔드가 OpenCV로 동영상을 디코딩하고, 각 픽셀을 ASCII 문자나 색상 블록에 매핑한 뒤 프레임을 WebSocket으로 바이너리 데이터 형태로 스트리밍합니다. 바닐라 JavaScript 클라이언트는 이를 HTML5 Canvas에 그리므로 브라우저에 동영상 코덱이나 <video> 태그가 필요하지 않습니다.

실시간 스트리밍 외에도 Python 컴파일러나 브라우저 기반 Studio를 사용해 동영상을 독립 실행형 .ascf 파일로 컴파일할 수 있습니다. 이 파일은 GitHub Pages 같은 정적 호스팅에서도 재생할 수 있습니다. 또한 AsciiPlayer 클래스와 <ascf-player> 요소를 제공하는 JavaScript SDK(asciline-player)와, 픽셀 모드에서 더 높은 FPS를 지원하는 선택형 Rust 엔진도 포함되어 있습니다.

Windows, macOS, Linux를 지원하며 흑백부터 16M 색상까지 다양한 색상 깊이를 제공합니다. 스트리밍 서버용 Docker 파일도 포함되어 있습니다.

핵심 기능

  • 01ASCII 또는 색상 픽셀 블록 프레임을 WebSocket으로 브라우저 캔버스에 스트리밍합니다.
  • 02동영상을 정적 호스팅용 독립 실행형 .ascf 파일로 컴파일합니다.
  • 03클래스 API와 <ascf-player> HTML 요소를 제공하는 JavaScript SDK를 지원합니다.
  • 04흑백부터 16M 색상까지 여러 색상 모드를 제공합니다.
  • 05선택형 yt-dlp extra를 통해 YouTube 및 URL 입력을 지원하며, 폴더와 JSON 재생목록 대기열도 제공합니다.

활용 사례

  • 동영상 플레이어 없이 웹사이트에 텍스트 스타일의 동영상 효과를 삽입합니다.
  • GPU 디코딩을 사용할 수 없는 저전력 기기나 네트워크 환경이 제한된 곳에서 동영상을 재생합니다.
  • 백엔드 없이 정적 사이트에서 미리 컴파일한 동영상 클립을 호스팅합니다.
  • 레트로 터미널 또는 타이포그래피 기반의 시각적 경험을 만듭니다.

빠른 시작

  1. 1

    README의 Installation 섹션에 안내된 대로 Python 종속성을 설치합니다

  2. 2

    동영상 파일을 사용해 라이브 스트리밍 서버를 시작합니다

    python stream_server.py video.mp4 --host 0.0.0.0

사용 전 알아둘 점

  • 엔진은 카피레프트 의무가 적용되는 AGPL v3 라이선스이며, JavaScript SDK는 MIT 라이선스입니다.
  • 선택 사항인 Rust 엔진의 실시간 픽셀 DCT는 미리 보기 버전이며 Windows에서만 테스트되었습니다.
  • Python 3.9 이상이 필요합니다.

토픽

자주 묻는 질문

ASCILINE은(는) 무엇인가요?
동영상을 ASCII 문자 또는 픽셀 블록 프레임으로 변환해 HTML5 Canvas 플레이어로 실시간 스트리밍하는 Python 및 JavaScript 엔진입니다. ASCILINE은 동영상을 텍스트 기반 프레임으로 변환합니다. FastAPI를 기반으로 한 Python 백엔드가 OpenCV로 동영상을 디코딩하고, 각 픽셀을 ASCII 문자나 색상 블록에 매핑한 뒤 프레임을 WebSocket으로 바이너리 데이터 형태로 스트리밍합니다. 바닐라 JavaScript 클라이언트는 이를 HTML5 Canvas에 그리므로 브라우저에 동영상 코덱이나 <video> 태그가 필요하지 않습니다.
ASCILINE은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
ASCILINE은(는) Other 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
ASCILINE은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. ASCILINE의 마지막 커밋은 2026년 10월 19일입니다.
ASCILINE은(는) 어디에 사용할 수 있나요?
동영상 플레이어 없이 웹사이트에 텍스트 스타일의 동영상 효과를 삽입합니다. GPU 디코딩을 사용할 수 없는 저전력 기기나 네트워크 환경이 제한된 곳에서 동영상을 재생합니다. 백엔드 없이 정적 사이트에서 미리 컴파일한 동영상 클립을 호스팅합니다. 레트로 터미널 또는 타이포그래피 기반의 시각적 경험을 만듭니다.
ASCILINE는 어떻게 설치하나요?
README의 Installation 섹션에 안내된 대로 Python 종속성을 설치합니다 동영상 파일을 사용해 라이브 스트리밍 서버를 시작합니다: python stream_server.py video.mp4 --host 0.0.0.0
ASCILINE은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/YusufB5/ASCILINE

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트