Bug #2092

CPU goes 100% when HLS player selects 128x72p stream (RPi)

Added by Leonid Protasov about 7 years ago. Updated almost 7 years ago.

Status:FixedStart date:04/13/2014
Priority:NormalDue date:
Assignee:Andreas Smas% Done:

100%

Category:Video playback
Target version:4.6
Found in version:Latest Platform:RPi

Description

http://sprunge.us/AOXM

00:08:18.008: VideoCore [DEBUG]:Video decoder output port settings changed to h264 426x240p (VideoCore) (SAR: 1:1)
00:08:30.160: VideoCore [DEBUG]:Video decoder output port settings changed to h264 854x480p (VideoCore) (SAR: 1:1)
00:08:30.972: Callout [DEBUG]:/var/tmp/buildagent/repos/showtime/src/arch/linux/linux_process_monitor.c:169 executed for 3767517us
00:08:35.669: VideoCore [DEBUG]:Video decoder output port settings changed to h264 1920x1080p (VideoCore) (SAR: 1:1)
00:08:45.677: VideoCore [DEBUG]:Video decoder output port settings changed to h264 1280x720p (VideoCore) (SAR: 1:1)
00:08:50.669: VideoCore [DEBUG]:Video decoder output port settings changed to h264 1920x1080p (VideoCore) (SAR: 1:1)

Related issues

Related to Bug #2121: ST crashes on playing HLS links it used to play before (r... Fixed 05/01/2014

Associated revisions

Revision 15bd5fbd
Added by Andreas Smas almost 7 years ago

hls: Avoid 426x240 h264 resolution on rpi. Seems to cause 100% CPU usage (maybe sw decoded)

Fixes #2092

Change included in version 4.5.366

Revision 1b282e63
Added by Andreas Smas almost 7 years ago

hls: Avoid really low resolutions (< 426 || < 240) on Rpi as it seems to put the decoder in a bad state

Fixes #2092

Change included in version 4.5.371

History

#1 Updated by Leonid Protasov about 7 years ago

The same bug with hls debug on:
http://sprunge.us/IAUN

#2 Updated by Leonid Protasov about 7 years ago

To reproduce:
1. Open youtube plugin.
2. Use magnifying glass tool at the top bar and search for "espreso live"
3. In found results use second "espreso live" stream.
When it opens - you will see slowdown and stuttering when switching treams.
Press back and open again. Repeat. Eventually ST crashes. Log:
http://sprunge.us/jNGa

00:04:12.462: media [DEBUG]:Settings initialized for URL youtube:video:HQEhZZWrEHk in folder: Videos matching: espreso live [youtube:feed:https%3A//gdata.youtube.com/feeds/api/videos%3Fq%3Despreso live]
00:04:12.488: SVSYNC [DEBUG]:Set to 0s
00:04:12.508: AVSYNC [DEBUG]:Set to 0 ms
00:04:12.573: thread [DEBUG]:Thread navopen exited
00:04:13.120: OMX [DEBUG]:Frame rate set to 25.000
00:04:13.156: thread [DEBUG]:Created thread: audio decoder
00:04:13.425: audio [DEBUG]:Codec changed to aac (0x15002)
00:04:13.439: VideoCore [DEBUG]:Video decoder output port settings changed to h264 128x72p (VideoCore) (SAR: 1:1)
00:04:13.442: TV [DEBUG]:State change 0x00000002 0x00000001 0x00000010
00:04:13.446: CRASH [EMERG]:Signal: 11 in thread showtime - PRG: Showtime (4.5.313.gb5685) EXE: /tmp/stos/mnt/showtime/bin/showtime, CWD: /  
00:04:13.446: CRASH [EMERG]:Fault address (nil) (Address not mapped)

#3 Updated by Leonid Protasov about 7 years ago

Also note enormous callout times at that log:

00:02:19.566: Audio [DEBUG]:Converting from [stereo 48000Hz fltp] to [stereo 48000Hz fltp]
00:02:24.548: VideoCore [DEBUG]:Video decoder output port settings changed to h264 426x240p (VideoCore) (SAR: 1:1)
00:02:38.684: Callout [DEBUG]:/var/tmp/buildagent/repos/showtime/src/arch/linux/linux_process_monitor.c:169 executed for 6989673us
00:02:40.682: Callout [DEBUG]:/var/tmp/buildagent/repos/showtime/src/upnp/upnp_event.c:156 executed for 1998855us
00:02:40.989: VideoCore [DEBUG]:Video decoder output port settings changed to h264 854x480p (VideoCore) (SAR: 1:1)
00:02:42.686: Callout [DEBUG]:/var/tmp/buildagent/repos/showtime/src/arch/rpi/rpi_main.c:888 executed for 1999464us
00:02:43.482: PROP [INFO]:global: Dispatch of [0xb3934d80] took 520054 us
00:02:49.617: VideoCore [DEBUG]:Video decoder output port settings changed to h264 1920x1080p (VideoCore) (SAR: 1:1)
00:03:02.251: PROP [INFO]:global: Dispatch of [0xb3934d80] took 308085 us
00:03:02.466: Callout [DEBUG]:/var/tmp/buildagent/repos/showtime/src/arch/linux/linux_process_monitor.c:169 executed for 12775492us
00:03:04.189: VideoCore [DEBUG]:Video decoder output port settings changed to h264 640x360p (VideoCore) (SAR: 1:1)
00:03:05.684: PROP [DEBUG]:global: Dispatch of [0xb3934d80] took 11972 us

#4 Updated by Andreas Smas almost 7 years ago

  • Priority changed from High to Normal

#5 Updated by Leonid Protasov almost 7 years ago

That won't happen if 426x240p track is skipped.

00:02:24.548: VideoCore [DEBUG]:Video decoder output port settings changed to h264 426x240p (VideoCore) (SAR: 1:1)

#6 Updated by Leonid Protasov almost 7 years ago

  • Subject changed from Enormous delay in callout at HLS switching time to CPU goes 100% when HLS player selects 426x240p stream (RPi)

#7 Updated by Leonid Protasov almost 7 years ago

Found something interesting, the plugin is Modarchive this time but callouts are long and this is on linux:

00:00:06.049: navigator [INFO]:Opening modarchive:start
00:00:06.117: thread [DEBUG]:Created detached thread: navopen
00:00:06.117: PROP [DEBUG]:navigator: Dispatch of [0x7fbbc2e4df10] took 68050 us
00:00:09.016: navigator [INFO]:Opening modarchive:genre:48
00:00:09.016: thread [DEBUG]:Created detached thread: navopen
00:00:13.674: thread [DEBUG]:Created thread: audio decoder
00:00:13.802: PROP [DEBUG]:global: Dispatch of [0x7fbbc2f14a98] took 34772 us
00:00:15.524: Callout [DEBUG]:/root/showtime/src/arch/linux/linux_process_monitor.c:169 executed for 1687268us
00:00:16.479: PA [DEBUG]:Context ready
00:00:16.580: PA [DEBUG]:Created stream s16le 2ch 44100Hz [front-left,front-right] (tilesize=16368)
00:00:17.930: Audio [DEBUG]:Converting from [stereo 44100Hz s16] to [stereo 44100Hz s16]
00:00:34.948: Callout [DEBUG]:/root/showtime/src/backend/dvd/linux_dvd.c:154 executed for 1213128us

full log just in case: http://sprunge.us/ZBOb

#8 Updated by Andreas Smas almost 7 years ago

  • Status changed from New to Fixed
  • % Done changed from 0 to 100

#9 Updated by Andreas Smas almost 7 years ago

  • Status changed from Fixed to Accepted

#10 Updated by Andreas Smas almost 7 years ago

  • Status changed from Accepted to Fixed

#11 Updated by Leonid Protasov almost 7 years ago

  • Related to Bug #2121: ST crashes on playing HLS links it used to play before (regression) (rpi) added

#12 Updated by Leonid Protasov almost 7 years ago

  • Subject changed from CPU goes 100% when HLS player selects 426x240p stream (RPi) to CPU goes 100% when HLS player selects 128x72p stream (RPi)

Also available in: Atom PDF