미디어 수집
브라우저가 표시하지 못하는 파일 — 여러 페이지 16비트 TIFF, HEIC, 카메라 RAW, ProRes, MKV — 을 캐시되는 트랜스코딩 프록시를 통해 주석합니다.
브라우저가 표시하지 못하는 파일은 오류도 없이 빈 캔버스를 내놓기 때문에, 주석자는 도구가 고장 났다고 결론짓습니다. Potato는 첫 요청 때 그런 파일을 트랜스코딩해 결과를 캐시하고, 정말로 안 되는 경우에는 대신 실행할 명령과 함께 그렇다고 알려 줍니다.
트랜스코딩된 파일 요청하기
파일을 /media/가 아니라 /media/proxy/를 통해 참조하십시오.
{"id": "scan_001", "image_url": "/media/proxy/scan_001.tif"}브라우저가 이미 표시하는 파일(.jpg, .png, .webp, .mp4, .webm)은 재인코딩 없이 그대로 통과하므로, 형식이 뒤섞인 코퍼스도 특별히 손볼 것이 없습니다. 전부 프록시로 향하게 하십시오.
결과는 <output_annotation_dir>/.media_cache/ 아래에 캐시됩니다. 캐시 키에 원본의 크기와 수정 시각이 포함되어 있어, 원본 파일을 고치면 오래된 캐시에 걸리지 않고 새 항목이 만들어집니다.
처리하는 것들
| 원본 | 변환 결과 | 비고 |
|---|---|---|
| TIFF | WebP | 여러 페이지와 16비트, 백분위 윈도잉 포함 |
| HEIC | WebP | 아이폰의 기본 사진 형식 |
| 카메라 RAW | WebP | rawpy를 통해 |
| ProRes, MKV, MOV, HEVC | MP4 | ffmpeg 프록시 트랜스코드, 프레임 추출 대체 경로 포함 |
ffmpeg와 Pillow-SIMD는 선택 사항으로 남습니다. 없을 때는 빈 패널 대신 어떤 도구가 없는지 이름을 밝힌 메시지가 나옵니다.
실질적인 부분은 16비트 윈도잉
과학용 TIFF는 대개 16비트이고, 그 내용은 대개 가용 범위의 좁은 구간에 몰려 있습니다. 그것을 단순히 8비트로 변환하는 것은 작은 손실이 아닙니다. 내용이 1200과 1800 사이에 놓인 스캔은 255단계 중 4단계의 분리만 남습니다. 백분위 윈도를 쓰면 254가 됩니다.
같은 윈도잉 로직이 깊이 맵도 움직이며, 거기서도 잘못은 드러나기보다 눈에 띄지 않게 넘어갑니다.