This is a read-only snapshot of the ComputerCraft forums, taken in April 2020.
Left4Cake's profile picture

Iron Note Block Music Player + ccTunes + Noteblock Hero

Started by Left4Cake, 14 February 2013 - 04:04 PM
Left4Cake #1
Posted 14 February 2013 - 05:04 PM
Iron Note Block Music Player + ccTunes + Noteblock Hero
This program uses RichardG867's miscperipherals or austinv11's Peripherals++ as well as MysticT's NBSConverter
ccTunes for advance computers created by pingoleon60.
Note: API only required to us the NBSConveter to convert the music. Once you have the file no API's are required to play it.


Video of it in action: https://www.youtube....h?v=0Y2x9gmmqWI



More Pics
SpoilerNote Block Player [Music]
Spoiler


Note Block Hero
Spoiler


Advanced ccTunes (thanks to pingoleon60)
Spoiler

ccTunes for Normal Computers
Spoiler


This program can play NB files (Created via MysticT's NBSConveter) and play it on up 20 different channles on 5 Iron Noteblocks.

How to use.
SpoilerYour music must be placed in /Music/ on your computer. If you don't know how to get music look at the How to convert or ccTunes sections of this post.

To start the Music player you can type "musicplayer 'songname'" or just type musicplay and it will eaither start your playlist (see the playlist section) or open a menu of all music in /Music/

When playing the music you can press 1,2,3,4,5,6,7,8,9,0, or - to skip to 10% increments.

You can also mute tracks. ~ toggle mute mode and then you can use wasd to navigate tracks and space to mute them.

How to convert songs.
Spoiler-To create a NB file, click the NBSConverter link. For this you only care about the NBSConverter and NBS api
-Once you have them both downloaded you must then place the .nbs file you want to convert on your computer.
-Then use the conveter to convert it.
- Now you have yout NB file, you must make sure its in the directroy Music.

At this point the music should work but it will be all paino.

To define the interments take my template here. If your NB file was called "Music/Slimer32" then you will need to save the following text to "Instrument/Slimer32"

	-- Interments for diffrent parts
	-- 0 = piano, 1 = bass drum, 2 = snare, 3 = clicks, 4 = bass guitar
	int1 = 0
	int2 = 0
	int3 = 0
	int4 = 0
	int5 = 0
	

-Now the music will work. Feel free to play with the values to make the song sound right.

The player:

pastebin get 45zqrWfX musicplayer

http://www.pastebin.com/45zqrWfX

Example Song:
These link here are meant for quick viewing and It's not recommend that you download the songs here as it's easier to either use ccTunes or the link to download the songs in .zip files below

Music/Nyancat
http://www.lozengia....m/Music/Nyancat
Instrument/Nyancat
http://www.lozengia....terment/Nyancat





–Playlist
SpoilerI have added playlist support to the Music Player. Just create a file called "playlist" and put the filename of the songs you want to be played in order each on a new line.
Playlist will repeat until program is terminated.

Also you can not access the menu while there is a playlist file, but you can still play a single song by typing the filename in as the first argument.

– Note Block Hero [Music][Game]
A Guitar Hero/Rock band/Rythem Zone/other clones of it clone

Select song just like note block player.

Try to press 1-5 keys on time with the notes to get points.

Song mutes when you miss notes.

pastebin get XNVgGNQn noteblockhero
http://www.pastebin.com/XNVgGNQn


– Advanced CC Tunes by pingoleon60 [Mouse][Monitor][HTTP][Downloads]

pingoleon60 made a better gui for ccTunes taking advantage of advance computers color and mouse support.

pastebin get 86cAwfta ccTunes

Just type ccTunes and click the arrows to naviagte the menu untill you see the song you like. Click the get/put button to switch between uploading and downloading.

Also works on Monitors.

– CC Tunes [HTTP][Downloads]

pastebin get r0jes7TF ccTunes

You can now use ccTunes to upload and download your music.

To download music just type in ccTunes

To upload music type "ccTunes upload" to open the menu or "ccTunes upload song_name" to upload song_name.

You can also get to ccTunes going to "cctunes.com" in firebox


– Song List [Web Browser]

Go to: here and you can download songs in a zip from your browser.
Edited on 24 May 2015 - 04:46 PM
Left4Cake #2
Posted 18 February 2013 - 08:47 AM
Made a few updates.

- Now it has a menu, if you don't define an argument
- Will show song info.
- Song rate is based on NB file now not my Interment file
- Change directory structure for Instrument file.
- Instrument file now not required but will get only piano if not present.
Shrooblord #3
Posted 18 February 2013 - 02:00 PM
This is great stuff, man!
I was wondering two things: is it possible to make this automated? Can you, for example, call a function within a computer's startup file so that it automatically starts playing as soon as the computer boots?
And can you loop files seemlessly? I want to have a tune play continuously without pauses - is that possible?

I love it already - you've definitely saved me the effort of trying to make something like this myself. Thanks!
Left4Cake #4
Posted 18 February 2013 - 03:34 PM
Well I look into native playlist support of some sort. There no reason why it couldn't work I will just have to decide how I want to do it.

For now:
It is possible to make it automated right now since you can write a program that launches what ever song you want, with shell.run("musicplayer", "song_name"), however as far as an endless loop it is not you can use "while true loop" but I recommend NOT doing that with your startup file, (unless you have an external way of accessing your computer like single player or being the server admin)

Edit: Just found out that all the channels could come out of the same note block. So that opens up some side to have disk drives connected to theme.

Edit2: Now it has play list support. As far as automatically starting you will still need to use shell.run but now you can create a playlist for the song(s) to indefinitely loop. (until terminated)
JustPingo #5
Posted 19 February 2013 - 03:08 AM
AWESOME !
I waited a program like this !
I maked "Want You Gone" and "Code Lyoko Theme" (lol), and it works great !

Imagine if you add a HTTP Api function, which allow users to upload their music and download others musics from others peoples, like iTune (MineTune).
theoriginalbit #6
Posted 19 February 2013 - 03:17 AM
like iTune (MineTune).
Or ccTunes.
JustPingo #7
Posted 19 February 2013 - 03:35 AM
Yeah, it's better (Mine it's for Vanilla, yurk).

If you want to do this, I can help you for the PHP.

(Oh ! Your avatar is a cake ! xD)
Shrooblord #8
Posted 19 February 2013 - 04:14 AM
For now:
It is possible to make it automated right now since you can write a program that launches what ever song you want, with shell.run("musicplayer", "song_name"), however as far as an endless loop it is not you can use "while true loop" but I recommend NOT doing that with your startup file, (unless you have an external way of accessing your computer like single player or being the server admin)

Edit: Just found out that all the channels could come out of the same note block. So that opens up some side to have disk drives connected to theme.
For my own purposes, I already played around with your code a bit to try and make it endlessly loop. That's near impossible, I seem to have figured out, because the way Note Blocks play are always altered by some tiny randomness factor that will never make all the notes on-time perfectly. I think also the loading time of the music file might be a factor. However, I managed to free up all but two sides of the computer so I could have two Iron Note Blocks and three more spaces for a Disk Drive and two redstone wires (in- and outputs). I tried playing around with putting your 'play code' in a function and making it loop like so

if playSong() == false then
    os.sleep(song["delay"])
    i = 0
    playSong()
end
(I put a 'return false' statement after the end of your while loop so it would return false once the song was finished playing)

And that would of course only loop it once, but the result of the test was that I could never get it to loop perfectly, no matter how much I adjusted that factor song["delay"] at the end.
Left4Cake #9
Posted 19 February 2013 - 04:35 AM
Well the delay is the music player reading the file. My RL computer can seemly loop on peaceful (no mobs spawned) and its not raining in minecraft. (atleast with the graphics turned up.) So it really depend on your RL computers (or you servers + connection on multiplayer) specs that can determine how accurate of a loop you can get. (that and how much stress your minecraft world happens to be putting on your computer/server at the time.)

Spoilerp.s. RL = Real Life for anyone who is reading this and for some reason dose not know.

Imagine if you add a HTTP Api function, which allow users to upload their music and download others musics from others peoples, like iTune (MineTune).

;)/>
Shrooblord #10
Posted 19 February 2013 - 04:40 AM
Yes, I noticed. I really appreciate what you've done - it's a lot of fun playing around with it, but maybe I should look into something less dependant on performance for what I'm trying to do.
Thanks anyway!
Shrooblord #11
Posted 19 February 2013 - 06:05 AM
I'm sorry to double-post, but I ran into something perculiar:



I'm having trouble converting one of my NBS files. This is the original file:
http://host-a.net/u/...rd/Moonsong.nbs

(Here's a screenshot for reference:)
Spoiler

Now, the file output by the NBSConverter has this as the first few entries:

{[1]={[1]={[1]=12,[2]=16,},[2]={[1]=12,},},[2]={},[3]={[1]={[1]=12,},},[4]={},[5]={[1]={[1]=11,},},[6]={},[7]={},[8]={[1]={[1]=4,},},[9]={[1]={[1]=7,[2]=11,},[2]={[1]=9,},},

which is, spaced out:
Spoiler

{
  [1]={[1]={[1]=12,[2]=16,},  [2]={[1]=12,},},
  [2]={},
  [3]={[1]={[1]=12,},},
  [4]={},
  [5]={[1]={[1]=11,},},
  [6]={},
  [7]={},
  [8]={[1]={[1]=4,},},
  [9]={[1]={[1]=7,[2]=11,},[2]={[1]=9,},},

I can clearly see that the first thing it's writing down is three notes. It's got two entries for instrument 1 (which it calls [1]) and one for instrument 2 ([2]). During playback, however, it seems to be skipping anything larger than two notes at a time. Strangely enough, it's not that it simply isn't counting instruments 3 and 4; the A# at position 7, just before the F-D#-C# combo, is played, but not the F at position 8, because there's already a C# and D# being played. It really doesn't like multiple instances of (the same?) instruments playing if this number is greater than two.

Is this something I can change by altering the code? I need to have the maximum of four voices in this piece playing at the same time. The song sounds rather bland without them.

Here's a screen of the in-game playback. You can see it's not displaying one of the three first notes and neither is it playing all the notes at position 8 (and also I do not hear them, so it is in fact not playing them back).
Spoiler

I think what has happened because of your new code, is that it's now trying to assign one instrument, [1], two seperate notes to play and the single Iron Note Block doesn't like it. Is there some way to solve this problem, with this in mind?

Thank you!
Left4Cake #12
Posted 19 February 2013 - 06:35 AM
It as to due with some of the notes being in [1][2] and my code is only playing notes from [1][1].

The NB converter seems to group note from the same chord that are played by the same insterment together. When I first programed it I thought each note block coulde only handle one note at a time, so I chose the limitation of the root of each chord rather then only having 1 chord.

Its really simple to fix. (in fact I will upload this change in a moment) but instead of

if song[i][1] then
note1 = song[i][1][1]
ironblock.playNote(int1,note1)
end

it should look like for each "if song[#] then"

if song[i][1] then
note1 = song[i][1][1]
ironblock.playNote(int1,note1)

if song[i][1][2] then
note1 = song[i][1][2]
ironblock.playNote(int1,note1)
end

end

Well ok, I will try to optimize it a bit before I upload it but that would work for your exact song.

Edit:
Ok wow, made a lot more changes then I thought. Its back to the five not configuration but, this time each iron note block will play notes that the NBSconveter group together. So now it can have potently 20 channels provided the converter groups them in such a way that they are 5 groups of 5.

Oh and now I uploaded ccTunes to allow uploading and downloading songs.
Shrooblord #13
Posted 19 February 2013 - 07:59 AM
Excellent!

Do you think it would be possible to make it so that you can choose how many Iron Note Blocks you attach? Say you only attach two instead of five. As of now, the program would crash as it couldn't find the other three. Wouldn't it be nice if you could attach two and the program would handle itself with only the two blocks?

I've been having a lot of fun fiddling around with your code, Cake. Somehow I managed to get it to infinitely loop seemlessly even though I didn't add the loop myself (I'll have to look at what's going on there…).
Left4Cake #14
Posted 19 February 2013 - 08:19 AM
Fixed up the whole crashing if you don't have an ironnote block in every spot thing. (nothing a few if statements didn't fix)

Also fixed ccTunes so that it points to my online server and not localhost. (fail on my part.)
JustPingo #15
Posted 19 February 2013 - 09:54 AM
Great, you have made ccTune yet.
I test it, and I will say you what I think about.

FĂ©licitations !

EDIT : It's look nice; but how did you download music ? xD I see them but I don't know what it want to I done.
EDIT 2 : I'm stupid xD I've upload a test file in error, it's Untitled. Can you delete it ? I think it good that we can manage our uploads.
EDIT 3 : Ok I found how to download.
EDIT 4 : OMG A GUY HAD UPLOAD A WONDERFUL VERSION OF STILL ALIVE !
Left4Cake #16
Posted 19 February 2013 - 10:15 AM
I think it good that we can[t] manage our uploads.

Making code to upload files is easy, but file management tad harder then that.

Also you don't need more then 5 ints in the files since there are only really five channels. (Its the way the NBS converter groups them so that the same interment is all together.)
JustPingo #17
Posted 19 February 2013 - 10:18 AM
(sorry for the "t", it's not that I said, but I'm French, you understand…)
I know, but it's a suggestion like an other.
Left4Cake #18
Posted 19 February 2013 - 10:21 AM
(sorry for the "t", it's not that I said, but I'm French, you understand…)
I know, but it's a suggestion like an other.

I did not say no, I just don't want anyone getting their hopes up.
JustPingo #19
Posted 19 February 2013 - 10:25 AM
Ok.
An other suggestion : you can create a Statistics line, which say how many times the music was downloaded.

EDIT : And an other other suggestion xD : in the player, it would be cool to mute a line if it's wrong from converting.
Left4Cake #20
Posted 19 February 2013 - 12:07 PM
Well you can see how many hits a given song has now.

Not that this is relevant to weather a mute button for different lines is a good idea or not but, what do you mean by "if it's wrong from converting" since I have not had a problem with it yet.
JustPingo #21
Posted 19 February 2013 - 12:23 PM
Oh, again, it's an english error from me, but I also wasn't enough precise.
Sometimes, during the conversion of MIDI -> NBS, there is some false song which had created.
So, when we mute a lines, we can decrease the number of false notes.
Left4Cake #22
Posted 19 February 2013 - 12:34 PM
Oh, ok. Not that I am ageist adding a mute button as an idea as a whole, but for you specific problem can't you just edit it in NBS?
PixelToast #23
Posted 19 February 2013 - 12:36 PM
AVGN :D/>
Skullblade #24
Posted 19 February 2013 - 01:21 PM
-derp snip-
JustPingo #25
Posted 19 February 2013 - 01:45 PM
Oh, I found another utility to the mute button : when you "debug" (set the instrument) your music, it's hard to determinate what line is what instrument.
It's will more easy with this button.
Also, I will try to make a better GUI for ccTunes. (for advanced computers)
Left4Cake #26
Posted 19 February 2013 - 01:55 PM
Oh, I found another utility to the mute button : when you "debug" (set the instrument) your music, it's hard to determinate what line is what instrument.
It's will more easy with this button.
Also, I will try to make a better GUI for ccTunes. (for advanced computers)

Well a majority of ccTunes is php.

Here is all the server side bits. (I was not as carfull when writting it so it may look a bit messy.)
http://www.lozengia....cctunes.com.zip
theoriginalbit #27
Posted 19 February 2013 - 01:56 PM
Well a majority of ccTunes is php.
Make sure its secure ;)/>
Left4Cake #28
Posted 19 February 2013 - 01:57 PM
Just don't run any file you download from it with anything other then my music player and you should be fine. :-P My Dad run the server as a whole so only the /tmas/ folder is in any danger as a whole.
JustPingo #29
Posted 19 February 2013 - 02:00 PM
Thanks (but I think it wasn't very useful, because I will only make a GUI, and copy the interactions done by the actual ccTunes).
It will work with mouse, so it won't be able to run on Basic Computer.
But, if it is needed, I can do a version for Basic Computer.

Don't worry, if I need some PHP, I will do it myself ;)/>

Of course, my GUI will be compatible with monitors.

EDIT : WIP…

Spoiler

EDIT 2 : Oh, you were right : I need to recode a couple of parts in the PHP code.
Left4Cake #30
Posted 20 February 2013 - 03:26 AM
If you need a server to test it on I can help you set up a local server so that I don't need to be a middle man. (like I said I don't really own the server so I can't hand out log ins to it or anything)
Left4Cake #31
Posted 20 February 2013 - 12:57 PM
Having issues with os.startTimer -> http://www.computerc...e-block-player/


Solved and updated.

Now you can mute tracks and skip to different spots on the track.
Left4Cake #32
Posted 21 February 2013 - 07:55 AM
Bumping because I added Note Block Hero. :)/>
JustPingo #33
Posted 27 February 2013 - 03:04 AM
Hey everyone !

I made a better GUI for ccTunes for Advanced Computers or Advanced Monitors :D/>
You can download it on the first post !
ratismal #34
Posted 20 May 2013 - 07:12 PM
Whenever I try to use the ccTunes program, an error briefly flashes across the screen, and no music is downloaded.

temp:10: attempt to index ? (a nil value)
I have the nbs api, the NBSConverter, the musicplayer program, and both ccTunes programs. Neither ccTunes worked.
I'm playing on the FTB Ultimate pack, v1.1.0 (1.4.7)
Left4Cake #35
Posted 21 May 2013 - 04:32 PM
Wow, a slight oversight on my part. Forgot to make check if the folders exists. Make a folder called Music and another one called Instrument using mkdir <foldername>. I will have to find this later but making the folders yourself will work.
Azzar #36
Posted 25 May 2013 - 12:43 PM
Whenever I try to use the ccTunes program, an error briefly flashes across the screen, and no music is downloaded.

temp:10: attempt to index ? (a nil value)
I have the nbs api, the NBSConverter, the musicplayer program, and both ccTunes programs. Neither ccTunes worked.
I'm playing on the FTB Ultimate pack, v1.1.0 (1.4.7)

You might want to try what I have done if your willing to use an api in your program. I got my hands on an api called "play" that you can find on this site. this api allows you to play .nbs files directly. So I am using a computer with a modem and Iron Noteblock to create a remote music player. It has no issues looping which could have to do with the file size or conversion. Furthermore, I have it running in a parallel call so I can stop it, loop it, change songs at any time (the event monitor that controls it runs at the same time that the song plays.)
basdxz #37
Posted 25 May 2013 - 05:58 PM
I was wanting this for a long time! Building songs using noteblocks or Steve's Carts with the note sequencer add-on and a lot or redstone was a pain!
ratismal #38
Posted 02 June 2013 - 04:14 PM
Wow, a slight oversight on my part. Forgot to make check if the folders exists. Make a folder called Music and another one called Instrument using mkdir <foldername>. I will have to find this later but making the folders yourself will work.

Thanks.
On a sidenote, would it be possible to activate the program with redstone?

You might want to try what I have done if your willing to use an api in your program. I got my hands on an api called "play" that you can find on this site. this api allows you to play .nbs files directly. So I am using a computer with a modem and Iron Noteblock to create a remote music player. It has no issues looping which could have to do with the file size or conversion. Furthermore, I have it running in a parallel call so I can stop it, loop it, change songs at any time (the event monitor that controls it runs at the same time that the song plays.)

What website was this?
JustPingo #39
Posted 02 June 2013 - 04:37 PM
If you want it to run with redstone, just do a loop where there is a if statement who detect if there a redstone signal, use shell.run to run the program.
Cain #40
Posted 02 June 2013 - 05:38 PM
I was actually looking into doing this, but now you've done it.. well.
ReturnOfPatches #41
Posted 15 July 2013 - 08:37 PM
Added GameOfThrones title theme and The Rains of Castamere to ccTunes, enjoy! :)/>
reububble #42
Posted 16 July 2013 - 06:05 AM
I love the guitar hero style game :P/>
have a look at my work on music composition software http://www.youtube.com/watch?v=edvU0OsZITA
Left4Cake #43
Posted 16 July 2013 - 11:53 AM
have a look at my work on music composition software <Youtube Video Here>

Nice work.

Also added a link to the first post to allow you to download any song uploaded in your web browser.
Darian Stephens #44
Posted 15 September 2013 - 10:37 PM
How do I upload my converted song? I've made a much better (IMO) version of the Babs Seed song.
EDIT: I think I've figured it out, but how do I change the converter and title at least? The filename is BabsAlt2.
bluefoxy #45
Posted 05 November 2013 - 08:32 PM
musicplayer:124: attempt to concatenate string and nill
fix pleas? this seems like an amazing idea :D/>
(Mindcrack 8.3.2, CC 1.5)
Left4Cake #46
Posted 05 November 2013 - 09:10 PM
musicplayer:124: attempt to concatenate string and nill

I am only on my phone atm, but looking at my code it looks like you might just not have anything in your "Music" folder.
basdxz #47
Posted 24 November 2013 - 11:30 PM
Works well, could we get support for more note blocks that can be connected using the network cables? Also is is possible to get a music playing visual on a monitor generated from the song? PS: Oh and is there a way to make it dupe the same sound onto 2 note blocks? I would like to have speaker arrays around my base.
Edited on 24 November 2013 - 10:37 PM
Left4Cake #48
Posted 26 November 2013 - 01:44 PM
I don't know when I can get the time, but the way, I would probably do it is have one computer procsses the file, and send the arrays other computers and them they would play the results.

As far as the visual, that will take a bit more thinking, but I might be able to do something.
Edited on 27 November 2013 - 08:55 AM
Crucidal #49
Posted 28 November 2013 - 07:54 PM
I have a small server with max 4 players on it. My pc has 8GB ram and a i5-3570K processor.
I think it should be fast enough but when using your musicplayer there is a lot of lag and the time won't pass normally, it's not running constantly/smoothly making most songs sound bad and out of sync.

Have you got any tips/solutions?

greetings! :)/>
Cozzimoto #50
Posted 29 November 2013 - 08:38 AM
running a server in home and running a dedicated server are two completely different things, if i were you i would get a proper server instead of using your own computer


EDIT:

Home server uses a heavy OS like windows instead of an actual server based OS (linux)
And your not using a proper CPU, Dedicated servers use Xeon processors for their multi threading and ECC (error correcting code) RAM DIMMS
Xeons run properly for servers and the intel i-3, i-5, i-7 series are for home pcs and not meant to run servers
Edited on 29 November 2013 - 07:42 AM
Crucidal #51
Posted 29 November 2013 - 01:55 PM
running a server in home and running a dedicated server are two completely different things, if i were you i would get a proper server instead of using your own computer


EDIT:

Home server uses a heavy OS like windows instead of an actual server based OS (linux)
And your not using a proper CPU, Dedicated servers use Xeon processors for their multi threading and ECC (error correcting code) RAM DIMMS
Xeons run properly for servers and the intel i-3, i-5, i-7 series are for home pcs and not meant to run servers

Thanks for your reply!

Obviously I'm not a coder but it seems highly unlikely that running a dedicated server will resolve my problems since neither the assigned memory (which I assume is the 2GB assigned out of 8GB total RAM I have) nor my CPU usage are getting above 60%

Now, 60% seems like much… but, without any further knowledge, logic tells me that it's no problem because theoretically my pc could handle 40% more.

I'm not planning on getting a dedicated server so I'm still hoping to find solutions for my home computer.

The previously mentioned values seem quite stationary. They aren't influenced by whether the musicplayer is actually playing or not.
Cozzimoto #52
Posted 29 November 2013 - 03:36 PM
-snip-
well you not gunna see much because lag does not have to do with how much ram or anything to do with that, you have to understand that servers just run alot of requests at the same time, which is why the more multi threading you have the less lag your going to experience, EX: a Intel Core i5-3570K Ivy Bridge has a power of 3.4 GHz which is fast but not alot of threading, so this can process (4x) in server terms 4 things at a time which is good.
but a low power Xeon E3-1265L which has a power of 2.5 GHz has multi threading so this processor can do (8x) which is twice as fast as a normal desktop CPU

there are other factors as well like power consumption, and being able to error correct any mishaps loaded into memory, because servers are built to last since most of them are on 24/7 @ 99.9% uptime. But i mainly wanted you to know the difference between a desktop CPU and a Server CPU. =D

in conclusion you will see less lag in the Xeon than the i-5 due to the fact the Xeon can process more requests at once
Edited on 29 November 2013 - 02:39 PM
Crucidal #53
Posted 04 December 2013 - 02:10 PM
Thanks Cozzimoto! Its useful information.

The problem with inconsistent ticks sort of solved itself. In one of my backups (which I was forced to turn back to, but that's a different story) I had a batfile with these commands:

java -server -Xmx2G -XX:UseSSE=4 -XX:+UseConcMarkSweepGC -XX:+UseCMSCompactAtFullCollection -XX:+UseParNewGC -XX:+DisableExplicitGC -XX:+AggressiveOpts -jar FTBserver.jar nogui

I'm experiencing less crashes and the music is playing fine now :D/>

Honestly, I have no idea what the settings do…and I COULD look it up… but I'd rather play some more at the moment :P/>

once again: thanks Cozzi
Edited on 04 December 2013 - 04:09 PM
Cozzimoto #54
Posted 04 December 2013 - 11:23 PM
-snip-
your welcome, i am glad you found a way to get your problem fixed so easily.
flippy134 #55
Posted 27 March 2014 - 08:51 PM
Hi guys

i have a problem because if i played a song with bass a other instruments as piano i get the error "musicplayer :69: attempt to call nil" and yeah i dont now how i fix this the nyancat son from Left4Cake doesnt work at 3.2/207.8 Seconds it stops with the error

P.S i m sorry for my english i come from germany :)/>
Left4Cake #56
Posted 31 March 2014 - 04:37 AM
"musicplayer :69: attempt to call nil"

What side do you have the note blocks on.


ironblock1 = peripheral.wrap("left")
ironblock2 = peripheral.wrap("right")
ironblock3 = peripheral.wrap("back")
ironblock4 = peripheral.wrap("top")
ironblock5 = peripheral.wrap("bottom")

It wraps the peripherals as such so if it has 2 instruments you need one on the left and right, if three you need one on back.. ect.
Edited on 31 March 2014 - 02:37 AM
Left4Cake #57
Posted 24 May 2015 - 06:42 PM
Fixed a bug where the both Ironnote block Player and Noteblock hero would speed up when given input

Befor

os.startTimer(song["delay"])
evt, arg1, arg2 = os.pullEvent()
input(evt, arg1, arg2)
if evt ~= "timer" then
	os.sleep(song["delay"])
end

After

os.startTimer(song["delay"])
evt, arg1, arg2 = os.pullEvent()
input(evt, arg1, arg2)
if evt ~= "timer" then
	os.pullEvent("timer")
end
justync7 #58
Posted 17 October 2015 - 10:26 PM
I know I'm probably gonna get smited for post necro, but I've managed to port this program to command computers by looking at the code for the Iron Note block peripheral in Peripherals++/MoarPeripherals

You can get it here (code: NApHaw5V)

To use it, just run it before using musicplayer, and change any peripheral.wrap(side) in music player to commands.noteblock