コード例 #1
0
        public int Read(string path)
        {
            this.path = path;

            int hr = WWMFReader.ReadHeaderAndData(path, out meta, out data);

            if (hr < 0)
            {
                return(hr);
            }

            return(0);
        }
コード例 #2
0
        public int ReadAudioFile(string path)
        {
            int hr = WWMFReader.ReadHeaderAndData(path, out mMetadata, out mPcmData);

            if (hr < 0)
            {
                return(hr);
            }

            // update DwChannelMask
            if (0 == mMetadata.dwChannelMask)
            {
                mMetadata.dwChannelMask = GetDefaultDwChannelMask(mMetadata.numChannels);
            }

            return(hr);
        }
コード例 #3
0
        private bool ReadMp3FileHeader(string path)
        {
            bool result = false;
            var  pd     = new PcmDataLib.PcmData();

            WWMFReader.Metadata meta;
            int rv = WWMFReader.ReadHeader(path, out meta);

            if (0 <= rv)
            {
                pd.SetFormat(meta.numChannels, meta.bitsPerSample, meta.bitsPerSample, meta.sampleRate,
                             PcmData.ValueRepresentationType.SInt, meta.numApproxFrames);
                pd.SampleDataType = PcmDataLib.PcmData.DataType.PCM;
                pd.DisplayName    = meta.title;
                pd.AlbumTitle     = meta.album;
                pd.ArtistName     = meta.artist;
                pd.ComposerName   = meta.composer;
                if (null != meta.picture)
                {
                    pd.SetPicture(meta.picture.Length, meta.picture);
                }

                pd.BitRate           = meta.bitRate;
                pd.IsLossyCompressed = true;

                if (CheckAddPcmData(path, pd, true))
                {
                    result = true;
                }
            }
            else
            {
                LoadErrorMessageAdd(string.Format(CultureInfo.InvariantCulture, Properties.Resources.ReadFileFailed + " {1}: {2}{3}",
                                                  "MP3", rv, path, Environment.NewLine));
            }

            return(result);
        }