I didn't read all the messages, I am on the phone right now.
For OMX player, the standalone version or the Emulation Station plugin? The standalone need a specific arguments to play video fine.
This is due to a glitch that bug DispmanX when a screen resize happen.
BTW, here is the lines I used in Emulation Station 'es_systems.cfg' to add a "game system" to play videos/audios (can glitch if seek beyond limits) :
As you said, when enable "sleep" on juj driver, when the screen black out, it require multiple new frames to wake up.
This is maybe due to the percentage of changing pixels variable (I will take a look when back home) but fine tuning this value will increase the CPU load.
I am not sure I commented all modified lines, I hope I will not miss a big amount...
In 'config.h':
ALL_TASKS_SHOULD_DMA //to uncomment
SAVE_BATTERY_BY_PREDICTING_FRAME_ARRIVAL_TIMES //to comment, framerate drop fix
DISPLAY_FLIP_ORIENTATION_IN_SOFTWARE //to comment, I don't remember why
SAVE_BATTERY_BY_SLEEPING_WHEN_IDLE //is already not commented by default
In 'freeplaytech_waveshare32b.h': (also important as unmodified juj driver have not access to Freeplay screen config)
DISPLAY_NATIVE_COVERED_TOP_SIDE is left border of the screen
DISPLAY_NATIVE_COVERED_LEFT_SIDE is top border of the screen
DISPLAY_NATIVE_COVERED_RIGHT_SIDE is bottom border of the screen
DISPLAY_NATIVE_COVERED_BOTTOM_SIDE is right border of the screen
Cmake command: (DDMA_TX_CHANNEL and DDMA_RX_CHANNEL are set to allow me to play Reicast emulator)
cmake -DARMV8A=ON -DFREEPLAYTECH_WAVESHARE32B=ON -DSPI_BUS_CLOCK_DIVISOR=6 -DDISPLAY_BREAK_ASPECT_RATIO_WHEN_SCALING=ON -DUSE_DMA_TRANSFERS=ON -DDMA_TX_CHANNEL=2 -DDMA_RX_CHANNEL=5 -DSTATISTICS=0 ..
I hope this will help
For OMX player, the standalone version or the Emulation Station plugin? The standalone need a specific arguments to play video fine.
This is due to a glitch that bug DispmanX when a screen resize happen.
BTW, here is the lines I used in Emulation Station 'es_systems.cfg' to add a "game system" to play videos/audios (can glitch if seek beyond limits) :
Code:
<system>
<name>media</name>
<fullname>Media</fullname>
<path>/home/pi/RetroPie/media</path>
<extension>.avi .mp4 .mkv .mov .wmv .flv .mp3 .ogg .wav .wma .aac .flac .m3u .pls .AVI .MP4 .MKV .MOV .WMV .FLV .MP3 .OGG .WAV .WMA .AAC .FLAC .M3U .PLS</extension>
<command>/opt/retropie/supplementary/runcommand/joy2key.py /dev/input/js0 kcub1 kcuf1 0x6B 0x6A 0x70 0x71 & omxplayer -b %ROM% -o alsa --live ; killall joy2key.py</command>
<platform>media</platform>
<theme>media</theme>
</system>
As you said, when enable "sleep" on juj driver, when the screen black out, it require multiple new frames to wake up.
This is maybe due to the percentage of changing pixels variable (I will take a look when back home) but fine tuning this value will increase the CPU load.
I am not sure I commented all modified lines, I hope I will not miss a big amount...
In 'config.h':
ALL_TASKS_SHOULD_DMA //to uncomment
SAVE_BATTERY_BY_PREDICTING_FRAME_ARRIVAL_TIMES //to comment, framerate drop fix
DISPLAY_FLIP_ORIENTATION_IN_SOFTWARE //to comment, I don't remember why
SAVE_BATTERY_BY_SLEEPING_WHEN_IDLE //is already not commented by default
In 'freeplaytech_waveshare32b.h': (also important as unmodified juj driver have not access to Freeplay screen config)
DISPLAY_NATIVE_COVERED_TOP_SIDE is left border of the screen
DISPLAY_NATIVE_COVERED_LEFT_SIDE is top border of the screen
DISPLAY_NATIVE_COVERED_RIGHT_SIDE is bottom border of the screen
DISPLAY_NATIVE_COVERED_BOTTOM_SIDE is right border of the screen
Cmake command: (DDMA_TX_CHANNEL and DDMA_RX_CHANNEL are set to allow me to play Reicast emulator)
cmake -DARMV8A=ON -DFREEPLAYTECH_WAVESHARE32B=ON -DSPI_BUS_CLOCK_DIVISOR=6 -DDISPLAY_BREAK_ASPECT_RATIO_WHEN_SCALING=ON -DUSE_DMA_TRANSFERS=ON -DDMA_TX_CHANNEL=2 -DDMA_RX_CHANNEL=5 -DSTATISTICS=0 ..
I hope this will help