Better debugging for TrackTranscoderException
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 663
- Forks
- 92
- PR merge metrics
- No merged PRs in 30d
Description
```
Transformation job error
com.linkedin.android.litr.exception.TrackTranscoderException: Failed to configure encoder codec.Media transformation failed for job id: null
Media format: {color-format=6, durationUs=7832955, mime=video/x-vnd.on2.vp9, profile=32, width=768, bitrate=8000000, frame-rate=30, height=1280}
Diagnostic info: null
at com.linkedin.android.litr.utils.CodecUtils.getAndConfigureCodec(CodecUtils.java:217)
// ...
Caused by: java.lang.IllegalStateException
at com.linkedin.android.litr.utils.CodecUtils.createAndConfigureCodec(CodecUtils.java:283)
at com.linkedin.android.litr.utils.CodecUtils.getAndConfigureCodecByType(CodecUtils.java:230)
at com.linkedin.android.litr.utils.CodecUtils.getAndConfigureCodec(CodecUtils.java:205)
```
I did some debugging and that exception from `CodecUtils.java:283` is coming from an `IllegalArgumentException` from the native code, but there's not much info to go on.
I have tried a variation of including / not including these keys on `createVideoFormat`:
`KEY_PROFILE`
`KEY_COLOR_FORMAT`
`KEY_BIT_RATE`
`KEY_DURATION`
Replacing `createVideoFormat` with `null` works but I'm trying to downscale a video.
What's the best way to figure out what's going on?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing CodecUtils.java at lines 205, 217, 230, and 283, then review how createVideoFormat is called with KEY_PROFILE, KEY_COLOR_FORMAT, KEY_BIT_RATE, and KEY_DURATION. Reproduce the VP9 downscaling failure and inspect the native IllegalArgumentException path; done should mean TrackTranscoderException provides more useful diagnostic information than the current null details.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, java
- Domain
- audio-video-rtc, mobile
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100