Commit Graph

15 Commits (1cc2741b1677e51644627f724494ba494bdf4cee)

Author SHA1 Message Date
RyuJongJin 1cc2741b16 릴리스 전: 가짜 AI 결과 막기 · S10 해상도 속도 · 예상 시간 (156-2) · 라이선스 (64) · zip 실행 흔적 검사 (166)
- 156-2: sd-cli 는 업스케일러 · 장치를 만들지 못해도 원본을 저장하고 0 으로 끝난다 (앞 판 Android 의 --backend cuda0).
  엔진 기록의 실패 줄 (new_upscaler_ctx failed 등) 과 결과 크기 (정확히 4배 · 그림은 정한 크기) 로 알아채 실패로 알린다
- Android CPU 해상도 올리기: 모든 코어 · 타일 512 (S10 512x384 만화 모델 88~92초 → 45~50초)
- [이 장] 진행 창 · [모든 장] 확인 창에 지난번 걸린 시간으로 "한 장 약 n초" (처리 장치 · 모델별)
- 64: LGPL 원문을 libmpv 이름으로, Android 고지 문서는 APK 에 맞는 내용 (THIRD_PARTY_NOTICES_ANDROID.txt)
- 166: make_layout 이 Logs · *.log · *.dmp 를 빼고, tool/make_zip.ps1 이 zip 목록을 검사 (실행 흔적이 있으면 실패)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 17:11:31 +09:00
RyuJongJin 7d6c653d5f AI 그림 1차 (123) · WebDAV 안내 (133 · 134 · 142 · 143) · 긴 경로 휴지통 보호 · AI 화면 작은 것 (139 · 140 · 141)
- 123: 기기 안 그림 만들기 (stable-diffusion.cpp 228c707, SD1.5 + LCM-LoRA + TAESD)
  · 공식 배포처 · SHA-256 고정, OpenRAIL-M 용도 제한을 보이고 동의 뒤 받기, 공간 확인
  · Windows 실행 파일은 받음 (Vulkan, NVIDIA 면 CUDA 12), Android 는 APK 에 libsdcli.so (tool/build_sdcpp_android.sh)
  · 처리 장치 자동 (짧게 재서 가장 빠른 것), 진행 · 남은 장 · 예상 시간 · 취소, 작업 알림 · 작업 현황
  · 글 → 그림 · 그림 → 그림, 결과는 새 PNG + json (프롬프트 · 시드 · 모델), 보기 화면의 [AI 그림으로]
  · 사용자가 추가하는 서버 · 서비스 (Automatic1111 · ComfyUI · OpenAI 형식), 기기 밖으로 나간다고 늘 알림, API 키는 안전 저장소
  · 컴포넌트 "AI 그림" · 환경 설정 > AI 그림 · 라이선스 고지
- 133 · 134 · 142: WebDAV 를 읽는 곳에서 마스터로 막히면 [마스터 비밀번호 넣기], 서버에 닿지 않으면 알아볼 수 있는 말
- 143: WebDAV 서버 고치기 창에서도 지우기
- 긴 경로 (260자 넘음) 는 휴지통이 받지 않아 Windows 가 묻지 않고 영구 삭제하던 것 - 보내기 전에 막고 이유를 알림
- 139 · 140 · 141: 받을 크기 한 값으로 · 뒤로 버튼 이름 · 시드 칸 이름, 바탕 그림 작은 그림
- Windows 확인용 화면 캡처 시험 (integration_test/windows_check_shot_test.dart)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 14:35:57 +09:00
RyuJongJin c5a44f2f3f 폴더 선택 = 자기 자신과 안의 것 전체 · rsync 앱에 내장 (Windows · Android)
- 선택 모드: 폴더를 누르면 자기 자신과 안의 파일 · 폴더 모두 선택 (펼쳐서 ✔), 다시 누르면 모두 취소.
  고른 폴더 안의 항목 하나를 누르면 그것만 빠지고 나머지는 고른 채로
- rsync 내장: Windows 는 실행 파일 옆 rsync\ (tool/fetch_rsync.ps1, MSYS2 패키지 SHA256 고정),
  Android 는 NDK 로 rsync 3.4.1 소스를 빌드한 librsync.so (tool/build_rsync_android.sh, jniLibs)
- rsync 가져오기 기본 = 앱에 들어 있는 것 (Windows 는 없으면 내려받기), 폴더 복사 기본 = rsync (예전 기본값도 rsync 로)
- Android rsync 는 -8 로 한글 이름을 그대로 출력, lsync (실시간 동기화) 도 rsync 로 동작

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 13:57:59 +09:00
RyuJongJin d73281adfd 테스트 · 도구의 작업 폴더 경로: M:\jj_CapCut → M:\jj_MKVMaker
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 00:00:34 +09:00
RyuJongJin 758eb41d72 노란 앱 아이콘 (노랑·검정 두 색) 추가 및 환경 설정에서 앱 아이콘 고르기
- 아이콘 5종: 노랑(기본) · 검정 · 필름+JJ · 필름 · 처음 아이콘(파랑)
- Android: 아이콘마다 activity-alias, 중계 LauncherActivity 로 바꿔도 앱 화면 유지
- Windows: 창 · 작업 표시줄 · 트레이 아이콘, 앱 안 홈 버튼도 고른 아이콘으로

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 23:47:00 +09:00
RyuJongJin 397fc6408b 아이콘: 검은 바탕 (노란 J · J + 흰 재생 버튼 + 필름 띠), 앱 안 버튼도 검은 바탕에 노란 JJ
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 23:00:08 +09:00
RyuJongJin 8fec4ae091 앱 안 홈 버튼: 작아도 또렷한 노란 JJ 아이콘 (런처 아이콘과 같은 색감)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 22:53:38 +09:00
RyuJongJin 6adb217857 아이콘: 왼쪽에 노란 J · J (위 · 아래), 재생 버튼은 오른쪽
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 22:39:58 +09:00
RyuJongJin 38ae9fe9de 아이콘: 눈에 띄게 (빨강 → 주황 바탕 + 큰 흰 재생 버튼 + 필름 띠), Android adaptive icon
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 22:16:16 +09:00
RyuJongJin 26b7b7ac13 번역: 문자열 속 번역 글자도 사전에 (보통 · 대기 · 화면 언어 등), 화면 크기 → Size
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 15:44:03 +09:00
RyuJongJin 7df26039c9 화면 언어: 한국어 · English · 日本語 · 简体中文, 언어 추가 (AI 자동 번역) · 삭제, 바꾸면 화면 전체가 바로 그 언어로
- 모든 화면 글자를 tr() / trf() 로 (한국어 원문이 사전 열쇠), assets/l10n 에 영어 · 일본어 · 중국어 사전
- 더한 언어는 이 기기의 NLLB 번역 모델로 영어 사전을 자동 번역해 설정 폴더 l10n 에 저장
- 언어 이름 · 선택 목록 · 모델 이름은 화면에 보일 때 번역 (파일명 인식 규칙은 그대로)
- tool/l10n: 새 글자 감싸기 · 사전 점검

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 14:13:02 +09:00
RyuJongJin 752e4da999 Android: 백그라운드 작업 · 상태 표시줄 · H.264 우선 · AI 번역 메모리 (4GB 기기에서 앱이 꺼지던 문제)
- 백그라운드: 다운로드 · MKV · AI 작업 중이면 포그라운드 서비스 (진행 알림, 화면 꺼짐에도 계속), 끝나면 내림
- 상태 표시줄: 앱 화면을 시스템 표시줄 아래로 (위쪽 버튼이 시계 · 배터리와 겹치던 것)
- YouTube: 같은 크기면 H.264 먼저 (하드웨어 재생)
- AI 번역 (NLLB): 번역 모델을 여는 순간 1.3~2.3GB 를 써서 Android 가 앱을 강제로 끄던 문제
  · 처음 한 번 모델을 외부 데이터 형식으로 바꾼다 (onnx_external.dart): 가중치를 메모리 맵으로
  · 디코더 마지막 단계 (lm_head) 를 정수 곱으로: int8 공유 임베딩을 매번 float 1GB 로 풀던 것을
    DynamicQuantizeLinear → MatMulInteger 로, 전치한 가중치는 미리 만들어 둠
  · 그래프 최적화 끔 (상수 접기가 int8 가중치를 float 로 풀어 커짐), 인코더 · 디코더를 따로 연다
  · 태블릿 (4GB) 측정: 최대 2.3GB (강제 종료) → 736MB, 번역 결과 같음 (tool/check_onnx_external.py)
- AI 창 안내 "이 PC" → Android 는 "이 기기"

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 23:17:30 +09:00
RyuJongJin ebea6ddbb6 v2026.10.01_002: 배포 폴더 구조 (맨 위 3개 파일 + Lib + Logs)
- 시작 프로그램 (windows/launcher, C 런타임 정적 연결): 맨 위 jj_mkvmaker.exe 가
  Lib\jj_mkvmaker.exe 를 같은 인수로 실행
- tool/build_launcher.ps1, tool/make_layout.ps1 (배포 폴더 · 릴리스 zip 배치)
- 작업 기록 · 종료 기록을 배포 폴더의 Logs 에 저장 (AppPaths)
- 업데이트: 배포 폴더 맨 위에 설치, 압축 파일에서 가장 위의 jj_mkvmaker.exe 기준
- 예전 한 폴더 구조에서 넘어오면 맨 위에 남은 예전 프로그램 파일 정리
- 끌어다 놓기 테스트: PC 가 바쁠 때도 통과하도록 대기 시간 늘림

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 13:49:50 +09:00
RyuJongJin 1ba49ffa8d v2026.09.30_001: 일괄 작업, 다운로드 진행률 · 쿠키 재시도, 상태 표시
- 버전 표기를 년.월.일_순번 으로 변경 (tool/next_version.ps1)
- 동영상 목록 여러 개 선택 · 정렬, 자막 만들기 / 자막 만들기 & MKV 만들기 /
  선택한 파일 재생 일괄 실행
- 다운로드: 동영상 추가 버튼, 완료시 자동 동영상추가, 받은 크기 / 전체 크기,
  yt-dlp 진행률 출력 복구 (--no-quiet --progress), 영상 + 음성 진행률 합산
- YouTube 쿠키를 못 읽으면 앱 안 브라우저 쿠키 → 쿠키 없이 순서로 재시도
- 모든 화면 오른쪽 위에 CPU · MEM · DISK, 환경 설정 · 종료 버튼
- 단축키로 창 보이기 / 숨기기 전환, 종료 시간 단축 (exit.log 에 단계별 시간)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 21:31:07 +09:00
RyuJongJin c05a657756 JJ_MKVMaker v1.0.0
동영상 + 자막 → MKV, 자막 편집 · AI 자막 · 번역, 플레이어,
웹 브라우저 · 다운로드 (yt-dlp · aria2), 작업 대기열, 자동 업데이트.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 19:35:19 +09:00