Has anyone made a decentralized music player on ethereum using smart contracts? Say if I wanted to upload a mp3 file to IFPS and everytime someone plays the midi file the smart contract will deduct .0001 eth from the account. Has anyone done something like this?
Not possible with IPFS alone. You can encrypt the music file and host it on IFPS so that if someone does get access to it then it will be gibberish. You will need a central server acting as a mediator. One possible flow is to have the user pay the smart contract which emits an event. The mediating server can have a listener on the events that the user has paid, which then it decrypts the music asset and streams it to that individual user.