3
3
import com .assemblyai .api .AssemblyAI ;
4
4
import com .assemblyai .api .RealtimeTranscriber ;
5
5
import com .assemblyai .api .resources .files .types .UploadedFile ;
6
- import com .assemblyai .api .resources .transcripts .requests .TranscriptParams ;
7
- import com .assemblyai .api .resources .transcripts .requests .WordSearchParams ;
8
- import com .assemblyai .api .resources .transcripts .types .ParagraphsResponse ;
9
- import com .assemblyai .api .resources .transcripts .types .SentencesResponse ;
10
- import com .assemblyai .api .resources .transcripts .types .SubtitleFormat ;
11
- import com .assemblyai .api .resources .transcripts .types .Transcript ;
12
- import com .assemblyai .api .resources .transcripts .types .TranscriptList ;
13
- import com .assemblyai .api .resources .transcripts .types .WordSearchResponse ;
6
+ import com .assemblyai .api .resources .lemur .requests .LemurTaskParams ;
7
+ import com .assemblyai .api .resources .lemur .types .LemurTaskResponse ;
8
+ import com .assemblyai .api .resources .transcripts .requests .*;
9
+ import com .assemblyai .api .resources .transcripts .types .*;
14
10
import java .io .File ;
15
11
import java .io .FileInputStream ;
16
12
import java .io .IOException ;
17
13
import java .nio .file .Files ;
14
+ import java .util .List ;
18
15
19
16
public final class App {
20
17
21
18
public static void main (String ... args ) throws IOException {
22
- AssemblyAI aai = AssemblyAI .builder ()
19
+ AssemblyAI client = AssemblyAI .builder ()
23
20
.apiKey (System .getenv ("ASSEMBLYAI_API_KEY" ))
24
21
.build ();
25
22
26
- Transcript transcript =
27
- aai .transcripts ().transcribe ("https://storage.googleapis.com/aai-docs-samples/nbc.mp3" );
28
- System .out .println (transcript );
23
+ Transcript transcript = client .transcripts ().transcribe (
24
+ "https://storage.googleapis.com/client-docs-samples/nbc.mp3" ,
25
+ TranscriptOptionalParams .builder ()
26
+ .sentimentAnalysis (true )
27
+ .build ()
28
+ );
29
+
30
+ for (SentimentAnalysisResult result : transcript .getSentimentAnalysisResults ().get ())
31
+ {
32
+ System .out .println ("Text: " + result .getText ());
33
+ System .out .println ("Sentiment: " + result .getSentiment ());
34
+ System .out .println ("Confidence: " + result .getConfidence ());
35
+ System .out .printf ("Timestamp: %s - %s" , result .getStart (), result .getEnd ());
36
+ }
29
37
30
- SentencesResponse sentences = aai .transcripts ().getSentences (transcript .getId ());
38
+ SentencesResponse sentences = client .transcripts ().getSentences (transcript .getId ());
31
39
System .out .println ("Get transcript sentences. " + sentences );
32
40
33
- ParagraphsResponse paragraphs = aai .transcripts ().getParagraphs (transcript .getId ());
41
+ ParagraphsResponse paragraphs = client .transcripts ().getParagraphs (transcript .getId ());
34
42
System .out .println ("Get transcript paragraphs. " + paragraphs );
35
43
36
- String srt = aai .transcripts ().getSubtitles (transcript .getId (), SubtitleFormat .SRT );
44
+ String srt = client .transcripts ().getSubtitles (transcript .getId (), SubtitleFormat .SRT );
37
45
System .out .println ("Get transcript srt. " + srt );
38
46
39
- String vtt = aai .transcripts ().getSubtitles (transcript .getId (), SubtitleFormat .VTT );
47
+ String vtt = client .transcripts ().getSubtitles (transcript .getId (), SubtitleFormat .VTT );
40
48
System .out .println ("Get transcript vtt. " + vtt );
41
49
42
- WordSearchResponse search = aai .transcripts ().wordSearch (transcript .getId (), WordSearchParams .builder ()
50
+ WordSearchResponse search = client .transcripts ().wordSearch (transcript .getId (), WordSearchParams .builder ()
43
51
.words ("NBC" )
44
52
.build ());
45
53
System .out .println ("Search transcript. " + search );
46
54
47
- transcript = aai .transcripts ().delete (transcript .getId ());
55
+ transcript = client .transcripts ().delete (transcript .getId ());
48
56
System .out .println ("Delete transcript. " + transcript );
49
57
50
58
File file = new File ("sample-app/src/main/resources/nZP7pb_t4oA.mp3" );
51
- UploadedFile uploadedFile = aai .files ().upload (Files .readAllBytes (file .toPath ()));
59
+ UploadedFile uploadedFile = client .files ().upload (Files .readAllBytes (file .toPath ()));
52
60
System .out .println ("Uploaded file" + uploadedFile );
53
61
54
- transcript = aai .transcripts ().submit (TranscriptParams .builder ()
55
- .audioUrl ("https://storage.googleapis.com/aai -docs-samples/nbc.mp3" )
62
+ transcript = client .transcripts ().submit (TranscriptParams .builder ()
63
+ .audioUrl ("https://storage.googleapis.com/client -docs-samples/nbc.mp3" )
56
64
.build ());
57
65
System .out .println ("Created transcript " + transcript );
58
66
59
- transcript = aai .transcripts ().get (transcript .getId ());
67
+ transcript = client .transcripts ().get (transcript .getId ());
60
68
System .out .println ("Got transcript. " + transcript );
61
69
62
- TranscriptList transcripts = aai .transcripts ().list ();
70
+ TranscriptList transcripts = client .transcripts ().list ();
63
71
System .out .println ("List transcript. " + transcripts );
64
72
73
+ LemurTaskResponse response = client .lemur ().task (LemurTaskParams .builder ()
74
+ .prompt ("Summarize this transcript." )
75
+ .transcriptIds (List .of (transcript .getId ()))
76
+ .build ());
77
+
78
+ System .out .println ("Summary: " + response .getResponse ());
79
+
65
80
RealtimeTranscriber realtimeTranscriber = RealtimeTranscriber .builder ()
81
+ .apiKey (System .getenv ("ASSEMBLYAI_API_KEY" ))
66
82
.onSessionStart (System .out ::println )
67
- .apiKey (System .getenv ("ASSEMBLY_AI_API_KEY" ))
68
83
.onPartialTranscript (System .out ::println )
69
84
.onFinalTranscript (System .out ::println )
70
85
.onError ((err ) -> System .out .println (err .getMessage ()))
@@ -81,8 +96,9 @@ public static void streamFile(String filePath, RealtimeTranscriber realtimeTrans
81
96
82
97
while (fileInputStream .read (buffer ) != -1 ) {
83
98
realtimeTranscriber .sendAudio (buffer );
99
+ Thread .sleep (300 );
84
100
}
85
- } catch (IOException e ) {
101
+ } catch (IOException | InterruptedException e ) {
86
102
e .printStackTrace ();
87
103
}
88
104
}
0 commit comments