Lume Pad 2 (LPD-20W) 에서 3D 영상과 3D 사진을 보는 뷰어의 첫 공개 빌드다.
설치만 하면 된다 — adb 설정도, 루팅도 필요 없다.
무엇이 되나
3D 영상
- 좌우(SBS)·상하(TB), half·full 을 파일 이름이 아니라 픽셀과 해상도로 판별한다
- 자막을 좌·우 뷰에 각각 그린다. 화면 위에 2D 로 얹으면 위빙을 거치며 겹쳐 보인다
- DTS·AC3 가 소리 난다 (FFmpeg 오디오 확장)
- 이어보기, 화면 비 보정, 좌우반전
3D 사진
- 폴더별로 넘겨 본다.
◀◀ ▶▶로 이전/다음, 길게 누르면 10장씩 - 원본 해상도를 열기 전에 읽어 배치를 확정한 뒤 띄운다 — 2D 로 나왔다 3D 로 바뀌는 깜빡임이 없다
- 게임 스크린샷(HelixMod 등) 3344x940 · 3840x1080 · 5120x1440 전부 확인했다
2D → 3D
- 기기 안에 있는 Leia 자신의 신경망 변환기를 쓴다. 같은 프레임으로 진짜 스테레오와 견줘 확인했다
수렴 보정 — 이번 빌드의 핵심
- 게임에서 뽑은 SBS 는 만들 때 쓰던 모니터 기준으로 좌우가 통째로 어긋나 있다.
스크린샷 36장을 실측하니 1920px 눈 기준 20px ~ 224px(눈 폭의 11.7%). 정작 장면
자체의 깊이 폭은 28~184px 로 그보다 작다. 24인치에서 만든 값을 10인치에 올리니
두 눈이 모을 수 있는 한계를 넘는다 - 수렴 자동 을 누르면 지금 그림의 시차를 재서 장면 중심을 화면 평면에 놓는다.
눈금이 화면 픽셀이라 소스가 3344 든 5120 이든 같은 값이 같은 뜻이다
목록
- 영상·사진 모두 실제 폴더로 묶는다 (MediaStore 의 버킷 이름이 아니라 파일 경로 기준 —
다른 위치의 같은 이름이 합쳐지지 않는다). 자주 여는 폴더는 길게 눌러 위로 고정
그 밖에
- 기기 언어를 따른다 (한국어 / 영어)
- MediaStore 가 모르는 파일을 찾아 색인시킨다 — adb 로 밀어 넣은 폴더가 안 보이던 문제
필요한 것
| 기기 | Lume Pad 2 (LPD-20W) |
| 권한 | 저장소 읽기 하나. 처음 실행할 때 물어본다 |
| 얼굴추적 | 기기의 Leia 서비스가 한다. 이 앱은 카메라 권한 없이 동작한다 |
알려진 것
- 3D 소스의 수렴을 Leia 엔진에 맡기는 경로는 꺼져 있다. 실기에서 3D 가 제대로
서지 않아 되돌렸다. 3D 소스는 우리 GL 이 CNSDK 로 바로 보낸다 - 회절 광원 비율(
backlight_mode3d_ratio_3d)은 올리지 말 것. 밝아지는 대신
크로스토크가 늘어 잔상이 생긴다. 기본값 1.2 가 맞다
만든 것에 관하여
CNSDK 는 Leia 의 것이라 저장소에 없다. APK 에는 들어 있으니 설치해서 쓰는 데는
지장이 없고, 직접 빌드하려면 기기에서 꺼내야 한다 (README 참고).
English
The first public build of a viewer for 3D video and 3D photos on the
Lume Pad 2 (LPD-20W). Just install it — no adb setup, no root.
What it does
3D video
- Works out side-by-side / over-under, half / full from pixels and resolution,
not from the filename - Draws subtitles into the left and right views separately. A flat 2D overlay
comes apart in the weave - DTS and AC3 actually play (FFmpeg audio extension)
- Resume, aspect correction, L/R swap
3D photos
- Browse by folder.
◀◀ ▶▶steps through, long-press steps ten at a time - The layout is settled before the picture goes up, because the true
resolution can be read before decoding — no flash from 2D to 3D - Verified on game screenshots (HelixMod and friends) at 3344x940, 3840x1080
and 5120x1440
2D → 3D
- Uses Leia's own neural converter, the one already on the device. Checked
against real stereo on the same frame
Convergence correction — the heart of this build
- SBS captured from a game is offset wholesale for the monitor it was made
on. Measured across 36 screenshots: 20 px to 224 px (11.7 % of the eye
width) at a 1920 px eye, while the depth range of the scene itself was only
28–184 px. A value made for a 24-inch monitor, put on a 10-inch tablet,
exceeds what your eyes can converge - Auto convergence measures the parallax of the current frame and puts the
middle of the scene on the screen plane. The scale is in screen pixels, so
the same number means the same thing whether the source is 3344 or 5120 wide
The list
- Videos and photos are both grouped by real folder — by file path, not by
MediaStore's bucket name, so identically named folders in different places
stay apart. Long-press a folder to pin it to the top
Also
- Follows the device language (Korean / English)
- Finds files MediaStore does not know about and gets them indexed — folders
pushed in over adb used to be invisible
Requirements
| Device | Lume Pad 2 (LPD-20W) |
| Permission | Storage read, once. The app asks on first launch |
| Face tracking | Done by the device's Leia service. This app runs with the camera permission denied |
Known limits
- The path that hands 3D sources to Leia's convergence engine is off. 3D did
not stand up properly on the device, so it was reverted; 3D sources go
straight from our GL to CNSDK - Do not raise the diffractive backlight ratio (
backlight_mode3d_ratio_3d).
It gets brighter but crosstalk rises and ghosting appears. The stock 1.2 is right
About the build
CNSDK belongs to Leia and is not in the repository. It is inside this APK, so
installing and using it is fine; building from source requires pulling it off
your own device (see the README).