Membuat musik dengan Lyria 3.5

Lyria 3.5 adalah serangkaian model pembuatan musik Google, yang tersedia melalui Gemini API. Dengan Lyria 3.5, Anda dapat menghasilkan audio stereo 44, 1 kHz berkualitas tinggi dari perintah teks atau dari gambar. Model ini memberikan koherensi struktural, termasuk vokal, lirik yang disesuaikan waktunya, dan aransemen instrumental lengkap.

Keluarga Lyria mencakup model:

Model ID Model Paling cocok untuk Durasi Output
Klip Lyria 3 lyria-3-clip-preview Klip pendek, loop, pratinjau 30 detik MP3
Lyria 3.5 lyria-3.5 Lagu lengkap dengan bait, refrein, dan jembatan Beberapa menit (dapat dikontrol menggunakan perintah) MP3

Kedua model dapat digunakan menggunakan Interactions API baru, yang mendukung input multimodal (teks dan gambar), serta menghasilkan audio stereo dengan akurasi tinggi 44,1 kHz.

Membuat klip musik

Model Klip Lyria 3 selalu menghasilkan klip 30 detik. Untuk membuat klip, panggil metode interactions.create dengan perintah teks. Respons selalu menyertakan lirik dan struktur lagu yang dihasilkan bersama dengan audio dalam skema steps.

Python

import base64
from google import genai

client = genai.Client()

interaction = client.interactions.create(
    model="lyria-3-clip-preview",
    input="A short instrumental acoustic guitar piece.",
)

generated_audio = interaction.output_audio
if generated_audio:
    with open("music.mp3", "wb") as f:
        f.write(base64.b64decode(generated_audio.data))

lyrics = interaction.output_text
if lyrics:
    print(f"Lyrics:\n{lyrics}")

JavaScript

import { GoogleGenAI } from '@google/genai';
import * as fs from 'fs';

const client = new GoogleGenAI({});

const interaction = await client.interactions.create({
    model: 'lyria-3-clip-preview',
    input: 'A short instrumental acoustic guitar piece.',
});

const generatedAudio = interaction.output_audio;
if (generatedAudio) {
  fs.writeFileSync('music.mp3', Buffer.from(generatedAudio.data, 'base64'));
}

const lyrics = interaction.output_text;
if (lyrics) {
  console.log(`Lyrics:\n${lyrics}`);
}

Java

import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;

Client client = new Client();

CreateModelInteraction params =
    CreateModelInteraction.builder()
        .model(Model.of("lyria-3-generate-001"))
        .responseModalities(Arrays.asList(ResponseModality.AUDIO))
        .input(InteractionsInput.of("Upbeat electronic synthwave track"))
        .build();

Interaction interaction =
    client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();

System.out.println("Audio generated: " + interaction.outputAudio().isPresent());

REST

curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "Content-Type: application/json" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-d '{
    "model": "lyria-3-clip-preview",
    "input": "A short instrumental acoustic guitar piece."
}'

Anda dapat mengambil data musik yang dihasilkan menggunakan properti interaction.output_audio, yang menampilkan blok audio terakhir yang dihasilkan. Anda juga dapat mengambil lirik dan struktur lagu menggunakan properti interaction.output_text. Untuk mengetahui detail properti praktis, lihat Ringkasan interaksi.

Membuat lagu berdurasi penuh

Gunakan model lyria-3.5 untuk membuat lagu berdurasi penuh yang berdurasi beberapa menit. Model Pro memahami struktur musik dan dapat membuat komposisi dengan bait, refrain, dan jembatan yang berbeda. Anda dapat memengaruhi durasi dengan menentukannya dalam perintah (misalnya, "buat lagu berdurasi 2 menit") atau dengan menggunakan stempel waktu untuk menentukan struktur.

Python

interaction = client.interactions.create(
    model="lyria-3.5",
    input="An epic cinematic orchestral piece about a journey home. Starts with a solo piano intro, builds through sweeping strings, and climaxes with a massive wall of sound.",
)

JavaScript

const interaction = await client.interactions.create({
    model: 'lyria-3.5',
    input: 'A beautiful piano melody.',
});

Java

import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;

Client client = new Client();

CreateModelInteraction params =
    CreateModelInteraction.builder()
        .model(Model.of("lyria-3-generate-001"))
        .responseModalities(Arrays.asList(ResponseModality.AUDIO))
        .input(InteractionsInput.of("Upbeat electronic synthwave track"))
        .build();

Interaction interaction =
    client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();

System.out.println("Audio generated: " + interaction.outputAudio().isPresent());

REST

curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
-H "Content-Type: application/json" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-d '{
    "model": "lyria-3.5",
    "input": "A beautiful piano melody."
}'

Pilih format output

Secara default, model Lyria 3.5 menghasilkan audio dalam format MP3. Untuk Lyria 3.5, Anda juga dapat meminta output dalam format WAV dengan menyetel response_format.

Python

interaction = client.interactions.create(
    model="lyria-3.5",
    input="A beautiful piano melody.",
    response_format={"type": "audio"},
)

JavaScript

const interaction = await client.interactions.create({
    model: 'lyria-3.5',
    input: 'A beautiful piano melody.',
    response_format: {
        type: 'audio',
    },
});

Java

import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;

Client client = new Client();

CreateModelInteraction params =
    CreateModelInteraction.builder()
        .model(Model.of("lyria-3-generate-001"))
        .responseModalities(Arrays.asList(ResponseModality.AUDIO))
        .input(InteractionsInput.of("Upbeat electronic synthwave track"))
        .build();

Interaction interaction =
    client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();

System.out.println("Audio generated: " + interaction.outputAudio().isPresent());

REST

curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "lyria-3.5",
    "input": "A beautiful piano melody.",
    "response_format": {
        "type": "audio"
    }
  }'

Mengurai respons

Respons dari Lyria 3.5 berisi beberapa blok konten dalam skema steps. Interaksi menampilkan urutan langkah-langkah, dengan model_output langkah berisi konten yang dihasilkan. Blok konten teks berisi lirik yang dibuat atau deskripsi JSON dari struktur lagu. Blok konten dengan jenis audio berisi data audio berenkode base64.

Python

lyrics = []
audio_data = None

generated_audio = interaction.output_audio
if generated_audio:
    with open("output.mp3", "wb") as f:
        f.write(base64.b64decode(generated_audio.data))

lyrics = interaction.output_text
if lyrics:
    print(f"Lyrics:\n{lyrics}")

JavaScript

const lyrics = [];
let audioData = null;

const generatedAudio = interaction.output_audio;
if (generatedAudio) {
    fs.writeFileSync("output.mp3", Buffer.from(generatedAudio.data, 'base64'));
}

const lyrics = interaction.output_text;
if (lyrics) {
    console.log("Lyrics:\n" + lyrics);
}

Java

import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;

Client client = new Client();

CreateModelInteraction params =
    CreateModelInteraction.builder()
        .model(Model.of("lyria-3-generate-001"))
        .responseModalities(Arrays.asList(ResponseModality.AUDIO))
        .input(InteractionsInput.of("Upbeat electronic synthwave track"))
        .build();

Interaction interaction =
    client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();

System.out.println("Audio generated: " + interaction.outputAudio().isPresent());

REST

# The output from the REST API is a JSON object containing base64 encoded data.
# You can extract the text or the audio data using a tool like jq.
# To extract the audio and save it to a file:
curl ... | jq -r '.steps[] | select(.type=="model_output") | .content[] | select(.type=="audio") | .data' | base64 -d > output.mp3

Lirik dan musik yang diselingi

Karena output dari Lyria 3.5 rumit—berisi langkah-langkah dan blok terpisah untuk lirik yang dihasilkan (teks) dan lagu itu sendiri (audio)—properti praktis menawarkan pintasan yang cepat dan direkomendasikan.

Namun, jika Anda menginginkan kontrol penuh dan terprogram atas linimasa langkah-langkah mentah yang ditampilkan oleh server (seperti mencatat setiap blok konten saat diterima), Anda dapat melakukan iterasi secara manual atas steps:

Python

lyrics = []
audio_data = None

for step in interaction.steps:
    if step.type == "model_output":
        for content_block in step.content:
            if content_block.type == "audio":
                audio_data = base64.b64decode(content_block.data)
            elif content_block.type == "text":
                lyrics.append(content_block.text)

if lyrics:
    print("Lyrics:\n" + "\n".join(lyrics))

if audio_data:
    with open("output.mp3", "wb") as f:
        f.write(audio_data)

JavaScript

const lyrics = [];
let audioData = null;

for (const step of interaction.steps) {
    if (step.type === 'model_output') {
        for (const contentBlock of step.content) {
            if (contentBlock.type === 'audio') {
                audioData = Buffer.from(contentBlock.data, 'base64');
            } else if (contentBlock.type === 'text') {
                lyrics.push(contentBlock.text);
            }
        }
    }
}

if (lyrics.length) {
    console.log("Lyrics:\n" + lyrics.join("\n"));
}

if (audioData) {
    fs.writeFileSync("output.mp3", audioData);
}

Java

import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;

Client client = new Client();

CreateModelInteraction params =
    CreateModelInteraction.builder()
        .model(Model.of("lyria-3-generate-001"))
        .responseModalities(Arrays.asList(ResponseModality.AUDIO))
        .input(InteractionsInput.of("Upbeat electronic synthwave track"))
        .build();

Interaction interaction =
    client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();

System.out.println("Audio generated: " + interaction.outputAudio().isPresent());

Membuat musik dari gambar

Lyria 3.5 mendukung input multimodal — Anda dapat memberikan hingga 10 gambar bersama perintah teks Anda dalam daftar input dan model akan membuat musik yang terinspirasi dari konten visual.

Python

import base64

with open("desert_sunset.jpg", "rb") as f:
    image_bytes = f.read()
    image_b64 = base64.b64encode(image_bytes).decode("utf-8")

response = client.interactions.create(
    model="lyria-3.5",
    input=[
        {
            "type": "text",
            "text": "An atmospheric ambient track inspired by the mood and colors in this image.",
        },
        {
            "type": "image",
            "mime_type": "image/jpeg",
            "data": image_b64,
        },
    ],
)

JavaScript

import * as fs from "fs";

const imageBytes = fs.readFileSync("desert_sunset.jpg").toString("base64");

const interaction = await client.interactions.create({
    model: "lyria-3.5",
    input: [
        {
            type: "text",
            text: "An atmospheric ambient track inspired by the mood and colors in this image.",
        },
        {
            type: "image",
            mime_type: "image/jpeg",
            data: imageBytes,
        },
    ],
});

Java

import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;

Client client = new Client();

CreateModelInteraction params =
    CreateModelInteraction.builder()
        .model(Model.of("lyria-3-generate-001"))
        .responseModalities(Arrays.asList(ResponseModality.AUDIO))
        .input(InteractionsInput.of("Upbeat electronic synthwave track"))
        .build();

Interaction interaction =
    client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();

System.out.println("Audio generated: " + interaction.outputAudio().isPresent());

REST

# Pass base64 encoded image data directly:
curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "lyria-3.5",
    "input": [
      {"type": "text", "text": "An atmospheric ambient track inspired by the mood and colors in this image."},
      {"type": "image", "mime_type": "image/jpeg", "data": "/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAP//////////////////////////////////////////////////////////////////////////////////////wgALCAABAAEBAREA/8QAFBABAAAAAAAAAAAAAAAAAAAAAP/aAAgBAQABPxA="}
    ]
  }'

Menyediakan lirik kustom

Anda dapat menulis lirik Anda sendiri dan menyertakannya dalam perintah. Gunakan tag bagian seperti [Verse], [Chorus], dan [Bridge] untuk membantu model memahami struktur lagu:

Python

prompt = """
Create a dreamy indie pop song with the following lyrics:

[Verse 1]
Walking through the neon glow,
city lights reflect below,
every shadow tells a story,
every corner, fading glory.

[Chorus]
We are the echoes in the night,
burning brighter than the light,
hold on tight, don't let me go,
we are the echoes down below.

[Verse 2]
Footsteps lost on empty streets,
rhythms sync to heartbeats,
whispers carried by the breeze,
dancing through the autumn leaves.
"""

interaction = client.interactions.create(
    model="lyria-3.5",
    input=prompt,
)

JavaScript

const prompt = `
Create a dreamy indie pop song with the following lyrics:

[Verse 1]
Walking through the neon glow,
city lights reflect below,
every shadow tells a story,
every corner, fading glory.

[Chorus]
We are the echoes in the night,
burning brighter than the light,
hold on tight, don't let me go,
we are the echoes down below.

[Verse 2]
Footsteps lost on empty streets,
rhythms sync to heartbeats,
whispers carried by the breeze,
dancing through the autumn leaves.
`;

const interaction = await client.interactions.create({
    model: 'lyria-3.5',
    input: prompt,
});

Java

import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;

Client client = new Client();

CreateModelInteraction params =
    CreateModelInteraction.builder()
        .model(Model.of("lyria-3-generate-001"))
        .responseModalities(Arrays.asList(ResponseModality.AUDIO))
        .input(InteractionsInput.of("Upbeat electronic synthwave track"))
        .build();

Interaction interaction =
    client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();

System.out.println("Audio generated: " + interaction.outputAudio().isPresent());

REST

curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "lyria-3.5",
    "input": "Create a dreamy indie pop song with the following lyrics: ..."
  }'

Mengontrol waktu dan struktur

Anda dapat menentukan apa yang terjadi pada momen tertentu dalam lagu menggunakan stempel waktu. Hal ini berguna untuk mengontrol kapan instrumen masuk, kapan lirik disampaikan, dan bagaimana progres lagu:

Python

prompt = """
[0:00 - 0:10] Intro: Begin with a soft lo-fi beat and muffled
              vinyl crackle.
[0:10 - 0:30] Verse 1: Add a warm Fender Rhodes piano melody
              and gentle vocals singing about a rainy morning.
[0:30 - 0:50] Chorus: Full band with upbeat drums and soaring
              synth leads. The lyrics are hopeful and uplifting.
[0:50 - 1:00] Outro: Fade out with the piano melody alone.
"""

interaction = client.interactions.create(
    model="lyria-3.5",
    input=prompt,
)

JavaScript

const prompt = `
[0:00 - 0:10] Intro: Begin with a soft lo-fi beat and muffled
              vinyl crackle.
[0:10 - 0:30] Verse 1: Add a warm Fender Rhodes piano melody
              and gentle vocals singing about a rainy morning.
[0:30 - 0:50] Chorus: Full band with upbeat drums and soaring
              synth leads. The lyrics are hopeful and uplifting.
[0:50 - 1:00] Outro: Fade out with the piano melody alone.
`;

const interaction = await client.interactions.create({
    model: 'lyria-3.5',
    input: prompt,
});

Java

import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;

Client client = new Client();

CreateModelInteraction params =
    CreateModelInteraction.builder()
        .model(Model.of("lyria-3-generate-001"))
        .responseModalities(Arrays.asList(ResponseModality.AUDIO))
        .input(InteractionsInput.of("Upbeat electronic synthwave track"))
        .build();

Interaction interaction =
    client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();

System.out.println("Audio generated: " + interaction.outputAudio().isPresent());

REST

curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "lyria-3.5",
    "input": "[0:00 - 0:10] Intro: ..."
  }'

Membuat trek instrumental

Untuk musik latar, soundtrack game, atau kasus penggunaan apa pun yang tidak memerlukan vokal, Anda dapat meminta model untuk menghasilkan trek khusus instrumental:

Python

interaction = client.interactions.create(
    model="lyria-3-clip-preview",
    input="A bright chiptune melody in C Major, retro 8-bit video game style. Instrumental only, no vocals.",
)

JavaScript

const interaction = await client.interactions.create({
    model: 'lyria-3-clip-preview',
    input: 'A bright chiptune melody in C Major, retro 8-bit video game style. Instrumental only, no vocals.',
});

Java

import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;

Client client = new Client();

CreateModelInteraction params =
    CreateModelInteraction.builder()
        .model(Model.of("lyria-3-generate-001"))
        .responseModalities(Arrays.asList(ResponseModality.AUDIO))
        .input(InteractionsInput.of("Upbeat electronic synthwave track"))
        .build();

Interaction interaction =
    client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();

System.out.println("Audio generated: " + interaction.outputAudio().isPresent());

REST

curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "lyria-3-clip-preview",
    "input": "A bright chiptune melody in C Major, retro 8-bit video game style. Instrumental only, no vocals."
  }'

Membuat musik dalam berbagai bahasa

Lyria 3.5 membuat lirik dalam bahasa perintah Anda. Untuk membuat lagu dengan lirik dalam bahasa Prancis, tulis perintah Anda dalam bahasa Prancis. Model ini menyesuaikan gaya vokal dan pengucapannya agar sesuai dengan bahasa.

Python

interaction = client.interactions.create(
    model="lyria-3.5",
    input="Crée une chanson pop romantique en français sur un coucher de soleil à Paris. Utilise du piano et de la guitare acoustique.",
)

JavaScript

const interaction = await client.interactions.create({
    model: 'lyria-3.5',
    input: 'Crée une chanson pop romantique en français sur un coucher de soleil à Paris. Utilise du piano et de la guitare acoustique.',
});

Java

import com.google.genai.Client;
import com.google.genai.gaos.models.interactions.CreateModelInteraction;
import com.google.genai.gaos.models.interactions.Interaction;
import com.google.genai.gaos.models.interactions.InteractionsInput;
import com.google.genai.gaos.models.interactions.Model;
import com.google.genai.gaos.models.interactions.ResponseModality;
import com.google.genai.gaos.models.operations.CreateInteractionRequestBody;
import java.util.Arrays;

Client client = new Client();

CreateModelInteraction params =
    CreateModelInteraction.builder()
        .model(Model.of("lyria-3-generate-001"))
        .responseModalities(Arrays.asList(ResponseModality.AUDIO))
        .input(InteractionsInput.of("Upbeat electronic synthwave track"))
        .build();

Interaction interaction =
    client.interactions.create(CreateInteractionRequestBody.of(params)).interaction().get();

System.out.println("Audio generated: " + interaction.outputAudio().isPresent());

REST

curl -X POST "https://generativelanguage.googleapis.com/v1beta/interactions" \
  -H "x-goog-api-key: $GEMINI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "lyria-3.5",
    "input": "Crée une chanson pop romantique en français sur un coucher de soleil à Paris. Utilise du piano et de la guitare acoustique."
  }'

Kecerdasan model

Lyria 3.5 menganalisis proses perintah Anda di mana model melakukan penalaran melalui struktur musik (intro, bait, chorus, bridge, dll.) berdasarkan perintah Anda. Hal ini terjadi sebelum audio dibuat dan memastikan koherensi struktural dan musikalitas.

Panduan penulisan perintah

Perintah Anda bisa sesederhana "lagu folk tentang kucing lucu yang menghindari genangan air, vokal wanita dan suara hujan", atau sesuatu yang mendetail dan terstruktur seperti:

Lagu synth-pop bergaya 1980-an dengan beat yang kuat, synthesizer yang berkilau, dan chorus yang menarik dan anthemic. Lagu ini harus memiliki nuansa retro-futuristik, yang mengingatkan pada lagu pop klasik era 80-an, dengan sentuhan produksi modern. Tempo harus ceria dan cocok untuk menari, sekitar 120 BPM, dengan struktur bait-chorus yang jelas dan hook instrumental yang mudah diingat. Liriknya menceritakan perasaan saat bersiap-siap untuk pergi ke pesta.

Perintah sederhana dan kompleks dapat memberikan output yang baik. Bereksperimenlah dengan tips ini untuk menemukan strategi yang paling efektif untuk Anda.

Genre

Awali perintah Anda dengan genre musik yang Anda inginkan, seperti hip hop, rock, dan rap. Anda dapat menentukan campuran genre:

  • Perpaduan metal dan rap
  • Kombinasi death metal dan opera
  • Karya klasik dengan elemen drone elektronik
  • Musik dance elektronik (EDM) modern yang dipadukan dengan Europop

Anda juga dapat menyertakan era:

  • Hip-hop awal 90-an
  • Pop ye-ye Prancis 60-an
  • Eksperimen elektronik tahun 80-an
  • Pop mainstream 2000-an

Jika Anda meminta genre khusus atau varian regional, seperti "techno Berlin" atau "hyphy Bay Area", model akan mencoba menangkap esensinya, tetapi mungkin tidak selalu berhasil.

Instrumen

Secara default, Lyria 3.5 akan membuat lagu dengan instrumen dan alat yang Anda harapkan untuk genre tersebut. Anda tidak perlu bersikap preskriptif.

Namun, trek musik dance tidak akan menyertakan saksofon kecuali jika Anda memintanya. Jadi, jika Anda menginginkan solo saksofon, Anda perlu memberikan perintah:

Lagu dance dengan beat yang mengentak, synthesizer yang berkilau, dan chorus yang catchy dan anthemik. Solo saksofon harus masuk selama bagian jembatan.

Perintah Anda dapat menyertakan instrumen tertentu, suaranya, dan cara instrumen tersebut berinteraksi satu sama lain. Anda dapat menggunakan kombinasi ini untuk menciptakan suasana atau tekstur tertentu:

  • Garis bass yang kotor dan terdistorsi beradu dengan hi-hat yang bersih dan jernih
  • Pad synthesizer analog yang hangat mengembang di bawah gitar akustik yang jelas dan dekat
  • Dinding suara yang dibuat oleh beberapa lapisan gitar fuzzy, dengan vokal yang terpendam dan jauh

Struktur lagu

Anda dapat menguraikan progres lagu dalam perintah Anda. Gunakan panah atau daftar untuk menentukan alur:

  • [Intro] -> [Verse 1] -> [Chorus] -> [Verse 2] -> [Chorus] -> [Bridge] -> [Outro]
  • Mulai dengan intro piano yang tenang, bangun ke bait yang keras, turun ke keheningan, lalu meledak ke bagian chorus.

Anda juga dapat menentukan bagaimana perubahan tingkat energi di antara bagian-bagian ini:

  • Bangun ketegangan di pra-chorus, lalu turunkan ke keheningan sebelum chorus yang besar dan eksplosif
  • Crescendo bertahap di sepanjang lagu, menambahkan satu instrumen pada satu waktu hingga menghasilkan suara yang kacau
  • Berhenti mendadak setelah jembatan, diikuti dengan chorus acapella

Anda juga dapat meminta waktu yang tepat untuk melakukan sesuatu:

  • Bangun hingga turun di 12 dtk
  • Seseorang mengucapkan "apa" setiap 2 detik
  • Bagian chorus dimulai pada detik ke-22

Lirik

Vokal dan lirik dibuat secara default. Anda dapat memberikan lirik Anda sendiri, meminta tidak ada lirik (atau instrumental), atau mengarahkan pembuatan lirik ke arah yang Anda inginkan.

Lirik Anda akan menggunakan bahasa yang Anda gunakan untuk menulis perintah. Anda juga dapat meminta lirik dalam bahasa lain, seperti "Tulis lirik dalam bahasa Prancis".

Menggunakan lirik Anda sendiri

Untuk memberikan lirik Anda sendiri kepada model, sertakan lirik tersebut dalam perintah dengan awalan "Lirik:":

Lyrics:

[Intro]
Oooh, oooh

[Verse 1]
Let's go
Let's go
Go with the flow

[Chorus]
...

Anda dapat menambahkan awalan pada bagian lagu dengan judul bagian seperti [Intro], [Verse 1], [Pre-chorus], [Chorus], dan [Outro].

Jika Anda ingin kata atau baris diulang, seperti gema atau oleh penyanyi latar, Anda dapat menyertakannya dalam tanda kurung: "Ayo (ayo)".

Mengarahkan model untuk menulis lirik

Jika Anda ingin Lyria 3.5 membuat lirik untuk Anda, sebaiknya sertakan detail tentang isi lirik tersebut dalam perintah Anda. Jika tidak, model perlu menyimpulkan subjek dari perintah musik Anda, dan mungkin tidak sesuai dengan yang Anda inginkan.

Liriknya bercerita tentang cinta yang hilang dan rasa sakit akibat patah hati. Penyanyi ini mengenang hubungan masa lalunya dan kenangan yang kembali muncul.

Jika Anda ingin chorus yang berulang, sebaiknya minta chorus tersebut dalam perintah Anda:

Liriknya bercerita tentang cinta yang hilang dan rasa sakit akibat patah hati. Penyanyi ini mengenang hubungan masa lalunya dan kenangan yang kembali muncul. Bagian chorus yang kuat berfokus pada mengatasi rasa sakit dan melanjutkan hidup.

Lyria 3.5 akan otomatis mengarahkan struktur lirik ke jenis musik yang Anda minta, tetapi Anda juga dapat menekankan kembali hal ini dalam perintah Anda. Contoh:

Lagu EDM yang mengulang frasa energik yang sama berulang kali.

Anda juga dapat meminta efek vokal yang tidak sepenuhnya lirik, misalnya:

  • Sampel berulang dari sebuah film mengatakan "Saya tidak percaya ini!" di sepanjang lagu
  • Lagu techno yang penuh energi, tepat sebelum drop, semua suara berhenti dan suara kecil berkata "Aku tidak tahu apa yang kulakukan di sini", lalu musiknya drop.
  • Lagu ini diawali dengan percakapan tentang film tahun 90-an yang lebih bagus daripada film saat ini. Kemudian, lagu tersebut beralih ke lagu pop.

Vokal

Anda dapat memberikan perintah tentang cara lirik akan disampaikan. Untuk hasil terbaik, tentukan profil penyanyi yang mendetail yang mencakup gender, timbre, dan rentang vokal.

  • Sopran Wanita: Timbre yang jernih dan seperti kristal dengan kualitas yang lincah dan tinggi. Mampu mencapai nada tinggi yang berdesir dengan tekstur ringan dan berhembus.
  • Alto Perempuan: Rentang bawah yang kaya, hangat, dan serak. Timbre berasap dengan sentuhan vocal fry, penuh jiwa dan beresonansi.
  • Tenor Pria: Cerah, tajam, dan penuh semangat. Timbre muda dengan sedikit sentuhan sengau, menembus campuran dengan kekuatan belting yang tinggi.
  • Bariton Pria: Dalam, seperti cokelat, dan selembut beludru. Suara dada yang beresonansi dengan penyampaian yang menenangkan dan mendayu-dayu.
  • Weathered Rocker (Pria): Serak dan bertekstur dengan timbre berpasir, mengingatkan pada grunge era 90-an. Rentang atas yang tegang untuk intensitas emosional.

Parameter perintah lainnya

Anda juga dapat menyertakan parameter ini untuk lebih menyempurnakan perintah Anda:

  • BPM: Setel tempo (misalnya, "120 BPM", "tempo lambat sekitar 70 BPM").
  • Nada Dasar/Skala: Tentukan nada dasar musik (misalnya, "dalam G mayor", "D minor").
  • Suasana dan nuansa: Gunakan kata sifat deskriptif (misalnya, "nostalgia", "agresif", "indah", "melamun").
  • Durasi: Model Klip selalu menghasilkan klip berdurasi 30 detik. Untuk model Pro, tentukan durasi yang diinginkan dalam perintah Anda (misalnya, "buat lagu berdurasi 2 menit") atau gunakan stempel waktu untuk mengontrol durasi.

Contoh perintah

Berikut beberapa contoh perintah yang efektif:

  • "A 30-second lofi hip hop beat with dusty vinyl crackle, mellow Rhodes piano chords, a slow boom-bap drum pattern at 85 BPM, and a jazzy upright bass line. Instrumental only."
  • "An upbeat, feel-good pop song in G major at 120 BPM with bright acoustic guitar strumming, claps, and warm vocal harmonies about a summer road trip."
  • "A dark, atmospheric trap beat at 140 BPM with heavy 808 bass, eerie synth pads, sharp hi-hats, and a haunting vocal sample. In D minor."

Praktik terbaik

  • Lakukan iterasi dengan Klip terlebih dahulu. Gunakan model lyria-3-clip-preview yang lebih cepat untuk bereksperimen dengan perintah sebelum melakukan pembuatan panjang penuh dengan lyria-3.5.
  • Jadilah spesifik. Perintah yang tidak jelas akan menghasilkan hasil yang umum. Sebutkan instrumen, BPM, nada dasar, mood, dan struktur untuk output terbaik.
  • Cocokkan bahasa Anda. Berikan perintah dalam bahasa yang Anda inginkan untuk liriknya.
  • Gunakan tag bagian. Tag [Verse], [Chorus], [Bridge] memberikan struktur yang jelas untuk diikuti model.
  • Pisahkan lirik dari petunjuk. Saat memberikan lirik kustom, pisahkan dengan jelas dari petunjuk arahan musik Anda.

Batasan

  • Keamanan (Safety): Semua perintah diperiksa oleh filter keamanan. Perintah yang memicu filter akan diblokir. Hal ini mencakup perintah yang meminta suara artis tertentu atau pembuatan lirik yang dilindungi hak cipta.
  • Pemberian watermark: Semua audio yang dihasilkan menyertakan watermark audio SynthID untuk identifikasi. Watermark ini tidak dapat didengar oleh telinga manusia dan tidak memengaruhi pengalaman mendengarkan.
  • Pengeditan berkelanjutan: Pembuatan musik adalah proses sekali putaran. Pengeditan atau penyempurnaan klip yang dihasilkan secara berulang melalui beberapa perintah tidak didukung di Lyria 3.5 versi saat ini.
  • Panjang: Model Klip selalu menghasilkan klip berdurasi 30 detik. Model Pro membuat lagu berdurasi beberapa menit; durasi yang tepat dapat dipengaruhi melalui perintah Anda.
  • Determinisme: Hasil dapat bervariasi antar-panggilan, bahkan dengan perintah yang sama.

Langkah berikutnya