You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
70 lines
2.5 KiB
70 lines
2.5 KiB
|
2 years ago
|
## 프로젝트 구조
|
||
|
|
|
||
|
|
- domain: 순수한 도메인 관련 모델/기능
|
||
|
|
- dsl: TC DSL 관련 정의와 기능들
|
||
|
|
- proxy: 프록시 푸쉬 서버 관련 기능들
|
||
|
|
- STB 에 system command 와 cue 송신
|
||
|
|
- STB 의 auth, ads, vast, assetConvert 관련 HTTP 요청을 수신
|
||
|
|
- QA 들이 apache 를 사용하여 하던 행위를 대체
|
||
|
|
- TC 에서 HTTP 응답 변환이나 일시 정지, 딜레이가 필요할 경우 수행
|
||
|
|
- tc: TC 테스터와 TC 정의들
|
||
|
|
- 실제 TC 들을 정의
|
||
|
|
- 정의된 TC 들을 수행
|
||
|
|
|
||
|
|
## 실행 방법
|
||
|
|
|
||
|
|
1. STB 대여 (아래 사항들 확인 필요함)
|
||
|
|
- STB 가 접속되는 AP 이름과 비밀번호
|
||
|
|
- STB IP, adb 포트 번호
|
||
|
|
1. STB 설치
|
||
|
|
1. 컴퓨터의 USB 에 캡쳐보드를 꼽고 캡쳐보드와 STB output 과 연결
|
||
|
|
1. 컴퓨터에 obs-studio 설치 및 실행
|
||
|
|
2. 왼쪽 하단의 Sources 의 + 버튼(add sources) 클릭
|
||
|
|
|
||
|
|

|
||
|
|
3. video capture device(V4L2) (리눅스 기준) 클릭
|
||
|
|
4. 디바이스를 바꿔가면서 STB 를 찾아 선택 후 OK 클릭
|
||
|
|
|
||
|
|

|
||
|
|
|
||
|
|
1. application.yml 에서 anypoint.android-qa.stb 하위 정보들을 STB 의 정보로 수정
|
||
|
|
1. obs-studio 종료 후 android-qa 애플리케이션 실행 (obs-studio 종료해야 정상 작동됨)
|
||
|
|
|
||
|
|
## TC 수행 순서
|
||
|
|
|
||
|
|
1. adb 를 사용하여 STB 이 프록시 서버를 바라보도록 변경
|
||
|
|
```shell
|
||
|
|
adb shell am broadcast -a tv.anypoint.agent.app.CHANGE_TEST_PROPERTY --es change.command CHANGE_API_ENDPOINT --es api.endpoint http://<PROXY_SERVER_URL>:<PROXY_SERVER_PORT>
|
||
|
|
```
|
||
|
|
1.
|
||
|
|
|
||
|
|
## ffmpeg 리눅스에서 사용 방법
|
||
|
|
|
||
|
|
v4l2(video4linux2) 를 사용하여 캡쳐보드의 devicePath 구하기
|
||
|
|
|
||
|
|
```shell
|
||
|
|
$ v4l2-ctl --list-devices
|
||
|
|
Integrated Camera: Integrated C (usb-0000:00:14.0-8):
|
||
|
|
/dev/video0
|
||
|
|
/dev/video1
|
||
|
|
/dev/video2
|
||
|
|
/dev/video3
|
||
|
|
/dev/media0
|
||
|
|
/dev/media1
|
||
|
|
|
||
|
|
USB Video: USB Video (usb-0000:09:00.0-2.4):
|
||
|
|
/dev/video5
|
||
|
|
/dev/video6
|
||
|
|
/dev/media3
|
||
|
|
```
|
||
|
|
|
||
|
|
- 비디오: -f video4linux2 -i `<VIDEO_PATH>` 의 형식으로 입력.
|
||
|
|
- 오디오: -f alsa -ac 2 -i default 만 넣어도 되는데 캡쳐보드 전체가 동일한 지는 확인 안해 봄
|
||
|
|
|
||
|
|
아래 예제 참고
|
||
|
|
|
||
|
|
```shell
|
||
|
|
$ ffmpeg -f video4linux2 -i /dev/video5 -f alsa -ac 2 -i default -b:v 10M -vcodec h264_nvenc -pixel_format yuv420p -rtbufsize 1000M output_new_captureboard_30fps.mp4
|
||
|
|
```
|
||
|
|
|