TT-7585 Voice Conversion allows unsupported Speaker info files (Image/Document) and fails during Conversion - #569
Merged
Conversation
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Move the extension and MIME lists out of the effect body, drop the no-op map, and add the missing Link, MarkDown and FaithbridgeLink entries. Indexing now falls back to an empty string instead of casting undefined to string, so UploadType.Burrito no longer sets accept to "undefined". Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Generated localization files still need to be rebuilt from this XLIFF by running localization/bin/Debug/updateLocalization.exe on Windows. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Thread an audioOnly prop from ProvideRights through Uploader, PassageRecordDlg and MediaUpload to MediaUploadContent. When set, the dialog accepts only the Media audio formats and shows the audio-only rights release instructions instead of the audio or visual wording. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Adapt the existing fr, pt, ru, zh, es and id translations of the audio-or-visual upload string to the new audio-only variant, dropping the visual-format wording, so those languages have a fallback before CrowdIn translates the new string.
Run localization/bin/Debug/updateLocalization.exe to rebuild TranscriberAdmin-en.xlf, model.tsx, reducers.tsx and strings*.json from the updated XLIFF sources.
Contributor
There was a problem hiding this comment.
🟡 Changes recommended
The new accept-type tables in MediaUploadContent are incomplete relative to the UploadType enum and should be aligned to avoid future indexing/validation bugs.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
This PR addresses TT-7585 by tightening media upload validation for Voice Conversion speaker-rights release uploads, ensuring non-audio “Speaker info” files (images/documents) are rejected up-front to prevent downstream conversion failures.
Changes:
- Added an
audioOnlyoption to the upload component chain (Uploader → dialogs → MediaUploadContent) to restrict accepted file types to audio formats when required. - Added a dedicated localized instruction string for “audio-only” intellectual property uploads.
- Refactored accepted extensions/MIME type lists into shared tables to support the new
audioOnlybehavior.
File summaries
| File | Description |
|---|---|
| src/renderer/src/store/localization/reducers.tsx | Adds a new localized media upload string for the audio-only IP task prompt. |
| src/renderer/src/store/localization/model.tsx | Extends IMediaUploadStrings with intellectualPropertyAudioTask. |
| src/renderer/src/store/localization/exported-strings-name.json | Updates the exported localization bundle filename reference. |
| src/renderer/src/components/Uploader.tsx | Plumbs new audioOnly prop down into PassageRecordDlg / MediaUpload. |
| src/renderer/src/components/ProvideRights.tsx | Enables audioOnly for IP uploads when aiip is true. |
| src/renderer/src/components/PassageRecordDlg.tsx | Adds audioOnly prop and passes it into MediaUploadContent. |
| src/renderer/src/components/MediaUploadContent.tsx | Implements audioOnly accept-filtering and centralizes accept lists. |
| src/renderer/src/components/MediaUpload.tsx | Adds audioOnly prop and forwards it to MediaUploadContent. |
| localization/TranscriberAdmin-en.xlf | Adds translation unit for mediaUpload.intellectualPropertyAudioTask. |
| localization/TranscriberAdmin-en-1.2.xliff | Adds translation unit for mediaUpload.intellectualPropertyAudioTask. |
| localization/TranscriberAdmin-es.xlf | Adds translation unit for mediaUpload.intellectualPropertyAudioTask. |
| localization/TranscriberAdmin-fr.xlf | Adds translation unit for mediaUpload.intellectualPropertyAudioTask. |
| localization/TranscriberAdmin-id.xlf | Adds translation unit for mediaUpload.intellectualPropertyAudioTask. |
| localization/TranscriberAdmin-pt.xlf | Adds translation unit for mediaUpload.intellectualPropertyAudioTask. |
| localization/TranscriberAdmin-ru.xlf | Adds translation unit for mediaUpload.intellectualPropertyAudioTask. |
| localization/TranscriberAdmin-zh.xlf | Adds translation unit for mediaUpload.intellectualPropertyAudioTask. |
Review details
- Files reviewed: 16/19 changed files
- Comments generated: 1
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
nghtctrl
marked this pull request as ready for review
September 2, 2026 21:20
sarahentzel
approved these changes
Sep 2, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changes:
Screenshot of the audio-only upload dialog: