こんばんは。
疑問に思ったことが合ったので質問させていただきます。
ゲームの起動時に、使用する音声データを全てLoadSoundMemを使いメモリに読み込んでいるのですが、タスクマネージャーを見ると音声データの容量に対して実際にタスクマネージャーで確認できるメモリの使用量には約2倍の差がありました。
これは内部でどのような処理が行われているため発生しているのでしょうか?
環境はWindows10,visualC#でDxLibDotNetを使用しています。
DXライブラリのメモリへの読み込みについて
- Dixq (管理人)
- 管理人
- 記事: 1662
- 登録日時: 15年前
- 住所: 北海道札幌市
- 連絡を取る:
Re: DXライブラリのメモリへの読み込みについて
ロードした音声ファイルフォーマットは何ですか?
デコードしてメモリ上に展開したデータフォーマットと容量が異なれば元データとのサイズも異なります。
例えばBitmapを展開する時も中身がRGB565のBitmapでもメモリ上にARGB8888で展開すれば容量は2倍になります。
もし詳細な展開されたメモリ上のデータフォーマットまで知りたければDXライブラリの掲示板で聞いた方が良いかと思います。
デコードしてメモリ上に展開したデータフォーマットと容量が異なれば元データとのサイズも異なります。
例えばBitmapを展開する時も中身がRGB565のBitmapでもメモリ上にARGB8888で展開すれば容量は2倍になります。
もし詳細な展開されたメモリ上のデータフォーマットまで知りたければDXライブラリの掲示板で聞いた方が良いかと思います。
Re: DXライブラリのメモリへの読み込みについて
主にmp3を読み込んでいました
なんとなく使用メモリが増えた理由がわかってきました……!
少し自分で調べ直し、それでもわからなければ本家の掲示板で再度質問してみようと思います。
ありがとうございました。
なんとなく使用メモリが増えた理由がわかってきました……!
少し自分で調べ直し、それでもわからなければ本家の掲示板で再度質問してみようと思います。
ありがとうございました。
- Dixq (管理人)
- 管理人
- 記事: 1662
- 登録日時: 15年前
- 住所: 北海道札幌市
- 連絡を取る:
Re: DXライブラリのメモリへの読み込みについて
mp3なら圧縮されているので、もし全て展開したら2倍どころの話じゃないはずです。
今2倍で済んでいるのはリアルタイムデコードの設定になっているからだと思います。
DXライブラリは音楽ファイルのメモリ取り込みの形式に3種類選択できます。
必要最小限のデータだけ展開して後はリアルタイムにデコードしながら再生するようになっているので2倍で済んでいる物と思います。
展開後のデータフォーマットについては詳しく知りませんが、容量的には.mp3を.wavに変換した時のWavファイルの方が近いと思います。
今2倍で済んでいるのはリアルタイムデコードの設定になっているからだと思います。
DXライブラリは音楽ファイルのメモリ取り込みの形式に3種類選択できます。
必要最小限のデータだけ展開して後はリアルタイムにデコードしながら再生するようになっているので2倍で済んでいる物と思います。
展開後のデータフォーマットについては詳しく知りませんが、容量的には.mp3を.wavに変換した時のWavファイルの方が近いと思います。