비개발자 김부장의 바이브코딩: 2채널 블랙박스 GNET 뷰어 제작기

GNET 2채널 블랙박스 영상을 확인하려고 공식 JAR 뷰어를 실행했지만 실패했다. 윈도우 PC도 없는 상황이라 리눅스민트에서 사용할 수 있는 웹 기반 블랙박스 뷰어를 AI와 함께 만들기 시작했다.

블랙박스 영상을 확인할 일이 생겼습니다.

차량 블랙박스는 ‘GNET 2채널 블랙박스’였습니다.
전방 영상과 후방 영상이 따로 저장되는 방식이었고, 저는 두 영상을 같이 보면서 상황을 확인하고 싶었습니다.

처음에는 간단할 줄 알았습니다.

SD카드에서 영상을 꺼내고,
제조사에서 제공하는 공식 뷰어를 실행하고,
전방과 후방 영상을 같이 보면 끝.

그런데 막상 해보니 생각보다 쉽지 않았습니다.

공식 뷰어는 제대로 실행되지 않았고,
윈도우 PC도 없었고,
제가 지금 쓰는 환경은 리눅스민트였습니다.

그래서 결국 이런 생각까지 오게 됐습니다.

> 공식 뷰어 실패… 그럼 직접 만들지 뭐.

이번 글은 비개발자인 제가 GNET 2채널 블랙박스 영상을 보기 위해 직접 웹 기반 뷰어를 만들게 된 과정입니다.

거창한 개발 프로젝트라기보다는,
필요한 문제가 생겼고, 공식 프로그램은 안 되고, 윈도우 PC도 없고,
결국 AI와 함께 “내가 쓸 수 있는 걸 만들어보자”로 흘러간 이야기입니다.

## EP1. GNET 공식 뷰어 JAR 파일이 실행되지 않았다

처음에는 당연히 공식 뷰어를 사용하려고 했습니다.

블랙박스 제조사에서 제공하는 뷰어라면 전방/후방 영상도 알아서 맞춰 보여주고,
혹시 GPS나 속도 정보가 있다면 그런 것도 같이 볼 수 있지 않을까 생각했습니다.

그래서 GNET 뷰어 파일을 찾아봤습니다.

그런데 제가 받은 파일은 `jar` 파일이었습니다.
(JAR 파일은 Java로 실행하는 프로그램입이라고 하네요.) 말은 간단합니다.

‘Java 설치하고 실행하면 된다’

그런데 비개발자 입장에서는 여기서부터 살짝 불안합니다.

“아, 또 뭔가 설치해야 하는구나.”

그래도 일단 시도했습니다.

하지만 결과는 실패였습니다.


JAR 파일 실행 안 됨
공식 뷰어 사용 불가
블랙박스 영상 확인 불가

딱 여기서 막혔습니다.

공식 뷰어가 실행되면 가장 깔끔했을 겁니다.
그런데 실행이 안 되니 다음 선택지가 필요했습니다.

## 처음 든 생각: 그냥 윈도우 PC에서 보면 되나?

보통 이런 블랙박스 뷰어는 윈도우 기준으로 만들어진 경우가 많습니다.

그래서 자연스럽게 이런 생각이 들었습니다.

‘윈도우 PC에서 실행하면 되지 않을까?’

그런데 문제는 제가 지금 주로 쓰는 환경이 리눅스 민트라는 점이었습니다.

제 서버이자 작업용 노트북은 오래된 맥북프로에 Linux Mint를 설치해서 쓰고 있습니다.
가볍고 안정적이라 마음에 들지만, 이런 제조사 전용 프로그램을 만날 때는 한계가 있습니다.

특히 블랙박스 뷰어처럼 윈도우 중심으로 만들어진 프로그램은 리눅스에서 바로 쓰기 어렵습니다.

상황을 정리하면 이랬습니다.

1. GNET 공식 뷰어 JAR 파일 실행 안 됨
2. 윈도우 PC 없음
3. 현재 사용 가능한 환경은 Linux Mint
4. 그래도 전방/후방 영상을 같이 봐야 함
이쯤 되니 선택지가 별로 없었습니다.

## EP2. 그럼 리눅스민트에서 쓸 수 있게 만들자

여기서 방향을 바꿨습니다.

공식 뷰어를 억지로 실행하려고 붙잡기보다,
제가 실제로 필요한 기능만 따로 만들기로 했습니다.

목표는 단순했습니다.

> 리눅스민트에서 브라우저로 열 수 있는 GNET 2채널 블랙박스 웹 뷰어를 만들자.

프로그램 설치가 복잡하면 또 막힐 수 있으니,
가능하면 웹사이트처럼 열어서 쓰는 방식이 좋겠다고 생각했습니다.

즉, 이런 형태입니다.

브라우저에서 접속
→ 블랙박스 영상 파일 선택
→ 전방/후방 영상 표시
→ 한 화면에서 동시 재생
설치형 프로그램이 아니라 웹 기반이면 장점이 있습니다.

리눅스민트에서 사용 가능
크롬/파이어폭스 같은 브라우저로 실행 가능
윈도우가 없어도 됨
나중에 다른 PC에서도 열 수 있음

비개발자인 제 입장에서는 이게 훨씬 현실적인 방향이었습니다.

## 내가 정말 필요했던 기능

처음부터 대단한 블랙박스 분석 프로그램을 만들 생각은 없었습니다.

제가 필요했던 건 딱 이것이었습니다.

‘전방 영상과 후방 영상을 한 화면에서 같이 보기’

조금 더 구체적으로는 이런 기능입니다.

1. 전방 영상 선택
2. 후방 영상 선택
3. 두 영상을 나란히 표시
4. 재생 버튼을 누르면 둘 다 재생
5. 일시정지를 누르면 둘 다 정지
6. 시간 이동을 하면 둘 다 같은 위치로 이동

블랙박스 영상 확인할 때 가장 귀찮은 게 바로 이 부분입니다.

전방 파일 따로 열고,
후방 파일 따로 열고,
두 영상 시간을 눈으로 대충 맞추고,
하나 재생하고 다른 하나도 재생하고.

이걸 몇 번 하다 보면 꽤 피곤합니다.

그래서 첫 번째 목표는 단순하게 잡았습니다.

`
전방/후방 동시 재생
`

완벽한 상용 뷰어가 아니라,
일단 제가 지금 당장 쓸 수 있는 뷰어가 필요했습니다.

## AI에게 이렇게 요청했다

이번에도 방식은 바이브코딩이었습니다.

제가 개발자가 아니기 때문에,
처음부터 코드를 설계하고 라이브러리를 고르는 방식은 어렵습니다.

대신 제가 원하는 걸 말로 설명했습니다.

`
GNET 2채널 블랙박스 영상이 있어.
전방 영상과 후방 영상을 한 화면에서 같이 보고 싶어.
나는 윈도우 PC가 없고 리눅스민트를 쓰고 있어.
설치형 프로그램 말고 웹사이트처럼 브라우저에서 열 수 있는 뷰어를 만들고 싶어.
`

이렇게 말하니 AI가 방향을 잡아주기 시작했습니다.

웹으로 만들면 대략 이런 구조가 됩니다.

`
HTML
CSS
JavaScript
`

처음에는 이 단어들도 부담스럽습니다.

하지만 막상 설명을 들어보니 아주 단순하게 이해할 수 있었습니다.

`
HTML: 화면 구조
CSS: 보기 좋게 꾸미기
JavaScript: 영상 재생과 버튼 동작
`

즉, 제가 필요한 건 복잡한 서버 프로그램이 아니라
브라우저 안에서 동영상 두 개를 재생하는 작은 웹페이지였습니다.

## 첫 번째 웹 뷰어의 목표

첫 버전은 욕심내지 않기로 했습니다.

처음부터 GNET 파일을 자동 분석하고,
GPS 데이터까지 읽고,
사고 구간을 자동으로 찾아주는 식으로 가면 분명히 중간에 지칩니다.

그래서 첫 버전 목표를 아주 작게 잡았습니다.

`
1. 전방 영상 파일 선택
2. 후방 영상 파일 선택
3. 두 영상을 화면에 표시
4. 동시에 재생
5. 동시에 멈춤
6. 동시에 시간 이동
`

이 정도만 되어도 기존에 동영상 플레이어 두 개 띄워놓고 보는 것보다 훨씬 편합니다.

제가 생각한 웹 뷰어의 기본 화면도 단순합니다.

┌──────────────┬──────────────┐
│ 전방 영상 │ 후방 영상 │
└──────────────┴──────────────┘

[전방 파일 선택] [후방 파일 선택]

[재생] [일시정지] [처음으로]
타임라인

디자인보다 중요한 건 기능이었습니다.

## 왜 웹사이트 방식이 좋았나

리눅스민트를 쓰다 보면 윈도우 전용 프로그램 때문에 막히는 경우가 있습니다.

그럴 때마다 Wine을 설치할지,
가상머신을 쓸지,
다른 PC를 구할지 고민하게 됩니다.

그런데 이번에는 생각을 바꿨습니다.

> 내가 필요한 기능만 웹으로 만들면 OS에 덜 묶이지 않을까?

웹 방식의 장점은 분명했습니다.

`
윈도우 설치 필요 없음
리눅스민트에서 바로 사용 가능
브라우저만 있으면 됨
파일을 서버에 올리지 않고 로컬에서 열 수도 있음
나중에 기능 확장 가능
`

특히 마지막이 마음에 들었습니다.

처음에는 단순히 전방/후방을 같이 보는 수준이지만,
나중에는 기능을 하나씩 붙일 수 있습니다.

`
스냅샷 저장
구간 자르기
사고 장면 메모
파일명 자동 매칭
날짜별 목록 정리
`

이런 식으로요.

## 비개발자에게 중요한 건 “완성품”보다 “첫 작동”

이번 작업을 하면서 다시 느꼈습니다.

비개발자가 AI로 뭔가 만들 때 처음부터 완성도 높은 프로그램을 목표로 하면 쉽게 지칩니다.

처음 목표는 이렇게 잡는 게 좋습니다.

`
일단 화면이 뜨는가?
파일을 선택할 수 있는가?
영상이 재생되는가?
두 영상이 같이 멈추는가?
`

이 정도만 되어도 큰 진전입니다.

저도 처음부터 “GNET 전용 완벽한 뷰어”를 만들겠다고 생각했다면 시작도 못 했을 겁니다.

하지만 이렇게 생각하니 가능해졌습니다.

`
공식 뷰어가 안 된다
→ 윈도우 PC도 없다
→ 그럼 내가 쓰는 리눅스민트에서 열리는 작은 웹 뷰어부터 만들자
`

문제를 작게 만들면 AI에게 요청하기도 쉬워집니다.

## 이번 작업의 핵심 정리

이번 GNET 2채널 블랙박스 뷰어 제작의 출발점은 이렇습니다.

`
공식 JAR 뷰어 실행 실패
윈도우 PC 없음
리눅스민트 환경에서 영상 확인 필요
웹 기반 2채널 뷰어 제작 시작
`

제가 원하는 기능은 단순했습니다.

`
전방/후방 영상을 한 화면에서 같이 보기
두 영상을 동시에 재생/정지하기
시간 이동도 같이 하기
`

그리고 이걸 AI와 함께 웹페이지 형태로 만들어보기 시작했습니다.

## 김부장의 깨달음

예전 같으면 여기서 멈췄을 겁니다.

`
공식 프로그램 안 되네.
윈도우 PC 없네.
그럼 나중에 해야겠다.
`

그런데 이제는 선택지가 하나 더 생겼습니다.

`그럼 내가 필요한 만큼 만들어볼까?`

이게 요즘 제가 느끼는 바이브코딩의 매력입니다.

개발자가 아니어도
내가 겪는 불편함을 말로 정리할 수 있으면,
AI와 함께 첫 번째 도구를 만들어볼 수 있습니다.

물론 한 번에 완벽하지는 않습니다.

분명히 에러도 나고,
영상 싱크도 어긋나고,
파일명 자동 매칭도 생각보다 복잡할 수 있습니다.

하지만 그래도 괜찮습니다.

첫 목표는 완성이 아니라 작동입니다.

`
일단 열린다.
일단 보인다.
일단 같이 재생된다.
`

이 세 가지만 되어도 이미 이전보다 한 걸음 나아간 겁니다.

## 다음 글 예고

다음 글에서는 실제로 만든 웹 뷰어의 구조를 정리해보려고 합니다.

예를 들면 이런 내용입니다.

`
HTML로 화면 만들기
JavaScript로 전방/후방 영상 불러오기
재생/정지 버튼 동기화하기
타임라인 이동 맞추기
리눅스민트에서 로컬 파일로 실행하기
`

그리고 가능하다면 제가 실제로 만든 첫 번째 GNET 2채널 웹 뷰어 화면도 함께 보여드리겠습니다.

공식 뷰어가 안 되고,
윈도우 PC도 없어서 시작한 작은 프로젝트였지만,
오히려 덕분에 하나 배웠습니다.

> 안 되면, 내가 쓰는 환경에 맞게 작게 만들어보면 된다.

비개발자 김부장의 바이브코딩은 오늘도 이렇게 이어집니다.

#GNET
#블랙박스뷰어
#2채널블랙박스
#전방후방영상
#리눅스민트
#LinuxMint
#JAR실행안됨
#웹뷰어
#바이브코딩
#비개발자코딩
#김부장
#AI코딩

댓글 남기기