blob: 0c4fb020d4609e000006f8cf894c7bbe211ec6b9 (
plain) (
tree)
|
|
<!DOCTYPE html><html><head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta name="theme-color" content="#000000">
<title>Chrisoft::Blog(r#"QMidiPlayer Progress-2016-01-16")</title>
<meta name="description" content="«QMidiPlayer Progress-2016-01-16» de spelunca ursae visere">
<meta name="author" content="Chris Xiong">
<script type="text/javascript" src="/panel.js"></script>
<script type="text/javascript" src="/themer.js"></script>
<script type="text/javascript" src="/blog/footnoter.js"></script>
<script type="text/javascript" src="/blog/aes-js.js"></script>
<script type="text/javascript" src="/blog/scrypt.js"></script>
<script type="text/javascript" src="/blog/sha256.js"></script>
<script type="text/javascript" src="/blog/decryptor.js"></script>
<link rel="stylesheet" type="text/css" href="/common.css">
<link rel="stylesheet" type="text/css" href="/panel.css">
<link rel="stylesheet" type="text/css" href="/theme0a.css" id="theme0a">
<link rel="stylesheet" type="text/css" href="/theme0b.css" id="theme0b">
<link rel="stylesheet" type="text/css" href="/theme1a.css" id="theme1a">
<link rel="stylesheet" type="text/css" href="/theme1b.css" id="theme1b">
<link rel="stylesheet" type="text/css" href="/theme2a.css" id="theme2a">
<link rel="stylesheet" type="text/css" href="/theme2b.css" id="theme2b">
<link rel="stylesheet" type="text/css" href="/theme3a.css" id="theme3a">
<link rel="stylesheet" type="text/css" href="/theme3b.css" id="theme3b">
<link rel="stylesheet" type="text/css" href="/blog/blogext.css">
<script>
function ol()
{
window.onresize=function()
{
if(window.innerWidth<768)
setupevents();
else unsetevents();
}
window.onresize();
loadTheme();
_decryptonload();
}
</script>
</head>
<body onload="ol()" style="overflow-x:hidden;">
<div id="panel" class="TText">
<ul id="panellist">
<li><a href="/"><h1>Chrisoft</h1></a></li>
<li><a href="/blog"><h2>Blog</h2></a></li>
<li><a href="#"><h3 id="title">QMidiPlayer Progress-2016-01-16</h3></a></li>
<li><span>Tags</span>
<ul id="tagslist">
<li><a href="/blog/list/devel/">devel</a></li><li><a href="/blog/list/qmidiplayer/">qmidiplayer</a></li></ul>
</li>
<li id="tocouter" style="display: none;">
<span>Table of Contents</span>
<ul id="tocroot">
</ul>
</li>
<li style="margin-left:-0.5em"><a id="prevp" href="2016-01-03.html">Prev post</a></li>
<li style="margin-left:-0.5em"><a id="nextp" href="2016-01-25.html">Next post</a></li>
</ul>
</div>
<div id="content">
<h2 id="titleh" class="TText" style="font-wight:normal;">QMidiPlayer Progress-2016-01-16</h2>
<div id="datetags" class="TText" style="margin-bottom:1em;">2016-01-16<br>#devel #qmidiplayer</div>
<hr><div id="article" class="TText">
<article>
QMidiPlayer 0.6.2-2 beta is out! Find more about it
<a href="http://chrisoft.org/QMidiPlayer/">here</a>.<br>
This version has reached a fairly stable stage (in Linux) and has
experimental Windows support. It has been the default midi player on my Debian
sid for a few days.<br>
So the next big feature is visualization. It's progressing, too.
Have a look at the picture below.<br>
<table style="max-width:90%;margin:auto;text-align:center;">
<tbody><tr><td>
<img src="//filestorage.chrisoft.org/blog/img/visualtest.png" width="90%" decoding="async">
Primitive 3D MIDI visualization test
</td></tr>
</tbody></table>
It's still primitive, but it already has everything required to
go mature -- tight timing, time stamp synchronization, etc.<br>
Well, I still hope that this tiny project can get into the official
Debian repository... Is it a vain hope?
</article>
</div><br><hr>
<div class="TText" id="notediv" style="font-size:80%;"></div>
<div id="insanch" style="height:3em;"></div>
<div id="footer" style="">
<div id="pagesw" class="TText" style="width:100%;height:0.5em;"></div>
<div style="text-align:center;" class="TText">
Proudly powered by SSBS <reduced style="font-size:70%;">(the static stupid blogging system)</reduced> 2.5
<br>
Content licensed under CC BY-SA 4.0. <span id="purgep" style="display:none;font-size:70%;">This page has passphrase(s) stored. Click <a href="javascript:_purgep()">here</a> to purge.</span>
</div>
</div>
<div id="cmdbuf" class="TText" style="transition:500ms;padding:1em;font-size:2em;color:white;position:absolute;background-color:rgba(0,0,0,0.6);left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:none;opacity:0;">
</div>
</div>
<div id="decryptui" style="display:none;opacity:0;color:white;z-index:1000;position:fixed;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,0.4);transition:opacity 0.5s;">
<div id="decryptdlg" class="TText" style="padding:10px 20px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background-color:rgba(0,0,0,0.6);">
<div id="keyhint" style="margin-bottom:8px;"></div>
<div style="margin-bottom:8px;">Key: <input id="keyinp" type="text" style="color:#fff;"></div>
<div style="height:2.25em;">
<button id="btndecrypt" onclick="decryptor(decid,document.getElementById('keyinp').value);" style="position:absolute;left:20px;">Decrypt</button>
<button onclick="hidedecryptui();" style="position:absolute;right:20px;">Cancel</button>
</div>
</div>
</div></body></html>
|