昨日の深夜最新版をアップしました。
シークで落ちる問題を根本的に解決しました。
7時間くらいかかったかなぁ。
《ファルコムメディアプレイヤ》
Ogg/Wav/Mp3/m4a/Avi/mp4/kpi
簡易プレイヤ
(2019.07.24)
追記 2019.07.24
こそっとUPDATE
Ys Memories of Celcetaのループに対応。
ただし、bgmtbl.tbbが解析できなかったので、1曲1曲調べながら。
ループテーブルもしくはtbbの解析法が分かりましたら教えてください。
手動でツールを作ってループポイント探し出して埋め込んでますので正解のループポイントではありませんので。
いろいろなツール使って、解除したものがこちら、

これを見やすいよう10進数の形式に直したのがこちら。

ファイル名、ループ開始、ループ終了(ループ終了からループ開始を引いたもの)、ID、ループフラグ
ここで注目は、まずyc_f101です。
yc_f101: 618926; 6788404( 6169478); 10, 1;
この曲のoggは2分25秒。
つまり、サンプル数が6394864となります。
なのに6788404がループエンドを指してます。
明らかに超えているんですねぇ。
これがそのまま使えればいいんでしょうけど、これを使うのはまだダメのようです。
追記2 2019.8.2

間違いがあったー
filename サンプル(Loop差分) Loop開始( -50000) Loop終了[HEX ](終了-開始(差分 :手計算値));ID ,Loop flg;
---------------------------------------------------------------------------------------------------------------------;
yc_title:size: 4986149( 392950); 19200( -30800); 5379099[52141b]( 5359899( -509899: 4850000)); 1, 1;
yc_op:size: 4518014( 0); 0( -50000); 0[ 0]( 0( 0: 0)); 2, 0;
yc_over:size: 4986149( 392950); 19200( -30800); 5379099[52141b]( 5359899( -479899: 4880000)); 3, 1;
yc_end:size:14589926( 0); 0( -50000); 0[ 0]( 0( 0: 0)); 4, 0;
yc_logo:size: 442367( 0); 0( -50000); 0[ 0]( 0( 0: 0)); 5, 0;
yc_e001:size: 4115706( -94856); 331248( 281248); 4020850[3d5a72]( 3689602( -299352: 3390250)); 6, 1;
yc_f101:size: 6394853( 393551); 618926( 568926); 6788404[679534]( 6169478( -503551: 5665927)); 10, 1;
yc_f201:size: 7193239( 203825); 638624( 588624); 7397064[70dec8]( 6758440( -548640: 6209800)); 11, 1;
yc_f301:size: 7234872( 595856); 1195404( 1145404); 7830728[777cc8]( 6635324( -675172: 5960152)); 14, 1;
yc_f401:size: 4095185( -195172); 458974( 408974); 3900013[3b826d]( 3441039( -280039: 3161000)); 15, 1;
yc_f501:size: 7437024( 428176); 2754464( 2704464); 7865200[780370]( 5110736( -550512: 4560224)); 16, 1;
yc_f601:size: 4737404( 19524); 771264( 721264); 4756928[4895c0]( 3985664( -323664: 3662000)); 17, 1;
yc_f701:size:10138811( 43226); 374287( 324287);10182037[9b5d95]( 9807750( -794750: 9013000)); 18, 1;
yc_f801:size: 5422148( -107975); 365435( 315435); 5314173[51167d]( 4948738( -402738: 4546000)); 19, 1;
yc_f901:size: 5640060( -201660); 228544( 178544); 5438400[52fbc0]( 5209856( -422856: 4787000)); 20, 1;
yc_t101:size: 5486943( 238397); 925353( 875353); 5725340[575c9c]( 4799987( -389987: 4410000)); 22, 1;
yc_t201:size: 6801102( -80398); 58906( 8906); 6720704[668cc0]( 6661798( -543488: 6118310)); 24, 1;
yc_t301:size:10177486( 754098); 475910( 425910);10931584[a6cd80]( 10455674( -848177: 9607497)); 25, 1;
yc_e003:size: 5957146( -406200); 896906( 846906); 5550946[54b362]( 4654040( -378152: 4275888)); 26, 1;
yc_t501:size: 9091583( 461297); 932252( 882252); 9552880[91c3f0]( 8620628( -838628: 7782000)); 27, 1;
yc_d101:size: 3390643( -471485); 106732( 56732); 2919158[2c8af6]( 2812426( -230000: 2582426)); 32, 1;
yc_d201:size: 4528658( -243474); 497792( 447792); 4285184[416300]( 3787392( -307392: 3480000)); 33, 1;
yc_d301:size: 4693651( 28264); 401836( 351836); 4721915[480cfb]( 4320079( -351079: 3969000)); 34, 1;
yc_d401:size: 4713019( 165071); 143865( 93865); 4878090[4a6f0a]( 4734225( -384225: 4350000)); 35, 1;
yc_d501:size: 8503891( 385814); 882720( 832720); 8889705[87a569]( 8006985( -787985: 7219000)); 37, 1;
yc_b002:size: 6003246( 450885); 844538( 794538); 6454131[627b73]( 5609593( -455593: 5154000)); 38, 1;
yc_d701:size: 8197602( -213986); 859264( 809264); 7983616[79d200]( 7124352( -579352: 6545000)); 41, 1;
yc_d702:size: 1290778( 38374); 34816( -15184); 1329152[144800]( 1294336( -144336: 1150000)); 42, 1;
yc_d703:size: 4022743( -519523); 719876( 669876); 3503220[357474]( 2783344( -223344: 2560000)); 43, 1;
yc_b001:size: 5522908( -187996); 173438( 123438); 5334912[516780]( 5161474( -143174: 5018300)); 49, 1;
yc_b001:size: 5522908( -187996); 173438( 123438); 5334912[516780]( 5161474( -143174: 5018300)); 50, 1;
yc_b002:size: 6003246( 111607); 504378( 454378); 6114853[5d4e25]( 5610475( -456475: 5154000)); 51, 1;
yc_b002:size: 6003246( 111607); 504378( 454378); 6114853[5d4e25]( 5610475( -456475: 5154000)); 52, 1;
yc_b002:size: 6003246( 111607); 504378( 454378); 6114853[5d4e25]( 5610475( -456475: 5154000)); 53, 1;
yc_b004:size:10134298( 567174); 103237( 53237);10701472[a34aa0]( 10598235( -858235: 9740000)); 54, 1;
yc_b005:size: 9843383( -155487); 1173422( 1123422); 9687896[93d358]( 8514474( -833474: 7681000)); 55, 1;
yc_b003:size: 7194069( 224794); 82845( 32845); 7418863[7133ef]( 7336018( -380818: 6955200)); 56, 1;
yc_e001:size: 4115706( -94856); 331248( 281248); 4020850[3d5a72]( 3689602( -299352: 3390250)); 57, 1;
yc_e002:size: 4727108( -535956); 269224( 219224); 4191152[3ff3b0]( 3921928( -531678: 3390250)); 58, 1;
yc_e003:size: 5957146( -406200); 896906( 846906); 5550946[54b362]( 4654040( -378152: 4275888)); 59, 1;
yc_e004:size: 5717154( -658153); 376209( 326209); 5059001[4d31b9]( 4682792( 263096: 4945888)); 60, 1;
yc_e005:size: 3652866( 299043); 24000( -26000); 3951909[3c4d25]( 3927909( -322021: 3605888)); 61, 1;
yc_e006:size: 1802514( -366866); 119040( 69040); 1435648[15e800]( 1316608( -106608: 1210000)); 62, 1;
yc_e008:size: 4184972( 68244); 325476( 275476); 4253216[40e620]( 3927740( -317740: 3610000)); 64, 1;
yc_e009:size: 1012087( 0); 0( -50000); 0[ 0]( 0( 0: 0)); 65, 0;
yc_e010:size: 6475882( 150870); 857040( 807040); 6626752[651dc0]( 5769712( -610212: 5159500)); 66, 1;
どうやっても計算が合わない。
どういう計算でやっているのかいろいろ試したりしたけど、手計算値と一致させるのはかなり難しい。