Tłumaczenie automatyczne · Oryginał angielski
Architektura
Instrukcja dla tubylców TTS
Zbuduj natywną obsługę SDK z głównego źródła. Homebrew i inne wcześniej zbudowane wydania CLI mogą jeszcze nie zawierać tych silników.
Opublikowane pakiety MLX: aufklarer/FireRedTTS3-Instruct-MLX-fp32 · aufklarer/MOSS-VoiceGenerator-MLX-bf16
FireRedTTS3-Instruct — FireRedTTS3TTS: FireRedTTS3-Instruct zachowuje model Float32 i wagi dekoderów. Zwraca buforowany dźwięk: omit --stream. Akceptowane są angielskie i chińskie aliasy --language; limit generacyjny podnosi błąd zamiast zwrotu okrojonego sukcesu.
MOSS- VoiceGenerator — MossVoiceGeneratorTTS: MOSS- VoiceGenerator zachowuje wagę językową BF16 i kodek syntezy FP32. Użyj --stream dla przyrostowego PCM. Omit --language oraz umieścić wymagania językowe w --instruct, a w pełni wysysa wszystkie szesnaście kodebooków.
Każde pole tekstowe i instruktażowe jest ograniczone do bajtów 32,768 UTF-8. Kompletny wyświetlony sygnał wejściowy, w tym jego szablon, musi mieścić się w żetonach 4,096, przy czym wejścia przekraczające każdą z wartości granicznych są odrzucane.
Pomiary krótkiego skryptu opisują testowaną konfigurację; istniejący model certyfikacji opóźniania pozostaje nierozstrzygający.
Breeze TTS 2 · Breeze TTS
Angielski / chiński TTS z designem głosu, klonowaniem referencyjnym i kierunkiem oraz strumieniowym audio (MLX BF16 / 8-bit, 24 kHz; badania / licencja niekomercyjna).
speech speak "The quick brown fox jumps over the lazy dog." --engine breeze \
--instruct "A clear, calm English narrator." --stream -o design.wav--breeze-model-id:aufklarer/Breeze-TTS-2-MLX-8bit--breeze-bundle-dir--breeze-cache-limit-mib--breeze-reference-text--breeze-temperature:0.9--breeze-top-k:50--breeze-top-p:1--breeze-cfg-scale:4--breeze-max-frames:750--breeze-seed:42--first-chunk-frames:3--chunk-frames:25
Native Apple runtime · PockettTS
PocketTTS dodaje rodzimą syntezę mowy CoreML do speech-swift. Wszystkie etapy domyślne do wykonania tylko CPU. angielskie strumienie Alba preset 1,920- próbki w 24 kHz (80 ms per frame).
speech-swift jest zorganizowany jako modułowy Swift pakiet ze wspólnymi protokołami, niezależnymi modułami modeli i ujednoliconym CLI. Wszystkie wnioski uruchamiane są na urządzeniu MLX (Metal GPU) lub CoreML (Neural Engine).
Wykres zależności modułu
┌──────────┐
│ AudioCLI │ (entry point)
└────┬─────┘
│
┌──────┴──────┐
│ AudioCLILib │ (commands)
└──────┬──────┘
│
┌─────────┬───────┼───────┬──────────┬──────────────┐
│ │ │ │ │ │
┌────┴───┐ ┌──┴──┐ ┌──┴──┐ ┌─┴────┐ ┌───┴────┐ ┌──────┴───────┐
│Qwen3ASR│ │Qwen3│ │Cosy │ │Perso-│ │Speech- │ │ Speech- │
│Parakeet│ │ TTS │ │Voice│ │naPlex│ │ VAD │ │Enhancement │
└────┬───┘ └──┬──┘ └──┬──┘ └──┬───┘ └───┬───┘ └──────┬───────┘
│ │ │ │ │ │
└────────┴───────┼───────┴─────────┘ │
│ │
┌──────┴──────┐ │
│ Qwen3Common │ (shared layers) │
└──────┬──────┘ │
│ │
┌──────┴──────┐ │
│ AudioCommon │ ◄──────────────────────┘
└─────────────┘ (protocols, audio I/O)MLX bufor bufor cache budget
MLX model runtimes współdzielą domyślny pułap bufora rewabled min(2 GiB, physical RAM / 4) od obciążenia ciężarem przez okres użytkowania modelu. Niższe budżety dzwoniących, w tym MLX.Memory.cacheLimit = 0, i istniejące budżety specyficzne modele są zachowane. Ograniczenie pułapów bezczynności buforów; aktywnych wag, KV bufory i pamięci procesu całkowitego może go przekroczyć. MLX tryms w momencie przydziału, więc ostatni uwolniony bufor może tymczasowo umieścić bufora powyżej budżetu do następnego przydziału.
unload() uwalnia rejestrację modelu; czas biegania bez tej metody uwalnia go po zniszczeniu. Ostatni właściciel przywraca budżet rozmówcy, podczas gdy wcześniejsze rozładowanie zachowuje sufity pozostałych modeli. CoreML- tylko ścieżki nie nabywają rejestracji MLX.
MOSS Transcribe Diarize
MossTranscribe zwraca segmenty timestamp przypisane głośnomówiącym poprzez dwa natywne backendy. CoreML używa stałej 1,024-token MLState dla krótkich nagrań. MLX wykorzystuje dynamicznie rosnące 131,072-token context, affine INT5/INT8 wagi dekoderów i opcjonalne FP16/INT8 KV buforuje globalnie skonfigurowaną transkrypcję długoformatową. Oba są offline, autoregresywne czasy biegania zamiast streaming modeli.
VoiceChat 11B
Zadanie i odniesienie: dwupoziomowe przemówienie; SALM- Duplex: Efektywny i bezpośredni model duplex dla Modeling mowy-to- Język (Przemówienie 2025), cytowany przez NVIDIAjest w górę rzeki VoiceChat Karta modelowa.
Kompletny bieg, M5 Pro 48 GB, Release 80 ms live cadence: chroniona głowa INT5 szczyt RSS jest około 8.69 GB; trzy sterowane rurociągi RTF u t ro ob oz 0.96, 0.96oraz 0.99Zoptymalizowane INT8 wydajność nie została jeszcze ponownie zmierzona.
VoiceChat implementuje cały rodzimy MLX ścieżka audio-to@-@ audio: percepcja FastConformer, kanały tekstu / funkcji Nemotron- H, dekoder EAR- TTS z samodzielnym text- uwarunkowanym textem, z ośmiu iteracji MaskGIT, i 22.05 KHz kodek neuronowy. Streaming zachowuje ograniczoną uwagę warstwy przerostowej i caucal- convolution caches, podczas gdy stałe ośmioramowe okno kodekowe na żywo wykorzystuje skompilowany wykres. 80 ramka wejściowa ms tworzy decyzję językową, 31 Kody RVQ i dokładnie 1,764 próbki wyjściowe. Ładowarka wymaga kompletnego encoder/ + llm/ + tts/ INT5 teraz podtrzymuje agregat RTF poniżej 1 na testowanym M5 Pro, chociaż perframe p95 pozostaje wąski.
Pokrycia do wniosków
| Wstecz | Sprzęt | Modele |
|---|---|---|
| MLX | Metal GPU | Qwen3-ASR, Qwen3-TTS, Breeze TTS 2, CosyVoice3, IndexTTS2, Qwen3.5-Chat, PersonaPlex, VoiceChat 11B, Wszechjęzyczny ASR (300M / 1B / 3B / 7B), Cohere Transcribe 2B, Voxtral Mini 3B, MOSS Transcribe Diarize, Pyannote, Silero VAD, WeSpeaker, SpeechBrain ECAPA LID, Nemotron 3 Diaryzacja, FireRedTTS3-Instruct, MOSS- VoiceGenerator |
| CoreML | CPU / GPU / Neural Engine (ANE) | Qwen3-ASR koder (hybrydowy), Parakeet TDT, Parakeet EOU streaming, Unillanguage ASR 300M, Kokoro-82M, Qwen3.5-Chat (nieobowiązkowo), diaryzacja Sortformer, DeepFilterNet3, Silero VAD (nieobowiązkowo), WeSpeaker (nieobowiązkowo), MOSS Transcribe Diarize, SpeechBrain ECAPA LID, Nemotron 3 Diaryzacja |
| Przyspieszenie | CPU (SIMD) | Wstępne przetwarzanie dźwięku (STFT, mel, FFT), przetwarzanie sygnałów |
Wzór formularza ciężaru
Używanie modeli MLX safetensors format z 4- bit lub 8-bitowa kwantyzacja (wielkość grupy 64). CoreML korzystanie z modeli .mlmodelc skompilowany format. Konwersja skryptów w scripts/ konwertować z punktów kontrolnych PyTorch.
Cohere oraz Voxtral także MLX afirna INT5 Paczki. MLX nie obsługuje afirny INT7; INT8 jest wspieraną opcją wysokiej jakości.
| Wzór | Params | Ilościowanie | Rozmiar na dysku |
|---|---|---|---|
| Qwen3-ASR 0.6B (MLX) | - 600M | 4- bit / 8- bit | 680 MB / 1,0 GB |
| Qwen3-ASR 0.6B (CoreML) | - 186M (koder) | INT8 | - 180 MB |
| Qwen3-ASR 1.7B (MLX) | - 1,7B | 4- bit / 8- bit | 2.1 GB / 3.2 GB |
| Parakeet- TDT 0.6B (CoreML) | - 600M | INT8 | 500 MB |
| Whisper Large-v3 Turbo (CoreML) | 809M | FP16 | 1.6 GB |
| MOSS Transcribe Diarize 0.9B (MLX) | 908.5M | FP16 audio + INT5 / INT8 dekoder | 987,0 MiB / 1,200.1 MiB |
| MOSS Transcribe Diarize 0.9B (CoreML) | - 900M | FP16 / INT8 block-32 | 1,7 GB / 1,2 GB |
| Parakeet- EOU 120M (CoreML) | - 120M | INT8 | 120 MB |
| Omnilingual- ASR- CTC 300M (CoreML) | 326M | INT8 | 312 MB |
| Omnilingual- ASR- CTC 300M (MLX) | 326M | 4- bit / 8- bit | 193 MB / 342 MB |
| Omnilingual- ASR- CTC 1B (MLX) | 1.01B | 4- bit / 8- bit | 549 MB / 1006 MB |
| Omnilingual- ASR- CTC 3B (MLX) | - 3B | 4- bit / 8- bit | 1,71 GB / 3,16 GB |
| Omnilingual- ASR- CTC 7B (MLX) | - 7B | 4- bit / 8- bit | 3,55 GB / 6,63 GB |
| Cohere Transcribe 2B (MLX) | 2B | FP16 / INT5 / INT8 | 3,85 / 1,62 / 2,25 GiB |
| Voxtral Mini 3B 2507 (MLX) | 3B | FP16 / INT5 / INT8 | 8.71 / 3.77, 5.18 GiB |
| Qwen3-ForcedAligner 0.6B (MLX) | - 600M | 4- bit / 8- bit | 979 MB / 1.4 GB |
| Qwen3-ForcedAligner 0.6B (CoreML) | - 600M | INT4 / INT8 | 630 MB / 1,0 GB |
| Qwen3-TTS 0.6B (MLX) | - 600M | 4- bit / 8- bit | 1,7 GB / 2,4 GB |
| Qwen3-TTS 1.7B (MLX) | - 1,7B | 4- bit / 8- bit | 3.2 GB / 4.8 GB |
| CosyVoice3 0.5B (MLX) | - 500M | 4- bit LLM | - 1.2 GB |
| IndexTTS2 pakiet rozszerzony (MLX) | Klasa 1.5B | FP16 + modele pomocnicze | - 4,8 GB |
| Kokoro-82M (CoreML) | 82M | INT8 (wiadro 1) | - 89 MB |
| Qwen3.5-Chat 0.8B (MLX) | - 800M | INT4 | 418 MB |
| Qwen3.5-Chat 0.8B (CoreML) | - 800M | INT8 | 981 MB |
| PersonaPlex 7B (MLX) | - 7B | 4- bit / 8- bit | 4,9 GB / 9,1 GB |
| VoiceChat 11B (MLX) | - 11B | INT5 / INT8 | 8.56 GB / 12.11 |
| Pyannote VAD (MLX) | - 1,49M | float32 | - 5,7 MB |
| Silero VAD v5 | - 309K | float32 | ~ 1.2 MB (MLX & CoreML) |
| p99 turn-1-mini | 5,3M | Float32 | 22 MB (CoreML) |
| VAP (otoSpeech) | 5,8M | Float32 | 39 MB (CoreML) / 40 MB (ONNX) |
| WeSpeaker ResNet34 | - 6,6M | float32 | ~ 25 MB (MLX & CoreML) |
| SpeechBrain ECAPA VoxLingua107 | 21.25M | FP16 | ~40.6 MiB (MLX) / ~40.8 MiB (CoreML) |
| ReDimNet2-B6 | 12.3M | float16 | ~ 25 MiB (CoreML) |
| Pyannote Community-1 (CoreML) | 8.35M | float32 + rodzimy VBx | ~ 32 MB |
| Diaryzacja Nemotron 3 (CoreML / MLX) | 100M | INT8 | ~ 100 MB na backend |
| Sortformer (CoreML) | — | float16 | 50 MB |
| DeepFilterNet3 (CoreML) | ~ 2,1M | FP16 | - 4,2 MB |
| LocalVQE v1.4-AEC (CoreML + C++) | 200K + 2,742 | FP16 + FP32 | - 732 KB |
Inicjalizacja modelu MLX
QuantizedLinear.preQuantized tworzy zerowe wartości zastępcze dla kwantyzowanych warstw liniowych ładowanych z punktu kontrolnego, unikając losowych wag i ich tymczasowych grafów kwantyzacji. withThrowawayRandomState chroni łańcuch kluczy losowych wywołującego przed wpływem odrzucanej inicjalizacji zmiennoprzecinkowej. Złożone mechanizmy ładowania obejmują każdy komponent: T5 i EnCodec w MAGNeT, T5Gemma i SAME-L w Stable Audio 3 oraz kodek Mimi w CSM. Kwantyzowane embeddingi CSM nadal używają inicjalizatora upstream i zachowują jego znane ograniczenie grafu inicjalizacji.
Optymalizacja wydajności
- Zestawienie MLX - Qwen3-TTS kompiluje Talker nad rosnącym walecznym prefiksem pamięci podręcznej i kompiluje stałą ramkę Code Predictor 15- grupy ZXQ- jako jeden wykres dla syntezy pojedynczych elementów.
- Biblioteka Shadera Metal - Prekompilowane metallib unika ~ 5x JIT kompilacji nad głową.
scripts/build_mlx_metallib.sh. - Dekodowanie kodeków — TTS Dekoder przetwarza mowę w 25-frame chunks z 10-frame kontekst pokrywają się, aby uniknąć GPU Przerwa.
- Batch- dualised CFG - CosyVoice3 DiT połówki przepływu dopasowywania przepustek przez łatanie warunkowe + bezwarunkowe razem.
- RoPE fused - Używa
MLXNN.RoPEobsługiwane przez jądro Metal zamiast ręcznej rotacji. - Fuzja BN - WeSpeaker normalizacja serii połączona z ciężarem Conv2d w czasie konwersji.
Przetwarzanie dźwięku
Wszystkie audio I / O wykorzystuje Float32 PCM. Wewnętrzne resampling hands format konwersji:
| Wzór | Oczekiwana stopa | Format |
|---|---|---|
| Qwen3-ASR | 16 kHz | Mono Float32 |
| Cohere Transcribe 2B | 16 kHz | Mono Float32 |
| Voxtral Mini 3B | 16 kHz | Mono Float32 |
| Qwen3-TTS | Wyjście 24 kHz | Mono Float32 |
| CosyVoice3 | Wyjście 24 kHz | Mono Float32 |
| Kokoro-82M | Wyjście 24 kHz | Mono Float32 |
| PersonaPlex | 24 kHz I / O | Mono Float32 |
| Pyannote VAD | 16 kHz | Mono Float32 |
| Silero VAD | 16 kHz | Mono Float32 |
| WeSpeaker | 16 kHz | Mono Float32 |
| Przemówienie Mózg ECAPA LID | 16 kHz | Mono Float32 |
| ReDimNet2-B6 | 16 kHz | Mono Float32 |
| DeepFilterNet3 | 48 kHz | Mono Float32 |
Struktura źródła
Sources/
AudioCommon/ Shared protocols, audio I/O, system-output capture
(SystemAudioTap), HuggingFace downloader,
SentencePieceModel (protobuf reader)
MLXCommon/ MLX utilities: weight loading, QuantizedLinear helpers,
SDPA multi-head attention helper, metal budget
Qwen3Common/ Shared model components (KV cache, RoPE, quantization)
Qwen3ASR/ Qwen3-ASR speech-to-text
ParakeetASR/ Parakeet TDT speech-to-text (CoreML)
ParakeetStreamingASR/ Parakeet EOU 120M streaming dictation (CoreML)
OmnilingualASR/ Meta wav2vec2 + CTC, 1,672 languages
(CoreML 300M + MLX 300M / 1B / 3B / 7B)
CohereTranscribeASR/ Cohere Transcribe 2B speech-to-text (MLX)
VoxtralASR/ Voxtral Mini 3B speech-to-text (MLX)
Qwen3TTS/ Qwen3-TTS text-to-speech
FireRedTTS3TTS/ FireRedTTS3-Instruct (MLX, Float32)
MossVoiceGeneratorTTS/ MOSS-VoiceGenerator (MLX, BF16 + FP32)
CosyVoiceTTS/ CosyVoice3 text-to-speech
KokoroTTS/ Kokoro-82M text-to-speech (CoreML)
Qwen3Chat/ Qwen3.5-0.8B on-device LLM chat (MLX + CoreML)
PersonaPlex/ PersonaPlex speech-to-speech
SpeechVAD/ VAD (Silero + Pyannote), diarization, speaker embeddings
SpeechLanguageID/ Spoken language identification (SpeechBrain ECAPA, MLX + CoreML, 107 labels)
SpeechEnhancement/ DeepFilterNet3 noise suppression (CoreML)
SourceSeparation/ Open-Unmix HQ / UMX-L + HTDemucs (Demucs v4) music source separation (MLX, 4 stems)
MAGNeTMusicGen/ MAGNeT text-to-music generation (MLX, 30 s @ 32 kHz, INT4/INT8)
VoxCPM2TTS/ VoxCPM2 text-to-speech (MLX, 48 kHz, voice cloning + voice design)
IndexTTS2TTS/ IndexTTS2 voice cloning (MLX, semantic GPT + emotion/tempo/pause control + S2Mel + BigVGAN)
VibeVoiceTTS/ VibeVoice long-form / multi-speaker TTS (MLX, EN/ZH)
MagpieTTS/ NVIDIA Magpie-TTS Multilingual 357M (MLX INT4/INT8,
9 languages, 5 baked speakers, streaming)
MagpieTTSCoreML/ Magpie CoreML backend (4 .mlmodelc + Swift-side
FSQ inverse; 8 languages, batch-only; hybrid
with MagpieTTS for LocalTransformer + audio
embeddings)
MADLADTranslation/ MADLAD-400 many-to-many translation (MLX, 400+ languages)
GLiNER/ GLiNER2.5-Decide classification + entity spans (MLX, INT8/FP16/FP32)
AudioCLILib/ CLI command implementations
AudioCLI/ CLI entry point
scripts/ Model conversion (PyTorch → MLX/CoreML), benchmarking
Tests/ Unit and integration tests
Examples/ Demo apps (PersonaPlexDemo, SpeechDemo)GLiNER2.5-Decide: Native MLX klasyfikacja i zakres podmiotów (INT8, FP16 lub FP32 wagi); nie Python w czasie składania wniosków.
Clef- flash: przegląd rozwoju lokalnych decyzji tekstowych (9B, affine 4-bit MLX), z wspólną głową schematu i oddzielnym osadzeniem wyników przed.
MOSS- TTS- Nano
Synteza strumieniowa mowy i klonowanie głosu za pomocą fragmentów CoreML, 48 kHz stereo i 80 ms.
MossTTSNANOModel serializuje żądania i tworzy świeży stan CoreML dla każdego wyniku. syntetyzuj i syntetyzuj Stream zachować stereo; SpeechGenerationModel zwraca mono downmix. Pass language: zero. Streams kończy się z pustym znacznikiem końcowym.
macOS 15+ / iOS 18+; cztery wykresy zestawione łącznie 367.6 MB. Szybkie, odniesienia i wymagane ramki współdzielą a 1,024-kontekst wiersza. Czas trwania odrzuca przepełnienie i podnosi błąd, jeśli maxFrames zostanie osiągnięty przed naturalnym end- of- mowy. CPU jest domyślny; pozwolenia gpu CPU+GPU egzekucja. PCG64 Pobieranie próbek wykorzystuje nasiona kompatybilne z numPy; różnice numeryczne oparcia mogą nadal zmieniać wydajność.
Lokalne zgłoszenie rodzime
Fakultatywny agentDirectory ładuje ustawione Gemma 4 12B Unifikacja INT4 model tekstowy obok E4B. Użyj modelu: "gemma4-12b-it"dla czatu z natywnymi narzędziami, historii wyników i anulowania. E4B pozostaje dostępna dla innych wniosków. Gemma4UnifiedChat wykorzystuje przypinane MLX implementacja tekstu i uwalnia każdy podręcznik KV. Response parsing usuwa separatory kanałów z zwróconego tekstu. Osierocone terminatory wywołania narzędzi są odrzucane jako wadliwe odpowiedzi.
Native service serializes chat, synteza i transkrypcja; lekki VAD ma oddzielny stan strumienia. Gemma prefill używa serii 256- token, żądanie stanu KV jest zwolniony, a pamięci podręcznej MLX jest ograniczona do 128 MiB z limitem alokatora 20 GiB.
Opcjonalny model własności
SpeechRuntime zapewnia wspólne ładowanie, anulowalne wstęp FIFO i seryjne wykonanie. Qwen3ASRRuntime wybiera MLX lub pełne CoreML za pomocą wyraźnych deskryptorów; krajowe API i flagi CLI pozostają dostępne.
Serwer audio posiada jedno zezwolenie na wykonanie za pomocą każdego pełnego żądania, w tym wyjścia strumieniowego, z żądaniami do 32 oczekujących. Niepowodzenia ASR powodują błędy HTTP lub zdarzenia błędów WebSocket; prawidłowe puste transkrypcje pozostają skuteczne. Odtwarzanie zachowuje próbki przepełnienia.
Voxtral TTS
Voxtral 4B TTS 2603 działa lokalnie Apple Silicon przez moduł Voxtral TTS: 20 preset voices, nine languages, and 24 KHz mono mowy.
VoxtralTTS → 26-layer LM → 3-layer acoustic transformer → 24 kHz PCMWyłącznie głosy preset; klonowanie referencji audio jest niedostępne. Strumienie wyjściowe audio przez SDK, CLI, WebSocket i HTTP PCM. Dostarczają kompletny tekst wejściowy z przodu. Wagi modelu używają CC BY- NC 4.0.
Fish Audio Drama 3
Eksperymentalne natywne MLX wsparcie dla Drama 3 jest dostępny poprzez FishAudioDrama3ModelA 35B Hybrid- attention MoE kręgosłup, temporalna wieża audio i kodek Fish DAC produkcji 44.1 kHz mono audio. 4-bit checkpoint przeszedł fala i niezależny ASR sprawdzanie tylko dla produkcji, klonowania referencyjnego i CLI na Apple M5 Pro. 8-bit i BF16 pozostają niezatwierdzone.
Domyślny balanced mode tryms bezczynny zderzaki MLX powyżej 512 MiB na granicy sceny. Współdzielony czapka cache-lifetime stosuje się również, zachowując niższe budżety dzwoniących; ani kontroli ogranicza całkowitą pamięć procesową. --fish-drama3-memory-mode unrestricted lub memoryOptions: .unrestricted ładunki z niecierpliwością i pomija przycinanie na etapie, zachowując jednocześnie wieczko na całe życie.
Tylko generacja Text- odracza 794.4 MiB referencyjnych ciężarów kodujących. Pierwsze odniesienia kodowania obciążeń i zachowuje je, więc zachować codec.safetensors dostępne do tego czasu. Przeliczone kody referencyjne nie potrzebują kodera.
FishAudioTTS: FishAudioDrama3Model · backbone.model.* · semantic_head.* · tower.* · codec.safetensors
Zbudowany z Fish Audio. Bundles zachowuje licencję wspólnotową i NOTICE.
PCM streaming jest dostępny za pośrednictwem generateStreaming, generateStream oraz --stream. Domyślny kawałek zawiera ramy kodekowe 3, o 139 ms audio. Automatyczne długotrwale tekstowe chunking i strumieniowe wejście tekstu pozostają niedostępne.
Każda wieża kodebook używa wartości symboli 4,096. Buforowany i strumieniowy przetwornik DAC Fish dekodujący oba pozostałe kody zaciskowe do pozostałych kodeków 1,024- entry. Zwrócone kodebooki zachowują oryginalne wartości wieży.
Nieprawidłowe wymiary obrotowe są odrzucane przed załadowaniem ciężarów modelu.