Files
fmviewer3/project/fm_viewer/fm_viewer.pro
2026-02-21 17:11:31 +09:00

1758 lines
67 KiB
Prolog
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#-------------------------------------------------
#
# Project created by QtCreator 2019-06-25T16:55:02
#
# https://codeday.me/ko/qa/20190523/610437.html
#-------------------------------------------------
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4) {
QT += widgets
QT += axcontainer
QT += concurrent
}
# SUPRESS_ALL_TESTER (모든 테스트 기능 사용 중지)
DEFINES += SUPPRESS_ALL_TESTER
#NEXTEC 1 // 2020-09-10 FRC
#XLDR_88 2 // 2020-09-10 WATEX XLDR_88
#ADT_CAPS 3 // 2020-10-06 엠텍비젼 임시 모델
#KEIYO1 4 // 2020-10-29 KEIYO DVPlayer2 명칭 변경
#TBD_360 5 // 2020-12-18 EMT 360 데모(컴텍 ZDR08 뷰어 호환)
#MBJ5010 6 // KEIYO1 동일 벤츠2 (센서Y<->X, 주차감시) -> 공용으로 다시 전환 -> 2021/03/05 다시 분리
#FC-DR232W 7 // FC-DR232W -> MBJ5010 동일 로고만 NEXTEC FRC
#BV2000 8 // Belivue BV2000
#BV5000 9 // Belivue BV5000
#KEIYO_KR 11 // 2023-05-12 국내향 KEIYO1 BASE SUBMODEL
#KEIYO_180 12 // 2023-06-15 KEIYO DVPlayer2 + 180 3D
#CARROT_EMT 13 // XLDR_88 + 한국어 = ADT_CAPS
#TB4000 14 // 텔레비트 TB4000 (2023/10/04)
#AN6000 15 // 엠텍비젼 AN6000 (2023/11/15)
#MH9000 16 // 미디어힐스 MH9000 (일영한 5채널)
#TB5000 18 // 텔레비트 TB5000 (2025/05/15)
#EMT_KOR1 17 // NEXIAN 엠티오메가 국내향
#CS_E200 XX // 디케이 이노텍 CS-E200 -> chunho_viewer 이동
TARGET_MODEL = 15
PRODUCTION_BUILD = 0
DEFINES += RM_MODEL_SVN_VERSION=1088
TARGET_SETUP = 0 # 뷰어 빌드가 아닌 SETUP 빌드 -> 사용X
DEFINES += PROFILE_BUILD=0 # 뷰어 테스트 개발 전용 빌드
#DEFINES += TEST_GRAPHIC_ACCEL=1
#DEFINES += QTAV_HAVE_GL
#DEFINES += QTAV_HAVE_GL1
#QT += opengl
#LIBS *= -lOpenGL32
CONFIG *= force_debug_info
# 사용하지 않는 소스 제거
REMOVE_UNUSED_SRC = 1
DEFINES += PAUSED_FRAME_REFRESH=1 # 정지상태에서 프레임 업데이트
#-----------------------------------------------------------------
# 자동빌드 처리
contains(DEFINES, NX_DRW22) {
TARGET_MODEL = 1
PRODUCTION_BUILD = 1
}
contains(DEFINES, XLDR_88) {
TARGET_MODEL = 2
PRODUCTION_BUILD = 1
}
contains(DEFINES, ADT_CAPS) {
TARGET_MODEL = 3
PRODUCTION_BUILD = 1
}
contains(DEFINES, KEIYO1) {
TARGET_MODEL = 4
PRODUCTION_BUILD = 1
}
contains(DEFINES, KEIYO_KR) {
TARGET_MODEL = 11
PRODUCTION_BUILD = 1
}
contains(DEFINES, KEIYO_180) {
TARGET_MODEL = 12
PRODUCTION_BUILD = 1
}
contains(DEFINES, TBD_360) {
TARGET_MODEL = 5
PRODUCTION_BUILD = 1
}
contains(DEFINES, MBJ5010) {
TARGET_MODEL = 6
PRODUCTION_BUILD = 1
}
contains(DEFINES, FC_DR232W) {
TARGET_MODEL = 7
PRODUCTION_BUILD = 1
}
contains(DEFINES, BV2000) {
TARGET_MODEL = 8
PRODUCTION_BUILD = 1
}
contains(DEFINES, BV5000) {
TARGET_MODEL = 9
PRODUCTION_BUILD = 1
}
contains(DEFINES, CARROT_EMT) {
TARGET_MODEL = 13
PRODUCTION_BUILD = 1
}
contains(DEFINES, TB4000) {
TARGET_MODEL = 14
PRODUCTION_BUILD = 1
}
contains(DEFINES, TB5000) {
TARGET_MODEL = 18
PRODUCTION_BUILD = 1
}
contains(DEFINES, AN6000) {
TARGET_MODEL = 15
PRODUCTION_BUILD = 1
}
contains(DEFINES, MH9000) {
TARGET_MODEL = 16
PRODUCTION_BUILD = 1
}
contains(DEFINES, EMT_KOR1) {
TARGET_MODEL = 17
PRODUCTION_BUILD = 1
}
# SUB MODEL 처리
isEqual(TARGET_MODEL,9) {
TARGET_MODEL = 8 #BV2000
SUB_MODEL_ID = 1
DEFINES += SUB_MODEL_BV5000=1
DEFINES += LIVE_LANGUAGE2=1
DEFINES += REMOVE_OLD_C=1 #기존 소스 자료 정리
DEFINES += SUPPORT_LANGUAGE_INSERT=1 #소스에서 언어 정리 하기 위해 사용
DEFINES += INITIAL_LANGUAGE_AUTO=1 #자동언어 시작
DEFINES += DEMO_BUILD=1 #데모버전
}
# KEIYO_KR SUB MODEL 처리
isEqual(TARGET_MODEL,11) {
TARGET_MODEL = 4 #KEIYO
SUB_MODEL_ID = 1
DEFINES += SUB_MODEL_KEIYO_KR=1
DEFINES += MODEL_KOREAN_ONLY=1
}
# KEIYO_180 SUB MODEL 처리
isEqual(TARGET_MODEL,12) {
TARGET_MODEL = 4 #KEIYO
SUB_MODEL_ID = 2
DEFINES += SUB_MODEL_KEIYO_360=1
}
# SUB MODEL 처리
isEqual(TARGET_MODEL,13) {
TARGET_MODEL = 3 #CARROT_EMT
SUB_MODEL_ID = 1
DEFINES += SUB_MODEL_CARROT_EMT=1
}
# SUB MODEL 처리
isEqual(TARGET_MODEL,18) {
TARGET_MODEL = 14 #TB4000
SUB_MODEL_ID = 1
DEFINES += SUB_MODEL_TB5000=1
}
# 테스트 빌드
isEqual(PRODUCTION_BUILD,0) {
DEFINES += FAST_DEVP_MODE=1
#DEFINES += RM_TESTING=1
# 테스트 콘솔 모드
#USE_TESTER_CONSOLE = 1
}
isEqual(PRODUCTION_BUILD,1) {
DEFINES += QT_NO_DEBUG=1
}
#-----------------------------------------------------------------
DEFINES += FIXED_SLEEP=QThread::msleep(20) #QThread::msleep(40)
DEFINES += FIXED_FPS_DURATION=1
#DEFINES += DISABLE_AUDIO_THREAD=1
DEFINES += FORCE_BREAK_EOF=1 # 영상 EOF 없어서 강제 종료
DEFINES += FIX_PLAYER_END_CLIP=1 # 영상 마지막 끝까지 재생하도록 수정
DEFINES += REMOVE_RIGHT_GREEN_LINE=1 # 우측 그린라인 제거
DEFINES += FIXED_PLAYER_NOTIFY_INTERVAL=1 # 고정 interval (positionChanged)
DEFINES += PREVENT_OVER_DURATION_RENDER=1 # 재생시간 이상 프레임은 그리지 않도록 수정
DEFINES += FE_LOG_VERSION=0 # 로그 다이얼로그 메시지 캡쳐
#DEFINES += FORCE_BREAK_EOF_LOG=1 # 로그
#DEFINES += FORCE_BREAK_EOF_LOG2=1 # 로그2
#DEFINES += FORCE_BREAK_EOF_LOG3 # 로그3
# CUSTOM RECORDING SETTINGS IN FIELD
#DEFINES += CUSTOM_RS_FIELD=1
# 언어 지정
# VIEWER_LANGUAGE: MULTI:다국어, KOREAN:한국어, ENGLISH:영어, JAPANESE:일본어
# (RC_LANGUAGE, RC_LANGUAGE_ENCODING)
# RC_LANGUAGE: 0x411=일본어, 0x409=영어, 0x0412=한국어
# RC_LANGUAGE: 932=일본어(Shift JIS X-0208), 1200=영어, 949=한국어
#NX_DRW22 (NEXTEC) 1
isEqual(TARGET_MODEL,1) {
message("NX_DRW22")
TARGET = viewer
DEFINES += RM_MODEL=1
DEFINES += RM_MODEL_VERSION_0=1
DEFINES += RM_MODEL_VERSION_1=0
DEFINES += RM_MODEL_VERSION_2=4 # 2022-05-23 구글맵 수정, 2022-10-05 전체화면 버튼 수정 // 2023/03/15: 1.0.3->4 변경
VIEWER_LANGUAGE = MULTI # 다국어 지원 뷰어
DEFINES +=LIVE_LANGUAGE_CHANGE=1 # "
DEFINES += RC_LANGUAGE=0x0411 # 일본어
DEFINES += RC_ENCODING=932 # JIS X-0208
DEFINES += MODEL_STANDARD=1 # 기본모델
DEFINES += SHOW_LIST_FR=0 # 전후방 표시
BASE_MODEL= STANDARD # 모델 분할
DEFINES += USE_GOOGLE_MAP=1 # GOOGLE MAP
DEFINES += REAR_SYNC_FRONT=1 # 후방 영상을 전방 재생시간에 따라 처리 (eg. :20, :18 = 후방을 2 부터 시작)
DEFINES += DESIGN_LAYOUT_MODE=0 # GUIDE 디자인 레이아웃
DEFINES += CHECK_VIDEO_BITRATE=0 #영상 비트레이트 확인하여 카메라 연결 여부 체크
DEFINES += USE_EQ_FILTER=1 #일단 EQ 필터 사용
DEFINES += PRE_LOAD_SENSOR_DATA=0 #센서 데이터 미리 읽기 방지
DEFINES += FILE_EXT='\\"MOV\\"' #파일 확장자
DEFINES += FILE_FORMAT_MOV=1
DEFINES += USE_HTML_MAP=1 #PAGE INJECT 방식으로 동작하지 않음->임시파일 생성
DEFINES += MAP_SINGLE_PATH=1 #단일 파일 경로만 표시
DEFINES += CHECK_GPS_LOCATION=1 #좌표검증
DEFINES += SEEK_STEP_SIZE=10 #10초씩 이동
DEFINES += USE_DEVICE_SETTINGS=0 #설정기능 없음
USE_WEBVIEW2 = 1 # qt define
}
isEqual(TARGET_MODEL,4) {
DEFINES += RM_MODEL=4
isEqual(SUB_MODEL_ID,1) {
message("KEIYO_KR")
TARGET = PCPlayer
DEFINES += RM_MODEL_VERSION_0=0
DEFINES += RM_MODEL_VERSION_1=0
DEFINES += RM_MODEL_VERSION_2=1
DEFINES += FORCE_FM_STRING=1 # FMSTRING 주로 사용
# OPENSTREETMAP...
DEFINES += TOGGLE_PLAYER=1 #1CH 재생
DEFINES += SUPPORT_2CH=1 # 2023/04/04 K045지원 FORCE_2CH 사용 금지
}
isEqual(SUB_MODEL_ID,2) {
message("KEIYO_180")
TARGET = Viewer
DEFINES += RM_MODEL_VERSION_0=1
DEFINES += RM_MODEL_VERSION_1=0
DEFINES += RM_MODEL_VERSION_2=1
DEFINES += FORCE_FM_STRING=1 # FMSTRING 주로 사용
DEFINES += USE_GOOGLE_MAP_AND_OSM=1 # GOOGLE MAP
DEFINES += TOP_DOWN_360=1 #360 모델
DEFINES += RM_MODEL_360=1 # roadmovie import TOP_DOWN_360 통합 예정
DEFINES += RM_MODEL_360_PAD=1 # "
DEFINES += RM_MODEL_360_SINGLE=1 # "
DEFINES += USE_POINT_ZOOM=1 # "
DEFINES += USE_HYBRID_ZOOM=1 # "
DEFINES += MOUSE_DRAG_ACCELERATION=1# "
DEFINES += REAR_VIEW_ZOOM=1 # "
DEFINES += TOP_DOWN_2D_360=0 # 3D 투영이 아닌 2D 투영 사용(화질)
DEFINES += REMOVE_360_WIDE_SINGLE=1 # 2D 투영에 사용
DEFINES += DO_NOT_USE_ZOOM=1 #ZOOM 없음
DEFINES += TANDF_360_TEST=0 #TNF 모델용
DEFINES += MH_360_TEST=1 #MH 모델용
DEFINES += FILE_FORMAT_MOV=1 #TNF
DEFINES += FILE_EXT='\\"MP4\\"' #TNF 파일 확장자
DEFINES += NO_LOGO=1 #로고/브랜드 제거
DEFINES += FORCE_2CH=1 #2CH 영상
DEFINES += DUAL_CH_FILE=1 #MP4 DUAL
DEFINES += SUPPORT_FORMAT_FREE=1 #포맷 생성
QMAKE_LFLAGS_WINDOWS += /MANIFESTUAC:"level='requireAdministrator'"
} else {
message("KEIYO1")
TARGET = DVPlayer_2A
DEFINES += RM_MODEL_VERSION_0=1
DEFINES += RM_MODEL_VERSION_1=2
DEFINES += RM_MODEL_VERSION_2=6 # 2022-05-23 구글맵 수정 // 2023/04/04 WEBVIEW2 + K045(1F/2C)
DEFINES += USE_GOOGLE_MAP=1 # GOOGLE MAP
DEFINES += TOGGLE_PLAYER=1 #1CH 재생
DEFINES += SUPPORT_2CH=1 # 2023/04/04 K045지원 FORCE_2CH 사용 금지
}
VIEWER_LANGUAGE = MULTI # 다국어 지원 뷰어
DEFINES +=LIVE_LANGUAGE_CHANGE=1 # "
DEFINES += RC_LANGUAGE=0x0411 # 일본어
DEFINES += RC_ENCODING=932 # JIS X-0208
DEFINES += MODEL_STANDARD=1 # 기본모델
DEFINES += SHOW_LIST_FR=0 # 전후방 표시
BASE_MODEL= STANDARD # 모델 분할
DEFINES += REAR_SYNC_FRONT=0 # 후방 영상을 전방 재생시간에 따라 처리 (eg. :20, :18 = 후방을 2 부터 시작)
DEFINES += DESIGN_LAYOUT_MODE=0 # GUIDE 디자인 레이아웃
DEFINES += CHECK_VIDEO_BITRATE=0 #영상 비트레이트 확인하여 카메라 연결 여부 체크
DEFINES += USE_EQ_FILTER=1 #일단 EQ 필터 사용
DEFINES += PRE_LOAD_SENSOR_DATA=0 #센서 데이터 미리 읽기 방지
DEFINES += FILE_EXT='\\"MP4\\"' #파일 확장자
DEFINES += FILE_FORMAT_MOV=1
DEFINES += SEEK_STEP_SIZE=10 #10초씩 이동
DEFINES += USE_DEVICE_SETTINGS=0 #설정기능 없음
DEFINES += SINGLE_SAVE_FILE=1 #1개씩 보존
DEFINES += REMOVE_SEEK_BUTTON=1 #10 이동 제거
DEFINES += USE_FRAME_GPS=1 #경위도 표시
DEFINES += CHECK_REAR_DURATION=1 #후방시간도 확인
DEFINES += REMOVE_REAR_BY_DURATION=1#후방만 제거?
DEFINES += LIMIT_SEEK_END=1 #후방SEEK 안됨 265
DEFINES += SUPPORT_H265=1 #H265 지원
DEFINES += HIDE_BUILD_NO=1 #빌드넘버 감추기
DEFINES += MAP_SINGLE_PATH=1 #단일 파일 경로만 표시
DEFINES += SENSOR_MATCH_DURATION=1 #GPS/SENSOR 시간과 재생시간 동기화
DEFINES += CHECK_GPS_LOCATION=1 #좌표검증
DEFINES += USE_FRONT_DURATION=1 #전방길이 사용
DEFINES += PLAY_FIRST_LOADED=1 #로딩된 최초 파일 재생
DEFINES += USE_MAXIMIZE=1 #우측 표시하는 최대 모드지원
DEFINES += USE_HTML_MAP=1 #PAGE INJECT 방식으로 동작하지 않음->임시파일 생성
DEFINES += USE_TEXT_TITLE=1 #텍스트 타이틀 로고 사용
DEFINES += USE_FILE_NAME_TITLE=1 #파일명 표시
DEFINES += KEEP_VIDEO_DURATION=1 # 영상 최대한 재생
USE_WEBVIEW2 = 1 # qt define
}
isEqual(TARGET_MODEL,6) {
message("MBJ5010")
TARGET = DVPlayer_2A
DEFINES += RM_MODEL=6
DEFINES += RM_MODEL_VERSION_0=1
DEFINES += RM_MODEL_VERSION_1=2
DEFINES += RM_MODEL_VERSION_2=4 # 2022-05-23 구글맵 수정
VIEWER_LANGUAGE = MULTI # 다국어 지원 뷰어
DEFINES +=LIVE_LANGUAGE_CHANGE=1 # "
DEFINES += RC_LANGUAGE=0x0411 # 일본어
DEFINES += RC_ENCODING=932 # JIS X-0208
DEFINES += MODEL_STANDARD=1 # 기본모델
DEFINES += SHOW_LIST_FR=0 # 전후방 표시
BASE_MODEL= STANDARD # 모델 분할
DEFINES += USE_GOOGLE_MAP=1 # GOOGLE MAP
DEFINES += REAR_SYNC_FRONT=0 # 후방 영상을 전방 재생시간에 따라 처리 (eg. :20, :18 = 후방을 2 부터 시작)
DEFINES += DESIGN_LAYOUT_MODE=0 # GUIDE 디자인 레이아웃
DEFINES += CHECK_VIDEO_BITRATE=0 #영상 비트레이트 확인하여 카메라 연결 여부 체크
DEFINES += USE_EQ_FILTER=1 #일단 EQ 필터 사용
DEFINES += PRE_LOAD_SENSOR_DATA=0 #센서 데이터 미리 읽기 방지
DEFINES += FILE_EXT='\\"MP4\\"' #파일 확장자
DEFINES += FILE_FORMAT_MOV=1
DEFINES += SEEK_STEP_SIZE=10 #10초씩 이동
DEFINES += USE_DEVICE_SETTINGS=0 #설정기능 없음
DEFINES += TOGGLE_PLAYER=1 #1CH 재생
DEFINES += SINGLE_SAVE_FILE=1 #1개씩 보존
DEFINES += REMOVE_SEEK_BUTTON=1 #10 이동 제거
DEFINES += USE_FRAME_GPS=1 #경위도 표시
DEFINES += CHECK_REAR_DURATION=1 #후방시간도 확인
DEFINES += REMOVE_REAR_BY_DURATION=1#후방만 제거?
DEFINES += LIMIT_SEEK_END=1 #후방SEEK 안됨 265
DEFINES += SUPPORT_H265=1 #H265 지원
DEFINES += HIDE_BUILD_NO=1 #빌드넘버 감추기
DEFINES += MAP_SINGLE_PATH=1 #단일 파일 경로만 표시
DEFINES += SENSOR_MATCH_DURATION=1 #GPS/SENSOR 시간과 재생시간 동기화
DEFINES += CHECK_GPS_LOCATION=1 #좌표검증
DEFINES += USE_FRONT_DURATION=1 #전방길이 사용
#DEFINES += DEBUG_SENSOR_LOG=1 #로그확인
DEFINES += NO_LOGO=1 #로고/브랜드 제거
DEFINES += PLAY_FIRST_LOADED=1 #로딩된 최초 파일 재생
DEFINES += USE_MAXIMIZE=1 #우측 표시하는 최대 모드지원
DEFINES += USE_HTML_MAP=1 #PAGE INJECT 방식으로 동작하지 않음->임시파일 생성
DEFINES += USE_TEXT_TITLE=1 #텍스트 타이틀 로고 사용
DEFINES += USE_FILE_NAME_TITLE=1 #파일명 표시
USE_WEBVIEW2 = 1 # qt define
}
isEqual(TARGET_MODEL,7) {
message("FC-DR232W")
TARGET = FC_DR232W
DEFINES += RM_MODEL=7
DEFINES += RM_MODEL_VERSION_0=1
DEFINES += RM_MODEL_VERSION_1=0
DEFINES += RM_MODEL_VERSION_2=4 # 2022-05-23 구글맵 수정 / 2023/03/15 1.0.3->1.0.4(?) 변경
VIEWER_LANGUAGE = MULTI # 다국어 지원 뷰어
DEFINES +=LIVE_LANGUAGE_CHANGE=1 # "
DEFINES += RC_LANGUAGE=0x0411 # 일본어
DEFINES += RC_ENCODING=932 # JIS X-0208
DEFINES += MODEL_STANDARD=1 # 기본모델
DEFINES += SHOW_LIST_FR=0 # 전후방 표시
BASE_MODEL= STANDARD # 모델 분할
DEFINES += USE_GOOGLE_MAP=1 # GOOGLE MAP
DEFINES += REAR_SYNC_FRONT=0 # 후방 영상을 전방 재생시간에 따라 처리 (eg. :20, :18 = 후방을 2 부터 시작)
DEFINES += DESIGN_LAYOUT_MODE=0 # GUIDE 디자인 레이아웃
DEFINES += CHECK_VIDEO_BITRATE=0 #영상 비트레이트 확인하여 카메라 연결 여부 체크
DEFINES += USE_EQ_FILTER=1 #일단 EQ 필터 사용
DEFINES += PRE_LOAD_SENSOR_DATA=0 #센서 데이터 미리 읽기 방지
DEFINES += FILE_EXT='\\"MP4\\"' #파일 확장자
DEFINES += FILE_FORMAT_MOV=1
DEFINES += SEEK_STEP_SIZE=10 #10초씩 이동
DEFINES += USE_DEVICE_SETTINGS=0 #설정기능 없음
DEFINES += TOGGLE_PLAYER=1 #1CH 재생
DEFINES += SINGLE_SAVE_FILE=1 #1개씩 보존
DEFINES += REMOVE_SEEK_BUTTON=1 #10 이동 제거
DEFINES += USE_FRAME_GPS=1 #경위도 표시
DEFINES += CHECK_REAR_DURATION=1 #후방시간도 확인
DEFINES += REMOVE_REAR_BY_DURATION=1#후방만 제거?
DEFINES += LIMIT_SEEK_END=1 #후방SEEK 안됨 265
DEFINES += SUPPORT_H265=1 #H265 지원
DEFINES += HIDE_BUILD_NO=1 #빌드넘버 감추기
DEFINES += MAP_SINGLE_PATH=1 #단일 파일 경로만 표시
DEFINES += SENSOR_MATCH_DURATION=1 #GPS/SENSOR 시간과 재생시간 동기화
DEFINES += CHECK_GPS_LOCATION=1 #좌표검증
DEFINES += USE_FRONT_DURATION=1 #전방길이 사용
#DEFINES += DEBUG_SENSOR_LOG=1 #로그확인
DEFINES += NO_LOGO=1 #로고/브랜드 제거
DEFINES += PLAY_FIRST_LOADED=1 #로딩된 최초 파일 재생
DEFINES += USE_MAXIMIZE=1 #우측 표시하는 최대 모드지원
DEFINES += USE_HTML_MAP=1 #PAGE INJECT 방식으로 동작하지 않음->임시파일 생성
DEFINES += USE_TEXT_TITLE=1 #텍스트 타이틀 로고 사용
DEFINES += USE_FILE_NAME_TITLE=1 #파일명 표시
USE_WEBVIEW2 = 1 # qt define
}
isEqual(TARGET_MODEL,8) {
isEqual(SUB_MODEL_ID,1) {
message("BV5000")
TARGET = BV5000
DEFINES += RM_MODEL_VERSION_0=0
DEFINES += RM_MODEL_VERSION_1=0
DEFINES += RM_MODEL_VERSION_2=1
DEFINES += TRI_CHANNEL=1 # 3CH 뷰어
}
else {
message("BV2000")
TARGET = BV2000
DEFINES += RM_MODEL_VERSION_0=1
DEFINES += RM_MODEL_VERSION_1=0
DEFINES += RM_MODEL_VERSION_2=2 #2022-05-23 구글맵 수정
}
DEFINES += RM_MODEL=8
VIEWER_LANGUAGE = MULTI # 다국어 지원 뷰어
DEFINES +=LIVE_LANGUAGE_CHANGE=1 # "
DEFINES += RC_LANGUAGE=0x0412 # 한국어
DEFINES += RC_ENCODING=949 # CP949
DEFINES += MODEL_STANDARD=1 # 기본모델
DEFINES += SHOW_LIST_FR=0 # 전후방 표시
BASE_MODEL= STANDARD # 모델 분할
DEFINES += USE_GOOGLE_MAP=1 # GOOGLE MAP
DEFINES += REAR_SYNC_FRONT=0 # 후방 영상을 전방 재생시간에 따라 처리 (eg. :20, :18 = 후방을 2 부터 시작)
DEFINES += DESIGN_LAYOUT_MODE=0 # GUIDE 디자인 레이아웃
DEFINES += CHECK_VIDEO_BITRATE=0 #영상 비트레이트 확인하여 카메라 연결 여부 체크
DEFINES += USE_EQ_FILTER=1 #일단 EQ 필터 사용
DEFINES += PRE_LOAD_SENSOR_DATA=0 #센서 데이터 미리 읽기 방지
DEFINES += FILE_EXT='\\"MP4\\"' #파일 확장자
DEFINES += FILE_FORMAT_MOV=1
DEFINES += SEEK_STEP_SIZE=10 #10초씩 이동
DEFINES += USE_DEVICE_SETTINGS=0 #설정기능 없음
#DEFINES += TOGGLE_PLAYER=1 #1CH 재생
DEFINES += SINGLE_SAVE_FILE=1 #1개씩 보존
DEFINES += REMOVE_SEEK_BUTTON=1 #10 이동 제거
DEFINES += USE_FRAME_GPS=1 #경위도 표시
DEFINES += CHECK_REAR_DURATION=1 #후방시간도 확인
DEFINES += REMOVE_REAR_BY_DURATION=1#후방만 제거?
DEFINES += LIMIT_SEEK_END=1 #후방SEEK 안됨 265
DEFINES += SUPPORT_H265=1 #H265 지원
DEFINES += HIDE_BUILD_NO=1 #빌드넘버 감추기
DEFINES += MAP_SINGLE_PATH=1 #단일 파일 경로만 표시
DEFINES += SENSOR_MATCH_DURATION=1 #GPS/SENSOR 시간과 재생시간 동기화
DEFINES += CHECK_GPS_LOCATION=1 #좌표검증
DEFINES += USE_FRONT_DURATION=1 #전방길이 사용
#DEFINES += DEBUG_SENSOR_LOG=1 #로그확인
DEFINES += NO_LOGO=0 #로고/브랜드 제거
DEFINES += USE_TEXT_TITLE=0 #텍스트 타이틀 로고 사용
DEFINES += PLAY_FIRST_LOADED=1 #로딩된 최초 파일 재생
DEFINES += USE_MAXIMIZE=1 #우측 표시하는 최대 모드지원
DEFINES += USE_HTML_MAP=1 #PAGE INJECT 방식으로 동작하지 않음->임시파일 생성
DEFINES += USE_FILE_NAME_TITLE=1 #파일명 표시
DEFINES += FORCE_FM_STRING=1 # FMSTRING 주로 사용
USE_WEBVIEW2 = 1 # qt define
}
isEqual(TARGET_MODEL,2) {
TARGET = viewer
DEFINES += RM_MODEL=2
message("XLDR_88")
DEFINES += RM_MODEL_VERSION_0=0
DEFINES += RM_MODEL_VERSION_1=0
DEFINES += RM_MODEL_VERSION_2=9
DEFINES +=LIVE_LANGUAGE_CHANGE=1 # "
DEFINES += RC_LANGUAGE=0x0411 # 일본어
DEFINES += RC_ENCODING=932 # JIS X-0208
VIEWER_LANGUAGE = MULTI # 다국어 지원 뷰어
DEFINES += MODEL_STANDARD=1 # 기본모델
DEFINES += SHOW_LIST_FR=0 # 전후방 표시
BASE_MODEL= STANDARD # 모델 분할
# DEFINES += USE_YAHOO_MAP=1 # YAHOO MAP (2020/10 서비스 중단)
DEFINES += REAR_SYNC_FRONT=1 # 후방 영상을 전방 재생시간에 따라 처리 (eg. :20, :18 = 후방을 2 부터 시작)
DEFINES += DESIGN_LAYOUT_MODE=0 # GUIDE 디자인 레이아웃
DEFINES += CHECK_VIDEO_BITRATE=0 #영상 비트레이트 확인하여 카메라 연결 여부 체크
DEFINES += USE_EQ_FILTER=1 #일단 EQ 필터 사용
DEFINES += FORCE_2CH=1 # 2CH 1FILE 사용
DEFINES += SENSOR_AVI_SUBTITLE=1 # AVI Subtitle 센서 포맷
DEFINES += PRE_LOAD_SENSOR_DATA=0 #센서 데이터 미리 읽기 방지
DEFINES += FILE_FORMAT_MOV=1 #XLDR-66
DEFINES += FILE_FORMAT_AVI=1 #XLDR-88
DEFINES += FILE_EXT='\\"AVI\\"' #파일 확장자
DEFINES += DUAL_CH_FILE=1 #AVI DUAL
DEFINES += DUAL_CH_1CH_EXIST=1 #MOV SINGLE
DEFINES += CFG_SEARCH_DISK=0 #모델명 탐색하지 않는
DEFINES += USE_DEVICE_SETTINGS=1 #설정기능
DEFINES += USE_JP_ADDRESS=1 #일본 주소DB 사용
DEFINES += USE_JP_ADDRESS_TOOL=0 #일본 주소DB 변환툴
DEFINES += USE_PASSWORD_POPUP=1 #암호사용
DEFINES += START_WITH_PASSWORD=1 #시작시 암호 설정
DEFINES += MULTI_MODEL_VIEWER=1 #멀티(설정)모델 뷰어
DEFINES += USE_ADMIN_PW_SETTINGS=1 #관리자 암호 기능
DEFINES += SETTINGS_TIME_TYPE2=1 #단말기 시간설정 시나리오 (동기화->시계기능에서 저장 확인 기능으로 변경)
DEFINES += USE_HTML_MAP=1 #PAGE INJECT 방식으로 동작하지 않음->임시파일 생성
#DEFINES += ZOOM_SHADER=1 #ZOOM SHADER 사용
DEFINES += DO_NOT_MAKE_CFG=1 #저장버튼 클릭하기 전까지 저장하지 않기
DEFINES += SPEED_ALWAYS_EXITS=1 # ODB 등으로 센서값에 속도는 항상 존재
DEFINES += SUPPORT_AVI_SPLIT=1 # AVI 분할 기능 지원
DEFINES += SUPPORT_AVI_FIX_DURL=1 # AVI 복구 기능 지원
DEFINES += SELECT_AUDIO_BACKEND=0 # PortAudio 선택
#QT += multimedia
DEFINES += SYSTEM_INFO_DIALOG=0 # 오디오 장치 정보 확인
}
isEqual(TARGET_MODEL,3) {
TARGET = viewer
DEFINES += RM_MODEL=3
isEqual(SUB_MODEL_ID,1) {
DEFINES += RM_MODEL_VERSION_0=0
DEFINES += RM_MODEL_VERSION_1=0
DEFINES += RM_MODEL_VERSION_2=1
message("CARROT_EMT")
USE_WEBVIEW2 = 1 # qt define
DEFINES += MAP_SINGLE_PATH=1 #단일 파일 경로만 표시
DEFINES += NO_LOGO=1 #로고/브랜드 제거
DEFINES += FILE_FORMAT_MOV=1 #XLDR-66
DEFINES += FILE_FORMAT_AVI=1 #XLDR-88
DEFINES += FILE_EXT='\\"AVI\\"' #파일 확장자
DEFINES += DUAL_CH_FILE=1 #AVI DUAL
DEFINES += FORCE_2CH=1 # 2CH 1FILE 사용
DEFINES += SENSOR_AVI_SUBTITLE=1 # AVI Subtitle 센서 포맷
} else {
DEFINES += RM_MODEL_VERSION_0=0
DEFINES += RM_MODEL_VERSION_1=0
DEFINES += RM_MODEL_VERSION_2=2
DEFINES += USE_GOOGLE_MAP=1 # GOOGLE MAP
DEFINES += MAP_SINGLE_PATH=1 #단일 파일 경로만 표시
DEFINES += NO_LOGO=1 #로고/브랜드 제거
message("ADT_CAPS")
USE_WEBVIEW2 = 1 # qt define
DEFINES += FILE_EXT='\\"MP4\\"' #파일 확장자
DEFINES += FILE_FORMAT_MOV=1 #파일 지원
}
VIEWER_LANGUAGE = MULTI # 다국어 지원 뷰어
DEFINES +=LIVE_LANGUAGE_CHANGE=1 # "
DEFINES += RC_LANGUAGE=0x0412 # 한국어
DEFINES += RC_ENCODING=949 # CP949
DEFINES += MODEL_STANDARD=1 # 기본모델
DEFINES += SHOW_LIST_FR=0 # 전후방 표시
BASE_MODEL= STANDARD # 모델 분할
DEFINES += REAR_SYNC_FRONT=1 # 후방 영상을 전방 재생시간에 따라 처리 (eg. 전:20, 후:18 = 후방을 2초 부터 시작)
DEFINES += DESIGN_LAYOUT_MODE=0 # GUIDE 디자인 레이아웃
DEFINES += CHECK_VIDEO_BITRATE=0 #영상 비트레이트 확인하여 카메라 연결 여부 체크
DEFINES += USE_EQ_FILTER=1 #일단 EQ 필터 사용
DEFINES += RESIZE_FILTER=0 #영상 크기변환 필터(이거 사용하면 후방 영상 이상하게 표시됨?)
DEFINES += PRE_LOAD_SENSOR_DATA=0 #센서 데이터 미리 읽기 방지
DEFINES += USE_DEVICE_SETTINGS=0 #설정기능
DEFINES += PLAY_SYNC_FIX2=1 # 영상 재생 교정
#DEFINES += FFMPEG_VTHREAD_DEBUG=1 # 영상 재생 교정
#DEFINES += PLAY_BREAK_EOF_FRAME=1 # EOF 패킷으로 재생 종료하지 않고 EOF 프레임으로 종료하도록 함.
}
isEqual(TARGET_MODEL,5) {
message("TBD_360")
TARGET = viewer
DEFINES += RM_MODEL=5
DEFINES += RM_MODEL_VERSION_0=0
DEFINES += RM_MODEL_VERSION_1=0
DEFINES += RM_MODEL_VERSION_2=1
VIEWER_LANGUAGE = MULTI # 다국어 지원 뷰어
DEFINES +=LIVE_LANGUAGE_CHANGE=1 # "
DEFINES += RC_LANGUAGE=0x409 # 영어
DEFINES += RC_ENCODING=1200 # JIS X-0208
DEFINES += MODEL_STANDARD=1 # 기본모델
DEFINES += SHOW_LIST_FR=0 # 전후방 표시
BASE_MODEL= STANDARD # 모델 분할
DEFINES += REAR_SYNC_FRONT=1 # 후방 영상을 전방 재생시간에 따라 처리 (eg. :20, :18 = 후방을 2 부터 시작)
DEFINES += DESIGN_LAYOUT_MODE=0 # GUIDE 디자인 레이아웃
DEFINES += CHECK_VIDEO_BITRATE=0 #영상 비트레이트 확인하여 카메라 연결 여부 체크
DEFINES += USE_EQ_FILTER=1 #일단 EQ 필터 사용
DEFINES += SENSOR_AVI_SUBTITLE=1 # AVI Subtitle 센서 포맷
DEFINES += PRE_LOAD_SENSOR_DATA=0 #센서 데이터 미리 읽기 방지
DEFINES += FILE_FORMAT_AVI=1 #
DEFINES += FILE_EXT='\\"AVI\\"' #파일 확장자
DEFINES += CFG_SEARCH_DISK=0 #모델명 탐색하지 않는
DEFINES += TOP_DOWN_360=1 #360 모델
DEFINES += RM_MODEL_360=1 # roadmovie import TOP_DOWN_360 통합 예정
DEFINES += RM_MODEL_360_PAD=1 # "
DEFINES += RM_MODEL_360_SINGLE=1 # "
DEFINES += USE_POINT_ZOOM=1 # "
DEFINES += USE_HYBRID_ZOOM=1 # "
DEFINES += MOUSE_DRAG_ACCELERATION=1# "
DEFINES += REAR_VIEW_ZOOM=1 # "
DEFINES += REMOVE_360_WIDE_SINGLE=1 # "
DEFINES += DO_NOT_USE_ZOOM=1 #ZOOM 없음
DEFINES += FORCE_FM_STRING=1 # FMSTRING 주로 사용
DEFINES += USE_HTML_MAP=1 #PAGE INJECT 방식으로 동작하지 않음->임시파일 생성
DEFINES += TANDF_360_TEST=0 #TNF 모델용
DEFINES += MH_360_TEST=1 #MH 모델용
DEFINES += FILE_FORMAT_MOV=1 #TNF
DEFINES += FILE_EXT='\\"MP4\\"' #TNF 파일 확장자
# DEFINES += THINKWARE_DEMO=1 #20231208 팅크웨어 데모
# DEFINES += SUPPORT_H265=1 #H265 지원
# DEFINES += FORCE_2CH=1 #2CH(3) 영상
# DEFINES += DUAL_CH_FILE=1 #MP4 DUAL
DEFINES += TEST_FILENAME=1 # 파일명이 TEST_20230621-190427. 형식인 파일만 사용
USE_WEBVIEW2 = 1 # qt define
DEFINES += MAP_SINGLE_PATH=1 #단일 파일 경로만 표시
DEFINES += TOPDOWN_360_QUAD_MODE=1 # 4분할 3D 모드 지원
}
# 텔레비트 TB-4000
isEqual(TARGET_MODEL,14) {
QT += printsupport
QT += network
#USE_LIB_MP4V2 = 0 # MP4 파일 처리 기능 추가 -> 사용금지 (mp4 pcm 처리불가)
DEFINES += RM_MODEL=14
DEFINES += RM_MODEL_TB=1
DEFINES += SUPPORT_LIBRARY_MODE=1 # 뷰어 라이브러리 모드 사용(IMPORT/EXPORT)
isEqual(SUB_MODEL_ID,1) {
message("TB5000")
TARGET = tb5000
LIBRARY_MODE=1 # 라이브러리 모드
DEFINES += LIBRARY_DEVP_MODE=0 # 개발 모드 (전체화면 금지 etc)
isEqual(LIBRARY_MODE,1) {
DEFINES += IS_MH9000=1 # 모델관리 DEFINE
DEFINES += PLAYER_ONLY_LIBRARY_MODE=1 # 뷰어 단독 모드로 빌드
DEFINES += DO_NOT_USE_MAP=1
LIBS *= -lShell32
DEF_FILE = ../tb5000_lib/tb5000.def
}
DEFINES += RM_MODEL_TB5000=1
DEFINES += RM_MODEL_VERSION_0=0
DEFINES += RM_MODEL_VERSION_1=0
DEFINES += RM_MODEL_VERSION_2=7
DEFINES += SINGLE_CH_VIEWER=1 # 1CH
DEFINES += TOP_DOWN_360=1 #360 모델
DEFINES += RM_MODEL_360=1 # roadmovie import TOP_DOWN_360 통합 예정
DEFINES += RM_MODEL_360_PAD=1 # "
DEFINES += RM_MODEL_360_SINGLE=1 # "
DEFINES += USE_POINT_ZOOM=1 # "
DEFINES += USE_HYBRID_ZOOM=1 # "
DEFINES += MOUSE_DRAG_ACCELERATION=1# "
#DEFINES += REAR_VIEW_ZOOM=1 # "
DEFINES += TOP_DOWN_2D_360=0 # 3D 투영이 아닌 2D 투영 사용(화질)
DEFINES += REMOVE_360_WIDE_SINGLE=1 # 2D 투영에 사용
DEFINES += TOPDOWN_360_MULTI_MODE=1 # 4,5분할 2D 모드 지원
#DEFINES += TOPDOWN_360_QUAD_MODE=1 # 4분할 3D 모드 지원 -> 사용안함 제거
DEFINES += USE_360_POSITION_VIEW=1 #360 각도 표시
DEFINES += TB5000_INSPECTION_VERSION=0 # 인증용
DEFINES += MULTI_5CH_LR=1 # 5채널 좌우 표시
DEFINES += FISH_EYE_CLIP=1 # 85% 영역 CLIPIING
DEFINES += CLICK_PAUSE_PLAY=1 # 영상 클릭시 PLAY/PAUSE
} else {
message("TB4000")
TARGET = viewer
DEFINES += RM_MODEL_TB4000=1
DEFINES += RM_MODEL_VERSION_0=1
DEFINES += RM_MODEL_VERSION_1=1
DEFINES += RM_MODEL_VERSION_2=4
DEFINES += USE_LIBRARY_MODE=1
DEFINES += KEEP_ROI_ON_CAPTURE=1 # 보고서 캡쳐시 화면 ROI 적용
DEFINES += FORCE_2CH=1 # 2CH MP4
DEFINES += DUAL_CH_FILE=1 #MP4 DUAL
DEFINES += SPLIT_MULTI_TRACK_VIDEO=1 # 멀티 트랙 영상을 싱글 트랙 영상들로 저장
DEFINES += TOPDOWN_CH_LAYOUT=1 # 상하단 레이아웃
DEFINES +=USE_VERSION_CHECK=1 # 버전확인 기능
DEFINES +=USER_LOGER=1 # 사용자 로그 기능
DEFINES +=CLICK_PAUSE_PLAY=1 # 영상 클릭시 PLAY/PAUSE
LIBS += -L../tb5000_lib/ -ltb5000 # 동적으로 로드???
}
DEFINES += USE_KAKAO_MAP=1 # KAKAO MAP
#DEFINES += USE_WEBVIEW2=1 # 실제로는 사용하지 않음
DEFINES += MAP_SINGLE_PATH=1 # "
DEFINES += FILE_FORMAT_MOV=1 #파일 지원
VIEWER_LANGUAGE = MULTI # 다국어 지원 뷰어
DEFINES +=LIVE_LANGUAGE_CHANGE=1 # "
DEFINES += RC_LANGUAGE=0x0412 # 한국어
DEFINES += RC_ENCODING=949 # CP949
DEFINES += MODEL_STANDARD=1 # 기본모델
DEFINES += SHOW_LIST_FR=0 # 전후방 표시
BASE_MODEL= STANDARD # 모델 분할
DEFINES += REAR_SYNC_FRONT=1 # 후방 영상을 전방 재생시간에 따라 처리 (eg. :20, :18 = 후방을 2 부터 시작)
DEFINES += DESIGN_LAYOUT_MODE=0 # GUIDE 디자인 레이아웃
DEFINES += CHECK_VIDEO_BITRATE=0 #영상 비트레이트 확인하여 카메라 연결 여부 체크
DEFINES += USE_EQ_FILTER=1 #일단 EQ 필터 사용
DEFINES += RESIZE_FILTER=0 #영상 크기변환 필터
DEFINES += PRE_LOAD_SENSOR_DATA=0 #센서 데이터 미리 읽기 방지
DEFINES += USE_DEVICE_SETTINGS=0 #설정기능
DEFINES += MODEL_KOREAN_ONLY=1 # 한국어만..
USE_WEBVIEW2 = 1 # qt define
DEFINES += RESIZABLE_WINDOWS=1 # 윈도우 크기 변경
DEFINES += FORCE_FM_STRING=1 # FMSTRING 주로 사용
DEFINES += FIXED_MAP_FRAME=1 # 지도 항상 표시
DEFINES += USE_PASSWORD_POPUP=1 # PW
DEFINES += USE_FFMPEG_PW=1 # MOV.c 수정하여 패스워드 적용
DEFINES += SKIP_VIDEO_PREINFO=1 # 재생시간등 로딩하지 않음
DEFINES += USE_DATE_FILTER=0 # 날짜필터 사용여부 -> 2023/11/21 제거
DEFINES += USE_1HOUR_FILTER=1 # 1시간 필터 사용여부 -> 2023/11/21 추가
#DEFINES += LIVE_LANGUAGE2=1 # BUTTON COLOR???
DEFINES += NO_CAMERA_LOGO=1 # 카메라 FRONT,REAR 제거
DEFINES += USE_MAXIMIZE=1 #우측 표시하는 최대 모드지원
DEFINES += DO_NOT_USE_ZOOM=1 #ZOOM 없음
#DEFINES += USE_POINT_ZOOM=1 #3D ONLY
DEFINES += USE_DRAG_ZOOM=1 #DRAG 영역확대
DEFINES += SINGLE_SAVE_FILE=1 #1개씩 보존
DEFINES += KEEP_VIDEO_DURATION=1 # 영상 최대한 재생
DEFINES += PLAY_SYNC_FIX2=1 # 영상 재생 교정
#DEFINES += FFMPEG_VTHREAD_DEBUG=1 # 영상 재생 교정
DEFINES += PLAY_BREAK_EOF_FRAME=1 # EOF 패킷으로 재생 종료하지 않고 EOF 프레임으로 종료하도록 .
DEFINES += DO_NOT_USE_LIST_CHECK=1 # 체크박스 제거
!isEqual(LIBRARY_MODE,1) {
DEFINES += OPEN_WITH_FILE_EXT=1 #파일확장자 더블클릭 에서 시작
DEFINES += DETECT_USB_CHANGE=1 # USB 변경 감지하여 로딩...
DEFINES += START_WITH_USB_SD=1 # USB 존재하면 로딩
DEFINES += FILE_LOAD_MESSAGE=1 # 시작시 이미 프로그램이 실행중일 경우 신규파일로 교체
DEFINES += DRAG_ZOOM_BY_RATIO=1 # 확대시 영상 영역의 비율을 지정
}
# DEFINES += REPORT_CRASH_LOG=1 # 에러 로그
# CONFIG *= force_debug_info
# QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO -= -O2
DEFINES +=FM_VIDEO_EDIT=1 # 편집(통합/분리) 기능 추가
DEFINES +=SUPPORT_LOADING_CANCEL=1 # 파일 리스트 로딩 취소(중단) 기능
DEFINES +=SUPPORT_MP4TB4=0 # 확장자가 mp4 tb4 지원
DEFINES += FILE_EXT='\\"TB4\\"' #파일 확장자
}
isEqual(TARGET_MODEL,15) {
TARGET = viewer
DEFINES += RM_MODEL=15
message("AN6000")
DEFINES += RM_MODEL_VERSION_0=1
DEFINES += RM_MODEL_VERSION_1=0
DEFINES += RM_MODEL_VERSION_2=2
DEFINES +=LIVE_LANGUAGE_CHANGE=1 # "
DEFINES += RC_LANGUAGE=0x0411 # 일본어
DEFINES += RC_ENCODING=932 # JIS X-0208
DEFINES += MODEL_STANDARD=1 # 기본모델
DEFINES += SHOW_LIST_FR=0 # 전후방 표시
BASE_MODEL= STANDARD # 모델 분할
DEFINES += REAR_SYNC_FRONT=1 # 후방 영상을 전방 재생시간에 따라 처리 (eg. :20, :18 = 후방을 2 부터 시작)
DEFINES += DESIGN_LAYOUT_MODE=0 # GUIDE 디자인 레이아웃
DEFINES += CHECK_VIDEO_BITRATE=0 #영상 비트레이트 확인하여 카메라 연결 여부 체크
DEFINES += SINGLE_CH_VIEWER=1 # 1CH
DEFINES += FORCE_SINGLE_PLAYER=1 # 1CH
DEFINES += PRE_LOAD_SENSOR_DATA=0 #센서 데이터 미리 읽기 방지
DEFINES += FILE_FORMAT_MOV=1 #
DEFINES += FILE_EXT='\\"MP4\\"' #파일 확장자
DEFINES += DO_NOT_USE_ZOOM=1
DEFINES += DO_NOT_USE_MAP=1 # 지도사용하지 않음
DEFINES += DO_NOT_USE_EQ=1 # EQ 사용하지 않음
DEFINES += DO_NOT_USE_GRAPH=1 # GRAPH 사용하지 않음
DEFINES += DO_NOT_USE_LIST_CHECK=0 # 리스트에서 체크박스 사용하지 않음 -> 백업용으로 사용
DEFINES += USE_DATE_TIME_LIST=1 # 파일리스트외 날짜,시간 그래프 사용
DEFINES += USE_DEVICE_SETTINGS=1 # 설정기능
DEFINES += USE_JSON_SETTINGS=1 # JSON 구조 설정
DEFINES += SPEED_IN_PLAY_CONTROL=1 # EQ 제거하고 속도조절은 스피드에서 처리
DEFINES += ENCODE_CFG_BASE64=1 # CFG 암호화??
DEFINES += HIDE_BUILD_NO=1 #빌드넘버 감추기
DEFINES += AN6000_YEC=1 # SSID YEC-0000, PW가 YEC12345678 모델 1.0.2
}
isEqual(TARGET_MODEL,16) {
message("MH9000")
TARGET = viewer
DEFINES += PENTA_CHANNEL=1 # 5CH 뷰어
DEFINES += RM_MODEL_VERSION_0=1
DEFINES += RM_MODEL_VERSION_1=0
DEFINES += RM_MODEL_VERSION_2=0
DEFINES += RM_MODEL=16
DEFINES += INITIAL_LANGUAGE_AUTO=1 #자동언어 시작
VIEWER_LANGUAGE = MULTI # 다국어 지원 뷰어
DEFINES += NO_LOGO=1 # 로고 없음
DEFINES += LIVE_LANGUAGE_CHANGE=1 # "
DEFINES += LIVE_LANGUAGE2=1 # 라이브 언어 변경
DEFINES += REMOVE_OLD_C=1 #기존 소스 자료 정리
DEFINES += RC_LANGUAGE=0x0412 # 한국어
DEFINES += RC_ENCODING=949 # CP949
DEFINES += MODEL_STANDARD=1 # 기본모델
DEFINES += SHOW_LIST_FR=0 # 전후방 표시
BASE_MODEL= STANDARD # 모델 분할
#DEFINES += USE_GOOGLE_MAP=1 # GOOGLE MAP -> OSM
#DEFINES += FIXED_MAP_FRAME=1 # 지도 항상 표시 -> 텔레비트만 사용
DEFINES += TOGGLE_PLAYER=1 # ???
DEFINES += REAR_SYNC_FRONT=0 # 후방 영상을 전방 재생시간에 따라 처리 (eg. :20, :18 = 후방을 2 부터 시작)
DEFINES += DESIGN_LAYOUT_MODE=0 # GUIDE 디자인 레이아웃
DEFINES += CHECK_VIDEO_BITRATE=0 #영상 비트레이트 확인하여 카메라 연결 여부 체크
DEFINES += USE_EQ_FILTER=1 #일단 EQ 필터 사용
DEFINES += PRE_LOAD_SENSOR_DATA=0 #센서 데이터 미리 읽기 방지
DEFINES += FILE_EXT='\\"MP4\\"' #파일 확장자
DEFINES += FILE_FORMAT_MOV=1
DEFINES += SEEK_STEP_SIZE=10 #10초씩 이동
DEFINES += USE_DEVICE_SETTINGS=0 #설정기능 없음
DEFINES += REMOVE_SEEK_BUTTON=1 #10 이동 제거
DEFINES += USE_FRAME_GPS=1 #경위도 표시
DEFINES += CHECK_REAR_DURATION=1 #후방시간도 확인
DEFINES += REMOVE_REAR_BY_DURATION=1#후방만 제거?
DEFINES += LIMIT_SEEK_END=1 #후방SEEK 안됨 265
#DEFINES += SUPPORT_H265=1 #H265 지원
DEFINES += HIDE_BUILD_NO=1 #빌드넘버 감추기
DEFINES += MAP_SINGLE_PATH=1 #단일 파일 경로만 표시
DEFINES += SENSOR_MATCH_DURATION=1 #GPS/SENSOR 시간과 재생시간 동기화
DEFINES += CHECK_GPS_LOCATION=1 #좌표검증
DEFINES += USE_FRONT_DURATION=1 #전방길이 사용
#DEFINES += DEBUG_SENSOR_LOG=1 #로그확인
DEFINES += NO_LOGO=0 #로고/브랜드 제거
DEFINES += USE_TEXT_TITLE=0 #텍스트 타이틀 로고 사용
DEFINES += PLAY_FIRST_LOADED=1 #로딩된 최초 파일 재생
DEFINES += USE_MAXIMIZE=1 #우측 표시하는 최대 모드지원
DEFINES += USE_HTML_MAP=1 #PAGE INJECT 방식으로 동작하지 않음->임시파일 생성
DEFINES += USE_FILE_NAME_TITLE=1 #파일명 표시
DEFINES += FORCE_FM_STRING=1 # FMSTRING 주로 사용
DEFINES += TOGGLE_PLAYER=1 #1CH 재생
DEFINES += NO_CAMERA_LOGO=1 # 카메라 FRONT,REAR 제거
DEFINES += NO_CAMERA_TITLE=1 # 전방후방 타이틀 X
DEFINES += DUAL_VIDEO_WIDGET=1 # 1 영상 프레임 듀얼 비디오
DEFINES += SINGLE_SAVE_FILE=1 # 1개씩 보존
DEFINES += SINGLE_SAVE_CHECK_FILE=1 # 1개씩 보존???
DEFINES += USE_INDOOR_CAMERA_NAME=1 # 카메라명칭을 INDOOR 변경
USE_WEBVIEW2 = 1 # qt define
}
isEqual(TARGET_MODEL,17) {
message("NEXIAN")
QT += network
TARGET = viewer
DEFINES += RM_MODEL_EMT_KR=1 # NEXIAN
DEFINES += MULTI_CHANNEL=1 # 멀티채널 뷰어
DEFINES += RM_MODEL_VERSION_0=1
DEFINES += RM_MODEL_VERSION_1=0
DEFINES += RM_MODEL_VERSION_2=1
DEFINES += RM_MODEL=17
DEFINES += REMOVE_OLD_C=1 #기존 소스 자료 정리
DEFINES += RC_LANGUAGE=0x0412 # 한국어
DEFINES += RC_ENCODING=949 # CP949
DEFINES += LIVE_LANGUAGE2=1
DEFINES += LIVE_LANGUAGE_CHANGE=1 # "
DEFINES += FM_STR_TYPE2=1 # TYPE2 문자열 사용
DEFINES += INITIAL_LANGUAGE_AUTO=1 # 초기 언어 자동
DEFINES += SUPPORT_MULTI_LANGUAGE=1 # 다국어 지원
DEFINES += MODEL_STANDARD=1 # 기본모델
DEFINES += SHOW_LIST_FR=0 # 전후방 표시
BASE_MODEL= STANDARD # 모델 분할
DEFINES += USE_ROUTO_MAP=1 # GOOGLE MAP -> OSM
DEFINES += REAR_SYNC_FRONT=0 # 후방 영상을 전방 재생시간에 따라 처리 (eg. :20, :18 = 후방을 2 부터 시작)
DEFINES += DESIGN_LAYOUT_MODE=0 # GUIDE 디자인 레이아웃
DEFINES += CHECK_VIDEO_BITRATE=0 # 영상 비트레이트 확인하여 카메라 연결 여부 체크
DEFINES += USE_EQ_FILTER=1 # EQ 필터 사용
DEFINES += PRE_LOAD_SENSOR_DATA=0 # 센서 데이터 미리 읽기 방지
DEFINES += FILE_EXT='\\"MP4\\"' # 파일 확장자
DEFINES += FILE_FORMAT_MOV=1
DEFINES += SEEK_STEP_SIZE=10 #10초씩 이동
DEFINES += SEEK_SIMPLE_STEP=1 # N 단위로 이동하지 말고 +N초 이동
DEFINES += USE_DEVICE_SETTINGS=1 #설정기능
#DEFINES += USE_DEVICE_SETTINGS_JSON=1 #JSON 방식 설정
#DEFINES += REMOVE_SEEK_BUTTON=1 #10 이동 제거
DEFINES += CHECK_REAR_DURATION=1 #후방시간도 확인
DEFINES += LIMIT_SEEK_END=1 #후방SEEK 안됨 265
DEFINES += HIDE_BUILD_NO=1 #빌드넘버 감추기
DEFINES += MAP_SINGLE_PATH=1 #단일 파일 경로만 표시
DEFINES += SENSOR_MATCH_DURATION=1 #GPS/SENSOR 시간과 재생시간 동기화
DEFINES += CHECK_GPS_LOCATION=1 #좌표검증
DEFINES += USE_FRONT_DURATION=1 #전방길이 사용
DEFINES += FORCE_2CH=1 #3채널 이지만..
#DEFINES += NO_LOGO=0 #로고/브랜드 제거
#DEFINES += USE_MAXIMIZE=1 #우측 표시하는 최대 모드지원
DEFINES += USE_HTML_MAP=1 #PAGE INJECT 방식으로 동작하지 않음->임시파일 생성
DEFINES += FORCE_FM_STRING=1 #FMSTRING 주로 사용
# DEFINES += SINGLE_SAVE_FILE=1 # 1개씩 보존
# DEFINES += SINGLE_SAVE_CHECK_FILE=1 # 1개씩 보존???
DEFINES += RECORD_TYPE_COMBO_UI=1 # COMBO BOX 사용
DEFINES += SPLIT_MULTI_TRACK_VIDEO=1 # MP4 분할 기능
DEFINES += FM_VIDEO_EDIT=1 # 편집(통합/분리) 기능 추가
USE_WEBVIEW2 = 1 # qt define
DEFINES += DUAL_CH_FILE=1 #MP4 DUAL
DEFINES += DETECT_USB_CHANGE=1 # USB 변경 감지하여 로딩...
DEFINES += START_WITH_USB_SD=1 # USB 존재하면 로딩
DEFINES += TRI_CHANNEL2=1 # 3채널 모드 TYPE2
DEFINES += SETTINGS_WINDOW_SCROLL=1 # 설정 윈도우 스크롤
#DEFINES += USE_JSON_SETTINGS=1 # 모델별 JSON 사용
DEFINES += USE_VERSION_CHECK=1 # 버전확인 기능
#DEFINES += LARGE_WINDOW_MODE=1 # 테스트용 사용금지
DEFINES += USE_OPEN_GL_MIPMAP=1 # Anti-Aliasing 보간 사용
DEFINES += DO_NOT_USE_STEP_PAUSE=1 # STEP 이동시 PAUSE 금지
DEFINES += USE_TRIGGER=1 # 트리거 사용
DEFINES += SUPPORT_WIDE_MODE=1 # WIDE 모드 지원
DEFINES += USE_SHADER_FLIP=1 # V,H FLIP SHADER 사용
# DEFINES += REPORT_CRASH_LOG=1 # 에러 로그
# CONFIG += force_debug_info
# QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO -= -O2
}
# SETUP ONLY 빌드
isEqual(TARGET_SETUP,1) {
TARGET = "setup"
DEFINES += SETUP_ONLY_BUILD=1
}
isEqual(LIBRARY_MODE,1) {
TEMPLATE = lib
message("LIBRARY_BUILD")
} else {
TEMPLATE = app
}
DEFINES += TARGET_NAME=\\\"$$TARGET\\\"
# The following define makes your compiler emit warnings if you use
# any feature of Qt which as been marked as deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS
# You can also make your code fail to compile if you use deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
#UINT64_C: C99 math features, need -D__STDC_CONSTANT_MACROS in CXXFLAGS
DEFINES += __STDC_CONSTANT_MACROS
DEFINES += QTAV_HAVE_AVFILTER
!isEqual(TARGET_MODEL,14) {
DEFINES += QT_NO_PRINTER
}
#DEFINES += QTAV_HAVE_AVDEVICE
# H/W 디코딩 사용여부 (사용하면 에러 발생하고 속도를 높이면 화면이 끊김)
#USE_HW_DECODER = 0
# 사용 금지
#isEqual(USE_HW_DECODER,1) {
#message("WARNING.... USE H/W DECODER")
#DEFINES += QTAV_HAVE_DXVA
#DEFINES += RM_USE_HW_DECODER
#}
*msvc*
{
#link FFmpeg and portaudio which are built by gcc need /SAFESEH:NO
win32-msvc2010|win32-msvc2008|win32-msvc2012
{
QMAKE_LFLAGS *= /DEBUG #workaround for CoInitializeEx() and other symbols not found at runtime
QMAKE_LFLAGS += /LARGEADDRESSAWARE
INCLUDEPATH *= compat/msvc # vs2012 only has stdint.h
}
debug: QMAKE_LFLAGS += /SAFESEH:NO
#CXXFLAGS debug: /MTd
#!static:QMAKE_LFLAGS *= /NODEFAULTLIB:libcmt.lib /NODEFAULTLIB:libcmtd.lib #for msbuild vs2013
}
# SETUP BUILD 는 psapi 만 필요
equals(TARGET_SETUP,1) {
win32 {
LIBS *= -lPsapi
}
} else {
win32 {
INCLUDEPATH += fav/compat
INCLUDEPATH += fav/dxsdk
equals(TARGET_MODEL,14) { # TELEBIT
message("ffmpeg telebit encoded...")
INCLUDEPATH += ../ffmpeg_dll_compact_348_telebit_enc/include
LIBS *= -L../ffmpeg_dll_compact_348_telebit_enc/lib -lavcodec -lavformat -lswscale -lavutil -lswresample -lavresample -lavfilter -lPsapi -lUrlmon -llibcrypt_tb
} else:equals(TARGET_MODEL,15) {
message("ffmpeg mtekvision encoded...")
#INCLUDEPATH += ../ffmpeg_dll_compact_348_an6000_enc/include
##LIBS *= -L../ffmpeg_dll_compact_348_an6000_enc/lib -lavcodec -lavformat -lswscale -lavutil -lswresample -lavresample -lavfilter -lPsapi -lUrlmon
INCLUDEPATH += ../ffmpeg_dll_compact_348/include
LIBS *= -L../ffmpeg_dll_compact_348/lib -lavcodec -lavformat -lswscale -lavutil -lswresample -lavresample -lavfilter -lPsapi -lUrlmon
} else {
INCLUDEPATH += ../ffmpeg_dll_compact_348/include
# static 테스트
#QMAKE_LFLAGS *= /NODEFAULTLIB:libcmt.lib
#LIBS += -L../ffmpeg_dll_compact_342/static -lavutil -lavcodec -lavformat -lswscale -lswresample -lavresample -lavfilter
# dll 설정 -lportaudio
LIBS *= -L../ffmpeg_dll_compact_348/lib -lavcodec -lavformat -lswscale -lavutil -lswresample -lavresample -lavfilter -lPsapi -lUrlmon
}
LIBS += -L../portaudio_197/lib -lportaudio
INCLUDEPATH += ../portaudio_197
}
# MP4 PCM 사용불가
#isEqual(USE_LIB_MP4V2,1) {
# message("USE_LIB_MP4V2")
# DEFINES += USE_LIB_MP4V2=1
# INCLUDEPATH += ../mp4v2/include
# LIBS *= -L../mp4v2/lib -llibmp4v2
#}
isEqual(USE_WEBVIEW2,1) {
DEFINES += USE_WEBVIEW2=1 #IE 를 WEBVIEW 로 교체
LIBS *= -L../webview2/webview2 -llibwebview2
}
win32: {
DEFINES *= QTAV_HAVE_XAUDIO2=1
DEFINES *= QTAV_HAVE_PORTAUDIO=1
#DEFINES *= QTAV_HAVE_AVDEVICE=1 # 로딩 더오래 걸림
#DEFINES *= QTAV_HAVE_DSOUND=1 # 절대 사용금지 노이즈 제어가 안됨
winrt {
LIBS += -lxaudio2 #only for xbox or >=win8
} else {
LIBS += -lole32 #CoInitializeEx for vs2008, but can not find the symbol at runtime
}
}
} #equals(TARGET_SETUP,1)
QMAKE_LFLAGS += /ignore:4099
CONFIG += thread
isEqual(USE_TESTER_CONSOLE,1) {
message("WARNING USE DEBUG CONSOLE")
DEFINES += RM_USE_TESTER_CONSOLE=1
CONFIG += console
# 사용하면 SHBrowser... 링크되지 않음
LIBS *= -lShell32
}
#TEMPLATE = app
# The following define makes your compiler emit warnings if you use
# any feature of Qt which as been marked as deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS
#FORMS +=
isEqual(LIBRARY_MODE,1) {
RESOURCES += fav/shaders/shaders_lib.qrc
} else {
RESOURCES += fav/shaders/shaders.qrc
}
isEqual(TARGET_MODEL,1){
RESOURCES += res/fmproject/fmproject.qrc
RC_FILE = res/fmproject/resources.rc
DEFINES += MODEL_STANDARD=1
}
isEqual(TARGET_MODEL,2){
RESOURCES += res/watex/watex.qrc
RC_FILE = res/watex/resources.rc
DEFINES += MODEL_STANDARD=1
}
isEqual(TARGET_MODEL,3){
RESOURCES += res/adt_caps/adt_caps.qrc
RC_FILE = res/adt_caps/resources.rc
DEFINES += MODEL_STANDARD=1
}
isEqual(TARGET_MODEL,4){
# KEIYO_KR
isEqual(SUB_MODEL_ID,1) {
RESOURCES += res/keiyo_kr/keiyo.qrc
RC_FILE = res/keiyo_kr/resources.rc
}
else {
RESOURCES += res/keiyo/keiyo.qrc
RC_FILE = res/keiyo/resources.rc
}
DEFINES += MODEL_STANDARD=1
}
isEqual(TARGET_MODEL,6){
RESOURCES += res/keiyo/keiyo.qrc
RC_FILE = res/keiyo/resources.rc
DEFINES += MODEL_STANDARD=1
}
isEqual(TARGET_MODEL,7){
RESOURCES += res/keiyo/keiyo.qrc
RC_FILE = res/keiyo/resources_nx.rc
DEFINES += MODEL_STANDARD=1
}
isEqual(TARGET_MODEL,8){
RESOURCES += res/bv2000/bv2000.qrc
RC_FILE = res/bv2000/resources.rc
DEFINES += MODEL_STANDARD=1
}
isEqual(TARGET_MODEL,5){
RESOURCES += res/tbd360/tbd360.qrc
RC_FILE = res/tbd360/resources.rc
DEFINES += MODEL_STANDARD=1
}
isEqual(TARGET_MODEL,14){
isEqual(LIBRARY_MODE,1){
} else {
RESOURCES += res/telebit/telebit.qrc
}
RC_FILE = res/telebit/resources.rc
DEFINES += MODEL_STANDARD=1
}
isEqual(TARGET_MODEL,15){
RESOURCES += res/mtek/mtek.qrc
RC_FILE = res/mtek/resources.rc
DEFINES += MODEL_STANDARD=1
}
isEqual(TARGET_MODEL,16){
RESOURCES += res/mh9000/mh9000.qrc
RC_FILE = res/mh9000/resources.rc
DEFINES += MODEL_STANDARD=1
}
isEqual(TARGET_MODEL,17){
RESOURCES += res/emt_kr/emt_kr.qrc
RC_FILE = res/emt_kr/resources.rc
DEFINES += MODEL_STANDARD=1
}
#SETUP BUILD
equals(TARGET_SETUP,1) {
HEADERS += \
ui/rm_button.h \
ui/rm_layout.h \
ui/rm_popup.h \
ui/rm_popup_content_background.h \
ui/rm_widget_base.h \
ui/rm_widget_drag.h \
ui/rm_widget_style_base.h \
ui/rm_window_base.h \
ui/title_widget.h \
rm_app.h \
rm_constants.h \
rm_include.h \
rm_settings.h \
ui/rm_popup_select_disk.h \
ui/rm_popup_message.h \
ui/rm_widget_checkbox.h \
cfg/rm_radio_buttons.h \
cfg/rm_group_combo_box.h \
cfg/rm_group_radio_buttons.h \
cfg/rm_combo_box.h \
cfg/rm_value_selector.h \
rm_application.h \
core/rm_usb.h \
cfg/window_settings.h \
cfg/rm_settings_window_base.h \
cfg/rm_settings_cfg.h \
cfg/rm_setting_time.h \
core/rm_language.h \
ui/rm_dialog_bbviewer.h \
core/rm_utility.h
SOURCES += \
ui/rm_button.cpp \
ui/rm_layout.cpp \
ui/rm_popup.cpp \
ui/rm_popup_content_background.cpp \
ui/rm_widget_base.cpp \
ui/rm_widget_drag.cpp \
ui/rm_widget_style_base.cpp \
ui/rm_window_base.cpp \
ui/title_widget.cpp \
rm_app.cpp \
rm_settings.cpp \
ui/rm_popup_select_disk.cpp \
ui/rm_popup_message.cpp \
ui/rm_widget_checkbox.cpp \
cfg/rm_radio_buttons.cpp \
cfg/rm_group_combo_box.cpp \
cfg/rm_group_radio_buttons.cpp \
cfg/rm_combo_box.cpp \
cfg/rm_value_selector.cpp \
rm_application.cpp \
core/rm_usb.cpp \
cfg/rm_settings_window_base.cpp \
cfg/rm_setting_time.cpp \
core/rm_language.cpp \
ui/rm_dialog_bbviewer.cpp \
core/rm_utility.cpp \
main.cpp
} else {
HEADERS += \
core/rm_player.h \
data/fileio.h \
data/rm_format_avi.h \
data/rm_sensordata.h \
data/rm_video_item_2ch.h \
data/rm_video_list.h \
data/rm_video_list_loader.h \
fav/compat/dxcompat.h \
fav/compat/inttypes.h \
fav/compat/stdint.h \
fav/dxsdk/audiodefs.h \
fav/dxsdk/comdecl.h \
fav/dxsdk/d3d11.h \
fav/dxsdk/XAudio2.h \
fav/dxsdk/xma2defs.h \
fav/opengl/gl_api.h \
fav/opengl/OpenGLHelper.h \
fav/opengl/ShaderManager.h \
fav/opengl/SubImagesGeometry.h \
fav/opengl/SubImagesRenderer.h \
fav/widget/global.h \
fav/widget/OpenGLWidgetRenderer.h \
fav/widget/QtAVWidgets.h \
fav/widget/version.h \
fav/widget/WidgetRenderer.h \
fav/_fav_constants.h \
fav/AudioDecoder.h \
fav/AudioFormat.h \
fav/AudioFrame.h \
fav/AudioOutput.h \
fav/AudioOutputBackend.h \
fav/AudioResampler.h \
fav/AudioResampler_p.h \
fav/AudioThread.h \
fav/AVClock.h \
fav/AVCompat.h \
fav/AVDecoder.h \
fav/AVDecoder_p.h \
fav/AVDemuxer.h \
fav/AVDemuxThread.h \
fav/AVError.h \
fav/AVOutput.h \
fav/AVOutput_p.h \
fav/AVPlayer.h \
fav/AVPlayerPrivate.h \
fav/AVThread.h \
fav/AVThread_p.h \
fav/BlockingQueue.h \
fav/ColorTransform.h \
fav/ConvolutionShader.h \
fav/DirectXHelper.h \
fav/dptr.h \
fav/factory.h \
fav/FactoryDefine.h \
fav/fav.h \
fav/Filter.h \
fav/Filter_p.h \
fav/FilterContext.h \
fav/FilterManager.h \
fav/Frame.h \
fav/Frame_p.h \
fav/FrameReader.h \
fav/Geometry.h \
fav/GeometryRenderer.h \
fav/GLSLFilter.h \
fav/GPUMemCopy.h \
fav/ImageConverter.h \
fav/ImageConverter_p.h \
fav/internal.h \
fav/LibAVFilter.h \
fav/Logger.h \
fav/MediaIO.h \
fav/MediaIO_p.h \
fav/mkid.h \
fav/OpenGLRendererBase.h \
fav/OpenGLRendererBase_p.h \
fav/OpenGLTypes.h \
fav/OpenGLVideo.h \
fav/OpenGLWindowRenderer.h \
fav/OutputSet.h \
fav/Packet.h \
fav/PacketBuffer.h \
fav/prepost.h \
fav/QPainterRenderer.h \
fav/QPainterRenderer_p.h \
fav/ring.h \
fav/SharedPtr.h \
fav/singleton.h \
fav/Statistics.h \
fav/SubImage.h \
fav/Subtitle.h \
fav/SubtitleFilter.h \
fav/SubtitleProcessor.h \
fav/SurfaceInterop.h \
fav/version.h \
fav/VideoCapture.h \
fav/VideoDecoder.h \
fav/VideoDecoderFFmpegBase.h \
fav/VideoFormat.h \
fav/VideoFrame.h \
fav/VideoFrameExtractor.h \
fav/VideoOutput.h \
fav/VideoRenderer.h \
fav/VideoRenderer_p.h \
fav/VideoShader.h \
fav/VideoShader_p.h \
fav/VideoShaderObject.h \
fav/VideoThread.h \
fav/xaudio2_compat.h \
ui/rm_button.h \
ui/rm_dialog_map.h \
ui/rm_dialog_progress.h \
ui/rm_frame_bottom.h \
ui/rm_frame_graph.h \
ui/rm_frame_left.h \
ui/rm_frame_list.h \
ui/rm_frame_play.h \
ui/rm_frame_right.h \
ui/rm_frame_video_base.h \
ui/rm_frame_video_main.h \
ui/rm_frame_video_sub.h \
ui/rm_graph_widget.h \
ui/rm_layout.h \
ui/rm_play_slider.h \
ui/rm_popup.h \
ui/rm_popup_content_background.h \
ui/rm_popup_info.h \
ui/rm_slider.h \
ui/rm_speed_label.h \
ui/rm_widget_base.h \
ui/rm_widget_checkbox.h \
ui/rm_widget_drag.h \
ui/rm_widget_map.h \
ui/rm_widget_style_base.h \
ui/rm_widget_video_list.h \
ui/rm_widget_video_list_delegate.h \
ui/rm_window_base.h \
ui/title_widget.h \
ui/window_main.h \
rm_app.h \
rm_constants.h \
rm_include.h \
rm_settings.h \
data/rm_video_item_loader.h \
core/rm_player_base.h \
ui/rm_popup_select_disk.h \
ui/rm_popup_message.h \
cfg/rm_radio_buttons.h \
cfg/rm_group_combo_box.h \
cfg/rm_group_radio_buttons.h \
cfg/rm_combo_box.h \
cfg/rm_value_selector.h \
core/rm_play_process.h \
ui/rm_popup_capture.h \
core/rm_excel_report.h \
core/rm_player_zoom.h \
ui/rm_widget_zoom_pos.h \
rm_application.h \
data/rm_overwrite.h \
ui/rm_dialog_overwrite.h \
tester/rm_tester.h \
core/rm_usb.h \
cfg/window_settings.h \
cfg/rm_settings_window_base.h \
cfg/rm_settings_cfg.h \
ui/rm_dialog_overwrite_sys.h \
cfg/rm_setting_time.h \
core/rm_language.h \
ui/rm_dialog_bbviewer.h \
core/rm_key_event.h \
ui/rm_map_thread.h \
core/rm_utility.h \
tester/rm_testing.h \
tester/rm_test_dialog.h \
tester/rm_test_process.h \
tester/rm_test_controls.h \
data/rm_format_mov.h \
data/rm_format.h \
tester/rm_tune360_dialog.h \
ui/rm_frame_top.h \
ui/rm_filename_title.h \
ui/rm_bottom_border.h
SOURCES += \
core/rm_player.cpp \
data/rm_format_avi.cpp \
data/rm_sensordata.cpp \
data/rm_video_item_2ch.cpp \
data/rm_video_list.cpp \
data/rm_video_list_loader.cpp \
fav/opengl/ConvolutionShader.cpp \
fav/opengl/Geometry.cpp \
fav/opengl/GeometryRenderer.cpp \
fav/opengl/gl_api.cpp \
fav/opengl/OpenGLHelper.cpp \
fav/opengl/OpenGLTypes.cpp \
fav/opengl/OpenGLVideo.cpp \
fav/opengl/ShaderManager.cpp \
fav/opengl/SubImagesGeometry.cpp \
fav/opengl/SubImagesRenderer.cpp \
fav/opengl/VideoShader.cpp \
fav/opengl/VideoShaderObject.cpp \
fav/widget/global.cpp \
fav/widget/OpenGLWidgetRenderer.cpp \
fav/widget/WidgetRenderer.cpp \
fav/_fav_constants.cpp \
fav/AudioDecoder.cpp \
fav/AudioDecoderFFmpeg.cpp \
fav/AudioFormat.cpp \
fav/AudioFrame.cpp \
fav/AudioOutput.cpp \
fav/AudioOutputAudioToolbox.cpp \
fav/AudioOutputBackend.cpp \
fav/AudioOutputDSound.cpp \
fav/AudioOutputNull.cpp \
fav/AudioOutputOpenAL.cpp \
fav/AudioOutputOpenSL.cpp \
fav/AudioOutputPortAudio.cpp \
fav/AudioOutputPulse.cpp \
fav/AudioOutputXAudio2.cpp \
fav/AudioResampler.cpp \
fav/AudioResamplerFF.cpp \
fav/AudioResamplerLibav.cpp \
fav/AudioResamplerTemplate.cpp \
fav/AudioThread.cpp \
fav/AVClock.cpp \
fav/AVCompat.cpp \
fav/AVDecoder.cpp \
fav/AVDemuxer.cpp \
fav/AVDemuxThread.cpp \
fav/AVError.cpp \
fav/AVOutput.cpp \
fav/AVPlayer.cpp \
fav/AVPlayerPrivate.cpp \
fav/AVThread.cpp \
fav/ColorTransform.cpp \
fav/CopyFrame_SSE2.cpp \
fav/CopyFrame_SSE4.cpp \
fav/DirectXHelper.cpp \
fav/Filter.cpp \
fav/FilterContext.cpp \
fav/FilterManager.cpp \
fav/Frame.cpp \
fav/FrameReader.cpp \
fav/GPUMemCopy.cpp \
fav/ImageConverter.cpp \
fav/ImageConverterFF.cpp \
fav/ImageConverterIPP.cpp \
fav/internal.cpp \
fav/LibAVFilter.cpp \
fav/Logger.cpp \
fav/MediaIO.cpp \
fav/OpenGLRendererBase.cpp \
fav/OpenGLWindowRenderer.cpp \
fav/OutputSet.cpp \
fav/Packet.cpp \
fav/PacketBuffer.cpp \
fav/QIODeviceIO.cpp \
fav/QPainterRenderer.cpp \
fav/Statistics.cpp \
fav/VideoCapture.cpp \
fav/VideoDecoder.cpp \
fav/VideoDecoderFFmpeg.cpp \
fav/VideoDecoderFFmpegBase.cpp \
fav/VideoFormat.cpp \
fav/VideoFrame.cpp \
fav/VideoFrameExtractor.cpp \
fav/VideoOutput.cpp \
fav/VideoRenderer.cpp \
fav/VideoThread.cpp \
ui/rm_button.cpp \
ui/rm_dialog_map.cpp \
ui/rm_dialog_progress.cpp \
ui/rm_frame_bottom.cpp \
ui/rm_frame_graph.cpp \
ui/rm_frame_left.cpp \
ui/rm_frame_list.cpp \
ui/rm_frame_play.cpp \
ui/rm_frame_right.cpp \
ui/rm_frame_video_base.cpp \
ui/rm_frame_video_main.cpp \
ui/rm_frame_video_sub.cpp \
ui/rm_graph_widget.cpp \
ui/rm_layout.cpp \
ui/rm_play_slider.cpp \
ui/rm_popup.cpp \
ui/rm_popup_content_background.cpp \
ui/rm_popup_info.cpp \
ui/rm_slider.cpp \
ui/rm_speed_label.cpp \
ui/rm_widget_base.cpp \
ui/rm_widget_checkbox.cpp \
ui/rm_widget_drag.cpp \
ui/rm_widget_map.cpp \
ui/rm_widget_style_base.cpp \
ui/rm_widget_video_list.cpp \
ui/rm_widget_video_list_delegate.cpp \
ui/rm_window_base.cpp \
ui/title_widget.cpp \
ui/window_main.cpp \
main.cpp \
rm_app.cpp \
rm_settings.cpp \
data/fileio.c \
data/rm_video_item_loader.cpp \
core/rm_player_base.cpp \
ui/rm_popup_select_disk.cpp \
ui/rm_popup_message.cpp \
cfg/rm_radio_buttons.cpp \
cfg/rm_group_combo_box.cpp \
cfg/rm_group_radio_buttons.cpp \
cfg/rm_combo_box.cpp \
cfg/rm_value_selector.cpp \
core/rm_play_process.cpp \
ui/rm_popup_capture.cpp \
core/rm_excel_report.cpp \
core/rm_player_zoom.cpp \
ui/rm_widget_zoom_pos.cpp \
rm_application.cpp \
data/rm_overwrite.cpp \
ui/rm_dialog_overwrite.cpp \
tester/rm_tester.cpp \
core/rm_usb.cpp \
cfg/rm_settings_window_base.cpp \
ui/rm_dialog_overwrite_sys.cpp \
cfg/rm_setting_time.cpp \
core/rm_language.cpp \
ui/rm_dialog_bbviewer.cpp \
core/rm_key_event.cpp \
core/rm_utility.cpp \
tester/rm_testing.cpp \
tester/rm_test_dialog.cpp \
tester/rm_test_process.cpp \
tester/rm_test_controls.cpp \
data/rm_format_mov.cpp \
fav/GLSLFilter.cpp \
tester/rm_tune360_dialog.cpp \
ui/rm_frame_top.cpp \
ui/rm_filename_title.cpp \
ui/rm_bottom_border.cpp
} # ELSE SETUP
# 모델별 설정 기능
HEADERS += data/fm_parse_gps.h \
cfg/fm_base64.h \
cfg/rm_settings_cfg_emt_kr.h \
cfg/rm_text_edit.h \
cfg/window_settings_emt_kr.h \
cfg/window_settings_json.h \
core/fm_video_split.h \
data/an6000_decode.h \
data/fm_video_edit.h \
data/rm_avirepair.h \
fav/fav_profile.h \
fm_app_colors.h \
module/bmff.h \
module/fm_version_checker.h \
module/rm_crypt.h \
tester/StackWalker.h \
tester/fe_log.h \
ui/QProgressIndicator.h \
ui/fm_colors.h \
ui/fm_drag_zoom_widget.h \
ui/fm_frame_gps.h \
ui/fm_label_click.h \
ui/fm_systeminfo_dialog.h \
ui/rm_popup_select_model.h \
fav/fav_common.h \
ui/rm_webview2.h
SOURCES += data/fm_parse_gps.cpp \
cfg/fm_base64.cpp \
cfg/rm_settings_cfg_emt_kr.cpp \
cfg/rm_text_edit.cpp \
cfg/window_settings_emt_kr.cpp \
cfg/window_settings_json.cpp \
core/fm_video_split.cpp \
data/an6000_decode.cpp \
data/fm_video_edit.cpp \
data/rm_avirepair.cpp \
data/rm_format_mov_emtudat.cpp \
fav/fav_profile.cpp \
fm_app_colors.cpp \
module/bmff.cpp \
module/fm_version_checker.cpp \
module/rm_crypt.cpp \
tester/StackWalker.cpp \
tester/fe_log.cpp \
ui/QProgressIndicator.cpp \
ui/fm_drag_zoom_widget.cpp \
ui/fm_frame_gps.cpp \
ui/fm_label_click.cpp \
ui/fm_systeminfo_dialog.cpp \
ui/rm_popup_select_model.cpp \
fav/fav_common.cpp \
ui/rm_webview2.cpp
# XLDR-88
isEqual(TARGET_MODEL,2) {
HEADERS += cfg/rm_settings_cfg_xdr6688.h \
cfg/window_settings_xdr6688.h \
cfg/rm_admin_passwd.h \
data/fm_address.h \
ui/rm_popup_pw.h
SOURCES += cfg/rm_settings_cfg_xdr6688.cpp \
cfg/window_settings_xdr6688.cpp \
cfg/rm_admin_passwd.cpp \
data/fm_address.cpp \
ui/rm_popup_pw.cpp
} else {
HEADERS += cfg/rm_settings_cfg_standard.h \
cfg/window_settings_standard.h
SOURCES += cfg/rm_settings_cfg_standard.cpp \
cfg/window_settings_standard.cpp
}
# TB4000
isEqual(TARGET_MODEL,14) {
HEADERS += ui/rm_popup_pw.h \
ui/fm_360_position_view.h \
ui/fm_thumbnail_dialog.h
SOURCES += ui/rm_popup_pw.cpp \
ui/fm_360_position_view.cpp \
ui/fm_thumbnail_dialog.cpp
}
# AN6000
isEqual(TARGET_MODEL,15) {
HEADERS += ui/fm_calendar.h \
ui/fm_datepicker.h \
ui/fm_daytime.h
SOURCES += ui/fm_calendar.cpp \
ui/fm_datepicker.cpp \
ui/fm_daytime.cpp
}
# REMOVE_UNUSED_SRC
isEqual(REMOVE_UNUSED_SRC,1) {
} else {
HEADERS += fav/AudioEncoder.h \
fav/AVEncoder.h \
fav/AVEncoder_p.h \
fav/AVTranscoder.h\
fav/EncodeFilter.h \
fav/hw_decoder/SurfaceInteropD3D9.h \
fav/hw_decoder/VideoDecoderD3D.h \
fav/hw_decoder/VideoDecoderFFmpegHW.h \
fav/hw_decoder/VideoDecoderFFmpegHW_p.h \
fav/PlayerSubtitle.h \
fav/VideoEncoder.h \
fav/widget/GLWidgetRenderer.h \
fav/widget/GLWidgetRenderer2.h \
fav/widget/GraphicsItemRenderer.h \
fav/widget/QOpenGLWidget.h \
fav/widget/VideoPreviewWidget.h \
fav/AVMuxer.h
SOURCES += fav/AudioEncoder.cpp \
fav/AVEncoder.cpp \
fav/AVMuxer.cpp \
fav/AVTranscoder.cpp \
fav/hw_decoder/SurfaceInteropD3D9.cpp \
fav/hw_decoder/SurfaceInteropD3D9EGL.cpp \
fav/hw_decoder/SurfaceInteropD3D9GL.cpp \
fav/hw_decoder/VideoDecoderD3D.cpp \
fav/hw_decoder/VideoDecoderDXVA.cpp \
fav/hw_decoder/VideoDecoderFFmpegHW.cpp \
fav/widget/GLWidgetRenderer.cpp \
fav/widget/GLWidgetRenderer2.cpp \
fav/widget/QOpenGLWidget.cpp \
fav/AudioEncoderFFmpeg.cpp
}
HEADERS += \
core/rm_math.h \
tester/rm_design_dialog.h \
fm_dimensions.h \
fm_event_types.h \
ui/fm_frame_title.h \
ui/fm_button.h \
ui/fm_logo_widget.h \
ui/fm_layer.h \
ui/rm_frame_eq.h \
ui/fm_frame_speed.h \
ui/fm_speed_widget.h \
core/fm_strings.h
SOURCES += \
core/rm_math.cpp \
tester/rm_design_dialog.cpp \
ui/fm_frame_title.cpp \
ui/fm_button.cpp \
ui/fm_logo_widget.cpp \
ui/fm_layer.cpp \
ui/rm_frame_eq.cpp \
ui/fm_frame_speed.cpp \
ui/fm_speed_widget.cpp \
core/fm_strings.cpp