Skip to content

[BUG]  #81

Description

@McKpol

Prerequisites

  • I have checked that there are no open issues that are the same or very similar to mine, and I understand that my issue will be closed if it is a duplicate
  • I have filled in all required fields to the best of my ability, and I understand that my issue will be closed if they are not
  • I have copied the device & app info to my clipboard and pasted it into the device info section where indicated, and I understand that my issue will be closed if it is not
  • I have uploaded appropriate screenshots and log files, and I understand that my issue may be closed or remain unresolved if not
  • My issue is written in English, and I understand that my issue will be closed if it is not
  • I understand that my issue will be closed if all 5 of these checkboxes are not checked

Issue Description (required)

When I try to compress 191 fps screenrecording to be 30/60 fps, the app does crash. However it doesn't happen when I set to input FPS.

Expected Behaviour (required)

I would to compress my 191 FPS into 30 FPS without outputting an error. It would be amazing if I will be able to save it to my gallery.

Device Info (required)

Device Manufacturer* (e.g. Samsung): Xiaomi

  • Device Model* (e.g. Galaxy S10): Poco F6 (aka. Redmi Turbo 3)
  • Android Version* (e.g. 12): Android 16, Infinity X 3.1
  • Compressor Version* (e.g. 1.1.0): 1.5.7
  • Where did you get Compressor from?* (GitHub Releases, IzzyOnDroid/F-Droid, Google Play Store): Droid-ify (F-droid)
  • Device Chipset (e.g. Exynos 9820): Snapdragon 8s gen 3
  • Device Model Number (e.g. SM-G973F): 24069PC21G

App Version: 1.5.7
Device: Xiaomi 24069PC21G (Android 16)
Supported Encoders: video/avc, video/hevc

Screenshots (required)

Screenshot_20260707-203352_Compressor.png

Logcat (Error log)

Device: Xiaomi 24069PC21G
Android Version: 16 (SDK 36)
App Version: 1.5.7
Original: 2448x1220 @ 191.0fps
Target: 1220p @ 60fps
Codec: video/hevc
Error: Codec exception: CodecInfo{type=VideoEncoder, configurationFormat={exo-pixel-width-height-ratio-float=1.0, sar-width=1, color-format=2130708361, i-frame-interval=1.0, is-forced-subtitle=0, importance=2000, mime=video/hevc, bitrate=13248048, codecs-string=avc1.640034, priority=1, operating-rate=2147483647, encoder-delay=0, sar-height=1, width=2448, bitrate-mode=2, is-autoselect=0, is-default=0, encoder-padding=0, frame-rate=191, rotation-degrees=0, height=1220}, name=c2.qti.hevc.encoder}

Stack Trace:
androidx.media3.transformer.ExportException: Codec exception: CodecInfo{type=VideoEncoder, configurationFormat={exo-pixel-width-height-ratio-float=1.0, sar-width=1, color-format=2130708361, i-frame-interval=1.0, is-forced-subtitle=0, importance=2000, mime=video/hevc, bitrate=13248048, codecs-string=avc1.640034, priority=1, operating-rate=2147483647, encoder-delay=0, sar-height=1, width=2448, bitrate-mode=2, is-autoselect=0, is-default=0, encoder-padding=0, frame-rate=191, rotation-degrees=0, height=1220}, name=c2.qti.hevc.encoder}
	at androidx.media3.transformer.DefaultCodec.createExportException(DefaultCodec.java:465)
	at androidx.media3.transformer.DefaultCodec.createExportException(DefaultCodec.java:443)
	at androidx.media3.transformer.DefaultCodec.maybeDequeueOutputBuffer(DefaultCodec.java:390)
	at androidx.media3.transformer.DefaultCodec.getOutputFormat(DefaultCodec.java:279)
	at androidx.media3.transformer.VideoSampleExporter$EncoderWrapper.getOutputFormat(VideoSampleExporter.java:428)
	at androidx.media3.transformer.VideoSampleExporter.getMuxerInputFormat(VideoSampleExporter.java:179)
	at androidx.media3.transformer.SampleExporter.feedMuxer(SampleExporter.java:105)
	at androidx.media3.transformer.SampleExporter.processData(SampleExporter.java:79)
	at androidx.media3.transformer.TransformerInternal.drainExportersInternal(TransformerInternal.java:390)
	at androidx.media3.transformer.TransformerInternal.handleMessage(TransformerInternal.java:358)
	at androidx.media3.transformer.TransformerInternal.$r8$lambda$bzZKK-tnQO9QOb4NEtMsm46hw_4(Unknown Source:0)
	at androidx.media3.transformer.TransformerInternal$$ExternalSyntheticLambda0.handleMessage(D8$$SyntheticClass:0)
	at android.os.Handler.dispatchMessage(Handler.java:106)
	at android.os.Looper.loopOnce(Looper.java:248)
	at android.os.Looper.loop(Looper.java:338)
	at android.os.HandlerThread.run(HandlerThread.java:85)
Caused by: java.lang.IllegalStateException: Invalid to call at Released state; only valid in executing state

	at android.media.MediaCodec.native_dequeueOutputBuffer(Native Method)
	at android.media.MediaCodec.dequeueOutputBuffer(MediaCodec.java:4287)
	at androidx.media3.transformer.DefaultCodec.maybeDequeueOutputBuffer(DefaultCodec.java:387)
	... 13 more


Metadata

Metadata

Assignees

Labels

bugSomething isn't workingtriageThis issue has not been reviewed yet

Projects

Status
Ready

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions