Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AudioTrack init failed when Bluetooth is connected #9712

Closed
gemiren opened this issue Nov 20, 2021 · 12 comments
Closed

AudioTrack init failed when Bluetooth is connected #9712

gemiren opened this issue Nov 20, 2021 · 12 comments
Assignees
Labels

Comments

@gemiren
Copy link

gemiren commented Nov 20, 2021

This bug was first observed after updating from ExoPlayer 2.11.8 to 2.12.0 and still happens with latest ExoPlayer 2.16.0.

I haven't been able to reproduce the bug myself yet but I've received many bug reports from my users. The bug happens when Bluetooth headset is connected, start playing will fail with AudioTrack init failed. Disconnecting the Bluetooth headset, then it will start play without any issue.

com.google.android.exoplayer2.ExoPlaybackException: MediaCodecAudioRenderer error, index=1, format=Format(null, null, null, audio/raw, null, -1, null, [-1, -1, -1.0], [2, 44100]), format_supported=YES
	at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(SourceFile:43)
	at android.os.Handler.dispatchMessage(Handler.java:102)
	at android.os.Looper.loop(Looper.java:164)
	at android.os.HandlerThread.run(HandlerThread.java:65)
Caused by: e.b.b.b.o3.u$b: AudioTrack init failed 0 Config(44100, 12, 1058400)
	at com.google.android.exoplayer2.audio.DefaultAudioSink$Configuration.buildAudioTrack(SourceFile:5)
	at com.google.android.exoplayer2.audio.DefaultAudioSink.buildAudioTrack(SourceFile:2)
	at com.google.android.exoplayer2.audio.DefaultAudioSink.initializeAudioTrack(SourceFile:2)
	at com.google.android.exoplayer2.audio.DefaultAudioSink.handleBuffer(SourceFile:16)
	at com.google.android.exoplayer2.audio.MediaCodecAudioRenderer.processOutputBuffer(SourceFile:7)
	at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.drainOutputBuffer(SourceFile:32)
	at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(SourceFile:16)
	at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(SourceFile:14)
	at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(SourceFile:25)

My player code is:

        val renderersFactory = DefaultRenderersFactory(context)
        renderersFactory.setEnableAudioTrackPlaybackParams(true)

        val adaptiveTrackSelectionFactory = AdaptiveTrackSelection.Factory()
        val trackSelector = DefaultTrackSelector(DefaultTrackSelector.Parameters.DEFAULT_WITHOUT_CONTEXT, adaptiveTrackSelectionFactory)

        player = ExoPlayer.Builder(context, renderersFactory)
                .setTrackSelector(trackSelector)
                .build()

This bug mostly happens on low end devices but it can also happen on high end devices such as Pixel 3.

Any help is appreciated.

@tonihei
Copy link
Collaborator

tonihei commented Nov 22, 2021

This bug was first observed after updating from ExoPlayer 2.11.8 to 2.12.0 and still happens with latest ExoPlayer 2.16.0.

How confident are you that this problem didn't occur with 2.11.8? If this is indeed the case then something in the DefaultAudioSink setup or how the class is being used must have changed in 2.12.0 that broke this use case. One setting that was new in 2.12.0 and you seem to be using is setEnableAudioTrackPlaybackParams. Have you ever tried disabling this feature (or haven't used it while these errors already occurred)?

The bug happens when Bluetooth headset is connected

Just to clarify: This bug happens when the headset is already connected when the playback starts. So it's not related to plugging in the headset during playback?

Also, did your error reports contain anything special about the type or capabilities of the headsets involved?

This bug mostly happens on low end devices

Generally, the initialization of an AudioTrack may fail if the device runs out of resources to create this audio track. This doesn't explain why this should be related to the Bluetooth headsets, but it could be an explanation for this type of error in general. If you happen to have a device where this issue occurred, you could run adb shell dumpsys media.audio_flinger to get a list of AudioTracks with associated metadata. This would tell you if there is a leak of unreleased AudioTracks somewhere that causes this issue.

@tonihei tonihei self-assigned this Nov 22, 2021
@gemiren
Copy link
Author

gemiren commented Nov 22, 2021

How confident are you that this problem didn't occur with 2.11.8?

I can't say this problem never occurred with 2.11.8. I may receive one similar bug report in a week with 2.11.8. With 2.12.0, I receive around 10 related bug reports every day. I tried reverting to 2.11.8 and those affected users told me this problem went away. Obviously this bug happens a lot more frequently since 2.12.0.

I've tried disabling setEnableAudioTrackPlaybackParams, this error still occurred.

This bug happens when the headset is already connected when the playback starts. So it's not related to plugging in the headset during playback?

Based on the information I gathered this bug happens when the headset is already connected before the playback starts. I haven't asked my users to test whether this bug still happens when plugging in the headset during playback.

did your error reports contain anything special about the type or capabilities of the headsets involved?

I saw different headsets were used. I don't think it's related to a specific headset model.

This doesn't explain why this should be related to the Bluetooth headsets

Yes, this is what puzzles me most. One user even sent me a video showed he couldn't start playing with headset connected. He disconnected the headset, then it played just fine.

Below is one dumpsys media.audio_flinger I received from my user. The device used is ZTE Z855 which only has 2G memory. pid: 4444 is my app.

DUMP OF SERVICE media.audio_flinger:
Library audio_pre_processing
  Noise Suppression / Qualcomm Fluence
    UUID: 1d97bb0b-9e2f-4403-9ae3-58c2554306f8
    TYPE: 58b4b260-8e06-11e0-aa8e-0002a5d5c51b
    apiVersion: 00020000
    flags: 00000203
  Acoustic Echo Canceler / Qualcomm Fluence
    UUID: 0f8d0d2a-59e5-45fe-b6e4-248c8a799109
    TYPE: 7b491460-8d4d-11e0-bd61-0002a5d5c51b
    apiVersion: 00020000
    flags: 00000203
Library offload_bundle
  (no effects)
Library proxy
  Proxy / AOSP
    UUID: af8da7e0-2ca1-11e3-b71d-0002a5d5c51b
    TYPE: ec7178ec-e5e1-4432-a3f4-4657e6795210
    apiVersion: 00020000
    flags: 00000050
  Visualizer / The Android Open Source Project
    UUID: 1d0a1a53-7d5d-48f2-8e71-27fbd10d842c
    TYPE: e46b26a0-dddd-11db-8afd-0002a5d5c51b
    apiVersion: 00020000
    flags: 00400008
  Qualcomm Technologies Insert Preset Reverb / Qualcomm Technologies, Inc.
    UUID: f3e178d2-ebcb-408e-8357-0002a5d5c51b
    TYPE: 47382d60-ddd8-11db-bf3a-0002a5d5c51b
    apiVersion: 00020000
    flags: 00400088
  Qualcomm Technologies Auxiliary Preset Reverb / Qualcomm Technologies, Inc.
    UUID: 1b78f587-6d1c-422e-8b84-0002a5d5c51b
    TYPE: 47382d60-ddd8-11db-bf3a-0002a5d5c51b
    apiVersion: 00020000
    flags: 00400001
  Qualcomm Technologies Insert Environmental Reverb / Qualcomm Technologies, Inc.
    UUID: b707403a-a1c1-4291-9573-0002a5d5c51b
    TYPE: c2e5d5f0-94bd-4763-9cac-4e234d06839e
    apiVersion: 00020000
    flags: 00400088
  Qualcomm Technologies Auxiliary Environmental Reverb / Qualcomm Technologies, Inc.
    UUID: 48404ac9-d202-4ccc-bf84-0002a5d5c51b
    TYPE: c2e5d5f0-94bd-4763-9cac-4e234d06839e
    apiVersion: 00020000
    flags: 00400001
  Equalizer / NXP Software Ltd.
    UUID: c8e70ecd-48ca-456e-8a4f-0002a5d5c51b
    TYPE: 0bed4300-ddd6-11db-8f34-0002a5d5c51b
    apiVersion: 00020000
    flags: 00400048
  Qualcomm Technologies Virtualizer / Qualcomm Technologies, Inc.
    UUID: d3467faa-acc7-4d34-acaf-0002a5d5c51b
    TYPE: 37cc2c00-dddd-11db-8577-0002a5d5c51b
    apiVersion: 00020000
    flags: 00400290
  Qualcomm Technologies Bass Boost / Qualcomm Technologies, Inc.
    UUID: 14804144-a5ee-4d24-aa88-0002a5d5c51b
    TYPE: 0634f220-ddd4-11db-a0fc-0002a5d5c51b
    apiVersion: 00020000
    flags: 00400290
Library loudness_enhancer
  Loudness Enhancer / The Android Open Source Project
    UUID: fa415329-2034-4bea-b5dc-5b381c8d1e2c
    TYPE: fe3199be-aed0-413f-87bb-11260eb63cf1
    apiVersion: 00020000
    flags: 00000008
Library downmix
  Multichannel Downmix To Stereo / The Android Open Source Project
    UUID: 93f04452-e4fe-41cc-91f9-e475b6d1d69f
    TYPE: 381e49cc-a858-4aa2-87f6-e8388e7601b2
    apiVersion: 00020000
    flags: 00000008
Library visualizer_hw
  (no effects)
Library visualizer_sw
  (no effects)
Library qcreverb
  (no effects)
Library qcvirt
  (no effects)
Library qcbassboost
  (no effects)
Library reverb
  (no effects)
Library bundle
  Volume / NXP Software Ltd.
    UUID: 119341a0-8469-11df-81f9-0002a5d5c51b
    TYPE: 09e8ede0-ddde-11db-b4f6-0002a5d5c51b
    apiVersion: 00020000
    flags: 00000050
Clients:
  pid: 3405
  pid: 4444
Notification Clients:
  pid: 342
  pid: 353
  pid: 2211
  pid: 3405
  pid: 3903
  pid: 4444
  pid: 10759
  pid: 13644
Global session refs:
  session   pid count
        9  3405     1
       89  4444     4
       97 13644     1
Hardware status: 0
Standby Time mSec: 3000

Output thread 0xadd839c0 type 0 (MIXER):
  Thread name: AudioOut_D
  I/O handle: 13
  TID: 612
  Standby: no
  Sample rate: 48000 Hz
  HAL frame count: 960
  HAL format: 0x1 (pcm16)
  HAL buffer size: 3840 bytes
  Channel count: 2
  Channel mask: 0x00000003 (front-left, front-right)
  Processing format: 0x1 (pcm16)
  Processing frame size: 4 bytes
  Pending config events: none
  Output device: 0x2 (SPEAKER)
  Input device: 0 (NONE)
  Audio source: 0 (default)
  Normal frame count: 960
  Last write occurred (msecs): 15
  Total writes: 26973
  Delayed writes: 0
  Blocked in write: yes
  Suspend count: 0
  Sink buffer : 0xae57e000
  Mixer buffer: 0xae564000
  Effect buffer: 0xae57f000
  Fast track availMask=0xfe
  Standby delay ns=3000000000
  AudioStreamOut: 0xaee2d0e0 flags 0x2 (PRIMARY)
  Frames written: 25894080
  Suspended frames: 0
  Hal stream dump:
  Thread throttle time (msecs): 114
  AudioMixer tracks: 0x00000001
  Master mono: off
  FastMixer not initialized
  Stream volumes in dB: 0:0, 1:-16, 2:-17, 3:-33, 4:-17, 5:-13, 6:0, 7:-6, 8:-17, 9:0, 10:-40, 11:0, 12:0
  Normal mixer raw underrun counters: partial=0 empty=0
  1 Tracks of which 1 are active
    Name Active Client Type      Fmt Chn mask Session fCount S F SRate  L dB  R dB    Server Main buf  Aux Buf Flags UndFrmCnt
       0    yes   4444    3 00000001 00000003      89 113408 A 3 44100     0     0  01235B92 0xaccff000 0x0 0x000         0 
  1 Effect Chains
    3 effects for session 89
	In buffer   Out buffer   Active tracks:
	0xaccff000  0xae57f000   1
	Effect ID 11:
		Session Status State Engine:
		00089   000    000   0xad84a6d0
		Descriptor:
		- UUID: C8E70ECD-48CA-456E-8A4F-0002A5D5C51B
		- TYPE: 0BED4300-DDD6-11DB-8F34-0002A5D5C51B
		- apiVersion: 00020000
		- flags: 00400048 (conn. mode: insert, insert pref: first, volume mgmt: implements control, input mode: not set, output mode: not set, offloadable)
		- name: Equalizer
		- implementor: NXP Software Ltd.
		- Input configuration:
			Frames  Smp rate Channels Format Buffer
			00960   48000    00000003      1 (pcm16) 0xaccff000
		- Output configuration:
			Buffer     Frames  Smp rate Channels Format
			0xaccff000 00960   48000    00000003 1 (pcm16)
		1 Clients:
			  Pid Priority Ctrl Locked client server
			 4444        0  yes    yes      0      0
	Effect ID 27:
		Session Status State Engine:
		00089   000    003   0xad84a8e0
		Descriptor:
		- UUID: FA415329-2034-4BEA-B5DC-5B381C8D1E2C
		- TYPE: FE3199BE-AED0-413F-87BB-11260EB63CF1
		- apiVersion: 00020000
		- flags: 00000008 (conn. mode: insert, insert pref: first, volume mgmt: none, input mode: not set, output mode: not set)
		- name: Loudness Enhancer
		- implementor: The Android Open Source Project
		- Input configuration:
			Frames  Smp rate Channels Format Buffer
			00960   48000    00000003      1 (pcm16) 0xaccff000
		- Output configuration:
			Buffer     Frames  Smp rate Channels Format
			0xaccff000 00960   48000    00000003 1 (pcm16)
		1 Clients:
			  Pid Priority Ctrl Locked client server
			 4444        0  yes    yes      0      0
	Effect ID 19:
		Session Status State Engine:
		00089   000    003   0xad84a7c0
		Descriptor:
		- UUID: 14804144-A5EE-4D24-AA88-0002A5D5C51B
		- TYPE: 0634F220-DDD4-11DB-A0FC-0002A5D5C51B
		- apiVersion: 00020000
		- flags: 00400290 (conn. mode: insert, insert pref: last, volume mgmt: requires indication, device indication: requires updates, input mode: not set, output mode: not set, offloadable)
		- name: Qualcomm Technologies Bass Boost
		- implementor: Qualcomm Technologies, Inc.
		- Input configuration:
			Frames  Smp rate Channels Format Buffer
			00960   48000    00000003      1 (pcm16) 0xaccff000
		- Output configuration:
			Buffer     Frames  Smp rate Channels Format
			0xae57f000 00960   48000    00000003 1 (pcm16)
		1 Clients:
			  Pid Priority Ctrl Locked client server
			 4444        0  yes    yes      0      0

Output thread 0xadb83600 type 0 (MIXER):
  Thread name: AudioOut_15
  I/O handle: 21
  TID: 618
  Standby: yes
  Sample rate: 48000 Hz
  HAL frame count: 240
  HAL format: 0x1 (pcm16)
  HAL buffer size: 960 bytes
  Channel count: 2
  Channel mask: 0x00000003 (front-left, front-right)
  Processing format: 0x5 (pcmfloat)
  Processing frame size: 8 bytes
  Pending config events: none
  Output device: 0 (NONE)
  Input device: 0 (NONE)
  Audio source: 0 (default)
  Normal frame count: 960
  Last write occurred (msecs): 875518
  Total writes: 0
  Delayed writes: 0
  Blocked in write: no
  Suspend count: 0
  Sink buffer : 0xaee62000
  Mixer buffer: 0xaee5f000
  Effect buffer: 0xaee61000
  Fast track availMask=0xfc
  Standby delay ns=3000000000
  AudioStreamOut: 0xaee2d150 flags 0x4 (FAST)
  Frames written: 0
  Suspended frames: 0
  PipeSink frames written: 0
  Hal stream dump:
  Thread throttle time (msecs): 0
  AudioMixer tracks: 0x00000001
  Master mono: off
  FastMixer command=COLD_IDLE writeSequence=0 framesWritten=0
            numTracks=0 writeErrors=0 underruns=0 overruns=0
            sampleRate=0 frameCount=0 measuredWarmup=0 ms, warmupCycles=0
            mixPeriod=nan ms
  No FastMixer statistics available currently
  Fast tracks: sMaxFastTracks=8 activeMask=0
  Index Active Full Partial Empty  Recent Ready    Written
      0     no    0       0     0    full     0          0
      1     no    0       0     0    full     0          0
      2     no    0       0     0    full     0          0
      3     no    0       0     0    full     0          0
      4     no    0       0     0    full     0          0
      5     no    0       0     0    full     0          0
      6     no    0       0     0    full     0          0
      7     no    0       0     0    full     0          0
  Stream volumes in dB: 0:0, 1:-16, 2:-17, 3:-40, 4:-17, 5:-13, 6:0, 7:-6, 8:-17, 9:0, 10:-40, 11:0, 12:0
  Normal mixer raw underrun counters: partial=0 empty=0
  1 Tracks of which 0 are active
    Name Active Client Type      Fmt Chn mask Session fCount S F SRate  L dB  R dB    Server Main buf  Aux Buf Flags UndFrmCnt
    F  1     no   3405    1 00000001 00000001       9    960 I 0 48000     0     0  00000000 0xaee62000 0x0 0x004         0 
  0 Effect Chains

USB audio module:
  No output streams.

  No input streams.

Reroute submix audio module:
 route[0] rate in=0 out=0, addr=[]
 route[1] rate in=0 out=0, addr=[]
 route[2] rate in=0 out=0, addr=[]
 route[3] rate in=0 out=0, addr=[]
 route[4] rate in=0 out=0, addr=[]
 route[5] rate in=0 out=0, addr=[]
 route[6] rate in=0 out=0, addr=[]
 route[7] rate in=0 out=0, addr=[]
 route[8] rate in=0 out=0, addr=[]
 route[9] rate in=48000 out=48000, addr=[]
--------- 0.017s was the duration of dumpsys media.audio_flinger

@krocard
Copy link
Contributor

krocard commented Nov 23, 2021

The audio format is stereo pcm, its suprizing it would fail.

Has any of your user shared a bug report with you? It contains the system logcat at the time of the error would gave us much more information about the issue as well as the dumpsys of media.audio_policy would give us the BT capabilities.
It would be best if the bug report was taken just after the playback failed to start and the device untouched (eg do not disconnect the bluetooth) until the bug report is full generated.
If you're unable to share bug reports or test content publicly, please send them to [email protected] using a subject in the format "Issue #1234" ("#1234" is replaced with your issue number). Please also update this issue to indicate you've done this.

If no bug report is available, the logcat around the time of the playback failure would be helpfull.

@krocard
Copy link
Contributor

krocard commented Nov 23, 2021

The fact that it is related to Bluetooth is not overly suprizing. Bluetooth has a very complex state where a lot can go wrong. It could be for example that the Bluetooth stack errors attempting to start start playback in a particular state. We will know more when we can have the framework error logs when init fails.
What is more suprizing is that this low level error happens more or less frequently on different ExoPlayer version.

@gemiren
Copy link
Author

gemiren commented Nov 23, 2021

Sent the bug report to [email protected]. Thanks.

@gemiren
Copy link
Author

gemiren commented Nov 24, 2021

Turns out the error is caused by setEnableAudioTrackPlaybackParams(true). I enabled this option in ExoPlayer demo app then this same issue can be reproduced. This issue went away if I commented out setEnableAudioTrackPlaybackParams(true).

Here is the bug report generated after this bug happened and Bluetooth headset still connected.
bugreport-WW_X00RD-OPM1.171019.019-2021-11-23-19-37-43.zip

Here is the screenshot of the demo app with the playback failed message.
screenshot-2021-11-23-19-37-43-1

@krocard
Copy link
Contributor

krocard commented Nov 24, 2021

Thanks for the bug report. The error is logged just before the init failure: E AudioFlinger: not enough memory for AudioTrack size=2097376.

The issue is that when setEnableAudioTrackPlaybackParams is enabled, the audio track buffer is multiplied by 8 (MAX_PLAYBACK_SPEED) . The >2MB binder shared memory buffer is denied and playback fails.

This might be due to Binders max memory allocation of 1MB (documented https://developer.android.com/reference/android/os/TransactionTooLargeException), or it might due to memory exaustion on low memory device. Especially if this is only reproduced on low memory devices.

Testing is required to make sure there is a hard limit of 1MB to AudioTrack buffers. If there is, we should cap the AudioTrack buffer size to 1MB to avoid this issue. Otherwise, we would have to implement a retry with a smaller buffer size.

@tonihei tonihei assigned krocard and unassigned tonihei Nov 25, 2021
@krocard
Copy link
Contributor

krocard commented Nov 25, 2021

The plan is currently to limit the buffer to 1MB with a minimum of the minimum buffer size as reported by AudioTrack. In pseudocode: max(minBufferSize, min(bufferSize, 1MB)).

@krocard
Copy link
Contributor

krocard commented Nov 26, 2021

This mean that outragously high bandwith playback like 32bit 96kHz 7.1 surround (3MB/s) would probably start having underrun at arround 2x (162ms for 1MB buffer). In those cases it would be preferable to have a bigger buffer.
An alternative would be to limit the buffer size only if the allocation failed the first time.

@gemiren
Copy link
Author

gemiren commented Nov 28, 2021

Looking forward to the fix. Thanks!

andrewlewis pushed a commit to androidx/media that referenced this issue Feb 1, 2022
Some phone with limited memory can't allocate bigger
shared memory buffers.
This might or might not be related to Binder's 1M
transaction limit.

Tested on Pixel 4 by setting the minimum buffer size to
1h.

google/ExoPlayer#9712

#minor-release

PiperOrigin-RevId: 425324536
icbaker pushed a commit that referenced this issue Feb 1, 2022
Some phone with limited memory can't allocate bigger
shared memory buffers.
This might or might not be related to Binder's 1M
transaction limit.

Tested on Pixel 4 by setting the minimum buffer size to
1h.

#9712

#minor-release

PiperOrigin-RevId: 425324536
@domier
Copy link

domier commented Apr 25, 2022

Just curious - was it ever confirmed that these pushes fixed the issue? Plex claims to implement 2.17.1, but what appears to be the same issue is still occurring:

`04-21 07:34:53.561 i: [FFmpeg] [INFO] [hls @ 0xb42f1400] Opening 'https://192-168-1-34.91039e1f9ebe40ed851bfb93ab971b53.plex.direct:32400/video/:/transcode/universal/session/27cf9f1a4f9197d3-com-plexapp-android/base/00159.ts' for reading

04-21 07:34:53.600 i: [MediaCodecVideoSyncRenderer] Decoder initialised, after 0 attempts.
04-21 07:34:53.600 i: [ExoPlayer][EventLogger] videoDecoderInitialized [eventTime=1.97, mediaPos=1599.51, window=0, period=0, OMX.amlogic.avc.decoder.awesome2]
04-21 07:34:53.601 i: [ExoPlayer][EventLogger] videoInputFormat [eventTime=1.98, mediaPos=1599.51, window=0, period=0, id=0, mimeType=video/avc, bitrate=8607000, codecs=h264, res=1920x1080, fps=23.976025]
04-21 07:34:53.608 i: [ExoPlayer][EventLogger] audioInputFormat [eventTime=1.98, mediaPos=1599.51, window=0, period=0, id=1, mimeType=audio/ac3, bitrate=8607000, codecs=ac3, channels=6, sample_rate=48000, language=english, selectionFlags=[default,forced]]
04-21 07:34:53.608 i: [TranscodeSession] Updating session status
04-21 07:34:53.610 i: Fetching [method:GET] https://192.168.1.34:32400/transcode/sessions/27cf9f1a4f9197d3-com-plexapp-android?X-Plex-Token=...qtD3&X-Plex-Language=en-us
04-21 07:34:53.625 i: [TranscodeSession] Resolution: -1x-1, Video: Remux, Audio: Transcode, Speed: 34.500000, Throttled: false
04-21 07:34:54.129 i: [ThemeMusic] Fade out complete. Stopping media player.
04-21 07:34:54.572 i: [FFmpeg] [INFO] [hls @ 0xb42f1400] Opening 'https://192-168-1-34.91039e1f9ebe40ed851bfb93ab971b53.plex.direct:32400/video/:/transcode/universal/session/27cf9f1a4f9197d3-com-plexapp-android/base/00160.ts' for reading

04-21 07:34:55.726 i: [FFmpeg] [INFO] [https @ 0xadc1f800] Opening 'https://192-168-1-34.91039e1f9ebe40ed851bfb93ab971b53.plex.direct:32400/video/:/transcode/universal/session/27cf9f1a4f9197d3-com-plexapp-android/base/00161.ts' for reading

04-21 07:34:55.955 i: [ExoPlayer][EventLogger] videoDisabled [eventTime=4.33, mediaPos=1599.51, window=0, period=0]
04-21 07:34:55.956 i: [ExoPlayer][EventLogger] audioDisabled [eventTime=4.34, mediaPos=1599.51, window=0, period=0]
04-21 07:34:56.007 i: [FF][MediaPeriod] Releasing.
04-21 07:34:56.007 i: [FF] Loading canceled (released: true)
04-21 07:34:56.008 i: [FFmpeg] [INFO] Demuxer has been successfully interupted.
04-21 07:34:56.010 i: [FF] Releasing demuxer.
04-21 07:34:56.011 i: [FFmpeg] [INFO] Demuxer closing.
04-21 07:34:56.017 e: [ExoPlayer][EventLogger] playerFailed [eventTime=4.39, mediaPos=1599.51, window=0, period=0, errorCode=ERROR_CODE_AUDIO_TRACK_INIT_FAILED
com.google.android.exoplayer2.o: MediaCodecAudioRenderer error, index=3, format=Format(1, null, null, audio/ac3, ac3, 8607000, english, [-1, -1, -1.0], [6, 48000]), format_supported=YES
at com.google.android.exoplayer2.r1.handleMessage(SourceFile:43)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:214)
at android.os.HandlerThread.run(HandlerThread.java:67)
Caused by: com.google.android.exoplayer2.audio.t$b: AudioTrack init failed 0 Config(48000, 252, 39998)
at com.google.android.exoplayer2.audio.b0$f.b(SourceFile:7)
at com.google.android.exoplayer2.audio.b0.F(SourceFile:1)
at com.google.android.exoplayer2.audio.b0.G(SourceFile:1)
at com.google.android.exoplayer2.audio.b0.V(SourceFile:2)
at com.google.android.exoplayer2.audio.b0.f(SourceFile:16)
at com.google.android.exoplayer2.audio.g0.Y(SourceFile:7)
at r2.o.b(SourceFile:8)
at r2.o.render(SourceFile:11)
at com.google.android.exoplayer2.r1.q(SourceFile:14)
at com.google.android.exoplayer2.r1.handleMessage(SourceFile:25)
... 3 more
Suppressed: com.google.android.exoplayer2.audio.t$b: AudioTrack init failed 0 Config(48000, 252, 39998)
... 13 more
Caused by: java.lang.UnsupportedOperationException: Cannot create AudioTrack
at android.media.AudioTrack$Builder.build(AudioTrack.java:1018)
at com.google.android.exoplayer2.audio.b0$f.g(SourceFile:11)
at com.google.android.exoplayer2.audio.b0$f.e(SourceFile:2)
at com.google.android.exoplayer2.audio.b0$f.b(SourceFile:1)
... 12 more
Caused by: java.lang.UnsupportedOperationException: Cannot create AudioTrack
at android.media.AudioTrack$Builder.build(AudioTrack.java:1018)
at com.google.android.exoplayer2.audio.b0$f.g(SourceFile:11)
at com.google.android.exoplayer2.audio.b0$f.e(SourceFile:2)
at com.google.android.exoplayer2.audio.b0$f.b(SourceFile:1)
... 12 more
]
04-21 07:34:56.018 e: [Player][ExoPlayer] Playback error detected
04-21 07:34:56.021 i: [FFmpeg] [INFO] Demuxer has been interupted...
04-21 07:34:56.022 i: [FFmpeg] [INFO] Demuxer has been closed, interrupting FFmpeg...
04-21 07:34:56.022 e: An exception occurred: com.google.android.exoplayer2.o: MediaCodecAudioRenderer error, index=3, format=Format(1, null, null, audio/ac3, ac3, 8607000, english, [-1, -1, -1.0], [6, 48000]), format_supported=YES
04-21 07:34:56.023 i: [Player][Timeline] Handling player error
04-21 07:34:56.023 i: [Player][Timeline] Playback stopped (error: true)
04-21 07:34:56.024 e: Stacktrace: com.google.android.exoplayer2.o: MediaCodecAudioRenderer error, index=3, format=Format(1, null, null, audio/ac3, ac3, 8607000, english, [-1, -1, -1.0], [6, 48000]), format_supported=YES
at com.google.android.exoplayer2.r1.handleMessage(SourceFile:43)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:214)
at android.os.HandlerThread.run(HandlerThread.java:67)
Caused by: com.google.android.exoplayer2.audio.t$b: AudioTrack init failed 0 Config(48000, 252, 39998)
at com.google.android.exoplayer2.audio.b0$f.b(SourceFile:7)
at com.google.android.exoplayer2.audio.b0.F(SourceFile:1)
at com.google.android.exoplayer2.audio.b0.G(SourceFile:1)
at com.google.android.exoplayer2.audio.b0.V(SourceFile:2)
at com.google.android.exoplayer2.audio.b0.f(SourceFile:16)
at com.google.android.exoplayer2.audio.g0.Y(SourceFile:7)
at r2.o.b(SourceFile:8)
at r2.o.render(SourceFile:11)
at com.google.android.exoplayer2.r1.q(SourceFile:14)
at com.google.android.exoplayer2.r1.handleMessage(SourceFile:25)
... 3 more
Suppressed: com.google.android.exoplayer2.audio.t$b: AudioTrack init failed 0 Config(48000, 252, 39998)
... 13 more
Caused by: java.lang.UnsupportedOperationException: Cannot create AudioTrack
at android.media.AudioTrack$Builder.build(AudioTrack.java:1018)
at com.google.android.exoplayer2.audio.b0$f.g(SourceFile:11)
at com.google.android.exoplayer2.audio.b0$f.e(SourceFile:2)
at com.google.android.exoplayer2.audio.b0$f.b(SourceFile:1)
... 12 more
Caused by: java.lang.UnsupportedOperationException: Cannot create AudioTrack
at android.media.AudioTrack$Builder.build(AudioTrack.java:1018)
at com.google.android.exoplayer2.audio.b0$f.g(SourceFile:11)
at com.google.android.exoplayer2.audio.b0$f.e(SourceFile:2)
at com.google.android.exoplayer2.audio.b0$f.b(SourceFile:1)
... 12 more

04-21 07:34:56.025 i: [Player][Timeline] Player error not known by server, reporting original player error (or a playback interrupted one)
04-21 07:34:56.025 i: [Player] Error reported: UnknownError (null)
04-21 07:34:56.026 i: [Player][Timeline] Playback stopped (error: false)
04-21 07:34:56.031 i: [FFmpeg] [INFO] Demuxer has been interupted...
04-21 07:34:56.032 i: [FFmpeg] [INFO] Demuxer has been closed, interrupting FFmpeg...
04-21 07:34:56.043 i: [TranscodeSession] Stopping...
04-21 07:34:56.045 i: [FFmpeg] [INFO] Demuxer has been interupted...
04-21 07:34:56.045 i: [Player][Error] Displaying player error...
04-21 07:34:56.046 i: [DialogBehaviour] Showing dialog.
04-21 07:34:56.048 i: [FFmpeg] [INFO] Demuxer has been closed, interrupting FFmpeg...
04-21 07:34:56.048 i: [ExoPlayer][EventLogger] state [eventTime=4.43, mediaPos=1599.51, window=0, period=0, IDLE]
04-21 07:34:56.055 i: [BufferHelper] Assumed Bitrate: 400000, Segment Count: 46875
04-21 07:34:56.056 i: [BufferHelper] Detected memory pressure, reducing segment count to fit available memory: 384
04-21 07:34:56.057 i: [BufferHelper] Segment count: 2457
04-21 07:34:56.061 i: [TranscodeSession] Notifying server that we've stopped
04-21 07:34:56.062 i: Fetching [method:GET] https://192.168.1.34:32400/video/:/transcode/universal/stop?autoAdjustQuality=1&hasMDE=1&location=lan&mediaBufferSize=157248&path=%2Flibrary%2Fmetadata%2F113560&session=27cf9f1a4f9197d3-com-plexapp-android&X-Plex-Client-Identifier=27cf9f1a4f9197d3-com-plexapp-android&X-Plex-Client-Platform=Android&X-Plex-Device=Chromecast&X-Plex-Platform=Android&X-Plex-Platform-Version=10&X-Plex-Product=Plex%20for%20Android%20(TV)&X-Plex-Version=9.0.6.31998&X-Plex-Token=...qtD3&X-Plex-Language=en-us
04-21 07:34:56.063 i: [FFmpeg] [INFO] [Cache] Close requested, terminating.
04-21 07:34:56.064 i: [FFmpeg] [INFO] [Cache] Cache has been closed, interrupting AVIO ...
04-21 07:34:56.075 i: [FFmpeg] [INFO] [Cache] Close requested, terminating.
04-21 07:34:56.076 i: [FFmpeg] [INFO] Demuxer pipeline terminated.
04-21 07:34:56.077 i: [FFmpeg] [INFO] Demuxer has been successfully closed.
04-21 07:34:58.641 i: [EngineEventManager] onPlaybackStopped: Closed
04-21 07:34:58.642 i: [Player][Timeline] Playback stopped (error: false)
04-21 07:34:58.642 i: [VideoAwakeBehaviour] Keep screen awake has been requested disabled for VideoAwakeBehaviour.
04-21 07:34:58.643 i: [PlaybackTimeBehaviour] Time: 0 IsStarted: false
04-21 07:34:58.643 i: [TranscodeSession] Stopping...
04-21 07:34:58.644 i: [PlayQueueProgressBehaviour] Updating PlayQueueManager state, isPlaying: false
04-21 07:34:58.645 i: [SleepTimerBehaviour] Sleep timer behaviour changed.
04-21 07:34:58.646 i: [WiFiLockBehaviour] Releasing WiFi lock since playback was stopped.
04-21 07:34:58.646 i: [DisplayBehaviour] Cancelling stop playback runnable to prevent unexpected stop.
04-21 07:34:58.650 i: [MediaSessionBehaviour] Updating state to STOPPED
04-21 07:34:58.654 i: [BufferHelper] Assumed Bitrate: 400000, Segment Count: 46875
04-21 07:34:58.655 i: [BufferHelper] Detected memory pressure, reducing segment count to fit available memory: 384
04-21 07:34:58.656 i: [BufferHelper] Segment count: 2457
04-21 07:34:58.657 i: [MemoryOptimisationBehaviour] Expanding memory cache.
04-21 07:34:58.658 i: [TranscodeSession] Notifying server that we've stopped
04-21 07:34:58.659 i: [VideoAwakeBehaviour] Keep screen awake has been requested disabled for VideoAwakeBehaviour.
04-21 07:34:58.661 i: [AudioFocusBehaviour] Behaviour being destroyed, giving up audio focus
04-21 07:34:58.662 i: Fetching [method:GET] https://192.168.1.34:32400/video/:/transcode/universal/stop?autoAdjustQuality=1&hasMDE=1&location=lan&mediaBufferSize=157248&path=%2Flibrary%2Fmetadata%2F113560&session=27cf9f1a4f9197d3-com-plexapp-android&X-Plex-Client-Identifier=27cf9f1a4f9197d3-com-plexapp-android&X-Plex-Client-Platform=Android&X-Plex-Device=Chromecast&X-Plex-Platform=Android&X-Plex-Platform-Version=10&X-Plex-Product=Plex%20for%20Android%20(TV)&X-Plex-Version=9.0.6.31998&X-Plex-Token=...qtD3&X-Plex-Language=en-us
04-21 07:34:58.672 i: [HomeHubs] Item content source server://ea56c5c54c05c89d04eb4390de6df9f2b50915bb/com.plexapp.plugins.library has volatile hubs: marking as stale.
04-21 07:34:58.676 i: [DisplayBehaviour] Cancelling stop playback runnable to prevent unexpected stop.
04-21 07:34:58.677 i: [UpdateChannelsBehaviour] app in foreground, scheduling a pending update Item was updated or removed
04-21 07:34:58.678 i: [PreplayViewModel] Refreshing metadata for Season 1
04-21 07:34:58.681 i: [HomeHubsManager] Discovering. Force: false. Partial: false. Reason: volatile hub updated
04-21 07:34:58.687 e: Error fetching https://192.168.1.34:32400/video/:/transcode/universal/stop?autoAdjustQuality=1&hasMDE=1&location=lan&mediaBufferSize=157248&path=%2Flibrary%2Fmetadata%2F113560&session=27cf9f1a4f9197d3-com-plexapp-android&X-Plex-Client-Identifier=27cf9f1a4f9197d3-com-plexapp-android&X-Plex-Client-Platform=Android&X-Plex-Device=Chromecast&X-Plex-Platform=Android&X-Plex-Platform-Version=10&X-Plex-Product=Plex%20for%20Android%20(TV)&X-Plex-Version=9.0.6.31998&X-Plex-Token=...tml>
04-21 07:34:58.688 i: [MergingHubManager] Notifying listeners with status: SUCCESS
04-21 07:34:58.700 i: [MediaSessionBehaviour] Releasing MediaSessionHelper
04-21 07:34:58.704 i: [MediaSessionHelper] Releasing media session with tag: video
04-21 07:34:58.706 i: [DisplayBehaviour] Reverting back to the original display mode.
04-21 07:34:58.710 i: [DisplayBehaviour] Mode is already set to our best mode of 1920x1080 @ 59.9401Hz (1).
04-21 07:34:58.712 i: [DynamicHome] Reusing results from previous discovery.
04-21 07:34:58.718 i: [DynamicHome] Starting new discovery task because there are stale content sources.
04-21 07:34:58.736 i: Fetching [method:GET] https://192.168.1.34:32400/hubs/continueWatching?contentDirectoryID=1%2C3%2C2&includeDetails=1&includeExternalMetadata=1&includeLibraryPlaylists=1&includeMeta=1&includeRecentChannels=1&includeStations=1&includeTypeFirst=1&libraryHubsOnly=1&X-Plex-Token=...qtD3&X-Plex-Language=en-us
04-21 07:34:58.745 i: [MediaSessionBehaviour] Releasing MediaSessionHelper
04-21 07:34:58.774 i: [ThemeMusic] Playing new theme music.
04-21 07:34:58.796 i: Resuming HomeActivity.`

@gemiren
Copy link
Author

gemiren commented Apr 26, 2022

The original bug reported in this issue tracking has been fixed. Thanks!

@gemiren gemiren closed this as completed Apr 26, 2022
@google google locked and limited conversation to collaborators Jun 25, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

5 participants