amazon-chime-sdk-android
amazon-chime-sdk-android copied to clipboard
1080x1920 Camera Input resulting in 1072x1920
Hello,
I have recently been building out a chime implementation on web, iOS, and Android and have been exploring how to offer the best video resolutions to the user. In doing so, I noticed a strange issue: when 1 android device turns on video using a format of 1080x1920@15, a 2nd android device receives the video tile, but it reports in the console log as 1072 instead of 1080.
As a side note, I am also curious if there is an easy way to detect the framerate that a video source is being sent - I am currently trying to understand if attempting 30fps (which does seem to work currently) is actually sending 30fps or still just 15.
Thank you for any insight you may be able to provide!
For reference, the devices in use are as follows: Device 1 which is sending video: Google Pixel 4a OS 11 Device 2 which is receiving and logging: Moto G Play OS 6.0.1
Log In Question: 08-02 12:31:56.314 6511-6511/com.fod247.b2c I/MeetingFragment: Video tile added, tileId: 14, attendeeId: 89e1cbff-8c10-fa3c-bec2-31ef133655ca, isContent false with size 1072*1920
Full Log (after redacting some additional network traffic and leak information): 08-02 12:31:52.700 6511-6511/com.fod247.b2c I/MeetingActivity: Creating meeting session for meeting Id: 69c234b6-f39e-4870-a19b-07faf9f00706 08-02 12:31:52.703 6511-6511/com.fod247.b2c I/audioclient_jni: [audio client] INTIALIZED 08-02 12:31:52.704 6511-6511/com.fod247.b2c I/AudioClient: SPK LAT: 40.5(ms) MIC LAT: 40.0(ms) 08-02 12:31:52.705 6511-6511/com.fod247.b2c I/AudioClient: SPK LAT: 40.083332(ms) MIC LAT: 40.0(ms) NATIVE SR: 48000 08-02 12:31:52.744 6511-6894/com.fod247.b2c I/DemoCpuVideoProcessor: Created demo CPU video processor 08-02 12:31:52.747 6511-6895/com.fod247.b2c I/DemoGpuVideoProcessor: Created demo GPU video processor 08-02 12:31:52.787 6511-6511/com.fod247.b2c I/DefaultAudioClientController: spkMinBufSizeInSamples 1924 micMinBufSizeInSamples 1920 08-02 12:31:52.805 6511-6511/com.fod247.b2c I/DefaultVideoClientController: Initializing video client 08-02 12:31:52.806 6511-6511/com.fod247.b2c I/DefaultVideoClientController: Starting video client 08-02 12:31:52.806 6511-6511/com.fod247.b2c I/videoclient_jni: video client - startService: 08-02 12:31:52.806 6511-6511/com.fod247.b2c I/videoclient_jni: Reported App Detail Info: { app_version_name: Android 2.4.1, app_version_code: 1157, device_model: Moto G Play, device_make: motorola, platform_name: android, platform_version: 6.0.1, client_source: amazon-chime-sdk, chime_sdk_version: 0.11.5 } 08-02 12:31:52.807 6511-6511/com.fod247.b2c W/Logging: HardwareVideoEncoderFactory: No shared EglBase.Context. Encoders will not use texture mode. 08-02 12:31:52.809 6511-6511/com.fod247.b2c W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc 08-02 12:31:52.812 6511-6511/com.fod247.b2c W/VideoCapabilities: Unrecognized profile 2130706433 for video/avc 08-02 12:31:52.846 6511-6899/com.fod247.b2c I/DNSServerUtils: Get 4 DNS addresses. 08-02 12:31:52.846 6511-6899/com.fod247.b2c I/videoclient_jni: Get second dns address from client: 2001:558:feed::2 08-02 12:31:52.846 6511-6899/com.fod247.b2c E/videoclient_jni: video client DNS: dns1 2001:558:feed::1, dns2 2001:558:feed::2 08-02 12:31:52.850 6511-6511/com.fod247.b2c I/DefaultVideoClientController: Starting remote video 08-02 12:31:52.851 6511-6904/com.fod247.b2c I/Logging: EglBase14Impl: Using OpenGL ES version 2 08-02 12:31:52.853 6511-6899/com.fod247.b2c I/DefaultVideoClientObserver: isConnecting 08-02 12:31:52.854 6511-6511/com.fod247.b2c I/DefaultVideoClientController: Starting remote video 08-02 12:31:52.860 6511-6899/com.fod247.b2c I/DNSServerUtils: Get 4 DNS addresses. 08-02 12:31:52.860 6511-6899/com.fod247.b2c I/videoclient_jni: Get second dns address from client: 2001:558:feed::2 08-02 12:31:52.860 6511-6899/com.fod247.b2c E/videoclient_jni: video client DNS: dns1 2001:558:feed::1, dns2 2001:558:feed::2 08-02 12:31:52.905 6511-6511/com.fod247.b2c I/MeetingFragment: meetingStartRequested {"timestampMs":1627925512796,"deviceName":"motorola Moto G Play","deviceManufacturer":"motorola","deviceModel":"Moto G Play","mediaSdkVersion":"0.11.4","osName":"Android","osVersion":"6.0.1","sdkName":"amazon-chime-sdk-android","sdkVersion":"0.11.5","meetingId":"69c234b6-f39e-4870-a19b-07faf9f00706","attendeeId":"5370e15b-f4d9-22eb-8149-c21e4201de19","externalUserId":"656","externalMeetingId":"278"} 08-02 12:31:52.906 6511-6511/com.fod247.b2c I/MeetingFragment: [Function] [onAudioSessionStartedConnecting]: reconnecting: false 08-02 12:31:52.906 6511-6511/com.fod247.b2c I/audioclient_jni: Reported AppInfo: { app_version_name: Android 2.4.1, app_version_code: 1157, device_make: motorola, device_model: Moto G Play, platform_name: Android, platform_version: 6.0.1, client_source: amazon-chime-sdk, chime_sdk_version: 0.11.5 } 08-02 12:31:52.916 6511-6889/com.fod247.b2c W/AudioTrack: AUDIO_OUTPUT_FLAG_FAST denied by client; transfer 1, track 16000 Hz, output 48000 Hz 08-02 12:31:52.921 6511-6889/com.fod247.b2c W/AudioRecord: AUDIO_INPUT_FLAG_FAST denied by client; transfer 1, track 16000 Hz, primary 48000 Hz 08-02 12:31:52.928 6511-6889/com.fod247.b2c D/audioclient_jni: MEDIA STREAM STATE CALLBACK IN C STATE IS 1 08-02 12:31:52.928 6511-6889/com.fod247.b2c I/DefaultAudioClientObserver: AudioClient State: Connecting Status: OK 08-02 12:31:52.954 6511-6511/com.fod247.b2c I/DefaultAudioClientController: Started audio session. 08-02 12:31:52.955 6511-6511/com.fod247.b2c I/MeetingFragment: [Function] [onVideoSessionStartedConnecting]: 08-02 12:31:52.982 6511-6511/com.fod247.b2c I/DefaultAudioClientController: Setting route to 2 08-02 12:31:53.207 6511-6889/com.fod247.b2c D/audioclient_jni: MEDIA STREAM STATE CALLBACK IN C STATE IS 2 08-02 12:31:53.207 6511-6889/com.fod247.b2c I/DefaultAudioClientObserver: AudioClient State: FinishConnecting Status: OK 08-02 12:31:53.218 6511-6511/com.fod247.b2c W/AudioRecord: AUDIO_INPUT_FLAG_FAST denied by client; transfer 1, track 16000 Hz, primary 48000 Hz 08-02 12:31:53.224 6511-6511/com.fod247.b2c W/AudioTrack: AUDIO_OUTPUT_FLAG_FAST denied by client; transfer 1, track 16000 Hz, output 48000 Hz 08-02 12:31:53.274 6511-6899/com.fod247.b2c I/DefaultVideoClientObserver: didConnect with controlStatus: 0 08-02 12:31:53.311 6511-6899/com.fod247.b2c D/DefaultVideoClientObserver: cameraSendIsAvailable: true 08-02 12:31:53.390 6511-6906/com.fod247.b2c D/DefaultAudioClientObserver: Added: AttendeeInfo(attendeeId=16f78c54-c155-1a44-ffa7-57de9758c9e9, externalUserId=640) AttendeeInfo(attendeeId=5370e15b-f4d9-22eb-8149-c21e4201de19, externalUserId=656) AttendeeInfo(attendeeId=89e1cbff-8c10-fa3c-bec2-31ef133655ca, externalUserId=653) 08-02 12:31:53.462 6511-6899/com.fod247.b2c D/DefaultVideoClientObserver: cameraSendIsAvailable: true 08-02 12:31:53.631 6511-6899/com.fod247.b2c E/DefaultVideoClientObserver: video_client_stream_info.cc: [013:174][6899] (line 132): Subscribe Ack allocation count greater then local stream count 08-02 12:31:53.674 6511-6901/com.fod247.b2c I/Logging: AndroidVideoDecoder: ctor name: OMX.qcom.video.decoder.avc type: H264 color format: 19 context: null 08-02 12:31:53.677 6511-6901/com.fod247.b2c I/Logging: AndroidVideoDecoder: ctor name: OMX.google.h264.decoder type: H264 color format: 19 context: null 08-02 12:31:53.685 6511-6901/com.fod247.b2c I/Logging: AndroidVideoDecoder: ctor name: OMX.qcom.video.decoder.avc type: H264 color format: 19 context: null 08-02 12:31:53.687 6511-6901/com.fod247.b2c I/Logging: AndroidVideoDecoder: ctor name: OMX.google.h264.decoder type: H264 color format: 19 context: null 08-02 12:31:53.703 6511-6901/com.fod247.b2c I/Logging: AndroidVideoDecoder: ctor name: OMX.qcom.video.decoder.avc type: H264 color format: 19 context: null 08-02 12:31:53.709 6511-6901/com.fod247.b2c I/Logging: AndroidVideoDecoder: ctor name: OMX.google.h264.decoder type: H264 color format: 19 context: null 08-02 12:31:53.718 6511-6901/com.fod247.b2c I/Logging: AndroidVideoDecoder: ctor name: OMX.qcom.video.decoder.avc type: H264 color format: 19 context: null 08-02 12:31:53.721 6511-6901/com.fod247.b2c I/Logging: AndroidVideoDecoder: ctor name: OMX.google.h264.decoder type: H264 color format: 19 context: null 08-02 12:31:53.731 6511-6901/com.fod247.b2c I/Logging: AndroidVideoDecoder: ctor name: OMX.qcom.video.decoder.avc type: H264 color format: 19 context: null 08-02 12:31:53.733 6511-6901/com.fod247.b2c I/Logging: AndroidVideoDecoder: ctor name: OMX.google.h264.decoder type: H264 color format: 19 context: null 08-02 12:31:53.785 6511-6898/com.fod247.b2c D/MeetingFragment: [Function] [onActiveSpeakerScoreChanged]: 08-02 12:31:53.847 6511-6899/com.fod247.b2c D/DefaultVideoClientObserver: cameraSendIsAvailable: true 08-02 12:31:53.891 6511-6511/com.fod247.b2c I/MeetingFragment: meetingStartSucceeded {"timestampMs":1627925513207,"maxVideoTileCount":0,"retryCount":0,"poorConnectionCount":0,"meetingDurationMs":1,"deviceName":"motorola Moto G Play","deviceManufacturer":"motorola","deviceModel":"Moto G Play","mediaSdkVersion":"0.11.4","osName":"Android","osVersion":"6.0.1","sdkName":"amazon-chime-sdk-android","sdkVersion":"0.11.5","meetingId":"69c234b6-f39e-4870-a19b-07faf9f00706","attendeeId":"5370e15b-f4d9-22eb-8149-c21e4201de19","externalUserId":"656","externalMeetingId":"278"} 08-02 12:31:53.891 6511-6511/com.fod247.b2c I/MeetingFragment: Meeting started on : {"deviceName":"motorola Moto G Play","deviceManufacturer":"motorola","deviceModel":"Moto G Play","mediaSdkVersion":"0.11.4","osName":"Android","osVersion":"6.0.1","sdkName":"amazon-chime-sdk-android","sdkVersion":"0.11.5","meetingId":"69c234b6-f39e-4870-a19b-07faf9f00706","attendeeId":"5370e15b-f4d9-22eb-8149-c21e4201de19","externalUserId":"656","externalMeetingId":"278"} 08-02 12:31:53.891 6511-6511/com.fod247.b2c I/MeetingFragment: [Function] [onAudioSessionStarted]: reconnecting: false 08-02 12:31:53.900 6511-6511/com.fod247.b2c I/Choreographer: Skipped 38 frames! The application may be doing too much work on its main thread. 08-02 12:31:54.111 6511-6899/com.fod247.b2c E/DefaultVideoClientObserver: video_client_stream_info.cc: [013:654][6899] (line 132): Subscribe Ack allocation count greater then local stream count 08-02 12:31:54.222 6511-6899/com.fod247.b2c D/DefaultVideoClientObserver: cameraSendIsAvailable: true 08-02 12:31:54.408 6511-6559/com.fod247.b2c I/art: Starting a blocking GC Explicit 08-02 12:31:54.491 6511-6559/com.fod247.b2c I/art: Explicit concurrent mark sweep GC freed 70557(3MB) AllocSpace objects, 14(280KB) LOS objects, 19% free, 67MB/83MB, paused 2.525ms total 82.870ms 08-02 12:31:54.536 6511-6928/com.fod247.b2c I/Logging: AndroidVideoDecoder: initDecodeInternal name: OMX.qcom.video.decoder.avc type: H264 width: 1072 height: 1920 08-02 12:31:54.536 6511-6928/com.fod247.b2c I/MediaCodec: name=OMX.qcom.video.decoder.avc isType=false encoder=false 08-02 12:31:54.537 6511-6928/com.fod247.b2c I/MediaCodec: (0xb907f3c0) init name(OMX.qcom.video.decoder.avc) isType(0) encoder(0) 08-02 12:31:54.546 6511-6931/com.fod247.b2c I/OMXClient: Using client-side OMX mux. 08-02 12:31:54.560 6511-6930/com.fod247.b2c I/MediaCodec: (0xb907f3c0) Component Allocated (OMX.qcom.video.decoder.avc) 08-02 12:31:54.561 6511-6928/com.fod247.b2c I/MediaCodec: (0xb907f3c0) configure surface(0x0) crypto(0x0) flags(0) 08-02 12:31:54.561 6511-6928/com.fod247.b2c D/MediaCodec: (0xb907f3c0) configure format: AMessage(what = 0x00000000) = { int32_t height = 1920 int32_t width = 1072 string mime = "video/avc" int32_t color-format = 19 } 08-02 12:31:54.562 6511-6511/com.fod247.b2c I/MeetingFragment: [Function] [onVideoSessionStarted]: OK 08-02 12:31:54.563 6511-6511/com.fod247.b2c I/MeetingFragment: [Function] [onAttendeesMuted]: Attendee with attendeeId 16f78c54-c155-1a44-ffa7-57de9758c9e9 and externalUserId 640 muted 08-02 12:31:54.563 6511-6511/com.fod247.b2c I/MeetingFragment: [Function] [onAttendeesMuted]: Attendee with attendeeId 89e1cbff-8c10-fa3c-bec2-31ef133655ca and externalUserId 653 muted 08-02 12:31:54.567 6511-6931/com.fod247.b2c I/ExtendedCodec: Decoder will be in frame by frame mode 08-02 12:31:54.568 6511-6931/com.fod247.b2c W/ExtendedCodec: Failed to set frame packing format on component 08-02 12:31:54.568 6511-6931/com.fod247.b2c I/ACodec: [OMX.qcom.video.decoder.avc] setupVideoDecoder Width Height (1072x1920) 08-02 12:31:54.568 6511-6931/com.fod247.b2c I/ACodec: mime (video/avc) compressionFormat (7) 08-02 12:31:54.571 6511-6511/com.fod247.b2c D/MeetingFragment: [Function] [onSignalStrengthChanged]: 656 High 08-02 12:31:54.571 6511-6511/com.fod247.b2c I/Choreographer: Skipped 40 frames! The application may be doing too much work on its main thread. 08-02 12:31:54.601 6511-6511/com.fod247.b2c D/MeetingFragment: Media metrics received: {audioReceivePacketLossPercent=0.0, audioSendPacketLossPercent=10.0} 08-02 12:31:54.616 6511-6511/com.fod247.b2c D/MeetingFragment: [Function] [onSignalStrengthChanged]: 640 High 08-02 12:31:54.616 6511-6511/com.fod247.b2c D/MeetingFragment: [Function] [onSignalStrengthChanged]: 653 High 08-02 12:31:54.676 6511-6928/com.fod247.b2c I/MediaCodec: (0xb907f3c0) start 08-02 12:31:54.684 6511-6930/com.fod247.b2c I/MediaCodec: (0xb907f3c0) input buffers allocated 08-02 12:31:54.684 6511-6930/com.fod247.b2c I/MediaCodec: (0xb907f3c0) numBuffers (4) 08-02 12:31:54.704 6511-6930/com.fod247.b2c I/MediaCodec: (0xb907f3c0) output buffers allocated 08-02 12:31:54.704 6511-6930/com.fod247.b2c I/MediaCodec: (0xb907f3c0) numBuffers (6) 08-02 12:31:54.706 6511-6928/com.fod247.b2c I/Logging: AndroidVideoDecoder: initDecodeInternal done 08-02 12:31:54.759 6511-6930/com.fod247.b2c I/MediaCodec: (0xb907f3c0) output buffers allocated 08-02 12:31:54.759 6511-6930/com.fod247.b2c I/MediaCodec: (0xb907f3c0) numBuffers (3) 08-02 12:31:55.290 6511-6928/com.fod247.b2c E/Logging: AndroidVideoDecoder: decode() - no HW buffers available; decoder falling behind 08-02 12:31:55.290 6511-6928/com.fod247.b2c I/Logging: AndroidVideoDecoder: release 08-02 12:31:55.314 6511-6941/com.fod247.b2c I/Logging: AndroidVideoDecoder: Releasing MediaCodec on output thread 08-02 12:31:55.314 6511-6941/com.fod247.b2c I/MediaCodec: (0xb907f3c0) stop 08-02 12:31:55.361 6511-6930/com.fod247.b2c I/MediaCodec: (0xb907f3c0) codec output format changed 08-02 12:31:55.362 6511-6930/com.fod247.b2c D/MediaCodec: (0xb907f3c0) output format: AMessage(what = 'codc', target = 8) = { string mime = "video/raw" int32_t stride = 1072 int32_t slice-height = 1920 int32_t color-format = 19 Buffer *image-data = 0xb954e2a8 Rect crop(0, 0, 1071, 1919) int32_t width = 1072 int32_t height = 1920 int32_t what = 1869968451 } 08-02 12:31:55.368 6511-6511/com.fod247.b2c I/Choreographer: Skipped 33 frames! The application may be doing too much work on its main thread. 08-02 12:31:55.383 6511-6511/com.fod247.b2c I/MeetingFragment: [Function] [onAttendeesMuted]: Attendee with attendeeId 5370e15b-f4d9-22eb-8149-c21e4201de19 and externalUserId 656 muted 08-02 12:31:55.383 6511-6511/com.fod247.b2c I/MeetingFragment: Mike Harlow joined the meeting 08-02 12:31:55.383 6511-6511/com.fod247.b2c I/MeetingFragment: Anonymous Patron joined the meeting 08-02 12:31:55.429 6511-6941/com.fod247.b2c I/MediaCodec: (0xb907f3c0) release 08-02 12:31:55.440 6511-6941/com.fod247.b2c I/Logging: AndroidVideoDecoder: Release on output thread done 08-02 12:31:55.442 6511-6928/com.fod247.b2c I/Logging: AndroidVideoDecoder: initDecodeInternal name: OMX.qcom.video.decoder.avc type: H264 width: 1072 height: 1920 08-02 12:31:55.442 6511-6928/com.fod247.b2c I/MediaCodec: name=OMX.qcom.video.decoder.avc isType=false encoder=false 08-02 12:31:55.446 6511-6928/com.fod247.b2c I/MediaCodec: (0xb972bd98) init name(OMX.qcom.video.decoder.avc) isType(0) encoder(0) 08-02 12:31:55.448 6511-6946/com.fod247.b2c I/OMXClient: Using client-side OMX mux. 08-02 12:31:55.458 6511-6945/com.fod247.b2c I/MediaCodec: (0xb972bd98) Component Allocated (OMX.qcom.video.decoder.avc) 08-02 12:31:55.459 6511-6928/com.fod247.b2c I/MediaCodec: (0xb972bd98) configure surface(0x0) crypto(0x0) flags(0) 08-02 12:31:55.459 6511-6928/com.fod247.b2c D/MediaCodec: (0xb972bd98) configure format: AMessage(what = 0x00000000) = { int32_t height = 1920 int32_t width = 1072 string mime = "video/avc" int32_t color-format = 19 } 08-02 12:31:55.459 6511-6946/com.fod247.b2c I/ExtendedCodec: Decoder will be in frame by frame mode 08-02 12:31:55.460 6511-6946/com.fod247.b2c W/ExtendedCodec: Failed to set frame packing format on component 08-02 12:31:55.460 6511-6946/com.fod247.b2c I/ACodec: [OMX.qcom.video.decoder.avc] setupVideoDecoder Width Height (1072x1920) 08-02 12:31:55.460 6511-6946/com.fod247.b2c I/ACodec: mime (video/avc) compressionFormat (7) 08-02 12:31:55.538 6511-6928/com.fod247.b2c I/MediaCodec: (0xb972bd98) start 08-02 12:31:55.542 6511-6945/com.fod247.b2c I/MediaCodec: (0xb972bd98) input buffers allocated 08-02 12:31:55.542 6511-6945/com.fod247.b2c I/MediaCodec: (0xb972bd98) numBuffers (4) 08-02 12:31:55.571 6511-6945/com.fod247.b2c I/MediaCodec: (0xb972bd98) output buffers allocated 08-02 12:31:55.571 6511-6945/com.fod247.b2c I/MediaCodec: (0xb972bd98) numBuffers (6) 08-02 12:31:55.574 6511-6928/com.fod247.b2c I/Logging: AndroidVideoDecoder: initDecodeInternal done 08-02 12:31:55.785 6511-6898/com.fod247.b2c D/MeetingFragment: [Function] [onActiveSpeakerScoreChanged]: 653: 0.0,656: 0.08999999999999998,640: 0.0 08-02 12:31:55.891 6511-6899/com.fod247.b2c E/video_client_webrtc_stats.cc: [015:434][6899] (line 375): Significant difference between receive FPS and output FPS; notify:video_received_output_fps_difference 08-02 12:31:55.892 6511-6511/com.fod247.b2c D/MeetingFragment: Media metrics received: {audioReceivePacketLossPercent=0.0, audioSendPacketLossPercent=14.0, videoAvailableReceiveBandwidth=0.0, videoReceiveBitrate=1488211.9168257222, videoReceivePacketLossPercent=0.0} 08-02 12:31:55.898 6511-6945/com.fod247.b2c I/MediaCodec: (0xb972bd98) output buffers allocated 08-02 12:31:55.898 6511-6945/com.fod247.b2c I/MediaCodec: (0xb972bd98) numBuffers (3) 08-02 12:31:56.293 6511-6945/com.fod247.b2c I/MediaCodec: (0xb972bd98) codec output format changed 08-02 12:31:56.293 6511-6945/com.fod247.b2c D/MediaCodec: (0xb972bd98) output format: AMessage(what = 'codc', target = 11) = { string mime = "video/raw" int32_t stride = 1072 int32_t slice-height = 1920 int32_t color-format = 19 Buffer image-data = 0xb98d9a08 Rect crop(0, 0, 1071, 1919) int32_t width = 1072 int32_t height = 1920 int32_t what = 1869968451 } 08-02 12:31:56.293 6511-6956/com.fod247.b2c I/Logging: AndroidVideoDecoder: Decoder format changed: {image-data=java.nio.ByteArrayBuffer[position=0,limit=80,capacity=80], mime=video/raw, crop-top=0, crop-right=1071, slice-height=1920, color-format=19, height=1920, width=1072, what=1869968451, crop-bottom=1919, crop-left=0, stride=1072} 08-02 12:31:56.294 6511-6956/com.fod247.b2c I/Logging: AndroidVideoDecoder: Color: 0x13 08-02 12:31:56.294 6511-6956/com.fod247.b2c I/Logging: AndroidVideoDecoder: Frame stride and slice height: 1072 x 1920 08-02 12:31:56.313 6511-6929/com.fod247.b2c I/DefaultVideoTileController: Adding video tile with videoId = 14, attendeeId = 89e1cbff-8c10-fa3c-bec2-31ef133655ca, pauseState = Unpaused 08-02 12:31:56.314 6511-6511/com.fod247.b2c I/MeetingFragment: Video tile added, tileId: 14, attendeeId: 89e1cbff-8c10-fa3c-bec2-31ef133655ca, isContent false with size 10721920 08-02 12:31:56.330 6511-6511/com.fod247.b2c I/DefaultVideoTileController: Binding VideoView to Tile with tileId = 14 08-02 12:31:56.330 6511-6511/com.fod247.b2c I/DefaultVideoTileController: Initializing EGL state on EGL render view 08-02 12:31:56.330 6511-6511/com.fod247.b2c I/SurfaceRenderView: Initializing render view 08-02 12:31:56.330 6511-6511/com.fod247.b2c I/DefaultEglRenderer: Initializing EGL renderer 08-02 12:31:56.339 6511-6511/com.fod247.b2c I/art: Note: end time exceeds epoch: 08-02 12:31:56.345 6511-6511/com.fod247.b2c I/DefaultVideoTile: Binding the View to Tile 08-02 12:31:56.346 6511-6511/com.fod247.b2c D/SurfaceRenderView: Setting mirror from false to false 08-02 12:31:56.347 6511-6511/com.fod247.b2c D/SurfaceRenderView: Setting scaling type from AspectFill to AspectFit 08-02 12:31:56.347 6511-6511/com.fod247.b2c D/SurfaceRenderView: Setting hardware scaling from false to false 08-02 12:31:56.348 6511-6511/com.fod247.b2c D/SurfaceRenderView: Setting measured dimensions 720x1008 08-02 12:31:56.353 6511-6511/com.fod247.b2c I/DefaultEglRenderer: Setting aspect ratio from 0.0 to 0.71428573 08-02 12:31:56.356 6511-6929/com.fod247.b2c I/SurfaceRenderView: Video frame rotated size changed to 1072x1920 with rotation Rotation0 08-02 12:31:56.364 6511-6511/com.fod247.b2c I/SurfaceRenderView: Surface created, creating EGL surface with resource 08-02 12:31:56.364 6511-6961/com.fod247.b2c I/DefaultEglRenderer: Request on handler thread to create EGL surface from input surface Surface(name=null)/@0xf20436b 08-02 12:31:56.602 6511-6559/com.fod247.b2c I/art: Starting a blocking GC Explicit 08-02 12:31:56.687 6511-6559/com.fod247.b2c I/art: Explicit concurrent mark sweep GC freed 11722(1215KB) AllocSpace objects, 3(72KB) LOS objects, 19% free, 67MB/83MB, paused 2.641ms total 85.583ms 08-02 12:31:56.786 6511-6898/com.fod247.b2c D/MeetingFragment: [Function] [onActiveSpeakerScoreChanged]: 653: 0.0,656: 0.08999999999999998,640: 0.0 08-02 12:31:56.805 6511-6559/com.fod247.b2c W/ResourceType: For resource 0x7f0903df, entry index(991) is beyond type entryCount(991) 08-02 12:31:56.957 6511-6511/com.fod247.b2c I/Choreographer: Skipped 35 frames! The application may be doing too much work on its main thread. 08-02 12:31:56.964 6511-6511/com.fod247.b2c D/SurfaceRenderView: Setting measured dimensions 563x1008 08-02 12:31:56.975 6511-6511/com.fod247.b2c I/DefaultEglRenderer: Setting aspect ratio from 0.71428573 to 0.55853176 08-02 12:31:57.620 6511-6511/com.fod247.b2c D/MeetingFragment: Media metrics received: {audioReceivePacketLossPercent=0.0, audioSendPacketLossPercent=0.0, videoAvailableReceiveBandwidth=0.0, videoReceiveBitrate=1077480.260044337, videoReceivePacketLossPercent=0.0} 08-02 12:31:57.785 6511-6898/com.fod247.b2c D/MeetingFragment: [Function] [onActiveSpeakerScoreChanged]: 653: 0.0,656: 0.08099999999999999,640: 0.0 08-02 12:32:04.302 6511-6559/com.fod247.b2c W/art: Exiting due to checkpoint at art/runtime/hprof/hprof.cc:728 08-02 12:32:04.302 6511-6559/com.fod247.b2c I/art: hprof: heap dump timed out 08-02 12:32:04.304 6511-6511/com.fod247.b2c I/Choreographer: Skipped 377 frames! The application may be doing too much work on its main thread. 08-02 12:32:04.312 6511-6898/com.fod247.b2c D/MeetingFragment: [Function] [onActiveSpeakerScoreChanged]: 653: 0.0,656: 0.06561,640: 0.0 08-02 12:32:04.324 6511-6898/com.fod247.b2c D/MeetingFragment: [Function] [onActiveSpeakerScoreChanged]: 653: 0.0,656: 0.06561,640: 0.0 08-02 12:32:04.328 6511-6898/com.fod247.b2c D/MeetingFragment: [Function] [onActiveSpeakerScoreChanged]: 653: 0.0,656: 0.06561,640: 0.0 08-02 12:32:04.330 6511-6898/com.fod247.b2c D/MeetingFragment: [Function] [onActiveSpeakerScoreChanged]: 653: 0.0,656: 0.06561,640: 0.0 08-02 12:32:04.330 6511-6898/com.fod247.b2c D/MeetingFragment: [Function] [onActiveSpeakerScoreChanged]: 653: 0.0,656: 0.06561,640: 0.0 08-02 12:32:04.331 6511-6898/com.fod247.b2c D/MeetingFragment: [Function] [onActiveSpeakerScoreChanged]: 653: 0.0,656: 0.06561,640: 0.0 08-02 12:32:04.351 6511-6916/com.fod247.b2c W/AudioTrack: releaseBuffer() track 0xb95605a8 disabled due to previous underrun, restarting 08-02 12:32:04.383 6511-6511/com.fod247.b2c D/MeetingFragment: Media metrics received: {audioReceivePacketLossPercent=0.0, audioSendPacketLossPercent=0.0, videoAvailableReceiveBandwidth=975940.0, videoReceiveBitrate=1107775.8262813347, videoReceivePacketLossPercent=0.0} 08-02 12:32:04.789 6511-6898/com.fod247.b2c D/MeetingFragment: [Function] [onActiveSpeakerScoreChanged]: 653: 0.0,656: 0.06561,640: 0.0 08-02 12:32:04.927 6511-6511/com.fod247.b2c D/MeetingFragment: [Function] [onSignalStrengthChanged]: 656 Low 08-02 12:32:05.326 6511-6511/com.fod247.b2c D/MeetingFragment: [Function] [onSignalStrengthChanged]: 656 None 08-02 12:32:05.391 6511-6511/com.fod247.b2c D/MeetingFragment: Media metrics received: {audioReceivePacketLossPercent=74.0, audioSendPacketLossPercent=0.0, videoAvailableReceiveBandwidth=1142286.0, videoReceiveBitrate=370504.65432461986, videoReceivePacketLossPercent=0.0} 08-02 12:32:05.786 6511-6898/com.fod247.b2c D/MeetingFragment: [Function] [onActiveSpeakerScoreChanged]: 653: 0.0,656: 0.059049000000000004,640: 0.0 08-02 12:32:06.391 6511-6899/com.fod247.b2c E/video_client_webrtc_stats.cc: [025:934][6899] (line 375): Significant difference between receive FPS and output FPS; notify:video_received_output_fps_difference 08-02 12:32:06.393 6511-6511/com.fod247.b2c D/MeetingFragment: Media metrics received: {audioReceivePacketLossPercent=100.0, audioSendPacketLossPercent=0.0, videoAvailableReceiveBandwidth=1225341.0, videoReceiveBitrate=1291529.5409414324, videoReceivePacketLossPercent=0.0} 08-02 12:32:06.526 6511-6511/com.fod247.b2c D/MeetingFragment: [Function] [onSignalStrengthChanged]: 656 Low 08-02 12:32:06.785 6511-6898/com.fod247.b2c D/MeetingFragment: [Function] [onActiveSpeakerScoreChanged]: 653: 0.0,656: 0.05314410000000001,640: 0.0 08-02 12:32:07.391 6511-6899/com.fod247.b2c E/video_client_webrtc_stats.cc: [026:934][6899] (line 375): Significant difference between receive FPS and output FPS; notify:video_received_output_fps_difference 08-02 12:32:07.786 6511-6898/com.fod247.b2c D/MeetingFragment: [Function] [onActiveSpeakerScoreChanged]: 653: 0.0,656: 0.04782969000000001,640: 0.0 08-02 12:32:08.212 6511-6511/com.fod247.b2c D/MeetingFragment: Media metrics received: {audioReceivePacketLossPercent=0.0, audioSendPacketLossPercent=0.0, videoAvailableReceiveBandwidth=1325611.0, videoReceiveBitrate=1182707.9136374488, videoReceivePacketLossPercent=0.0} 08-02 12:32:08.397 6511-6899/com.fod247.b2c E/video_client_webrtc_stats.cc: [027:939][6899] (line 375): Significant difference between receive FPS and output FPS; notify:video_received_output_fps_difference 08-02 12:32:08.694 6511-6928/com.fod247.b2c E/Logging: AndroidVideoDecoder: decode() - no HW buffers available; decoder falling behind 08-02 12:32:08.694 6511-6928/com.fod247.b2c I/Logging: AndroidVideoDecoder: release 08-02 12:32:08.704 6511-6956/com.fod247.b2c I/Logging: AndroidVideoDecoder: Releasing MediaCodec on output thread 08-02 12:32:08.704 6511-6956/com.fod247.b2c I/MediaCodec: (0xb972bd98) stop 08-02 12:32:08.762 6511-6956/com.fod247.b2c I/MediaCodec: (0xb972bd98) release 08-02 12:32:08.775 6511-6956/com.fod247.b2c I/Logging: AndroidVideoDecoder: Release on output thread done 08-02 12:32:08.775 6511-6928/com.fod247.b2c I/Logging: AndroidVideoDecoder: initDecodeInternal name: OMX.qcom.video.decoder.avc type: H264 width: 1072 height: 1920 08-02 12:32:08.776 6511-6928/com.fod247.b2c I/MediaCodec: name=OMX.qcom.video.decoder.avc isType=false encoder=false 08-02 12:32:08.777 6511-6928/com.fod247.b2c I/MediaCodec: (0xb9d64c28) init name(OMX.qcom.video.decoder.avc) isType(0) encoder(0) 08-02 12:32:08.781 6511-6972/com.fod247.b2c I/OMXClient: Using client-side OMX mux. 08-02 12:32:08.785 6511-6898/com.fod247.b2c D/MeetingFragment: [Function] [onActiveSpeakerScoreChanged]: 653: 0.0,656: 0.04782969000000001,640: 0.0 08-02 12:32:08.795 6511-6971/com.fod247.b2c I/MediaCodec: (0xb9d64c28) Component Allocated (OMX.qcom.video.decoder.avc) 08-02 12:32:08.795 6511-6928/com.fod247.b2c I/MediaCodec: (0xb9d64c28) configure surface(0x0) crypto(0x0) flags(0) 08-02 12:32:08.796 6511-6928/com.fod247.b2c D/MediaCodec: (0xb9d64c28) configure format: AMessage(what = 0x00000000) = { int32_t height = 1920 int32_t width = 1072 string mime = "video/avc" int32_t color-format = 19 } 08-02 12:32:08.797 6511-6972/com.fod247.b2c I/ExtendedCodec: Decoder will be in frame by frame mode 08-02 12:32:08.798 6511-6972/com.fod247.b2c W/ExtendedCodec: Failed to set frame packing format on component 08-02 12:32:08.798 6511-6972/com.fod247.b2c I/ACodec: [OMX.qcom.video.decoder.avc] setupVideoDecoder Width Height (1072x1920)
Thank you for reporting this. We will take a look and update.
Hi @mharlowfod , We are still working on to reproduce the 1st question.
For the 2nd, Chime SDK iOS/Android does not support 30 FPS yet for now.
Android
iOS
Thank you @ziyiz-amzn ! I am aware of the 30 fps limitations, although I am still curious if there is a good way to detect the FPS that chime has selected to send. I am aware of the "metrics" implementations of the various platforms, which help to gauge the frames received, but just looking for something on the sending end if it exists.
I don't think this is currently supported, but I'll leave this open as a feature request.