Skip to content

[Enhancement] Add Audio Intelligence parameter support for pre-recorded transcription #60

Description

@deepgram-robot

Summary

Add support for Audio Intelligence features (sentiment analysis, topic detection, intent recognition, summarization, entity detection) as parameters on pre-recorded transcription requests in the Java SDK.

Problem it solves

Developers using the Java SDK for batch audio processing — such as call center analytics, podcast analysis, and compliance monitoring — need to extract structured intelligence from transcriptions without making separate API calls. The Deepgram API supports these features as query parameters on the /listen endpoint, but the Java SDK (launched as v0.1.0) may not expose all Audio Intelligence parameters or provide typed response models for the enriched output.

Proposed API

// Pre-recorded transcription with Audio Intelligence
PreRecordedTranscriptionOptions options = PreRecordedTranscriptionOptions.builder()
    .model("nova-3")
    .smartFormat(true)
    .sentiment(true)
    .topics(true)
    .intents(true)
    .summarize("v2")
    .detectEntities(true)
    .build();

PreRecordedTranscriptionResponse response = client.listen()
    .preRecorded()
    .transcribeUrl(audioUrl, options);

// Access typed Audio Intelligence results
List<SentimentSegment> sentiments = response.getResults()
    .getSentiments().getSegments();

List<TopicSegment> topics = response.getResults()
    .getTopics().getSegments();

String summary = response.getResults()
    .getSummary().getShort();

Acceptance criteria

  • All Audio Intelligence parameters supported: sentiment, topics, intents, summarize, detect_entities
  • Typed response models for each Audio Intelligence feature (SentimentSegment, TopicSegment, IntentSegment, Entity, Summary)
  • Works with both URL and file upload transcription methods
  • Documented with usage example in README
  • Compatible with existing API

Raised by the DX intelligence system.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions