[Feature Request] Benchmarking - MX Player

Once upon a time there was TCPMP (CorePlayer) for WM. It had one interesting feature - benchmarking. This options forces player to play video as fast as possible and measures FPS (until you hit stop or video ends).
Such feature is really useful for testing overall perfomance and perfomance hit/gain of different options (how much "speed-up tricks" help, how much subtitle rendering consumes, new decoder optimisations, etc.).

Interesting thought. Though, you could always use something like Antutu, or get an FPS meter app?

CDB-Man said:
Interesting thought. Though, you could always use something like Antutu, or get an FPS meter app?
Click to expand...
Click to collapse
It's a bit different - it measures real playback perfomance, not some abstract number. Even if it was measuring pure cpu perfomance - different archictures have different efficiency at video decoding (think about extentions like MMX/SSE/AVX on x86), plus decoder gets better over time (you get more fps for same cpu perfomance).
Is 40k in antutu enough to play 720p hi10p flawlessy? "It depends".
Fpsmeter will (at best) show only frame drops - when player was not fast enough to draw a frame. If you play 30 fps video and it will say that it plays at 20 fps - it doesn't mean that you can play similar video at 20 fps or that you need to get 50% faster. And if it plays without frame drops - you'll never know how much extra perfomance you have.
But that way it would be possible to do such things:
1) Run video and say:
- "hey, it runs at >120%, I don't need to touch anything to be happy".
- "it runs at 100%, which means that it barely could play it - I need to do something".
- "it runs at <80%, nothing will help so it's better to give up".
2) Change settings and say:
- "switching to yuv/rgb32/rgb16 made it 10% faster, so I should probably use it if I'm happy with quality"
- "I needed some extra perfomance and speed-up tricks got me extra 30% - just what I needed"
3) Give video and ask to benchmark it and then judge how capable the device it (I've seen people that say "flawlessly"/"watchable"/"playable" at 15 fps).
For example I've wasted hours testing hi10p perfomance on my Z3c - sometimes it plays flawlessely, sometimes overheats (drops cpu freq), sometimes lags... and there're different setting to play with, let alone videos with different complexity (and subtiles).

Mx is a media player not a benchmarking tool. I think this feature will only hog unnecessary space for thousands of people.

I partially agree with the OP.
Benchmarking would help with identifying how fast the decoding/rendering is on a certain device.
However, I think there's more value doing this for the ffmpeg team

Related

best video format for ppc.

I want to know what is the best format to convert videos for ppc so i can get best combination of quality and performance, size dosnt matter for me.
I am alao looking for the best practice guide.... so i can learn how to get smooth video playback.
H.264. Read my H.264 Bible, it exaplains everything.
Thanks I am looking for your bible.
I think I may have overlooked something obvious, but where is your bible?
I'm having terrible trouble getting decent video playback on my i-mate 9502
Here guys
http://www.allaboutsymbian.com/forum/showthread.php?t=67863
It seems you can't expect much from the 9502 - it doesn't have working drivers either - see http://forum.xda-developers.com/showthread.php?t=351788&page=8
You could give CorePlayer a try, though
I still have a problem that I have a wmv which play smoothly on my pc but now I convert it to h.264 but it still lagy (as before) on my wizard.
Do you use CorePlayer?
Did you try optimizing (bo Cabac etc?)
I am using core player latest build but I dont know about "optimizing (bo Cabac etc?)"
Can you explain me?
btw I convert the video from xilisoft in 320 res
azfar said:
I am using core player latest build but I dont know about "optimizing (bo Cabac etc?)"
Can you explain me?
Click to expand...
Click to collapse
I've explained this all in the H.264 Bible... there're a lot of areas of optimization.
BTW, the Wizard is VERY slow. Therefore, I recommend not only goig for CorePlayer, but also sticking to DivX if the increased storage requirements aren't a problem.
you mean divx codec, not player right?
azfar said:
you mean divx codec, not player right?
Click to expand...
Click to collapse
Both. You need to encode your stuff with DivX and play back preferably with TCPMP or, even better, CorePlayer.
I switched my 9502's coreplayer setings to RawFramebuffer and now it plays QVGA video at an acceptable 24fps / 500kbps no problem. Still seems to hate VGA video though, but I guess that's a non-issue until they bring out the SDHC patch.
mike freegan said:
I switched my 9502's coreplayer setings to RawFramebuffer and now it plays QVGA video at an acceptable 24fps / 500kbps no problem. Still seems to hate VGA video though, but I guess that's a non-issue until they bring out the SDHC patch.
Click to expand...
Click to collapse
any other core player video settings for better performance?
The H.264 codec is not a good choice for playback on slower devices. If you flip though the h.264 bible (linked below) you'll see that even a 330 MHz OMAP (N95) isn't able to handle a h.264 video 100% without disabling features. You haven't got a chance with a 200 MHz OMAP and your going to have high CPU utilization with a 400 MHz CPU.
http://www.aximsite.com/boards/applications/222389-h-264-k-mpeg-4-part-10-avc-bible.html
If size is not a factor, then you're not gaining anything by using h.264. The main benefit of h.264 over XviD is better quality at the same size or same quality at a lower size. XviD/DivX has much lower compression complexity and requires less CPU power/utilization to decode but ends up taking more space.
If you have a fast processor and you want the best quality at the smallest size, go with h.264/AVC. If size is not a factor, stick with XviD/DivX(ASP). Even with a fast processor, you will have lower CPU utilization and longer battery life (assuming you are using CPU scaling).
Check out my guide if you want some help converting to XviD.
http://forum.videohelp.com/topic349738.html
trueg said:
The H.264 codec is not a good choice for playback on slower devices. If you flip though the h.264 bible (linked below) you'll see that even a 300 MHz OMAP (N95) isn't able to handle a h.264 video 100% without disabling features. You haven't got a chance with a 200 MHz OMAP and your going to have high CPU utilization with a 400 MHz CPU.
http://www.aximsite.com/boards/applications/222389-h-264-k-mpeg-4-part-10-avc-bible.html
If size is not a factor, then you're not gaining anything by using h.264. The main benefit of h.264 over XviD is better quality at the same size or same quality at a lower size. XviD/DivX has much lower compression complexity and requires less CPU power/utilization to decode but ends up taking more space.
If you have a fast processor and you want the best quality at the smallest size, go with h.264/AVC. If size is not a factor, stick with XviD/DivX(ASP). Even with a fast processor, you will have lower CPU utilization and longer battery life (assuming you are using CPU scaling).
Check out my guide if you want some help converting to XviD.
http://forum.videohelp.com/topic349738.html
Click to expand...
Click to collapse
unfortunately the software you refer doesnt support wmv conversion.
Well, honestly I've never needed to convert a wmv(ASF) video before. I never would have thought it would not accept WMV files, but I downloaded a music video to test and indeed, even when forced, PocketDivxEncoder wouldn't accept it. I then tried AutoGK which is another high quality converter/front end and it also would not accept WMV files (I would assume the same for Gordon Knot).
To aid you in your quest, I went on a search for tools to help you in your task.
Tools tested....
AllToAVI - http://www.videohelp.com/tools/alltoavi - easy to install, fairly intuitive, fast encoding, no option for cropping or rotation, limited audio options.
--I ran a quick test on my wmv music video using AllToAVI. The original WMV did not play very well (worse than a slide show) on my HTC Touch (Elfin - 201Mhz OMAP). The resulting XVID was actually the same size, but played perfectly.
WinFF - http://www.videohelp.com/tools/WinFF - easy to install, minimalist interface (very limited), fast encoding. Unlike AllToAVI, WinFF did not analyze the source or make suggestions on video frame rate or aspect ratio. It worked well enough and the resulting XVID looked as good and played as well as the file created by AllToAVI.
MediaCoder - http://www.videohelp.com/tools/MediaCoder - wow, this program is pretty amazing. Easy to install, tons of options, fast encoding. This program is much more customizable than PocketDivXEncoder, but this is to be expected. This program can convert from pretty much any codec to pretty much any codec. There are options for pretty much every aspect of the conversion process (which may be too much for some people). The resultant video was again the same size, but quality was a bit higher since I was able to crop the black bars.
Basically, if you can use PocketDivXEncoder (i.e. your video is supported) stick with it since it is fast, high quality and easy to use. If you want the ability to customize every single aspect of the conversion, use Media Coder. If you can't use PocketDivXEncoder and you want something very simply to convert your unsupported video, give AllToAVI a shot.
many thanks for your efforts. I am tryijgnall those convertors and will let you know the results.
can I play the 700MB dvdrip (.avi divx) version of movie on pda. Can it handle it?

[TIPS]A/V out of sync when compressing 720p videos

I'm sure you noticed that when you record a 720p/1080p video with a smartphone, the bitrate will be pretty high, in the 10-15Mbps area.
This is not really necessary if you watch the videos just on your smartphone or on a limited size LCD TV, and you can just recompress it using x264 codec at about 2Mbps without severe quality loss (unless it's a sport video).
However you'll notice severe audio video out-of-sync issues if you compress both audio and video tracks and DON'T CHOOSE MP4 (which is the default container for the videos recorded by the smartphone) as default container for your x264 video.
Furthermore, if you want to compress and then JOIN different videos, you have to compress them one by one and THEN join them, otherwise you'll notice glitches in the playback.
I tried with mkv and avi but I kept having sync issues, so I thought that it was worth to share this tip.
SUPER @ video conversion program
Have you tried a video conversion program called SUPER @? Here's its link:
http://www.erightsoft.com/SUPER.html
The program can be pretty intensive in terms of memory used but it usually does a great job for me and bitrates can be chosen for just any vid type you might want to save to. Usually, I turn off my internet connection prior to executing it (so it can't do an update check) and run it by itself.
Yep, I guess it's something similar to Wondershare Video Converter Ultimate, it's just that I prefer more control over encoding parameters (so I tend to use programs such as Avidemux)
flapane said:
Yep, I guess it's something similar to Wondershare Video Converter Ultimate, it's just that I prefer more control over encoding parameters (so I tend to use programs such as Avidemux)
Click to expand...
Click to collapse
You've probably already thought of this but you can load your video in virtualdubmod and have it change framerate so video and audio match perfectly.
No re encoding needed and even on large files it takes less than a minute or two.
If you find virtualdubmod won't recognise the video you can download a suitable vfw codec and it should then.
Dave
( http://www.google.com/producer/editions/CAownKXmAQ/bigfatuniverse )
Sent from my LG P920 using Tapatalk 2
The problem is that vdubmod won't help, because framerate is not constant and it varies from some 19 to 30fps, at least on Vibrant.
In a lot of cases the fps number gets lost during encoding (and you'll obtain a video which has a constant framerate of 29.97fps), because softwares such as Avidemux doesn't have an option to leave the FPS untouched (or at least it seems that the fps number gets lost if you want to use MKV as container).
flapane said:
The problem is that vdubmod won't help, because framerate is not constant and it varies from some 19 to 30fps, at least on Vibrant.
In a lot of cases the fps number gets lost during encoding (and you'll obtain a video which has a constant framerate of 29.97fps), because softwares such as Avidemux doesn't have an option to leave the FPS untouched (or at least it seems that the fps number gets lost if you want to use MKV as container).
Click to expand...
Click to collapse
I've used it in similar situations so it might be worth a try as it doesn't need a constant framerate, it looks at the audio length then adjusts video framerate to match.
If it is just a problem created while actually recording, ie if the video itself records at varying framerates it would suggest that it can't write to storage quick enough and is dropping frames.
In that case you would need to record in lower resolution or perhaps find a replacement camera application and see if that could fix your problem as sometimes default apps are not all that good.
It also makes a difference if you can close un needed background apps to free ram if low on memory. That can cause frames to drop as well.
Dave
( http://www.google.com/producer/editions/CAownKXmAQ/bigfatuniverse )
Sent from my LG P920 using Tapatalk 2
Actually it seems that the framerate is lower in case of dark scenes, which seems to be a behaviour found on other phones. I'm writing on the internal storage and I always kill everything before taking a video, so I gotta try another Camera app and see if anything changes.
I'll also take a look at that interesting vdubmod feature, I didn't know it.
Thanks.
flapane said:
Actually it seems that the framerate is lower in case of dark scenes, which seems to be a behaviour found on other phones. I'm writing on the internal storage and I always kill everything before taking a video, so I gotta try another Camera app and see if anything changes.
I'll also take a look at that interesting vdubmod feature, I didn't know it.
Thanks.
Click to expand...
Click to collapse
Is there a setting where you can change encoding parameters of your x264 on your phone?
On a pc the codec has a feature that can compress more data per frame in darker areas, on a phone I don't know if that is active or not but might be worth checking. Sorry I couldn't help more but hope you find a solution.
Dave
( http://www.google.com/producer/editions/CAownKXmAQ/bigfatuniverse )
Sent from my LG P920 using Tapatalk 2

High quality video has constant slowdowns

Hi Folks,
I got an mxiii 4k / k200c / 2g / 8g / arm-A9 / mali-450MP box that works rather well for moving around the box (very speedy) and works perfectly for streaming 1080p content over LAN with Kodi but for some reason, some apps struggle with high quality video. It's most apparent with the DirecTV app but it also happens with Youtube (although much less). It starts playback, works fine but then the video starts slowing down as if the CPU or GPU were overwhelmed. This condition lasts for 3-5 seconds and then it goes back to normal until it happens again a few seconds later. It can also manifest itself as lost frames with random skips.
Anything I can do to improve the performance?
Thanks
Sounds to me like a caching problem, but perhaps it's the codec
rhtizzy said:
Sounds to me like a caching problem, but perhaps it's the codec
Click to expand...
Click to collapse
Might be, it doesn't appear to happen with all videos. Any way to overclock de GPU, see if that helps?
I believe so, there are a number of apps in the playstore I once used but you'll have to search if they still exist, look for sysinfo apps
Sent from my Nexus 7 using Tapatalk

[GUIDE] How to Really improve the gaming framerates on your Mi A1

Yo fellas, its your"rooting enthusiast SenpaiYank (lmao rooting enthusiast, as if such a thing exists)​
Well, as you know, our device has a quite outdated and not so beefy (at all) SoC, the snapdragon 625. While its CPU is not tremendously ridiculously bad, the GPU quite is. This is not a prolem to people who don't care about games but a very prominent one on the other side.
With the help of this trick, tweak, whatever you decide to call it, you'll practically be able to play any game out there that you're not able to or play that same game at a higher setting than you would. The trick consists basically on lowering the screen resolution through a script, trading some of the visual quality for a noticeable night day performance boost. It's a common trick that works on other devices too and I've yet to find a game that had problems with it.
I'm using "profile" scripts to achieve it so you can change it on the go. I feel that way is the most ergonomic and quick one. Just run each script with root permissions according to your need. I recommend FX file explorer. Wanna play a graphically intensive game? Switch to gaming profile. Wanna do something else besides gaming? Switch to the default one.
As I side note, the trick can be done on unrooted users too but you'll need a computer and you'll have to apply the gaming profile permanently (unless you're willing to repeat the procedure whenever you want to go back to default). I can talk about it if you guys get interested on it.
Enough blah blah, how do I do it ?​1st - Grab both of them (default.sh and gaming.sh)
2nd - Install (in case you don't have it), open and type this on the Terminal Emulator app:
Code:
su
To attain root access (not sure if needed but, just in case)
Code:
wm density
To get your current screen density value at 1080p (override density field).
Lets imagine you got 432.
3rd - Choose and calculate a new resolution for your gaming profile
So now lets ge to the actual work. Our device native resolution is 1080p (1920x1080) and we want to lower that.
I lower it to 810p (not a standard lmao) which is 75% of 1080p (1440x810) as it gives me agood balance between visual quality and performance. You can go even lower to something like 50% if you're ambituous about performance. At 810p I can expect a minimum of 25% performance uplift (not FPS).
So, to get your gaming profile resolution DPI, you multiply the relative percentage of it by the default profile resolution DPI.
Code:
[COLOR="darkred"]432[/COLOR] * [COLOR="RoyalBlue"]0.75[/COLOR] = [COLOR="Blue"]324[/COLOR]
This value will be your gaming resolution DPI a.k.a. the resolution from your gaming mode script.
4th - Edit default.sh and gaming.sh, apply the new values and save the files somewhere.
default.sh script should contain the values of your default resolution, in this case, 1920x1080 and 432. Size for resolution and density for DPI.
gaming.sh script should contain the values of your gaming profile resolution, in this case, 1440x810 and 324.
VOILÁ​
To make the process much much easier and quicker, I use FX file explorer and its shortcut feature so I can switch between both profiles from my home screen pretty easily. Whenever I'm not playing a demanding game Is stick to the default mode, whenever I'm playing a graphically intensive game, I switch to the gaming mode and enjoy the improvement.
Cool, cool. So, is there an actual improvement in performance or is this just one of these so called placebo tricks ?​It's definately not placebo and probably the most effective way around of increasing gaming performance!
I've tried to record a test with and without the trick (and failed, it doesn't look as effective in the video but I'll leave it here anyway). Take it with not 2 but 3 grains of salt due to all the uncontrallable factors that involved the scene, the actual gain in practical use is much more noticeable. The benchmark takes place in the super duper hot (pun intended) looking and intensive game, Shadowgun Legends.
On the first video, the device is running the Extreme Kernel, without the tweak, along a CPU cap of 2.5Ghz and a GPU cap of 855Mhz (or something around that). I didn't increase it further to prevent the device from overheating (which it already practically was) and because at a higher GPU clock, I would get arctifacts (my device does not support the 922Mhz frequency).
http://sendvid.com/zi9l8q44
On the second video, the device is running a beta batch of the velocity kernel, with the tweak, along a CPU cap of 1.9Ghz and GPU cap of 672Mhz. I ran the device at a lower speed so you can see how useful the improvement can also be.
http://sendvid.com/fqum12jw
I ran the game at the high graphical setting (30 FPS max) on one of its most intesive scenarios and were at very high ambient temperatures (30C) so again, take the videos with a grain of salt. Used an external gamepad to play and used Scrcpy to record the screen (through wifi so, the quality and framerate from the recording is considerably worse than the actual one). You should also remember the 5-6 FPS strain of capturing the screen.
I also used game bench to monitor the framerate (top right corner) where the last 1 minute of each benchmark were with the screen capturing off. Once again, sorry for the bad quality of the recordings, I'll leave a screenshot of the game bench results.
Not willing to write a outro so, yeah, basically thats it
Here's another sample video, of the same game, this time at medium settings. Along the very noticeable smoother gameplay you can also notice how the GPU load goes down from 95-100 to 70-80 and it becomes less of the bottleneck on the scenario. With the gaming profile could I could actually remove the 30 fps cap and run the game at +30.
Before:
https://photos.app.goo.gl/hwPg9KCwc6yLyt919
After:
https://photos.app.goo.gl/zDm4wkTHuAjQ7PA5A

Gaming performance.

After mucking around with certain games I used to have on my old Galaxy S8 I've discovered something interesting. I get ridiculous lag and frame pacing in just about every game leading to poor results in games such as Cytus 2 (fast paced rhythm game relying on accurate input with no lag) the new Sky game (stutters and tearing in both refresh modes), and a side scroller that has no heavy graphical fidelity (lags on screen and even tears sometimes).
This is all kind of in accordance to this recent review video of the p40 (different phone, same chipset)
https://www.androidauthority.com/huawei-p40-vs-galaxy-s20-plus-1133345/
Now one thing I've noticed is that if I use appassistant to launch these games, the poor performance disappears entirely. No lag anywhere, in Cytus, where before during fast sections it wouldn't even register taps 6-7 times per song, there are ZERO misses across the board. Similarly, no screen tearing or lag in any other game.
Wondering if the OS is optimized to cut power to the GPU and put it into limp mode during normal operation to save battery as I've noticed a dramatic difference in battery drop when using appassistant or not to play games. I mean naturally, the appassistant game center is doing its job but man that's a big difference.
Anyone have similar experiences?
Whats appassistant????

Categories

Resources