public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            var bg = (SongBackground)value;

            writer.WriteStartObject();
            if (bg.Type == SongBackgroundType.Color)
            {
                var conv = new JsonColorConverter();
                writer.WritePropertyName("Color");
                conv.WriteJson(writer, bg.Color, serializer);
            }
            else
            {
                if (bg.Type == SongBackgroundType.Image)
                {
                    writer.WritePropertyName("Image");
                    writer.WriteValue(bg.FilePath.Replace('\\', '/'));
                }
                else
                {
                    writer.WritePropertyName("Video");
                    writer.WriteValue(bg.FilePath.Replace('\\', '/'));
                }
            }

            writer.WriteEndObject();
        }
        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            var bg = (SongBackground)value;
            writer.WriteStartObject();
            if (bg.Type == SongBackgroundType.Color)
            {
                var conv = new JsonColorConverter();
                writer.WritePropertyName("Color");
                conv.WriteJson(writer, bg.Color, serializer);
            }
            else
            {
                if (bg.Type == SongBackgroundType.Image)
                {
                    writer.WritePropertyName("Image");
                    writer.WriteValue(bg.FilePath.Replace('\\', '/'));
                }
                else
                {
                    writer.WritePropertyName("Video");
                    writer.WriteValue(bg.FilePath.Replace('\\', '/'));
                }
            }

            writer.WriteEndObject();
        }