jonataslaw / jonataslaw/VideoCompress
java.lang.IllegalStateException: Failed to stop the muxer
- Dominant language
- Swift
- Stars
- 262
- Forks
- 344
- PR merge metrics
- No merged PRs in 30d
Description
D/MPEG4Writer(29390): Duration from tracks range is [3819978, 3863500] us
D/MPEG4Writer(29390): Stopping writer thread
D/MPEG4Writer(29390): 0 chunks are written in the last batch
D/MPEG4Writer(29390): Writer thread stopped
E/TranscodeEngine(29390): Unexpected error while transcoding.
E/TranscodeEngine(29390): java.lang.IllegalStateException: Failed to stop the muxer
E/TranscodeEngine(29390): at android.media.MediaMuxer.nativeStop(Native Method)
E/TranscodeEngine(29390): at android.media.MediaMuxer.stop(MediaMuxer.java:466)
E/TranscodeEngine(29390): at com.otaliastudios.transcoder.sink.DefaultDataSink.stop(DefaultDataSink.java:218)
E/TranscodeEngine(29390): at com.otaliastudios.transcoder.internal.transcode.DefaultTranscodeEngine.transcode(DefaultTranscodeEngine.kt:132)
E/TranscodeEngine(29390): at com.otaliastudios.transcoder.internal.transcode.TranscodeEngine$Companion.transcode(TranscodeEngine.kt:48)
E/TranscodeEngine(29390): at com.otaliastudios.transcoder.internal.transcode.TranscodeEngine.transcode(Unknown Source:2)
E/TranscodeEngine(29390): at com.otaliastudios.transcoder.Transcoder$1.call(Transcoder.java:102)
E/TranscodeEngine(29390): at com.otaliastudios.transcoder.Transcoder$1.call(Transcoder.java:99)
E/TranscodeEngine(29390): at java.util.concurrent.FutureTask.run(FutureTask.java:266)
E/TranscodeEngine(29390): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
E/TranscodeEngine(29390): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
E/TranscodeEngine(29390): at java.lang.Thread.run(Thread.java:919)
I/Decoder(VIDEO,5)(29390): release(): releasing codec. dequeuedInputs=0 dequeuedOutputs=0
E/MediaMuxer(29390): stop() is called in invalid state 3
W/DefaultDataSink(29390): Failed to release the muxer.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with DefaultDataSink.stop and DefaultTranscodeEngine.transcode, which are named in the stack trace, and inspect the MediaMuxer lifecycle around the failing stop call. Reproduce the reported transcoding failure if possible; done means the muxer no longer reaches the invalid state and the failure is covered by an appropriate regression check.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, kotlin
- Domain
- mobile-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100