Comments (5)
Hi Mathew,
Just noticed this defect now.
Can you explain what 'Imbalances' mean, and how I can test it as well?
The Cdecl means:
"The caller cleans the stack. This enables calling functions with varargs,
which makes it appropriate to use for methods that accept a variable number of
parameters, such as Printf."
I have no problem changing all the DllImport declarations, but I'm trying to
first understand how you noticed the issue. The original code I used was here,
http://stoyanov.in/2010/01/08/encoding-uncompressed-audio-with-flac-in-c/
It might be a bug by the original author
Original comment by [email protected]
on 10 Jun 2013 at 3:25
from practicesharp.
I noticed it when I used the plugin for a personal player I'm working on. I
opened the Flac DLL in Dependency Walker and it says the calling convention
used within that DLL is cdecl.
By default, P/Invoke functions use StdCall if an explicit calling convention
isn't specified in the DllImport attribute. So it's using the wrong calling
convention to call those functions.
Original comment by mathew1800
on 12 Jun 2013 at 5:33
from practicesharp.
Oh, forgot to mention that what I meant by a stack imbalance is the error that
gets thrown: http://msdn.microsoft.com/en-us/library/0htdy0k3.aspx
PInvokeStackImbalance
Original comment by mathew1800
on 12 Jun 2013 at 5:35
from practicesharp.
Original comment by [email protected]
on 14 Jun 2013 at 7:46
- Changed state: Accepted
from practicesharp.
Will be released in the next release
Original comment by [email protected]
on 14 Jun 2013 at 7:47
- Changed state: Fixed
from practicesharp.
Related Issues (20)
- 1.5.0 locks up, but 1.4.1 works perfectly HOT 7
- 1.62 test HOT 3
- 1.62 Large position change freezes PracticeSharp HOT 5
- NAudio WaveOutEvent never goes to Stopped state when playing FLAC files using FLACFileReader HOT 3
- Feature Enhancement request HOT 4
- 24-bit FLAC support. HOT 6
- Entering a chord sequence and playing along HOT 2
- FLAC re-positioning does not work properly and sometimes causes crashes HOT 1
- The command "copy C:\XXX\practicesharp\NAudioFLAC\Library\LibFLACDLL\libFlac.dll C:\XXX\practicesharp\NAudioFLAC\Library\bin\Debug\" exited with code 1 HOT 1
- Reverse Playback HOT 4
- Save the output to a file with a different name (to distinguish it from the original) HOT 2
- When starting a song again it does not use the previously set pitch setting HOT 1
- Mp3 files are not played fully
- Change audio out device HOT 1
- "FLAC: Could not process single! HOT 2
- Practice# 2.1.0.0 won't open .wav files HOT 2
- Trying to decode FLAC with NAudio HOT 3
- Remove vocals setting did not change when changing files HOT 2
- Moving current play position still plays some left over samples from previous play position HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from practicesharp.