public virtual void TestShouldConsiderTwoEquivalentObjectsEqual()
 {
     ID3v2ChapterFrameData frameData1 = new ID3v2ChapterFrameData(false, "ch1", 1, 380, 3, 400);
     ID3v2TextFrameData subFrameData1 = new ID3v2TextFrameData(false, new EncodedText("Hello there"));
     frameData1.AddSubframe("TIT2", subFrameData1);
     ID3v2ChapterFrameData frameData2 = new ID3v2ChapterFrameData(false, "ch1", 1, 380, 3, 400);
     ID3v2TextFrameData subFrameData2 = new ID3v2TextFrameData(false, new EncodedText("Hello there"));
     frameData2.AddSubframe("TIT2", subFrameData2);
     Assert.AreEqual(frameData1, frameData2);
 }
 public virtual void TestShouldConsiderTwoEquivalentObjectsEqual()
 {
     string[] children = new string[] { "ch1", "ch2" };
     ID3v2ChapterTOCFrameData frameData1 = new ID3v2ChapterTOCFrameData(false, true, false, "toc1", children);
     ID3v2TextFrameData subFrameData1 = new ID3v2TextFrameData(false, new EncodedText("Hello there"));
     frameData1.AddSubframe("TIT2", subFrameData1);
     ID3v2ChapterTOCFrameData frameData2 = new ID3v2ChapterTOCFrameData(false, true, false, "toc1", children);
     ID3v2TextFrameData subFrameData2 = new ID3v2TextFrameData(false, new EncodedText("Hello there"));
     frameData2.AddSubframe("TIT2", subFrameData2);
     Assert.AreEqual(frameData1, frameData2);
 }
Exemplo n.º 3
0
 public virtual void TestShouldConvertFrameDataToBytesAndBackToEquivalentObject()
 {
     ID3v2TextFrameData frameData = new ID3v2TextFrameData(false, new EncodedText(EncodedText.TEXT_ENCODING_ISO_8859_1, TEST_TEXT));
     byte[] bytes = frameData.ToBytes();
     byte[] expectedBytes = new byte[] { 0, (byte)('A'), (byte)('B'), (byte)('C'), (byte
         )('D'), (byte)('E'), (byte)('F'), (byte)('G'), (byte)('H'), (byte)('I'), (byte)(
         'J'), (byte)('K'), (byte)('L'), (byte)('M'), (byte)('N'), (byte)('O'), (byte)('P'
         ), (byte)('Q') };
     Assert.IsTrue(Arrays.Equals(expectedBytes, bytes));
     ID3v2TextFrameData frameDataCopy = new ID3v2TextFrameData(false, bytes);
     Assert.AreEqual(frameData, frameDataCopy);
 }
Exemplo n.º 4
0
 public virtual void TestShouldConvertFrameDataWithUnicodeToBytesAndBackToEquivalentObject()
 {
     ID3v2TextFrameData frameData = new ID3v2TextFrameData(false, new EncodedText(EncodedText.TEXT_ENCODING_UTF_16, TEST_TEXT_UNICODE));
     byte[] bytes = frameData.ToBytes();
     byte[] expectedBytes = new byte[] { 1, unchecked((byte)unchecked((int)(0xff))), unchecked(
         (byte)unchecked((int)(0xfe))), unchecked((byte)unchecked((int)(0xb3))), unchecked(
         (int)(0x03)), unchecked((byte)unchecked((int)(0xb5))), unchecked((int)(0x03)), unchecked(
         (byte)unchecked((int)(0xb9))), unchecked((int)(0x03)), unchecked((byte)unchecked(
         (int)(0xac))), unchecked((int)(0x03)) };
     Assert.IsTrue(Arrays.Equals(expectedBytes, bytes));
     ID3v2TextFrameData frameDataCopy = new ID3v2TextFrameData(false, bytes);
     Assert.AreEqual(frameData, frameDataCopy);
 }
 public virtual void TestShouldConvertFrameDataToBytesAndBackToEquivalentObject()
 {
     ID3v2ChapterFrameData frameData = new ID3v2ChapterFrameData(false, "ch1", 1, 380, 3, 400);
     ID3v2TextFrameData subFrameData = new ID3v2TextFrameData(false, new EncodedText("Hello there"));
     frameData.AddSubframe("TIT2", subFrameData);
     byte[] bytes = frameData.ToBytes();
     byte[] expectedBytes = new byte[] { (byte)('c'), (byte)('h'), (byte)('1'), 0, 0,
         0, 0, 1, 0, 0, 1, unchecked((byte)unchecked((int)(0x7c))), 0, 0, 0, 3, 0, 0, 1,
         unchecked((byte)unchecked((int)(0x90))), (byte)('T'), (byte)('I'), (byte)('T'),
         (byte)('2'), 0, 0, 0, unchecked((byte)unchecked((int)(0xc))), 0, 0, 0, (byte)('H'
         ), (byte)('e'), (byte)('l'), (byte)('l'), (byte)('o'), (byte)(' '), (byte)('t'),
         (byte)('h'), (byte)('e'), (byte)('r'), (byte)('e') };
     Assert.IsTrue(Arrays.Equals(expectedBytes, bytes));
     ID3v2ChapterFrameData frameDataCopy = new ID3v2ChapterFrameData(false, bytes);
     Assert.AreEqual(frameData, frameDataCopy);
 }
Exemplo n.º 6
0
 public virtual void SetYear(string year)
 {
     if (year != null && year.Length > 0)
     {
         InvalidateDataLength();
         ID3v2TextFrameData frameData = new ID3v2TextFrameData(UseFrameUnsynchronisation()
             , new EncodedText(year));
         AddFrame(CreateFrame(ID_YEAR, frameData.ToBytes()), true);
     }
 }
Exemplo n.º 7
0
 public virtual void SetTrack(string track)
 {
     if (track != null && track.Length > 0)
     {
         InvalidateDataLength();
         ID3v2TextFrameData frameData = new ID3v2TextFrameData(UseFrameUnsynchronisation()
             , new EncodedText(track));
         AddFrame(CreateFrame(ID_TRACK, frameData.ToBytes()), true);
     }
 }
Exemplo n.º 8
0
 public virtual void SetAlbumArtist(string albumArtist)
 {
     if (albumArtist != null && albumArtist.Length > 0)
     {
         InvalidateDataLength();
         ID3v2TextFrameData frameData = new ID3v2TextFrameData(UseFrameUnsynchronisation()
             , new EncodedText(albumArtist));
         AddFrame(CreateFrame(ID_ALBUM_ARTIST, frameData.ToBytes()), true);
     }
 }
Exemplo n.º 9
0
 public virtual void SetPartOfSet(string partOfSet)
 {
     if (partOfSet != null && partOfSet.Length > 0)
     {
         InvalidateDataLength();
         ID3v2TextFrameData frameData = new ID3v2TextFrameData(UseFrameUnsynchronisation()
             , new EncodedText(partOfSet));
         AddFrame(CreateFrame(ID_PART_OF_SET, frameData.ToBytes()), true);
     }
 }
Exemplo n.º 10
0
 public virtual void SetOriginalArtist(string originalArtist)
 {
     if (originalArtist != null && originalArtist.Length > 0)
     {
         InvalidateDataLength();
         ID3v2TextFrameData frameData = new ID3v2TextFrameData(UseFrameUnsynchronisation()
             , new EncodedText(originalArtist));
         AddFrame(CreateFrame(ID_ORIGINAL_ARTIST, frameData.ToBytes()), true);
     }
 }
Exemplo n.º 11
0
 public virtual void SetGenre(int genre)
 {
     if (genre >= 0)
     {
         InvalidateDataLength();
         string genreDescription;
         try
         {
             genreDescription = ID3v1Genres.GENRES[genre];
         }
         catch (IndexOutOfRangeException)
         {
             genreDescription = string.Empty;
         }
         string combinedGenre = "(" + Mp3net.Helpers.Extensions.ToString(genre) + ")" + genreDescription;
         ID3v2TextFrameData frameData = new ID3v2TextFrameData(UseFrameUnsynchronisation()
             , new EncodedText(combinedGenre));
         AddFrame(CreateFrame(ID_GENRE, frameData.ToBytes()), true);
     }
 }
Exemplo n.º 12
0
 public virtual void SetCopyright(string copyright)
 {
     if (copyright != null && copyright.Length > 0)
     {
         InvalidateDataLength();
         ID3v2TextFrameData frameData = new ID3v2TextFrameData(UseFrameUnsynchronisation()
             , new EncodedText(copyright));
         AddFrame(CreateFrame(ID_COPYRIGHT, frameData.ToBytes()), true);
     }
 }
Exemplo n.º 13
0
 public virtual void SetComposer(string composer)
 {
     if (composer != null && composer.Length > 0)
     {
         InvalidateDataLength();
         ID3v2TextFrameData frameData = new ID3v2TextFrameData(UseFrameUnsynchronisation()
             , new EncodedText(composer));
         AddFrame(CreateFrame(ID_COMPOSER, frameData.ToBytes()), true);
     }
 }
Exemplo n.º 14
0
 public virtual void SetCompilation(bool compilation)
 {
     InvalidateDataLength();
     ID3v2TextFrameData frameData = new ID3v2TextFrameData(UseFrameUnsynchronisation()
         , new EncodedText(compilation ? "1" : "0"));
     AddFrame(CreateFrame(ID_COMPILATION, frameData.ToBytes()), true);
 }
Exemplo n.º 15
0
 public virtual void TestShouldConsiderTwoEquivalentObjectsEqual()
 {
     ID3v2TextFrameData frameData1 = new ID3v2TextFrameData(false, new EncodedText(EncodedText.TEXT_ENCODING_ISO_8859_1, TEST_TEXT));
     ID3v2TextFrameData frameData2 = new ID3v2TextFrameData(false, new EncodedText(EncodedText.TEXT_ENCODING_ISO_8859_1, TEST_TEXT));
     Assert.AreEqual(frameData1, frameData2);
 }
Exemplo n.º 16
0
 public virtual void SetPublisher(string publisher)
 {
     if (publisher != null && publisher.Length > 0)
     {
         InvalidateDataLength();
         ID3v2TextFrameData frameData = new ID3v2TextFrameData(UseFrameUnsynchronisation()
             , new EncodedText(publisher));
         AddFrame(CreateFrame(ID_PUBLISHER, frameData.ToBytes()), true);
     }
 }
Exemplo n.º 17
0
 public virtual void SetTitle(string title)
 {
     if (title != null && title.Length > 0)
     {
         InvalidateDataLength();
         ID3v2TextFrameData frameData = new ID3v2TextFrameData(UseFrameUnsynchronisation()
             , new EncodedText(title));
         AddFrame(CreateFrame(ID_TITLE, frameData.ToBytes()), true);
     }
 }
Exemplo n.º 18
0
 public virtual void TestShouldExtractChapterTOCAndChapterFramesFromMp3()
 {
     byte[] buffer = TestHelper.LoadFile("Resources/v23tagwithchapters.mp3");
     ID3v2 id3tag = ID3v2TagFactory.CreateTag(buffer);
     IList<ID3v2ChapterFrameData> chapters = id3tag.GetChapters();
     Assert.AreEqual(3, chapters.Count);
     ID3v2ChapterFrameData chapter1 = chapters[0];
     Assert.AreEqual("ch1", chapter1.GetId());
     Assert.AreEqual(0, chapter1.GetStartTime());
     Assert.AreEqual(5000, chapter1.GetEndTime());
     Assert.AreEqual(-1, chapter1.GetStartOffset());
     Assert.AreEqual(-1, chapter1.GetEndOffset());
     IList<ID3v2Frame> subFrames1 = chapter1.GetSubframes();
     Assert.AreEqual(1, subFrames1.Count);
     ID3v2Frame subFrame1 = subFrames1[0];
     Assert.AreEqual("TIT2", subFrame1.GetId());
     ID3v2TextFrameData frameData1 = new ID3v2TextFrameData(false, subFrame1.GetData());
     Assert.AreEqual("start", frameData1.GetText().ToString());
     ID3v2ChapterFrameData chapter2 = chapters[1];
     Assert.AreEqual("ch2", chapter2.GetId());
     Assert.AreEqual(5000, chapter2.GetStartTime());
     Assert.AreEqual(10000, chapter2.GetEndTime());
     Assert.AreEqual(-1, chapter2.GetStartOffset());
     Assert.AreEqual(-1, chapter2.GetEndOffset());
     IList<ID3v2Frame> subFrames2 = chapter2.GetSubframes();
     Assert.AreEqual(1, subFrames2.Count);
     ID3v2Frame subFrame2 = subFrames2[0];
     Assert.AreEqual("TIT2", subFrame2.GetId());
     ID3v2TextFrameData frameData2 = new ID3v2TextFrameData(false, subFrame2.GetData());
     Assert.AreEqual("5 seconds", frameData2.GetText().ToString());
     ID3v2ChapterFrameData chapter3 = chapters[2];
     Assert.AreEqual("ch3", chapter3.GetId());
     Assert.AreEqual(10000, chapter3.GetStartTime());
     Assert.AreEqual(15000, chapter3.GetEndTime());
     Assert.AreEqual(-1, chapter3.GetStartOffset());
     Assert.AreEqual(-1, chapter3.GetEndOffset());
     IList<ID3v2Frame> subFrames3 = chapter3.GetSubframes();
     Assert.AreEqual(1, subFrames3.Count);
     ID3v2Frame subFrame3 = subFrames3[0];
     Assert.AreEqual("TIT2", subFrame3.GetId());
     ID3v2TextFrameData frameData3 = new ID3v2TextFrameData(false, subFrame3.GetData());
     Assert.AreEqual("10 seconds", frameData3.GetText().ToString());
 }
Exemplo n.º 19
0
 private ID3v2TextFrameData ExtractTextFrameData(string id)
 {
     ID3v2FrameSet frameSet = frameSets.Get(id);
     if (frameSet != null)
     {
         ID3v2Frame frame = (ID3v2Frame)frameSet.GetFrames()[0];
         ID3v2TextFrameData frameData;
         try
         {
             frameData = new ID3v2TextFrameData(UseFrameUnsynchronisation(), frame.GetData());
             return frameData;
         }
         catch (InvalidDataException)
         {
         }
     }
     // do nothing
     return null;
 }