@link78 , Are you successful to add metadata to NFT? And How?
this is probably the best thread on metadata standards and including it on-chain in the forge transaction on token creation: CIP - NFT Metadata Standard
this is still very hard work. you must do everything from scratch calculating fees and we have issues about metadata yet. I could mint one but now I canât use the address that contains the Tokens. Still donât know how to use images toughâŚ
I think we can use
cardano-cli transaction build-raw
âmary-era
âfee
âtx-in
âtx-out
âtx-out
âmetadata-json-file metada.json
âinvalid-hereafter
âout-file tx.raw
format
How would we properly store a .mov video off-chain so that only the owner of the token has access and control over the associated art? Through my reading and tutorial watching I have been lead to believe the best way would be hashing the video and uploading the full video to IPFS. Then I would include the hash and the IPFS url in the NFT transaction metadata. @failfection (Thanks for the video, it is wonderful :D) I have followed along with your notes on fungibility policy and I grasp that aspect but my confusion is in this problem of coupling the full size .mov to the NFT with exclusive access or dynamic control over the asset by the token owner. Do you, or any other brilliant individual, know the proper way to couple the digital asset with the NFT?
I think it depends on what level of control you are having in mind. As you noticed most of what NFTs are doing are just receipts. Saying âyup you own a copyâ.
If youâre looking at full âDRMâ type construct, to me youâre going to have to manage the digital assets the same way companies currently manage except with more efficient blockchain / smartcontract schemes. Most likely groups will continue to focus on âappsâ to view or stream the content through (I bet that is what theta does), that way the content itself is obfuscated from direct access/downloading.
This is a timeless problem with digital assets, blockchain makes it easier in some ways; but ultimately the problem is still the same.
But Iâm with you, if thereâs someone who knows of some savvy ways outside of what Iâm understanding Iâd love to hear of it.
Hi There.
I am not a developer but i have an agency and work with multiple digital artist creating unique NFT.
Iam looking for someone who is able to incorporate our NFT ART with ADA chain.
Thank you for you help .
Thank you for your feedback. This DRM issue is the problem that has been bothering me for some time now.
Anyways⌠I am itching to develop a NFT on Cardano blockchain. For the time being, I was going to hash the video I created and will add that hash to the metadata of the NFT. Then future transactions of this token can include the location of the asset? Does this sound like the correct path to take for the time being until a marketplace integrates Cardano? Do you have any suggestions on how to currently host some artwork?
Additional question, how does the CLI work with Deadalus + hardware wallet?
Thank you for any advice you provide.
I have found this tutorial:
https://devnoops.medium.com/create-nft-on-cardano-cnft-5f8e2d35e361
I have tried with tutorial to build a NFT but I am failing.
Any thoughts of the below?
Command failed: transaction submit Error: Error while submitting tx: ShelleyTxValidationError ShelleyBasedEraMary (ApplyTxError [LedgerFailure (UtxowFailure (UtxoFailure (ValueNotConservedUTxO (Value 5000000 (fromList [(PolicyID {policyID = ScriptHash â1fd480c4428948381bd7fcfdf440b501974f31996b092c7191ebfd1fâ},fromList [(âLGBTQpoolâ,1)])])) (Value 1699029 (fromList [(PolicyID {policyID = ScriptHash â1fd480c4428948381bd7fcfdf440b501974f31996b092c7191ebfd1fâ},fromList [(âLGBTQpoolâ,1)])])))))])
How do I build the transaction?
cardano-cli transaction build-raw --mary-era --fee 199029 --tx-in d50417c6a244801dbfd47a0fb72dd8a7e033b074e3c62daeb573a7798b7044f9#0 --tx-out addr1v8z54vz3w7tkjrp49qsx6cx8x9cw4f5dj54zvvtexkjl9lqepjpnr+1500000+â1 1fd480c4428948381bd7fcfdf440b501974f31996b092c7191ebfd1f.LGBTQpoolâ --mint=â1 1fd480c4428948381bd7fcfdf440b501974f31996b092c7191ebfd1f.LGBTQpoolâ --metadata-json-file metadata.json --out-file tx.raw
Many thanks
It looks like the input UTxO has 5,000,000 lovelace, but the outgoing has 1,500,000 plus a fee of 199,029. The sum of the ADA inputs needs to equal the fee plus the sum of the outputs. Youâll need to either adjust the --tx-out
so that the values balance, or add a second --tx-out
to make it balance.
Thank you so much. I knew it most probably had to do something with the balance not being equal, but was trying the wrong way!
I used the correct outgoing amount 5,000,000 - fee and it worked.
Your construct can work; just keep in mind that once these digital assets are open to the public anyone can attempt to make use of them. So if you post your video someone else could hash it, post their own NFT and act like itâs theirs. The only proof is that you did it first on this particular blockchain. As long as your construct is ok with, handles or considers that reality, you should be good. For example, maybe embed signed metadata in the video as well.
The big artists / groups and first movers seem to be doing fine. But once the flood happens, the scammers can easily sell someone elseâs assets as real and get away with it.
As for the CLI and wallets thatâs a broad question. The cli (whether cardano-cli or cardano-wallet cli) is a backend, so if you want to do development that integrates with or creates your own wallet functionality for example youâd want to use cardano-wallet. cardano-cli is more for integrating with the node and doesnât have the same wallet api capability.
Thank you for your response. My apologies for the delay, it seems I missed the notification.
The metadata is a wonderful idea, I will make use of this tip.
As for the CLI, I understand there is a way to use the CLI with the hw wallet using caradno-hw-cli from vaccumlabs github. Do you know anything about Vaccum Labs? I had never heard of them until a suggestion through Reddit. Anyways, I think I will simply make an additional Deadalus wallet apart from the hardware wallet to make interacting with the CLI more simple.
Hi guys, Iâm following this tutorial:
Getting Started With Native Tokens â Cardano Documentation 1.0.0 documentation
I was able to start node and create policy
4faf76cb673fd04f37ec1efbdbb53b27be108a8dbc4ab9b8230c3d60
When I execute following steps:
cardano-cli transaction build-raw
âfee 0
âtx-in a1ddb0347fed2aecc7f00caabaaf2634f8e2d17541f6237bbed78e2092e1c414#0
âtx-out addr_test1vz0v7zs8c8tkyzda3kzp9fzumhen7em9vek2yfxqgckm2hga0qh6w+1000000000+â1000000000 4faf76cb673fd04f37ec1efbdbb53b27be108a8dbc4ab9b8230c3d60.melcoinâ
âmint=â1000000000 4faf76cb673fd04f37ec1efbdbb53b27be108a8dbc4ab9b8230c3d60.melcoinâ
âout-file matx.raw
cardano-cli transaction calculate-min-fee
âtx-body-file matx.raw
âtx-in-count 1
âtx-out-count 1
âwitness-count 2
âtestnet-magic 3
âprotocol-params-file protocol.json
from 1000000000 substract transaction fee
cardano-cli transaction build-raw
âfee 180109
âtx-in a1ddb0347fed2aecc7f00caabaaf2634f8e2d17541f6237bbed78e2092e1c414#0
âtx-out addr_test1vz0v7zs8c8tkyzda3kzp9fzumhen7em9vek2yfxqgckm2hga0qh6w+999819891+â1000000000 4faf76cb673fd04f37ec1efbdbb53b27be108a8dbc4ab9b8230c3d60.melcoinâ
âmint=â1000000000 4faf76cb673fd04f37ec1efbdbb53b27be108a8dbc4ab9b8230c3d60.melcoinâ
âout-file matx.raw
cardano-cli transaction sign
âsigning-key-file pay.skey
âsigning-key-file policy/policy.skey
âscript-file policy/policy.script
âtestnet-magic 1097911063
âtx-body-file matx.raw
âout-file matx.signed
cat matx.signed
cardano-cli transaction submit --tx-file matx.signed --testnet-magic 1097911063
the last command throws:
Command failed: transaction submit Error: Error while submitting tx: ShelleyTxValidationError ShelleyBasedEraMary (ApplyTxError [LedgerFailure (UtxowFailure (UtxoFailure (BadInputsUTxO (fromList [TxInCompact (TxId {_unTxId = SafeHash âa1ddb0347fed2aecc7f00caabaaf2634f8e2d17541f6237bbed78e2092e1c414â}) 0])))),LedgerFailure (UtxowFailure (UtxoFailure (ValueNotConservedUTxO (Value 0 (fromList [(PolicyID {policyID = ScriptHash â4faf76cb673fd04f37ec1efbdbb53b27be108a8dbc4ab9b8230c3d60â},fromList [(âmelcoinâ,1000000000)])])) (Value 1000000000 (fromList [(PolicyID {policyID = ScriptHash â4faf76cb673fd04f37ec1efbdbb53b27be108a8dbc4ab9b8230c3d60â},fromList [(âmelcoinâ,1000000000)])])))))])
Any idea what Iâm doing wrong and why documentation point to testnet-magic 3 when test json are pointing to 1097911063?
There doesnât seem to be the --tx-in
transaction a1ddb0347fed2aecc7f00caabaaf2634f8e2d17541f6237bbed78e2092e1c414
on the testnet (--testnet-magic 1097911063
). I think --testnet-magic 3
was just for purposes of the example, and not meant to point to the current testnet.
Thanks that was helpful.
I was able to mint token by using right txid and using 1097911063 testnet-magic.
I found article how to create NFTs
Create NFTs on CARDANO #CNFT. 1 Create a NFT payment addr (air-gapped⌠| by NOOPS | Apr, 2021 | Medium
So letâs say I want to create digital collection of 500 items.
I saw that cryptobits were minting in 50 NFTs batches.
My questions:
- Is whether I should consider minting them in same batches is there some restriction on transation metadata.json size?
- Should minting and sending NFT to presales participants happen in same transaction (or can I mint them and afterward sent NFT tokens to recipients)?
- Is there an online test version of pool.pm so I can check if I minted them with right ipfs link?
Regards,
Adam.
- The limit for the metadata is 16 kB (in CBOR format, not in the less compact JSON).
- You can save a little on the fee if you mint and send at the same time, plus you wonât have ADA tied to the undistributed tokens because of min-ADA, but it may be simpler to mint them all at once.
- I donât know of one, and wish there were. To test the metadata for the NFTs I created recently, I minted a test token, checked to see it appeared correctly on pool.pm, and then burned the test token; I then used that same metadata template for the subsequent ârealâ NFTs.
Thanks for answers.
Last question regarding IPFS in medium article they are mentioning this nice API that allows file upload using this rest method
https://ipfs.blockfrost.io/api/v0/ipfs/add
There is free and premium monthly tiers.
What happens if creator stops paying for premium tiers?
I imagine that theyâd stop pinning the file on IPFS if you stop paying for the premium tier, but they could say for sure. The file would likely persist on the IPFS network for a while, but youâd probably want to pin it somewhere. Itâs pretty easy to set up an IPFS node and pin files; then the files can be accessed from any IPFS gateway, independent on which server is pinning them.
BTW, https://pinata.cloud has a 1 GB free tier and REST API, with a pay-by-GB for beyond 1 GB.