Click here to Skip to main content
15,885,365 members
Please Sign up or sign in to vote.
1.00/5 (4 votes)
See more:
how can i know the maximum data can be hidden in mp3

if i use the parity coding method to input the hidden message

please someone answer this question seriously

because this is for my graduation project

thank you
Posted
Updated 23-Aug-18 6:50am

This is your graduation work. How can you demand a serious answer? Sorry, you cannot even correctly pose the problem and do not look competent in your own graduation work but want to get a credit (and a diploma!) for that. How are you going to make one of the experts interested in helping you? (Yes, the only interest of the experts is the interest in computer science and technology; nobody receives any money.) What, by saying "because this is for my graduation project"? This claim can rather discourage anyone.

Did you already see a question in some "solutions": "Do you want fries with that?" That's about you, too.

Sorry,
—SA
 
Share this answer
 
v2
Comments
Richard MacCutchan 30-Nov-11 3:19am    
Nothing less than a 5 for that comprehensive answer.
Sergey Alexandrovich Kryukov 30-Nov-11 12:16pm    
Thank you, Richard :-)
--SA
Smithers-Jones 30-Nov-11 3:58am    
Got my 5, couldn't have said it any better. The bit with "answer seriously, it's for my graduation" really puts me off.
Sergey Alexandrovich Kryukov 30-Nov-11 12:17pm    
I can imagine that. This is your role to answer in this way, which I always appreciate. :-)
Thank you.
--SA
I gave you some links two weeks ago, and here[^] is another you could have found easily, what have you been doing since then to research this question?
 
Share this answer
 
MP3Stego[^] provides some interesting links.
 
Share this answer
 
/////this the source code of audio steganography

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
using System.Threading;
using WavStagno.Media;

namespace WavStagno
{
    public partial class frmMain : Form
    {
        private WaveAudio file;
        private StagnoHelper sh;
        private string message;
        private bool HIDE_ERROR;

        public frmMain()
        {
            InitializeComponent();
            HIDE_ERROR = false;
        }

        private void btnBrowse_Click(object sender, EventArgs e)
        {
            dlgBrowseFile.ShowDialog();
        }

        private void dlgBrowseFile_FileOk(object sender, CancelEventArgs e)
        {
            txtFilePath.Text = dlgBrowseFile.FileName;
            if (txtFilePath.Text.Trim() != "")
            {
                btnExtract.Enabled = true;
                btnHide.Enabled = true;
                file = new WaveAudio(new FileStream(txtFilePath.Text, FileMode.Open, FileAccess.Read));
                sh = new StagnoHelper(file);
            }
        }

        private void btnExtract_Click(object sender, EventArgs e)
        {
            message = "";
            message = sh.ExtractMessage();
            txtMessage.Text = message;
        }

        private void btnClear_Click(object sender, EventArgs e)
        {
            txtMessage.Text = "";
        }

        private void btnHide_Click(object sender, EventArgs e)
        {
            message = txtMessage.Text.Trim();
            if (message == "")
                MessageBox.Show(this, "Write Message to Hide!", "WavStagno 1.0", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
            else
            {
                btnHide.Enabled = false;
                btnExtract.Enabled = false;
                this.Cursor = Cursors.WaitCursor;
                comWorker.RunWorkerAsync();
            }
        }

        private void dlgSaveFile_FileOk(object sender, CancelEventArgs e)
        {
            file.WriteFile(dlgSaveFile.FileName);
            file = new WaveAudio(new FileStream(txtFilePath.Text, FileMode.Open, FileAccess.Read));
            sh = new StagnoHelper(file);
        }

        private void txtMessage_TextChanged(object sender, EventArgs e)
        {
            lblMessageLength.Text = txtMessage.TextLength.ToString();            
        }

        private void comWorker_DoWork(object sender, DoWorkEventArgs e)
        {
            try
            {
                sh.HideMessage(message);
            }
            catch (MessageSizeExceededException ex)
            {
                HIDE_ERROR = true;
            }
        }

        private void comWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            if (!HIDE_ERROR)
            {
                btnHide.Enabled = true;
                btnExtract.Enabled = true;
                this.Cursor = Cursors.Default;
                dlgSaveFile.ShowDialog();
            }
            else
                MessageBox.Show(this, "Message size is too large!", "WavStagno 1.0", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
    }
}
 
Share this answer
 
Comments
Dave Kreskowiak 23-Aug-18 14:28pm    
No it's not. You're using a 3rd party library to do all the work, hides all of the details asked in the question, and this doesn't even answer the question that was asked SEVEN YEARS ago.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900