Show Posts
|
|
Pages: [1] 2
|
|
3
|
Off Topic / General Discussion / Re: Bug head canter Ver1.15 Digital remaster music player
|
on: 29 Dec '12 - 02:21
|
Update 1.16- [Fix] 128-bit Fast Sound engine
- [Remove] multi thread mode
- [Fix] completely gapless
- [Fix] Black mode, Second generation sound
- [Add] Switch Red or Black on main window
- [Fix] AddFolders position fix
- [Add] All playlist clear by [Shift + C]
- [Add] Auto CD scan by [D]
- [Fix] Rarely sound engine stop by Read audio files
- [Fix] call ASIO Control panel
- [Fix] window control
- [Add] Such as "career developer" and "Description of sound processing technology", in English
- [recommend devices] support 24 bit mode (Windows7 or ...)
Please be sure to read the manual (PDF).
|
Reply
Quote
|
|
|
5
|
Developments / BASS / "BASS_ERROR_NOTAVAIL" in "BASS_ChannelGetData" for decode only on PB5
|
on: 28 Dec '12 - 14:48
|
Hello I have use for decoding BASS "M4A and FLAC". I do not use the flag of "BASS_DATA_AVAILABLE". When the file is decoded in the order of certain conditions, BASS returns an error of "BASS_ERROR_NOTAVAIL" in the process of "BASS_ChannelGetData". "BASS_FLAC_StreamCreateFile" is successful. All files have been confirmed to be able to decode. I want to ask you a bug, or should I deal with in addition to what kind of processing. Screen shot  Case "M4A", "AAC" If MusicFileCheck(Filename) chan = BASS_AAC_StreamCreateFile(#False, @Filename, 0, 0, #BASS_STREAM_DECODE | #BASS_SAMPLE_FLOAT) If chan=0 chan = BASS_ALAC_StreamCreateFile(#False, @Filename, 0, 0, #BASS_STREAM_DECODE | #BASS_SAMPLE_FLOAT) If chan=0 chan = BASS_MP4_StreamCreateFile(#False, @Filename, 0, 0, #BASS_STREAM_DECODE | #BASS_SAMPLE_FLOAT) EndIf EndIf EndIf Case "FLAC" If MusicFileCheck(Filename) chan = BASS_FLAC_StreamCreateFile(#False, @Filename, 0, 0, #BASS_STREAM_DECODE | #BASS_SAMPLE_FLOAT) EndIf
Thanks
|
Reply
Quote
|
|
|
9
|
Off Topic / General Discussion / Bug head canter Ver1.16 Digital remaster music player
|
on: 16 Sep '12 - 23:00
|
Bug head canterLight version for all peopleBug head 2nd sound technologySound processing technologyBy not the result of a DAC, consider the state of the sound waves in the air, I have established a sound processing technology and back-calculated from the results. In the terminology of the Japanese audio, I can not be explained without the use of words recreate the sound, and digitally remastered. Please understand that even if the re-sampler from the definition, can not be called a resampler. Than to calculate the frequency domain to revive the lost, improved sound quality of compressed music such as, M4A MP3 is remarkable, I was able to achieve a higher quality of sound. You will be surprised that if the good recording situation, you may be surprised at the sound more than the impression of the CD. Been extinguished in particular the characteristics of the microphone, the original sound of the instrument can be realized and the singer. Sound engine is developed by me. The operator does not need that much precision 128-bit, I have realized this sound. A laptop-compatible 24-bit output, and allows the output of high-quality headphone amplifier is needed not much, you can compete for high-quality amp is 100 000 yen. RED is the first generation. BLACK is the second generation. Number of CPU processing is different. In Core2Duo3GHz, but can handle BLACK of 24bit96kHz, and it 192kHz, CPU will need even faster. RED can handle of 192kHz. Regarding support for this is planned to support high-performance version of the Bug head in, it is a policy sold as shareware 3,000 yen. Total development costs, including labor costs also becomes 20 million yen, Please understand. required WASAPI or ASIO2(XP or) driver and DAC device required SSE2 CPU required Memory space 50MB over required Must be to relax the user (Quality can not be improved)
Screen shot http://nr3.coolverse.jp/_userdata/ssbhcanter.pngDownload 1.09MB / Bug head canter Ver1.16 http://nr3.coolverse.jp/_userdata/download/dlranklog.cgi?dl=Canter_1have fun
|
Reply
Quote
|
|
|
15
|
Developments / BASS / [Code Snippets] ASIO, WASAPI, No mixer Direct output by PureBasic
|
on: 25 Jul '12 - 12:20
|
Hello. I finished my software project "Bug head Ver1.x". This is eternal freeware. Development was very because in this forum, there was no culture of the code sharing. My software was made spending four months aiming at the highest sound quality in the world. The sound of all the music software such as Foobar2000 and J-RIVER was dropped from the stage. Does being possible to fight come in this sound? The sound of XMPlay is very bad. Bug head Ver1.x, Digital remaster music playerhttp://www.un4seen.com/forum/?topic=13591.msg94713The sound of considerable DAC of 1000 dollars is achieved with REALTEK AUDIO CODEC. Invention of original sound processing technology that improves MP3-128kbps to high sound quality that equals SACD. Victory complete compared with sound quality of which existing MP3 sound quality improvement technology.If it is FLAC, the sound quality that competes for DSD and SACD is achieved. The verification of the above-mentioned was executed with the high-level sound equipment of 2500 Euro. I was a gratitude, and 300Euro paid un4seen SharewareLicense. Ver2.x will shareware. A professional translator is writing an English manual. Then, there is 100 Euro. There is no sales experience of Shareware though I want to sell this. I have the sales base in Japan only. It is worry today. Condition that sound worsens- Use Bassmix libraly. If you use hardware mixer, then more bad sounds.
- An already-known sound processing technology is trusted.
- It doesn't verify it with the highest audio device in the world.
- It doesn't have the ideal of an ultimate in one's own way sound.
- There is no experience such as remodeling an analog amplifier.
Condition that sound improves- The weak point in the BASS library is completely understood.
- The weak point of other music players is researched.
- Fact confirmation to "Bug head" that reaches ultimate sound quality by using BASS library.
- I point out that an already-known sound processing technology is worst.
- The verification is confirmed repeatedly by dare wrong. Overturn it in the latest environment.
- I don't have the experience of learning the sound processing technology.
- A wavy display of the output data of "Bug head" is abnormal.
- Still, when becoming a sound wave, it was able to be recognized the charming sound.
- Throw away common sense.
I want to share code for Bass developer. Select UCase(ext) Case "MP3", "OGG", "WAV" chan = BASS_StreamCreateFile(#False, @Filename, 0, 0, #BASS_STREAM_DECODE | #BASS_SAMPLE_FLOAT | #BASS_STREAM_PRESCAN) Case "M4A", "AAC" chan = BASS_AAC_StreamCreateFile(#False, @Filename, 0, 0, #BASS_STREAM_DECODE | #BASS_SAMPLE_FLOAT | #BASS_STREAM_PRESCAN) If chan=0 chan = BASS_ALAC_StreamCreateFile(#False, @Filename, 0, 0, #BASS_STREAM_DECODE | #BASS_SAMPLE_FLOAT | #BASS_STREAM_PRESCAN) If chan=0 chan = BASS_MP4_StreamCreateFile(#False, @Filename, 0, 0, #BASS_STREAM_DECODE | #BASS_SAMPLE_FLOAT | #BASS_STREAM_PRESCAN) EndIf EndIf Case "WMA" chan = BASS_WMA_StreamCreateFile(#False, @Filename, 0, 0, #BASS_STREAM_DECODE | #BASS_SAMPLE_FLOAT | #BASS_STREAM_PRESCAN) Case "FLAC" chan = BASS_FLAC_StreamCreateFile(#False, @Filename, 0, 0, #BASS_STREAM_DECODE | #BASS_SAMPLE_FLOAT | #BASS_STREAM_PRESCAN) Case "CDA" chan = BASS_CD_StreamCreate(Drive, track, #BASS_SAMPLE_FLOAT|#BASS_STREAM_DECODE) Case "WV" chan = BASS_WV_StreamCreateFile(#False, @Filename, 0, 0, #BASS_STREAM_DECODE | #BASS_SAMPLE_FLOAT | #BASS_STREAM_PRESCAN) EndSelect
Procedure.l AsioProc(input.b, channel.l, *buffer, length.l, *user) Shared chan4.l, Endpos.b, UST.b Protected infopos.q, infolen.q Protected *b=*buffer Protected C.l = 0 Select chan4 Case #chan3 If (out_2s-out_2p)>length CopyMemory(*out_2+out_2p, *b, length) out_2p + length : C = length ElseIf out_2s>out_2p CopyMemory(*out_2+out_2p, *b, out_2s-out_2p) C = out_2s - out_2p : out_2p = out_2s If out_1s>out_1p CopyMemory(*out_1+out_1p, *b+C, length-C) out_1p = length - C : C = length chan4 = #chan2 EndIf EndIf Case #chan2 If (out_1s-out_1p)>length CopyMemory(*out_1+out_1p, *b, length) out_1p + length : C = length ElseIf out_1s>out_1p CopyMemory(*out_1+out_1p, *b, out_1s-out_1p) C = out_1s - out_1p : out_1p = out_1s If out_2s>out_2p CopyMemory(*out_2+out_2p, *b+C, length-C) out_2p = length - C : C = length chan4=#chan3 EndIf EndIf EndSelect ProcedureReturn C EndProcedure
BASS_ASIO_ChannelEnable(0,0,@AsioProc(), 0)
Procedure.l WasapiProc( *buffer, length.l, *user) Shared chan4.l, Endpos.b, UST.b Protected infopos.q, infolen.q Protected *b=*buffer Protected C.l = 0 Select chan4 Case #chan3 If (out_2s-out_2p)>length CopyMemory(*out_2+out_2p, *b, length) out_2p + length : C = length ElseIf out_2s>out_2p CopyMemory(*out_2+out_2p, *b, out_2s-out_2p) C = out_2s - out_2p : out_2p = out_2s If out_1s>out_1p CopyMemory(*out_1+out_1p, *b+C, length-C) out_1p = length - C : C = length chan4 = #chan2 EndIf EndIf Case #chan2 If (out_1s-out_1p)>length CopyMemory(*out_1+out_1p, *b, length) out_1p + length : C = length ElseIf out_1s>out_1p CopyMemory(*out_1+out_1p, *b, out_1s-out_1p) C = out_1s - out_1p : out_1p = out_1s If out_2s>out_2p CopyMemory(*out_2+out_2p, *b+C, length-C) out_2p = length - C : C = length chan4=#chan3 EndIf EndIf EndSelect ProcedureReturn C EndProcedure
BASS_WASAPI_Init(WasapiSelectDevice, freq, 2, #BASS_WASAPI_BUFFER | #BASS_WASAPI_EXCLUSIVE, 0.2, 0, @WasapiProc(), 0)
<Sound Thread> pos.q = BASS_ChannelGetLength(chan,#BASS_POS_BYTE) Pos2.q = BASS_ChannelGetPosition(chan,#BASS_POS_BYTE) If (pos-Pos2)<=#BUF1 pdiv = pos-Pos2 K = Bass_ChannelGetData(chan, *out2, pdiv) If K>0 pdiv = K EndIf NextPlaysongs() If chan<>0 pos=BASS_ChannelGetLength(chan,#BASS_POS_BYTE) If pos>(#BUF1-pdiv) K = Bass_ChannelGetData(chan, *out2+pdiv, #BUF1-pdiv) If K>0 pdiv + K EndIf EndIf Else LockMutex(Mutex) :Endpos=2 : UnlockMutex(Mutex) EndIf Else pdiv = #BUF1 K = Bass_ChannelGetData(chan, *out2, pdiv) If K>0 pdiv = K EndIf EndIf LockMutex(Mutex) Select ch Case 1 CopyMemory(*out2, *out_2, pdiv) NowChan = #chan2 : chan4 = #chan2 : out_2s = pdiv : out_2p = 0 Case 2 CopyMemory(*out2, *out_1, pdiv) NowChan = #chan3 : chan4 = #chan3 : out_1s = pdiv : out_1p = 0 EndSelect ready=pdiv UnlockMutex(Mutex)
|
Reply
Quote
|
|
|
17
|
Developments / BASS / Re: Bug? BASS_StreamCreateFile have a problem.
|
on: 10 Jun '12 - 10:10
|
Yes, no problems. ASIO and WASAPI output OK. 32/176.4 WAVE VS WavPak Size 420MB vs 280MB CPU LOAD over vs 98% WAVE loading process is very slow. I want to more quick loading FLOAT WAVE files. and ... I change output foramt WavPak. I use "wavpackdll.dll". BASS lib slow Wave Loading process. WavPak lib fast loading process. only 0.5...1.0 sec waiting time, however Realtime processing critical waiting time. The quality of tone quality is really a little. However, I am embarrassed because I understand plainly when becoming the environment of high-end. File output code DataSection Wave32header: Data.b $52,$49,$46,$46 ; RIFF : 0 :4 Data.b 0,0,0,0 ; Size - 8 : 4 : 8 Data.b $57,$41,$56,$45,$66,$6D,$74,$20 ; WAVEfmt : 8 : 16 Data.b $10,$00,$00,$00 ; PCM : 16 : 20 Data.b $03,$00 ; Float32 : 20 : 22 Data.b $02,$00 ; Streo 2ch : 22 : 24 Data.b 0,0,0,0 ; Format : 24 : 28 Data.b 0,0,0,0 ; Speed : 28 : 32 Data.b 0,0 ; BlockSize Byte/SamplexCh : 32 : 34 Data.b 0,0 ; Bit : 34 : 36 Data.b $64,$61,$74,$61 ; Data : 36 : 40 Data.b 0,0,0,0,0,0 ; Raw Size : 40 : 44 Data.b 0,0,0,0,0,0 ; Raw Size : 40 : 44 EndDataSection
Global callFile = CreateFile(#PB_Any, "C:\test_chk.wav")
Filename.s = OpenFileRequester("TEST", "*.*", "*.*;*.*", 0) BASS_Init(0, 44100,0,0,#Null) chan = BASS_FLAC_StreamCreateFile(#False, @Filename, 0, 0, #BASS_STREAM_DECODE | #BASS_SAMPLE_FLOAT | #BASS_STREAM_PRESCAN) start =1 pos.q = BASS_ChannelGetLength(chan,#BASS_POS_BYTE) CopyMemory(?Wave32header, *out2, 44) PokeL(*out2+24, 176400) ; Format PokeL(*out2+28, 176400*8) ; Speed PokeW(*out2+32, 8) ; BlockSize PokeW(*out2+34, 32) ; Bit PokeL(*out2+4, pos*2*4+44-8) ; Size - 8 PokeL(*out2+40, pos*2*4) WriteData(callFile, *out2, 44)
....
WriteData(callFile, *out2+44, posSinc) ; Until Endpos=2
CloseFile(callFile) MessageRequester("Finish", "")
Play output code for BASSmix pos.q = BASS_ChannelGetLength(chan,#BASS_POS_BYTE) Pos2.q = BASS_ChannelGetPosition(chan,#BASS_POS_BYTE) CopyMemory(?Wave32header, *out2, 44) PokeL(*out2+24, freq) ; Format PokeL(*out2+28, freq*8) ; Speed PokeW(*out2+32, 8) ; BlockSize PokeW(*out2+34, 32) ; Bit If (pos-Pos2)<=#BUF1 pdiv = pos-Pos2 Bass_ChannelGetData(chan, *out2+44, pdiv) NextPlaysongs() If chan<>0 pos=BASS_ChannelGetLength(chan,#BASS_POS_BYTE) If pos>(#BUF1-pdiv) Bass_ChannelGetData(chan, *out2+44+pdiv, #BUF1-pdiv) pdiv=#BUF1 EndIf Else LockMutex(Mutex) :Endpos=2 : UnlockMutex(Mutex) EndIf Else pdiv = #BUF1 Bass_ChannelGetData(chan, *out2+44, pdiv) EndIf PokeL(*out2+4, pdiv+44-8);+44) ; Size - 8 PokeL(*out2+40, pdiv) LockMutex(Mutex) Select ch Case 1 BASS_StreamFree(chan2) CopyMemory(*out2, *out_2, pdiv+44) chan2 = BASS_StreamCreateFile(#True, *out_2, 0, pdiv+44, #BASS_STREAM_DECODE|#BASS_SAMPLE_FLOAT | #BASS_STREAM_PRESCAN) NowChan = chan2 : chan4 = chan2 Case 2 BASS_StreamFree(chan3) CopyMemory(*out2, *out_1, pdiv+44) chan3 = BASS_StreamCreateFile(#True, *out_1, 0, pdiv+44, #BASS_STREAM_DECODE|#BASS_SAMPLE_FLOAT | #BASS_STREAM_PRESCAN) NowChan = chan3 : chan4 = chan3 EndSelect ready=pdiv UnlockMutex(Mutex)
ASIO Proc by BASSmix Procedure.l AsioProc(input.b, channel.l, *buffer, length.l, *user) ;http://www.un4seen.com/forum/?topic=11261.0 Shared mixer.l, chan4.l, chan3.l, chan2.l, Endpos.b Protected *b=*buffer Protected done.l = 0 Protected C.l, c2.l C.l = BASS_ChannelGetData(mixer, *b+done, length-done); // get some data from the source If C=-1 C=0 EndIf done+C If done=length; // got the wanted amount of data C=length ElseIf chan4 BASS_Mixer_StreamAddChannel(mixer, chan4, #BASS_MIXER_NORAMPIN) BASS_ChannelSetPosition(mixer, 0, #BASS_POS_BYTE) c2.l = BASS_ChannelGetData(mixer, *b+done, length-done); // get some data from the source If c2=-1 c2=0 EndIf C+c2 If chan4=chan2 And Endpos=1 chan4=chan3 ElseIf chan4=chan3 And Endpos=1 chan4=chan2 Else chan4=0 EndIf EndIf ProcedureReturn C EndProcedure
|
Reply
Quote
|
|
|
18
|
Developments / BASS / Re: Bug? BASS_StreamCreateFile have a problem.
|
on: 8 Jun '12 - 12:20
|
|
Thank you, Ian@un4seen.
16/44.1PCM 10MB to 32/176.4PCM 80MB. I will search rellly short test music. I use BASSmix to BASSasio... then decoreder change mixhandle. It's OK. I didn't know BASSenc. one songs size is 280MB over.
I use why? bug?, coz I don't have an oscilloscope.
|
Reply
Quote
|
|
|
19
|
Developments / BASS / Bug? BASS_StreamCreateFile have a problem.
|
on: 7 Jun '12 - 01:07
|
I made "Bug head". http://www.un4seen.com/forum/?topic=13591.0Output 32FLOAT/176.4kHz Wavefile to memory handle = BASS_StreamCreateFile(#True, *out, 0, size+44, #BASS_STREAM_DECODE|#BASS_SAMPLE_FLOAT | #BASS_STREAM_PRESCAN) This method is high quality !=Foobar2000, coz "no use LPF", Bug head have super quality digital low-path filter. LPF Specification http://nr3.coolverse.jp/_src/sc167/Web_logo3.pngBut....  Input 32FLOAT/176.4kHz Wavefile form file handle = BASS_StreamCreateFile(#False, @Filename, 0, 0, #BASS_STREAM_DECODE | #BASS_SAMPLE_FLOAT | #BASS_STREAM_PRESCAN) This sound is lossy quality. why? =Foobar2000, maybe "use LPF" What BASS library have the pre-processing when reading from a file?Thank you
|
Reply
Quote
|
|
|
20
|
Off Topic / General Discussion / Re: Bug head 1.612 Ultimate remaster audio player
|
on: 6 Jun '12 - 10:10
|
Thanks download Download 1.2MB / Ver1.612 http://nr3.coolverse.jp/_userdata/download/dlranklog.cgi?dl=BagHead_1Update - Audio CD support (CD-TEXT/CDDB)
- Super quality Low path filter, need 2core
- All process optimized
- Tons of bug fixes
When this output sound data is converted into FLAC, it is not lossless and it's like 64kbps MP3! Realy fact. In addition, the sound quality is investigated with various music players. The software that became rival of Bug head was not found however.
BASS Audio library is best audio middle software. Thank you, Ian@un4seen. This bug head is for Color blindness and weak-sighted visually handicapped person. then eternal freeware. Will you know lossless format that supports 192kHz of 32 bits FLOAT?
|
Reply
Quote
|
|
|