Go Back   Winamp Forums > Developer Center > Winamp Development

Reply
Thread Tools Search this Thread Display Modes
Old 18th April 2012, 14:36   #281
SilverBird775
Senior Member
 
SilverBird775's Avatar
 
Join Date: Jan 2009
Location: Russia
Posts: 237
Thats okay. Now start playback and see if your 000000030000003F was appied.

Settings are saving on the actual change, settings are loading on the actual need.
Actual change is your input, Actual need is the play button event.
Settings in stop mode are fake. Settings right after winamp loading is a bin trash. Always check and inspect your matrix while playing something.

All the settings are loading or saving at once. It does not matter what you change, the file will rewrite at its whole. The automate checkbox option will screw up the user matrix when enabled, as expected.
SilverBird775 is offline   Reply With Quote
Old 19th April 2012, 06:26   #282
Aminifu
Forum King
 
Aminifu's Avatar
 
Join Date: Aug 2011
Location: Chicago, IL
Posts: 3,207
Quote:
Originally Posted by SilverBird775 View Post
Settings are saving on the actual change, settings are loading on the actual need.
Actual change is your input, Actual need is the play button event.
Settings in stop mode are fake. Settings right after winamp loading is a bin trash. Always check and inspect your matrix while playing something.

All the settings are loading or saving at once. It does not matter what you change, the file will rewrite at its whole. The automate checkbox option will screw up the user matrix when enabled, as expected.
I have followed your instructions carefully and exactly. It just will not work for me, my mixer changes are not returned. The mixer either stays at the default 5.1 (all boxes checked and normalized 5.1 matrix values) or returns a change to stereo (normalize and fill up boxes checked but grayed out, automate box unchecked, and a 1 in the left and right front matrix channels).

Once a change to stereo is made, it will not return a change to anything else. The only way to get back to the default 5.1 is to wipe everything and start over. Also once the change to stereo is made, the status report still says 5.1 (DVD) output even though I hear stereo.

I mostly need to compensate for the location of my speakers and a little for room acoustics. Tweaking the matrix and/or the individual speaker volumes, lets me do this. I really like your plug-in and want to use it. But having to manually change the mixer every time I start WA is not convenient. I could stay with the Maiko default 5.1 mixer settings and use the Windows speaker volume controls to tweak the output levels of the individual speakers, but that is also not convenient.

I believe Maiko's audio processing is superior to that of 'Matrix Mixer', but MM lets me make and save the compensations (matrix and/or base individual speaker volumes) I need. So I will keep using MM until Maiko's development gets a little further along.

Thank you for the test version and the time spent on me the past few days.

Win 7 Home Premium 64-bit SP1 desktop, Winamp Pro 5.666.3516, cPro MPxi_remix skin, 5.1 speaker system
Aminifu is offline   Reply With Quote
Old 19th April 2012, 07:45   #283
Aminifu
Forum King
 
Aminifu's Avatar
 
Join Date: Aug 2011
Location: Chicago, IL
Posts: 3,207
Wow, restoring a Mixer change is finally working!!!

Just when I was ready to give up, I decided to give the 0.47 test version one more try.

Before my previous post, I had switched the output plug-in back to MM before I shut WA down. I started WA, started a song, then switched the output plug-in back to Maiko. Then I changed the mixer matrix, stopped the song, and shutdown WA. Restarted WA, started a song (sounded good), and checked the mixer. My changes were there! Shutdown, restarted, and my changes are still there! Wonderful!!

I have 2 Maiko bin files. 'Maiko_A8B7963E000000000000003F' and 'Maiko_A8B7963E000000030000003F'. The first was created upon installation. The second was made when the first mixer matrix change was attempted. When my mixer changes were NOT being restored, the (2nd) Maiko_A8B7963E000000030000003F bin file was the one being updated and the other was not. Now that the changes ARE being restored, its the (1st) Maiko_A8B7963E000000000000003F bin file that was updated and the other was not.

I hope you understand this and it makes sense. Now I'm afraid to touch anything related to output configuration until I know what's going on. Was it the sequence of events and/or Maiko using the other bin file? If it is the switching to the other bin file, why did Maiko do it? Did switching from MM to Maiko while a song was playing change the input/output channels physical setup mask as far as Maiko is/was concerned?

Win 7 Home Premium 64-bit SP1 desktop, Winamp Pro 5.666.3516, cPro MPxi_remix skin, 5.1 speaker system
Aminifu is offline   Reply With Quote
Old 19th April 2012, 09:29   #284
SilverBird775
Senior Member
 
SilverBird775's Avatar
 
Join Date: Jan 2009
Location: Russia
Posts: 237
It can't be a MM and Maiko to correlate. They knows next to nothing about each other neither need to.

The first file 0 & 3F is valid but it senseless. It says the input is zero channels and the output is 5.1 which is clearly not a viable situation. So, the 0 & 3F loading on the start, then must be 3 & 3F loading on playback.

I'm going to do more work on mixer configuration and will look into matrix configuration save/load issue.

Thank you for a detailed reports, very valuable input. I recommend you to save the settings and test build for awhile until the issue will be fixed.

I know the room correction is very important. It is not exacly the matrix you need to adjust but the balance. You may get the impression of what i'm going to do for a balance job by looking for unlocked 'balance' mockup tab sheet in the updated beta. Not functional at all, its just a functional reference for me. To this moment the balance (room correction) can be done via matrix but its as ugly way to do this as the classic stereo panning. BTW, I'm having the hard time to decide should the balance be device dependent or individual for each input-output variation. I tend to believe the balance is the device (speakers) attribute, how do you think?
SilverBird775 is offline   Reply With Quote
Old 19th April 2012, 11:24   #285
Aminifu
Forum King
 
Aminifu's Avatar
 
Join Date: Aug 2011
Location: Chicago, IL
Posts: 3,207
Hi SilverBird775,

I've been thinking about this and I think it's partly my system configuration and partly me confusing Maiko.

I have multiple sound devices. When I first installed Maiko, it chose the "Default device" instead of my sound card. I don't known if WA considers my sound card as the default device, but it is setup that way in Windows' sound control panel.

Anyway, I had the crash when trying to tell Maiko to use my sound card (due to the bug that interferes with changing the output device while playing). Restarting, WA was now set to use Maiko as the output plug-in and entering Maiko's configuration dialog to setup my sound card no song was playing, so the mixer was seeing zero input.

Then I closed Maiko's configuration dialog (before starting a song) and I think the first bin file was created with the default 5.1 output (0 input - 5.1 output). Then I started a song and reopened the configuration dialog to setup the mixer matrix and the second bin file was created (stereo input - 5.1 output).

I can't figure why Maiko would not use the custom matrix values after a WA restart. After several tries, I figure the bin was corrupted and produced the stereo configuration described before.

But somehow, switching away from Maiko as the ouput plug-in during WA startup (after it was setup for my sound card), and switching back to it after startup while a song was playing, allowed Maiko's mixer to finally determine the last play event's true input and output characteristics consistent with how it was installed.

Does any of that make any sense?

P.S.
I know MM and Maiko don't affect each other. I should have said switching between the Nullsoft DirectSound output plug-in and Maiko. MM is just used as a front-end for the DS on my system.

Win 7 Home Premium 64-bit SP1 desktop, Winamp Pro 5.666.3516, cPro MPxi_remix skin, 5.1 speaker system
Aminifu is offline   Reply With Quote
Old 19th April 2012, 11:35   #286
Aminifu
Forum King
 
Aminifu's Avatar
 
Join Date: Aug 2011
Location: Chicago, IL
Posts: 3,207
Quote:
Originally Posted by SilverBird775 View Post
I know the room correction is very important. It is not exacly the matrix you need to adjust but the balance. You may get the impression of what i'm going to do for a balance job by looking for unlocked 'balance' mockup tab sheet in the updated beta. Not functional at all, its just a functional reference for me. To this moment the balance (room correction) can be done via matrix but its as ugly way to do this as the classic stereo panning. BTW, I'm having the hard time to decide should the balance be device dependent or individual for each input-output variation. I tend to believe the balance is the device (speakers) attribute, how do you think?
I agree 100 percent. It is more of a balance issue and balance is a speakers attribute.

Win 7 Home Premium 64-bit SP1 desktop, Winamp Pro 5.666.3516, cPro MPxi_remix skin, 5.1 speaker system
Aminifu is offline   Reply With Quote
Old 24th April 2012, 16:11   #287
ravermeister
Senior Member
 
ravermeister's Avatar
 
Join Date: Feb 2009
Location: Cologne
Posts: 132
Send a message via ICQ to ravermeister
Hey, Just found this nice Output plugin.
Thanks for this great piece of software.
Sounds really nice here now .

but I've got a Question:
my Hardware is as follows:

System: Windows 7 64bit
CPU: AMD Phenom II 965 Black Edition
RAM: 6GB
Soundcard: Creative X-fi Titanium (PCI-Express)
Speakers: 5.1 Teulel Concept E Magnum
Connected analog Cinch to 3,5mm to the Soundcard.

Soundcard Software Configuration:
- 24bit processing
- CMSS3D (upmixing function for Stereo Sources from Creative)

I'm not sure which Output plugin I should use
(best quality / Hardware Acceleration)

I Tested:
- http://www.winamp.com/plugin/asio-output-plugin/156466 (ASIO)
- http://maiko.elementfx.com/ (WASAPI)
- Winamp Directsound


- Directsound sounds awful compared to the other ones.
- The WASAPI sounds really nice, but has some clicking noise when changing a song
(the Buffer is set to 0 means auto if i manually increase the value, you have a time shift
between Press Button for Next Track, and the Real Action.)
- The ASIO sounds really nice too, to be honest I can't here a Real difference to WASAPI,
but it feels like ASIO sounds a little bit clearer. no Time Shift, nor clicking
noise, but I don't like to have Winamp as the only output, as I
used to run Winamp while I Play Games.
(maybe there is something like the Shared Mode in WASAPI for ASIO)?

so under this circumstances is it the Best choice to use the WASAPI output, and
live with the clicking noise or what kind of setting would you choose?

Thanks and kind regards
Ravermeister
ravermeister is offline   Reply With Quote
Old 24th April 2012, 19:08   #288
SilverBird775
Senior Member
 
SilverBird775's Avatar
 
Join Date: Jan 2009
Location: Russia
Posts: 237
ravermeister,
There is no other settings for a shared mode but the buffer size.
Please make sure you have the latest plugin 0.47 or test version installed, the only advice i have. It should not make clicking noise unless your files are bad encoded.
SilverBird775 is offline   Reply With Quote
Old 24th April 2012, 21:05   #289
Aminifu
Forum King
 
Aminifu's Avatar
 
Join Date: Aug 2011
Location: Chicago, IL
Posts: 3,207
Hi ravermeister,

I suggest you turn off the CMSS3D and 24bit processing (and any other Creative enhancements) and let Maiko do the upsampling and upmixing.

If you want to check your mp3 and other MPEG audio files, I suggest "MP3Val" and/or "MP2Diags". Both are free utilities that can identify and correct many various structural errors that may be in your files. MP3Val is much easier to use and probably safer. MP3Diags is more comprehensive. No app is perfect, so make a backup before letting either app 'correct' a file.

http://mp3val.sourceforge.net/

http://mp3diags.sourceforge.net/

Win 7 Home Premium 64-bit SP1 desktop, Winamp Pro 5.666.3516, cPro MPxi_remix skin, 5.1 speaker system
Aminifu is offline   Reply With Quote
Old 24th April 2012, 23:41   #290
ravermeister
Senior Member
 
ravermeister's Avatar
 
Join Date: Feb 2009
Location: Cologne
Posts: 132
Send a message via ICQ to ravermeister
Thank you for your tips, I'll test the mp3 correction tools, and
see what they can do for me.

according to Creative, the CMSS3D Surround will only take effect if the output data is stereo. If I understand out_maiko correctly, it already does the upmixing, so CMSS3D
is only used,if the output data is stereo (which is not the case for out_maiko? as disabling doesn't change the Sound when out_maiko is running).
Or should I disable it anyway when I listen to music with winamp?
because for movies with Stereo audio source, it is still a nice feature.

and the 24bit Processing is the Hardware setting I've chosen.
Following settings are possible:
- 16bit, 44100Hz
- 16bit, 48000Hz
- 16bit, 88200Hz
- 16bit, 96000Hz
- 24bit, 44100Hz
- 24bit, 48000Hz
- 24bit, 96000Hz

and with 24bit, 96000Hz I thought I'd achieve the best quality or am I wrong?
ravermeister is offline   Reply With Quote
Old 25th April 2012, 01:26   #291
Aminifu
Forum King
 
Aminifu's Avatar
 
Join Date: Aug 2011
Location: Chicago, IL
Posts: 3,207
Hi ravermeister,

I would disable CMSS3D when using WA and Maiko. Although, the Maiko mixer matrix can be setup to output stereo (if you just want to use Maiko for upsampling). Your ears will tell you what is best. IMO, Maiko sounds better than CMSS3D and the Windows "speaker fill" feature.

The 24bit hardware processing is fine and recommended. You had listed the 24bit processing under software in your previous post. Maiko will upsample to 32 bits, then Windows will downsample (in shared mode) to fit your selection for your sound card.

I forgot to mention that Win 7 messed with sound card hardware acceleration. Try turning that option off.

Sometimes I've downloaded files that were error-free, but poorly made as to their start and/or finish. For mp3s, I use a utility called "MP3Trim" that allows me to remove or adjust the silent portion at the start and/or end of a file. It also allows a fade in/out adjustment for files that start/end abruptly. Another utility, "MP3Cut", lets you snip off a selectable part of a file.

If the static problem remains after 'error' corrections, I suggest a forums search for what others have done. Sometimes a WA option tweak solves the problem. Many here frown on Creative products/drivers. I have an old Audigy Platinum that works great (with the help of Daniel K’s modified drivers).

Yeah, a lot of work. But I love music and am willing to go the extra mile to have my digital music sound as good as possible with my limited budget.

Win 7 Home Premium 64-bit SP1 desktop, Winamp Pro 5.666.3516, cPro MPxi_remix skin, 5.1 speaker system
Aminifu is offline   Reply With Quote
Old 26th April 2012, 17:27   #292
Yehonathan
Junior Member
 
Join Date: May 2005
Posts: 5
Please report this!... oke

I got this error while listening music.

Don't know what it mean, after acknowledging the error the endpoint unlocked and locked the stream again then audio continued.
I can't reproduce the error, but just letting Maiko know instead since it asked for it

I'm using the latest Winamp playing a Flac file ripped from CD at 44.1KHz.
Endpoint: (USB) Musical Fidelity v-link > Musical Fidelity M1DAC

Yehonathan is offline   Reply With Quote
Old 26th April 2012, 20:05   #293
SilverBird775
Senior Member
 
SilverBird775's Avatar
 
Join Date: Jan 2009
Location: Russia
Posts: 237
Yehonathan,
This error is well known but it's rare now. It depends on exotic devices and their raw drivers so your assistance would be much appreciated. Your device drivers internally locked up 300ms, that is insanely lot!


What buffer size 2 did you set?
Copypasting 5 while playing some 44.1KHz file would be very helpful too.
SilverBird775 is offline   Reply With Quote
Old 27th April 2012, 15:27   #294
Yehonathan
Junior Member
 
Join Date: May 2005
Posts: 5
Hello Silverbird,

I currently can't see the image, I just try to give as many info possible.

Windows 7 64bit, Maiko WASAPI out v0.46, default Windows USB audio driver since Musical Fidelity does not require a Windows driver for asynchronous output but has dedicated drivers running in the v-link (as far I understand)

The v-link is set to 24 bit, 96000Hz in Windows properties checked "Allow applications to take exclusive control of this device"
This device can be set to 44100, 48000 or 96000Hz at 24 bit only.

The Musical Fidelity M1DAC receives the signal from the v-link optical at 96KHz (this changes when I set it another sample rate for the v-link in the Windows sound control panel)
M1DAC is able receive between 32KHz and 192KHz 16/24Bit

Maiko settings:
Plugin:

Set to: v-link
Client buffer size: 0
Checked "Genuine latency formula"

code:

Input stream:
16 bit PCM encoding in 2.0 (Stereo) setup. 44100Hz rate
MAIKO buffer/latency: 3781 samples (85737 µs)

Output stream:
24 bit PCM encoding in 2.0 (Stereo) setup. 96000Hz rate
Client buffer: 32768 samples (341334 µs)
Client latency: 42666 µs
Mixer scheduling period (latency): 21333 µs
Minimum device period (latency): 3000 µs

Exclusive mode renderer
Data route: Maiko mixer

Plugin latency reported to Winamp: 342 ms
Peak output loudness detected: 0.000000 db




Exclusive:




When I click on "Client invalidate & Reload" Maiko failed, after acknoledge Winamp crashes.

Yehonathan is offline   Reply With Quote
Old 27th April 2012, 16:31   #295
SilverBird775
Senior Member
 
SilverBird775's Avatar
 
Join Date: Jan 2009
Location: Russia
Posts: 237
Yehonathan,
"Curioser and curioser!" (c) Alice in Wonderland

Please let me know if the "Internal WASAPI lock-up" manifests again. The device with such a glitch should not work at all.

Your exclusive tab screenshot show the all-forced bit-copy mode. Any exclusive tab changes must be done only when playback stopped. The "Client invalidate & Reload" button simply reinit the device but it have not that much use really because every control element will take care of reloading the device with the latest user settings. All you need to do is to stop the playback before the device can be reprogrammed. The plugin is unable to isolate the playback while manually changing the device programming options yet.
SilverBird775 is offline   Reply With Quote
Old 27th April 2012, 17:07   #296
Yehonathan
Junior Member
 
Join Date: May 2005
Posts: 5
Thanks for your reply,
Is my setup oke? you noted about the high latency before?

Personally i don't care about the latency since its only for music listening, what could cause these high latency?
I know that proper ASIO setup could reduce latency down to about <10ms so compared to this the reported 342ms is quite a bit.

When I connect the M1DAC via USB exact the same latency is reported, also the output stay at 44.1KHz when playing higher sample rates.

Only proper way to get "bit perfect" is by connecting the M1DAC directly via COAX (downside is some ground jitter like noises come through when silent) So i better keep the computer isolated from the audio system by using optical connection
Still get the high latency, when connected this way.

code:

Input stream:
16 bit PCM encoding in 2.0 (Stereo) setup. 96000Hz rate
MAIKO buffer/latency: 1708 samples (17792 µs)

Output stream:
16 bit PCM encoding in 2.0 (Stereo) setup. 96000Hz rate
Client buffer: 32768 samples (341334 µs)
Client latency: 21333 µs
Mixer scheduling period (latency): 21333 µs
Minimum device period (latency): 3000 µs

Exclusive mode renderer
Data route: Bit-copy

Plugin latency reported to Winamp: 342 ms
Peak output loudness detected: 0.000000 db



I don't understand how the v-link or USB input of the M1DAC actually work.

Quote from Stereophile
Quote:
The USB datastream is fed to a Texas Instruments TAS1020B receiver chip, which converts the audio data to two-channel i2S format. The TAS1020B includes an embedded microprocessor; the firmware that allows it to operate in asynchronous mode is stored in a socketed eight-pin chip. The i2S output from the TAS1020B is fed to a Burr-Brown DIT4096 chip, which converts the data to S/PDIF and can operate at sample rates up to 96kHz. A single crystal on the board is used as a high-precision, single-frequency oscillator to drive the TAS1020B processor clock and its internal frequency synthesizer; the latter generates both the 44.1 and 48kHz word-clock frequencies and their multiples.

Edit: The USB input on the M1DAC is not asynchronous.
Quote:
The M1's USB input is limited to 48kHz and below and 16-bit data. For playback of high-resolution files with the M1DAC via USB, Musical Fidelity recommends using their V-Link asynchronous USB-S/PDIF converter
Yehonathan is offline   Reply With Quote
Old 27th April 2012, 19:31   #297
SilverBird775
Senior Member
 
SilverBird775's Avatar
 
Join Date: Jan 2009
Location: Russia
Posts: 237
Yehonathan,
Nay. I did not mean latency, it just happened to be the same looking numbers. I just said the above error message reported that WASAPI did stalemate at 300 ms out of 340 ms for a device buffer which is clearly a major disaster for a plugin because it had no clue what's happened to device driver, it just went unresponsive. The plugin will tolerate the device unresponsiveness to some degree, but it cannot possibly compensate for a more then 80% of the synchronization loss. The trouble less messagebox clicks sequence is okay to "Lock-Up" then okay to "Stop error", the plugin will recover then.

latency:
Uncheck the "Genuine latency formula" to compute the real latency. The real latency is good for a video playback but not so good for a build-in winamp's visualization bars. The default method is a "Genuine latency", like a native winamp plugins do, thus a "genuine" label. That is a truth versus genuine choice for a video thing. Neither is better, though i do prefer real latency for a much better video smoothness. The real latency computes how much time it takes the sound to get from the play button to speakers. The genuine latency just repeats the actual device buffer size, it could not be the latency but the winamp's main window visualization likes it. The choice is up to you.
SilverBird775 is offline   Reply With Quote
Old 28th April 2012, 09:27   #298
Yehonathan
Junior Member
 
Join Date: May 2005
Posts: 5
So it seem to be the (Windows) driver caused this problem.

I don't know if there will be a suitable 3rd party driver for my situation since the actual driver runs in the v-link itself its probably designed to make use of the default USB output drivers of Windows/Mac.

I have been searching the internet before to make proper use of the DAC since I noticed it always locks the signal on to the SR I set in Windows and not the SR the actual file is played from Winamp.

So the samplerate on the M1DAC received by the v-link is always at 96Khz (Set in the Windows settings)
Since the v-link does not upsample I wonder what does it? and why? (Also tried when disabled Slave to input sample rate)
The best proper audio stream should be maintained at its source sample rate right?

Some info I got frome the Texas Instrument chipset datasheet [pdf] used in the v-link
Quote:

2.1.4 USB Transceiver
The TAS1020B provides an integrated transceiver for the USB port. The transceiver includes a differential output driver, a differential input receiver, and two single ended input buffers. The transceiver connects to the USB DP and DM signal terminals.

2.1.5 USB Serial Interface Engine (SIE)
The serial interface engine logic manages the USB packet protocol for packets being received and transmitted by the TAS1020B. For packets being received, the SIE decodes the packet identifier field (PID) to determine the type of packet being received and to ensure the PID is valid. The SIE then calculates the cycle redundancy check (CRC) of the received token and data packets and compares the value to the CRC contained in the packet to verify that the packet was not corrupted during transmission.
For transmitted token and data packets, the SIE generates the CRC that is transmitted with the packet.
The SIE also generates the synchronization field (SYNC) and the correct PID for all transmitted packets.
Another major function of the SIE is the serial-to-parallel conversion of received data packets and the parallel-to-serial conversion of transmitted data packets.

2.1.7 USB Frame Timer
The USB frame timer logic receives the start of frame (SOF) packet from the host PC each USB frame.
Each frame, the logic stores the 11-bit frame number value from the SOF packet in a register and asserts the internal SOF signal. The frame number register can be read by the MCU and the value can be used as a time stamp. For USB frames in which the SOF packet is corrupted or not received, the frame timer logic will generate a pseudo start of frame (PSOF) signal and increment the frame number register.

2.1.11 USB Endpoint Configuration Blocks and Buffer Space
The USB endpoint configuration blocks are used by the MCU to configure and operate the required USB endpoints for a particular application. In addition to the control end-point, the TAS1020B supports a total of seven IN endpoints and seven OUT endpoints. A set of six bytes is provided for each endpoint to specify the endpoint type, buffer address, buffer size, and data packet byte count.
The USB endpoint buffer configuration blocks and buffer space provided totals 1440 bytes. The buffer space to be used by a particular endpoint is fully configurable by the MCU for a particular application.
Therefore, the MCU can configure each buffer based on the total number of endpoints to be used, the maximum packet size to be used for each endpoint, and the selection of single or double buffering.

2.1.12 DMA Controller
Two DMA channels are provided to support the streaming of data for USB isochronous IN endpoints, isochronous OUT endpoints, and bulk OUT endpoints. Each DMA channel can support one USB isochronous IN endpoint, or one isochronous OUT endpoint, or one bulk OUT endpoint. The DMA channels are used to stream data between the USB endpoint data buffers and the codec port interface.
The USB endpoint number and direction can be programmed for each DMA channel. Also, the codec port interface time slots to be serviced by each DMA channel can be programmed.

2.2.7 USB Transfers
The TAS1020B device supports all USB data transfer types: control, bulk, interrupt, and isochronous. In accordance with the USB specification, endpoint zero is reserved for the control endpoint and is bidirectional. In addition to the control endpoint, the TAS1020B is capable of supporting up to 7 IN endpoints and 7 OUT endpoints. These additional endpoints can be configured as bulk, interrupt, or isochronous endpoints.
I'm satisfied with the audio performance of the DAC but I have actually never found out what is the best way to use it, starting with the Maiko WASAPI I noticed difference in audio, it was slightly less dull and seem to have different responce in the low (bass) regions , I never understood why a digital codec could change the analog audio response, except if there is some EQ in the codecs but I doubt this.
Yehonathan is offline   Reply With Quote
Old 28th April 2012, 10:49   #299
SilverBird775
Senior Member
 
SilverBird775's Avatar
 
Join Date: Jan 2009
Location: Russia
Posts: 237
Maiko MonkeysAudio 0.02 released

----
Yehonathan,

Maiko WASAPI is a powerful instrument but how to use it is up to you. All the computing the plugin doing internally are well controlled by Exclusive tab page. The plugin gives you an excellent opportunity to exactly match the best regimes for your hardware.
Let the plugin's Status log to guide you. It reminds you what the actual input is, what the actual output is, there is no guessing anymore. There is no good or bad options to switch on&off, you have to find out the optimal options yourself, thats why they are options.

Some homework is up to you. Trust your ears, they are the most efficient tool you have. Please ask me if you want to get some functionality from the tool, i do honestly don't know what is good for each of billions devices and convertors out there and unable to help in this respect.
SilverBird775 is offline   Reply With Quote
Old 28th April 2012, 11:27   #300
Yehonathan
Junior Member
 
Join Date: May 2005
Posts: 5
Your plugin is great, like I wrote it improved the audio response compared to the Directsound output.

It also provides all necessary information and flexibility, I was just wondering where the upsampling took place when I uncheck Slave to input since incoming stream is then 16bit/44.1 but output is 24bit/96k
Yehonathan is offline   Reply With Quote
Old 28th April 2012, 14:03   #301
SilverBird775
Senior Member
 
SilverBird775's Avatar
 
Join Date: Jan 2009
Location: Russia
Posts: 237
It upsampled by plugin. Since you uncheck the Slave to input options, the plugin adapts to the shared mode parameters, same sample rate, same speakers. You may want to chain the output format to the input only in a certain aspect, like samplerate while allowing to adapt speakers, bit depth.

the log message
code:
Exclusive mode renderer
Data route: Bit-copy

guaranties the bits are passed from the input plugin to driver without any change. When it say Data route: Maiko Mixer it means the build in processor in the work.
SilverBird775 is offline   Reply With Quote
Old 7th May 2012, 12:03   #302
baunegaard
Junior Member
 
Join Date: Mar 2012
Posts: 11
Hey there SilverBird.

Thanks for the fix last time, that problem is completely gone.

But now i have a new problem:
1'st problem:
The mixer settings does not seem to save when i close winamp. Everytime i start winamp the mixer is set to 'Automate' even though i disabled it last time i used winamp.

2'nd problem: (most annoying :P)
Also even though i have all settings checked for bit-copy. I need to open winamp, start a song, stop the song, go to maiko settings and click 'Client invalidate & Reload' and then start a new song for it to show bit-copy in status log.

Hope these small problems is something that can be resolved

Thanks for all your work in this plugin.

Last edited by baunegaard; 7th May 2012 at 14:25.
baunegaard is offline   Reply With Quote
Old 7th May 2012, 13:34   #303
Aminifu
Forum King
 
Aminifu's Avatar
 
Join Date: Aug 2011
Location: Chicago, IL
Posts: 3,207
Quote:
Originally Posted by baunegaard View Post
But now i have a new problem:
The mixer settings does not seem to save when i close winamp. Everytime i start winamp the mixer is set to 'Automate' even though i disabled it last time i used winamp.
Hi,

Until this is fixed, the way I get mixer changes to be saved is to switch to another output plug-in and shutdown WA. Restart WA, start a song playing, then switch to the Maiko output plugin and make the changes to the mixer matrix. Now when you shutdown and restart WA, the new mixer settings should be retained.

If this does not work for you with version 0.47 downloaded from SilverBird775's website, try the test version of 0.47 SilverBird775 made. See post #272 on page 7 of this thread for the link to this test version.

Win 7 Home Premium 64-bit SP1 desktop, Winamp Pro 5.666.3516, cPro MPxi_remix skin, 5.1 speaker system
Aminifu is offline   Reply With Quote
Old 7th May 2012, 14:26   #304
baunegaard
Junior Member
 
Join Date: Mar 2012
Posts: 11
Quote:
Originally Posted by Aminifu View Post
Hi,

Until this is fixed, the way I get mixer changes to be saved is to switch to another output plug-in and shutdown WA. Restart WA, start a song playing, then switch to the Maiko output plugin and make the changes to the mixer matrix. Now when you shutdown and restart WA, the new mixer settings should be retained.

If this does not work for you with version 0.47 downloaded from SilverBird775's website, try the test version of 0.47 SilverBird775 made. See post #272 on page 7 of this thread for the link to this test version.
Thank you i will try this out .

The second problem i descriped is the worst for me, as it is quite annoying to do that procedure every time i open winamp.
baunegaard is offline   Reply With Quote
Old 7th May 2012, 17:33   #305
SilverBird775
Senior Member
 
SilverBird775's Avatar
 
Join Date: Jan 2009
Location: Russia
Posts: 237
baunegaard, 2'nd problem: (most annoying one)

It just cant be so. Absolutely not sure you are not twisting the things. Are you sure every box checked on Eclusive tab?
SilverBird775 is offline   Reply With Quote
Old 8th May 2012, 20:58   #306
baunegaard
Junior Member
 
Join Date: Mar 2012
Posts: 11
Quote:
Originally Posted by SilverBird775 View Post
baunegaard, 2'nd problem: (most annoying one)

It just cant be so. Absolutely not sure you are not twisting the things. Are you sure every box checked on Eclusive tab?
Just did some more testing, yes every box exept the last one is checked under the exclusive tab.
Actually i figured out some more, if i open winamp and play a mp3, status log shows bit-copy right away, but if i open winamp and play a flac file, it shows maiko mixer, then i need to follow my prevouisly descriped steps to achive bit-copy again.
baunegaard is offline   Reply With Quote
Old 9th May 2012, 08:04   #307
Aminifu
Forum King
 
Aminifu's Avatar
 
Join Date: Aug 2011
Location: Chicago, IL
Posts: 3,207
Hi baunegaard,

That's bad news. I currently use shared mode and have no flac files. Was about to make some flacs. Does bit-copy mode return if you play an mp3 after the flac (without restarting WA)?

Did my suggestion work for the mixer matrix settings? Does switching between mp3 and flac mess with them too?

Win 7 Home Premium 64-bit SP1 desktop, Winamp Pro 5.666.3516, cPro MPxi_remix skin, 5.1 speaker system
Aminifu is offline   Reply With Quote
Old 9th May 2012, 18:26   #308
baunegaard
Junior Member
 
Join Date: Mar 2012
Posts: 11
Quote:
Originally Posted by Aminifu View Post
Hi baunegaard,

That's bad news. I currently use shared mode and have no flac files. Was about to make some flacs. Does bit-copy mode return if you play an mp3 after the flac (without restarting WA)?

Did my suggestion work for the mixer matrix settings? Does switching between mp3 and flac mess with them too?
If i play a flac file and then change song to an mp3, status log keeps showing maiko mixer, however if i stop winamp for a few seconds and then start an mp3, it goes to bit-copy.

Also Aminifu i tried you suggested steps, but mixer matrix still does not save settings.
baunegaard is offline   Reply With Quote
Old 10th May 2012, 04:57   #309
Aminifu
Forum King
 
Aminifu's Avatar
 
Join Date: Aug 2011
Location: Chicago, IL
Posts: 3,207
Quote:
Originally Posted by baunegaard View Post
If i play a flac file and then change song to an mp3, status log keeps showing maiko mixer, however if i stop winamp for a few seconds and then start an mp3, it goes to bit-copy.

Also Aminifu i tried you suggested steps, but mixer matrix still does not save settings.
I'm sure the info provided on what happens when switching file formats will help SilverBird775 with his testing and repairs. Hopefully it's something simple having to do will info the different decoders are providing.

Sorry my suggestion for saving the matrix changes (even with the test version of 0.47?) did not work for you. Maybe it's because you use exclusive mode. Anyway, SilverBird775 is now aware of your issues too and will add them to a fix.

Don't want to be a pest, but you didn't answer whether switching formats causes the matrix settings to revert or not.

Win 7 Home Premium 64-bit SP1 desktop, Winamp Pro 5.666.3516, cPro MPxi_remix skin, 5.1 speaker system
Aminifu is offline   Reply With Quote
Old 10th May 2012, 12:34   #310
baunegaard
Junior Member
 
Join Date: Mar 2012
Posts: 11
Quote:
Originally Posted by Aminifu View Post
I'm sure the info provided on what happens when switching file formats will help SilverBird775 with his testing and repairs. Hopefully it's something simple having to do will info the different decoders are providing.

Sorry my suggestion for saving the matrix changes (even with the test version of 0.47?) did not work for you. Maybe it's because you use exclusive mode. Anyway, SilverBird775 is now aware of your issues too and will add them to a fix.

Don't want to be a pest, but you didn't answer whether switching formats causes the matrix settings to revert or not.
Haven't tried the test version yet.
You are not a pest, im fine answering anything if it can help out with a better plugin
The matrix settings only resets when restart Winamp, changing formats dont revert changes.

But i can say for sure that playing flac files, changes the plugin to maiko mixer everytime.
baunegaard is offline   Reply With Quote
Old 11th May 2012, 20:48   #311
SilverBird775
Senior Member
 
SilverBird775's Avatar
 
Join Date: Jan 2009
Location: Russia
Posts: 237
baunegaard

Thanks to Maiko user Heng's detailed reports i was finally able to reproduce the sticky format behaviour.

Please try the test, i think it will fix your issue as well. The ambiguous format mediator priorities was rearranged a bit. Now it should pass by the bit-copy user intention more freely.

http://maiko.nx0.ru/software/test.zip
SilverBird775 is offline   Reply With Quote
Old 3rd June 2012, 12:59   #312
Aminifu
Forum King
 
Aminifu's Avatar
 
Join Date: Aug 2011
Location: Chicago, IL
Posts: 3,207
Hi SilverBird775,

I tried version 048 and changes to the mixer matrix are still not returned after a restart of WA. The 000000030000003F.bin file seems to be updated, since it's time stamp changes to reflect the time of the change, but after a restart the matrix reverts to the default values.

Win 7 Home Premium 64-bit SP1 desktop, Winamp Pro 5.666.3516, cPro MPxi_remix skin, 5.1 speaker system
Aminifu is offline   Reply With Quote
Old 11th July 2012, 09:49   #313
SilverBird775
Senior Member
 
SilverBird775's Avatar
 
Join Date: Jan 2009
Location: Russia
Posts: 237
0.49

Is a rather milestone FIX. Now you can switch any settings without stopping the device, so you may listen to the effects applied by the plugin and instantly evaluate how much each option change a sound. Also you may switch to device of your choice right in the middle of the track playback, or switch exclusive\shared mode, etc. As expected, all the switches between the devices preserve their full contextes and preferences, even winamp's volume will be contextual for each device.

The plugin loading\clean-up time decreased as well.


Enjoy!
SilverBird775 is offline   Reply With Quote
Old 15th July 2012, 14:56   #314
Aminifu
Forum King
 
Aminifu's Avatar
 
Join Date: Aug 2011
Location: Chicago, IL
Posts: 3,207
Hi SilverBird775,

Version 0.49 does indeed fix the crashing when switching the device properties or changing the active device during playback. It also fixes the problem of retaining matrix mixer changes after a restart. Thank you for these updates.

It seems the L_F matrix values and the Bass cutoff frequency are not working yet. I assume these and the balance controls will be coming in due time. Hope you are having a good summer.

Win 7 Home Premium 64-bit SP1 desktop, Winamp Pro 5.666.3516, cPro MPxi_remix skin, 5.1 speaker system
Aminifu is offline   Reply With Quote
Old 15th July 2012, 15:54   #315
SilverBird775
Senior Member
 
SilverBird775's Avatar
 
Join Date: Jan 2009
Location: Russia
Posts: 237
Aminifu,

Yes the Matrix controls messed up again. I'm looking for a best generalized methods to intract with such a mass of boxes, scrollers. More the matrix controls bigger the code overhead. Besides i do always keep an eye on memory consumption budget.
SilverBird775 is offline   Reply With Quote
Old 20th July 2012, 18:30   #316
kutjong
Junior Member
 
Join Date: Oct 2008
Posts: 9
What resampler does Maiko mixer use? Is it libsamplerate aka Secret Rabbit Code?

I'm trying to get best playback on a wretched Audigy 2 ZS. All 44.1 KHz material has to be resampled to either 48 KHz or 96 KHz to bypass the sound card's own sucky resampler. Even with exclusive mode and Maiko reporting Bit-Copy on 24/44.1 it is resampled by the sound card. I've tested this using the udial sample.
Allowing Maiko to resample 44.1 to 48, it passes the udial test. This proves that the resampling done by Maiko is superior to the Audigy's. I guess this is the optimal solution with this sound card.

But just for curiosity I would like to know what resampler Maiko uses.
kutjong is offline   Reply With Quote
Old 20th July 2012, 22:13   #317
SilverBird775
Senior Member
 
SilverBird775's Avatar
 
Join Date: Jan 2009
Location: Russia
Posts: 237
Not a SRC, but a custom made polyphase filter too. All the nowadays rate filters are the same in principle. You decide what is better to your ear.

For an Audigy i'd go with this options:

code:

[X] Exclusive mode
[ ] Slave to input sample rate [96000]
[X] But always resample when less [44100]
[X] But always resample when more [96000]
[ ] Slave to input channels
[ ] Disable volume control
[ ] Slave to input encoding [24+8 padded]
[X] Free device when idle




Indeed you may try 48000 instead of 96000 also.
SilverBird775 is offline   Reply With Quote
Old 21st July 2012, 14:27   #318
kutjong
Junior Member
 
Join Date: Oct 2008
Posts: 9
Okay, Maiko resampler seems to be very high quality. Passes udial with flying colors.

I'm using the same settings as you posted, except that I have also "disable volume control" checked, otherwise I won't have Bit-Copy playback on some 24/96 material that I have. Not that it really matters, but I like the placebo effect.

Also, I can't hear the difference between resampling to either 48 or 96 with 44.1 material. Mathematically speaking, which is the better option, or does it matter? 192 kHz is also an option, but I suppose that's overkill.
kutjong is offline   Reply With Quote
Old 21st July 2012, 19:11   #319
SilverBird775
Senior Member
 
SilverBird775's Avatar
 
Join Date: Jan 2009
Location: Russia
Posts: 237
When the volume control is at 100% position, the copy goes through the 80-bit float point CPU register. Like every other math for the Maiko plugin an integer to float conversion is assembler language made and ensured as a reversible operation. The Bit-Copy path just ensure that every bit is going through the integer register which is completely immune to the rounding errors. Summing up, the volume control is transparent when set at maximum. Bit-Copy is a logically cleaner, isolated path which is cannot possibly do anything but integer copy. Honestly i see no math difference between the routes so the Bit-Copy renderer is specially made for an audiophile crowd fan service here, overshoot and overkill.

I like the 44100 to 96000 situation more because it should give a little less aliasing distortion then 44100 to 48000 resampling. Mathematically speaking, you just can't go as bad as 44100 to 48000, it's a worst case. 44100 to 96000 should give a bit cleaner higher frequency domain (when hardware supported!).
SilverBird775 is offline   Reply With Quote
Old 21st July 2012, 23:42   #320
kutjong
Junior Member
 
Join Date: Oct 2008
Posts: 9
Thanks for your answers.

It also seems that Audigy 2 ZS can only play back 24/48 in true bit-copy. If I set Maiko to resample to 96 kHz, the udial test fails. I confirmed this also in a DAW called Mixcraft, when you select WaveRT as interface only 48 kHz is available. My guess is that Creative's sloppy WASAPI implementation is to blame.
So for the time being I've opted for 24/48 as output, I think this is the best choice for this sound card, at least with WASAPI.

Edit: Also, another funny thing. I experimented with Maiko and the DirectSound plugin using 16/44.1 source. If I set shared mode setting to 24/96, with DirectSound it passes the udial test, but with Maiko shared mode it does not. Why is this? If Maiko is set to Shared mode, is not the Windows resampler used instead of Maiko?
kutjong is offline   Reply With Quote
Reply
Go Back   Winamp Forums > Developer Center > Winamp Development

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump