mirror of https://github.com/procxx/kepka.git
Add some benchmarks.
This commit is contained in:
parent
fbc206ebee
commit
c1ae825d98
|
@ -15,6 +15,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL
|
|||
#include <QJsonDocument>
|
||||
#include <QFile>
|
||||
|
||||
#include "logs.h"
|
||||
#include "rasterrenderer/lottierasterrenderer.h"
|
||||
|
||||
namespace Lottie {
|
||||
|
@ -49,8 +50,10 @@ Animation::Animation(const QByteArray &content)
|
|||
: _timer([=] { checkNextFrame(); }) {
|
||||
const auto weak = base::make_weak(this);
|
||||
crl::async([=] {
|
||||
const auto now = crl::now();
|
||||
auto error = QJsonParseError();
|
||||
const auto document = QJsonDocument::fromJson(content, &error);
|
||||
const auto parsed = crl::now();
|
||||
if (error.error != QJsonParseError::NoError) {
|
||||
qCWarning(lcLottieQtBodymovinParser)
|
||||
<< "Lottie Error: Parse failed with code "
|
||||
|
@ -65,6 +68,8 @@ Animation::Animation(const QByteArray &content)
|
|||
parseDone(std::move(result));
|
||||
});
|
||||
}
|
||||
const auto finish = crl::now();
|
||||
LOG(("INIT: %1 (PARSE %2)").arg(finish - now).arg(parsed - now));
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
@ -193,6 +193,7 @@ void SharedState::renderFrame(
|
|||
if (!GoodStorageForFrame(image, size)) {
|
||||
image = CreateFrameStorage(size);
|
||||
}
|
||||
const auto now = crl::now();
|
||||
image.fill(Qt::transparent);
|
||||
|
||||
QPainter p(&image);
|
||||
|
@ -212,8 +213,13 @@ void SharedState::renderFrame(
|
|||
_scene.endFrame() - 1);
|
||||
_scene.updateProperties(frame);
|
||||
|
||||
const auto updated = crl::now();
|
||||
|
||||
LottieRasterRenderer renderer(&p);
|
||||
_scene.render(renderer, frame);
|
||||
|
||||
const auto finished = crl::now();
|
||||
LOG(("RENDERED: %1 (UPDATE %2)").arg(finished - now).arg(updated - now));
|
||||
}
|
||||
|
||||
void SharedState::init(QImage cover) {
|
||||
|
|
Loading…
Reference in New Issue