簡易メディアプレイヤ

日本ファルコムのbgmをループありで永遠と流せるプレイヤーとして作られてきましたが、現在はwindowsで発売されていないこともあり、メディアプレイヤーとして実装を進めております。

今回、DSD形式のファイルを実装しました。
かなり苦労しまして、実装開始から1週間くらいかかりました。
確認は、moraで発売されている「威風堂々」のDSD(dsf)と、XRECODE3で作成したdffファイルです。
あいにく手元にwsdファイルがないので、一応実装はしてみましたが、なるかどうかは分かりません。
DSDは超ハイサンプリングレートです。(11MHzとかあります)
そのまま再生しても無音にずっとなります。
今回はリサンプルにsoxrを使いました。(ダウンスケール)

これで内蔵で再生できるファルコム以外のファイルは、
mp3,mp2,mp1,rmp,m4a(aac),m4a(alac),aac,flac,ogg,dsd(dsf),dsd(dff)となりました。
次はttaやapeとかにも挑戦したいなぁ。メジャーどころはほとんど網羅したと思います。
wavは純wav(adpcmとかや埋め込みwavじゃなく)ならば実装簡単なんですが、そこまで網羅しようとすると大変なので、DirectShowに丸投げしてます。
処理がかなり複雑化してきているので、実装したことによる別の不具合ができている可能性もないとは言えないです。

あと、設定画面にサンプリングレートの最大値を入れる項目を作りました。(デフォルトでMAX 192kHz)
dsdで役立つと思います。mp3やm4aは基本決められてますので問題ありませんが、dsdやkpiプラグイン(旧仕様)で役立つと思います。
kpiの新仕様には対応できていません。kb media player作者さんにも伺いメールいれてみましたが、かなり難しいとのことです。

動画については完全にDirectShowに丸投げしてます。
lavが入っていることが前提っぽいところがあるので、k-lite codec packを入れれば解決です。
動画に関しては、音声切り替え(複数音声時)、字幕切り替えができます。

https://ppp.oohara.jp/ogg

ダウンロード(Ver 0.8f 32bit SSE2版 UNICODE版 VS2015ビルド)
2020.03.24
ダウンロード(Ver 0.8f 32bit AVX版 UNICODE版 VS2015ビルド)
2020.03.24

 

追記 20:00
dffで、タグがとれていなかったので修正

追記2 3/15 10:00
dffで、ジャケ画面開こうとすると落ちる問題を修正

追記3 3/24
flacのシークや他諸々おかしくなっていたり、ループ機能が動いていない状態になっていたものを修正

PCが起動しなくなったよー(ToT)

windowsがクラッシュして起動しなくなった。

回復メニューから、bootrecや、chkdskなど行ったが、どうにも無理。

仕方なしに新規インストールを行ってみたが、バックアップとってなかったのが後のごとし。

現在、ファイル復元ツールで実行中、残り1日とか、、、

仕事にも支障が出るので、早めに元の環境に戻したい。

ちなみに、新規インストールしても不安定だったので、メモリ診断を行ったら4枚中1枚に問題があることが発覚。

現在そのメモリ(16GB)は外して起動中。メモリは注文はしたけど、痛い出費っす。

dynabook dz83のキーボードドックモードで画面回転できるの?

ボタンが灰色になっていて出来ませんでした。
この状態で画面回転できたら最高なんだけどなぁ。
(PC縦にしなくてはならないからキーボードまで縦になるけど、縦の絵とかが見やすくなる)

キーボードドックには、LANケーブルやUSB-SSD512GB(そっちにデータはほとんど入っている)、soundblaster play3つけてるから、切り離すことは無理。
なんとかなりませんかねぇ。
キーボードドック付けたままの画面回転。
分かる方教えて下さいませ。

GDI

windows10 1803,1809の時はGDIがめちゃくちゃ重かった(CPU処理のため)。
原因はWDDM 2.4。(2.3は大丈夫っぽい)
dxdiagで確認できます。
今回、サブノートPCを1903に上げました。
WDDM 2.5 or 2.6になり、GDI処理が軽くなりました。

GDI処理を使っているもので表示が重いものは1903にアップデートすると解決するかもしれませんね。

組み上がった 5.0GHz OC

やっとのことで組み上がったPC。i9-9900k。

縦なが!!
CPU温度も結構落ち着いている。

上のAll CPU MeterではPC Meterがwindows8までしか対応していないため、クロックが変わってません。
ちなみにメモリはDDR4-3000の16GBを4枚積み。

実際は5GHz。

ここまでは基本どの環境でもBIOS全部自動で、50にするだけでできると思います。

簡易プレイヤ

SteamのYs8のoggに対応できました。
近々公開します。

まず、ys8のoggのバイナリを見て観ましょう。

これだけでは、何がどうなっているのか分からないですよね。
私もこれが何なのかoggのヘッダ部分取っ払ってデータ部分だけなのか、解析する上で全然分からず2,3日掛かりました。

で、ずっと解析を続ける中で先頭部分に注目しました。

これがys8のoggの先頭部分。


これが普通のoggの先頭部分。

なんかパターンみたいなものが見えてきました。

なにか暗号化されているみたいに見えますね。
Address 00 が 04になってます。実際は4Fです。
差分とか色々行うと以下のようになります。
まず、下位4ビットと上位4ビットが入れ替わります。
0x0fとxorを取ります。
04⇒40⇒0x0fとxor⇒4f
ぴったりですね。

他のSteamはパック化されてoggみたいに外に出てないので無理がありますが、Ys8は出来ました。
実装の際、デコードされたogg、ファイル名_dec.oggとして作成します。
内部で処理行ってメモリに置くことも考えたのですが、ファイルとして外に出して、それを再生する形を取りました。

https://ppp.oohara.jp/ogg.html
更新日付変わってませんがファイルは新しくなってます。

m4aのalacは再生しようとすると落ちますのでドロップしないように。(実装中ではありますが)

Alcohol120%にて仮想ドライブが作れない!

Alcohol120%にて仮想ドライブが作れない!
色々検索してやっと解決しました。
原因は11月のセキュリティ更新に問題があったようです。

消さないと動かないってどういうことやねん。

2018-11 x64 ベース システム用 Windows 10 Version 1803 の累積更新プログラム (KB4467702)
これを削除すればokとなっていますが、
プログラムと機能の「更新プログラムのアンインストール」には載ってません。
12月分が来ているからです。
なので、
2018-12 x64 ベース システム用 Windows 10 Version 1803 の累積更新プログラム (KB4471324)
をアンインストールします。
更新プログラムのアインストール画面の検索でKB4と打てば、ヒットします。
アンインストールしたら、再起動せず、画面更新をかけると、KB4467702が出てくるのでアンインストールします。
https://blogs.technet.microsoft.com/jpsecurity/2015/07/30/windows-10-windows-update-12/
これを使って、除外し、再起動を駆けるのですが、
SPTDとAlcohol120%両方アンインストールしておきます。

再起動後(ちょっと時間かかる)、SPTD、Alcohol120%の順でインストールします。
完了したら仮想ドライブを作成して、終わりです。

苦労したで。

たぶん1月?

core i9 9900k + マザーの購入はたぶん1月購入になると思います。
もう今からワクワクが止まらない感じですね!

予算次第ですが、メモリも2133使ってるのでもう少し高クロックのものも欲しいかなぁとおもってます。

あとはサーバ用のHDDをSSDにしたい。

メインPCの1つのドライブの速度が落ちているので新しいHDDに換装したいかなぁとも思ってる。
(S.M.A.R.T情報は正常だけどいつ壊れるか分からないからね)

そこまでいったらもう購入するものはなくなるので、1,2月でなんとかなるかなぁと思ってます。

現在、プログラミングインストラクターをしているので、生徒さんの数がそのまま収入に繋がります。
しかしあまり増えすぎると対応出来なくなるので、何人までいけるかが結構悩ましいですね。
なので、祝日とか関係ないです。
今年の年末年始は仕事どうなるんだろ。
下手すると年末年始ないかもしれない。。。。

DirectX VS OpenGL VS Vulkan

APIはいくつもあるけど、大体この3つになると思います。
さて、速度の方ですが、GFXBenchというベンチマークがあります。
これはDirectX、OpenGL、Vulkanすべてに対応しているベンチマークです。
スマホでも確かあったはずです。

まず、Windowsにて実行してみました。
一番速いのはDirectXで、その次にVulkanがきました。
最後にOpenGLです。

次にスマホでの実行。
一番速いのはVulkanで、最後にOpenGLです。

やはり古い技術だけあって、OpenGLは遅いようです。

新規のVulkanが結構健闘しているのは驚きました。
WindowsではOpenGLとほとんど大差ないスコアなのですが、スマホでは、4倍ほど速度に差が出ます。

これからのアプリやゲームは、古い機種も考えて、OpenGLとVulkan両方で書かなくてはならなくなるかも知れないですね。
Windowsの方は、DirectX一択です。
グラフィックボードにもよりますが、DirectX9,11,12(10はほぼ使われない)のどれが速いかが決まってきます。
何に最適化されているのか、どこまで最適化されているのか。
最近はDirectX9か11の2つが多いですね。

WindowsではVulkanの時代はやってくるのかどうなのかは分かりません。
OpenGLは確実に消える運命にあるような気がします。

9th CPU

Intelからもう少ししたらi9 9900kでますね。
まぁ、GeForce RTX 2080の時のように、ask税がかなり掛かると思われるので、CPUもかなりお高くなるのでしょう。
なので、ある程度出回って、安くなった頃が買い時かなと思ってます。
ある程度ってのがくせ者で1年なのか2年なのかわかんないですが。。。。。
最悪、米Amazonからの直輸入の方が安いかも知れないですし。
そういえば、米Amazonにi9 9900kのパッケージが載ったらしいですね。
見ましたが、箱かっこいいけど、持ちにくそう。
しかも450$のところがもう520$くらいになってるし。
品薄と人気度合いが重なって、ヤバイことになりそう。

GPU側は、スルーでいいかなと思っているので(高くて買えた物じゃない)、CPUの8コアは非常に魅力的なので、できるだけ早く変えたい気持ちはあります。

特にエンコードをしょっちゅうする私にとっては、コア数が増えることは、エンコード速度上昇にも繋がるのでうれしいですね。

何もかもが高いこのご時世。
もっと買いやすい価格にならんもんかねぇ。

dnf updadeでのkernel 4.18系以上

fedora 27にて、何気にdnf updateを行いました。
kernelが4.18系に変わって、さてrebootしようとして、再起動後、起動しても、画面が出てこない。
途中で止まってしまうという状況にあります。
4.19ならどうだと、4.19-rc6を自分でビルドしてみましたが、起動できませんでした。
4.17.19は問題なく起動します。
4.18でダメだったのは、4.18.8,4.18.10です。
4.19-rc6もダメだったことから、どうもシステムがうまく動いてない可能性が出てきました。
何が原因かわからないので困りものです。
分かる方、教えて下さいませm(__)m

fedora28にもアップグレードできないし、、、

追記

まだ4.18系はダメです。
とりあえずということで、野良パッケージを色々入れてたので削除を行い、/usr/local/bin,lib を空にしました。
無論このままでは動きませんので、Windows側に作ってあったVMWare上のFedora27からlibファイルをtar圧縮し、上書きしました。
いらないものもたくさんあったので、一旦lib*をすべて消してから上書きというか解凍しました。
一応、これで起動するようになったので、4.18試しましたがダメでした。
根本的にどこかおかしいのかもしれません。
そこがどこなのか判断出来ませんが。
Fedoraは14くらいから使っていて、upgradeしながら27まで来ました。
その中でおかしくなった部分があるのかもしれません。
今からクリーンインストールでfedora28ないし、CentOS7入れたとして、また設定し直すのははっきり言ってしんどいので、このままいこうかなぁと。
別にFedora27で4.18じゃないと困ったことが起きるとかそういうことないですし。
dnf.conf側でkernelだけ外して、あとはdnf updateでパッケージだけ更新できる間更新すればいいかなぁと思ってます。
解決方法が見つかればそれが一番いいんですけどねぇ。

追記

dnf reinstall * で、全部のパッケージを再インストールしてみました。(kernel以外)
あとは不要だと思われる野良パッケージとソースの整理というか削除。
dnf clean allにて、綺麗にしたり色々。
perl側で/usr/local/binを見ていたので直したりして、掲示板も復活しました。
まだ4.18系以上は試してませんが、少しでも不整合を無くしたいということで色々見直ししてます。

画面が映らない

本日、ディスプレイの電源いれたら、真っ黒。
PC自体は24時間起動しているので、普段はディスプレイの電源のみ切ってる状態なんですが、ディスプレイの電源を入れても真っ黒。
スクリーンセーバーや時間経ったら電源きれるようにもしてないので、マウス動かしたり、キーボードいじったりしたが映らない。
一端、PCの電源おとして、再度、起動。
「DisplayPort」と表示され、少しすると「DisplayPort 信号無し」になる。
んん?
3つあるDisplayPort端子の1つが死んだか?と思い、他のポートにも繋いでみたが映らない。
で、DVIケーブルさして、起動したら、映った。
どうやら、ケーブルが死んだっぽい。
さきほど、DisplayPortのケーブルを注文しました。

DVIでも現状問題はなく、無理にDisplayPortにする必要は無いのですが、何かあったときのためのDVIは最終手段だと思っているので、普段は使わずにいたいという心理からDisplayPortケーブルを使ってます。
半年以上使ってて問題なかったのに何が原因なのかわからないですが、新しくケーブルが届いたら検証してみたいと思います。

追記
http://ch.nicovideo.jp/nie/blomaga/ar823530
の情報を元に、ディスプレイの電源を抜き、時間を経ってから接続しました。
PCの電源はいれたまま。
なんと、映りました。

新しいCPUやGPU欲しいけどお金が無い!

お金ってなんだろうねー。
貧乏は辛い。

もう少ししたら、IntelからCore i9 9900Kが出ますね。
8コア、16スレッド。$500前後。
i7 9700Kの方は8コア、8スレッドで、購入の価値はないですね。

nVidiaからはGeForce RTX 2080。
正確には、2070/2080/2080Tiですね。
ところが、1080と比較した場合、数値だけなら2080と変わらないか、もしくは2080の方が若干低いです。
(nVidiaの情報では1080と2080では1.5倍速いとなってますが)
2080はレイトレーシングが1080の数倍なので、そこは2080の方が勝ってます。
あとは値段だよね。
高すぎ。(13万以上、Tiだと18万以上)

CPUとGPU合わせると15万ほど?そこにマザーと高クロックメモリ足すと20~25万ほど?
まてまて今のPCをアップグレードするだけでそれだけはだせん。

機能や速度が更新され、高機能、高速になるのは嬉しいけど、価格がねぇ。
今回は指くわえてそのままやり過ごしかなぁ。
i7 6700Kからそろそろ更新したいんだけどねぇ。

FFXV Windows ベンチマーク

FFXVのベンチマークを動かしてみた。

しかし問題発生。
音が雑音だらけでがーがー言ってるだけ。

色々設定みてみたけど、結果的には、サウンドを5.1chからステレオにしたら正常に鳴った。

おいおい、5.1chで再生できないってそんなベンチみたことないぞ。
これ、ゲーム本編も5.1chだとゲームの音でんのかなぁ。