Example #1
0
        private static void ReadFile(Mp3Data m)
        {
            FileStream fs = new FileStream(m.Name, FileMode.Open, FileAccess.Read);

            BinaryReader br = new BinaryReader(fs);
            Byte[] bytes = br.ReadBytes((Int32)fs.Length);
            br.Close();
            fs.Close();

            // string strQuery = "insert into mp3s(FileName, Data) values (@Name,  @Album, @Artist,  @Genre,@Year,,@Data)";
            string strQuery = "insert into mp3s(FileName,Album,Artist,Title,Comment,Genre, Year,Track,DateAdded,Data) values (@Name,@Album,@Artist,@Title,@Comment,@Genre,@Year,@Track, @Date,@Data)";
            SqlCommand cmd = new SqlCommand(strQuery);
            cmd.Parameters.Add("@Name", SqlDbType.VarChar).Value = m.Name;
            cmd.Parameters.Add("@Data", SqlDbType.VarBinary).Value = bytes;
            cmd.Parameters.Add("@Artist", SqlDbType.VarChar).Value = m.Artist;
            cmd.Parameters.Add("@Album", SqlDbType.VarChar).Value = m.Album;
            cmd.Parameters.Add("@Title", SqlDbType.VarChar).Value = m.Title;
            cmd.Parameters.Add("@Comment", SqlDbType.VarChar).Value = m.Comment;
            cmd.Parameters.Add("@Genre", SqlDbType.VarChar).Value = m.Genre;
            cmd.Parameters.Add("@Year", SqlDbType.VarChar).Value = m.Year;
            cmd.Parameters.Add("@Track", SqlDbType.VarChar).Value = m.Track;
            cmd.Parameters.Add("@Date", SqlDbType.VarChar).Value = DateTime.UtcNow;
            InsertUpdateData(cmd);
        }
Example #2
0
        private static Mp3Data GetMetadata(string file)
        {
            /* if (Bass.BASS_Init(-1, 44100, BASSInit.BASS_DEVICE_FREQ, IntPtr.Zero))
             {
                 BassFx.BASS_FX_GetVersion();
             }*/

            var metadata = new Mp3Data();
            int channel = Bass.BASS_StreamCreateFile(file, 0, 0, BASSFlag.BASS_SAMPLE_FLOAT);
            //IntPtr tag = Bass.BASS_ChannelGetTags(channel, BASSTag.BASS_TAG_ID3V2);
            TAG_INFO tagInfo = new TAG_INFO(file);
            //string[] tags = Utils.IntPtrToArrayNullTermUtf8(tag);

            if (BassTags.BASS_TAG_GetFromFile(channel, tagInfo))
            {
                Trace.WriteLine("Album: " + tagInfo.album);
                Trace.WriteLine("Artist: " + tagInfo.artist);
                Trace.WriteLine("Title: " + tagInfo.title);
                Trace.WriteLine("Comment: " + tagInfo.comment);
                Trace.WriteLine("Genre: " + tagInfo.genre);
                Trace.WriteLine("Year: " + tagInfo.year);
                Trace.WriteLine("Track: " + tagInfo.track);

                metadata = AutoMapper.Mapper.Map<Mp3Data>(tagInfo);

            }
            metadata.Name = file;

            /*if (tags != null)
            {
                foreach (string ttag in tags)
                    Console.WriteLine("Tag: {0}\n", ttag);
            }*/

            return metadata;
        }