Giter Club home page Giter Club logo

Comments (9)

njh avatar njh commented on June 24, 2024

Hello,

I have committed some changes to github, are you getting any other errors in MSVC?

nick.

from twolame.

nu774 avatar nu774 commented on June 24, 2024

Hi,
To tell the truth, I've done some more fix. The patch is here:
https://sites.google.com/site/qaacpage/cabinet/twolame.2011.01.21.patch?attredirects=0&d=1

Setting stdin/stdout to binary mode is essential for MSVC or MINGW like this:

_setmode(0, _O_BINARY);

MSVC doesn't have unistd.h, therefore dummy(empty) unistd.h is needed somewhere.

MSVC doesn't have getopt, too. I borrowed getopt from BSD implementation.

Finally, I have enabled pipe streaming from stdin with libsndfile.

As far as I know, libsndfile is capable of reading from non-seekable device, and sf_open_fd() is usable for that purpose.

I think, many users want to feed at least WAV files via pipe...

from twolame.

nu774 avatar nu774 commented on June 24, 2024

Apparently, my patch is VERY adhoc. If you want to it to be more autotools friendly,

HAVE_UNISTD_H, HAVE_IO_H, HAVE_SETMODE or something would be nicer.

(A bit older) win32 port is also found at here:

http://www.rarewares.org/mp3-others.php

They seem to have dropped libsndfile dependency, and instead have built-in wav parser.

from twolame.

njh avatar njh commented on June 24, 2024

Ok, thanks.

I will try and incorporate some of those changes back into trunk.

An easy to use DLL and a static binary of the frontend would be handy for people.

I don't have Windows, so it will be hard to test.

from twolame.

bat999 avatar bat999 commented on June 24, 2024

twolame doesn't seem to compile with mingw.
Is there a patch available?

from twolame.

njh avatar njh commented on June 24, 2024

Sorry, I don't use Windows. If you are able to provide a patch, that would be great.

from twolame.

filler56789 avatar filler56789 commented on June 24, 2024

Regarding MinGW-w64: I managed to compile twolame with GCC 4.5.2, three years ago. But now several .h files have changed (_mingw.h and types.h, minimum, probably crtdefs.h as well), and trying to build even the original 0.3.13 code with GCC 4.8.1 results in a truckload of errors. Since you yourself said you're not much into Windows, I highly recommend that you firstly drop all the MSVC and Windows-related references, because in this way, probably it will be less difficult to adjust the source-code later and make it compatible with the recent editions of MinGW. The files configure.ac and Makefile.am would have to go through some serious rewrite, I presume. Also, I still don't see the point of forcing the dependency on libsndfile onto the command-line frontend.

from twolame.

filler56789 avatar filler56789 commented on June 24, 2024

Now I'm trying to compile the OLD twolame 0.3.13 (from the year 2011) with GCC 4.9.2.
The question now is, where does the stupid ./configure expect to find the libsndfile stuff?
FWIW, libsndfile installed itself on "/local".

P.S.: okay, I just had to add another CPPFLAGS option to the command-line.
However I got a ton of warnings and some fatal errors after calling "make".
I'd better give up.

from twolame.

njh avatar njh commented on June 24, 2024

The above patch link doesn't work anymore, closing this.

If anyone has some improvements for Windows, please raise a Pull Request.

from twolame.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.