Ejemplo n.º 1
0
        /// <summary>
        /// Convert the Popularimeterframe.
        /// </summary>
        /// <returns>a RawFrame.</returns>
        public override RawFrame Convert(TagVersion version)
        {
            FrameOptions options = Descriptor.Options;

            byte[] payload;
            using (var writer = new FrameDataWriter())
            {
                writer.WriteString(Email, Encoding.ASCII, true);
                writer.WriteByte(Rating);
                writer.WriteUInt64(PlayCounter);
                payload = writer.ToArray();
            }

            RawFrame frame = RawFrame.CreateFrame(Descriptor.Id, options, payload, version);
            return frame;
        }
Ejemplo n.º 2
0
		/// <summary>
		/// Converts the picture frame to a raw frame.
		/// </summary>
		/// <returns>the raw frame.</returns>
		public override RawFrame Convert(TagVersion version)
		{
			FrameFlags flag = Descriptor.GetFlags();

			byte[] payload;
			using (var writer = new FrameDataWriter())
			{
				writer.WriteEncodingByte(TextEncoding);
				writer.WriteString(MimeType, Encoding.ASCII, true);
				writer.WriteByte((byte)PictureCoding);
				writer.WritePreamble(TextEncoding);
				writer.WriteString(Description, TextEncoding, true);
				writer.WriteBytes(PictureData);
				payload = writer.ToArray();
			}

			return RawFrame.CreateFrame("APIC", flag, payload, version);
		}