jsallis / mp3fs-osx
- Source
- Commits
- Network (0)
- Issues (0)
- Downloads (0)
- Wiki (1)
- Graphs
-
Branch:
master
tree 88a23b0d83e8e726be08012a5e0d4888e08b4032
parent defa3a3909ed692c3012711fe59712a46b03fabb
| name | age | message | |
|---|---|---|---|
| |
.gitignore | ||
| |
README.markdown | ||
| |
mp3fs-0.12.tar.gz | ||
| |
mp3fs-osx-patch | ||
| |
patched/ |
mp3fs-osx
mp3fs for fuse patched to run on OS X via macfuse.
Prerequisites
libflac, liblame, libid3tag (Xcode project assumes installation via macports: sudo port install lame flac libid3tag)
Installation
xcodebuild -project patched/mp3fs.xcodeproj -configuration Release
sudo mv patched/build/Release/mp3fs /usr/local/bin
Usage
mp3fs flacdir,bitrate mountpoint [-o fuseopts]
Example Mounting:
mkdir /Volumes/MP3
mp3fs ~/Music/FLAC,320 /Volumes/MP3
Example Unmounting:
umount /Volumes/MP3
Credits
The purpose of this repository is to provide one central place for me to easily reinstall mp3fs. I take absolutely no credit for anything other than using the provided patch on the original source and compiling everything into one bundle and putting it on GitHub. Full credit goes to the original authors.
mp3fs Sourceforge
patch Uwe Arzt
How-to
If you want to know how it all works, here are the original instructions provided at the original blog post (copied here in case the post is ever deleted):
- Install the MacFUSE dmg 1.3.1 from http://code.google.com/p/macfuse/ (the MacPorts Port is a little bit outdated at the moment).
- Install libflac, liblame and id3tag from MacPorts (sudo /opt/local/bin/port install lame flac libid3tag).
- Download and unpack the mp3fs-0.12.tar.gz from http://mp3fs.sourceforge.net/.
- Change Directory to mp3fs-0.12 and install my small patch (Upgrades to Interface Version 26, changes the includes for statfs and provides an Xcode project) with: patch -p1 < ../patch-mp3fs-012 (diff was made with: diff -ruN mp3fs-0.12.org mp3fs > patch-mp3fs-012).
- Start the Xcode project and compile.
- If everything worked, mount your mp3fs and enjoy.
If you like to know what you are doing, here are the source diffs:
23c23
< #define FUSE_USE_VERSION 22
---
> #define FUSE_USE_VERSION 26
32a33,36
> #ifdef __APPLE__
> #include
> #include
> #else
33a38
> #endif
194c199
< static int mp3fs_statfs(const char *path, struct statfs *stbuf) {
---
> static int mp3fs_statfs(const char *path, struct statvfs *stbuf) {
203c208
< res = statfs(name, stbuf);
---
> res = statvfs(name, stbuf);
268c273
< fuse_main(argc-1, argv+1, &mp3fs_ops);
---
> fuse_main(argc-1, argv+1, &mp3fs_ops, NULL);
diff -r mp3fs-0.12.org/src/transcode.c mp3fs/src/transcode.c
26a27,30
> #ifdef __APPLE__
> #include
> #include
> #else
27a32
> #endif

