api/soundcloud: add more metadata support

This commit is contained in:
nexpid 2025-06-02 22:51:11 +02:00
parent 19c036494f
commit 55bcc66cda
No known key found for this signature in database
GPG Key ID: CF60FCAF668E3F3F
4 changed files with 27 additions and 10 deletions

View File

@ -113,9 +113,17 @@ export default async function(obj) {
if (!file) return { error: "fetch.empty" };
const title = json.title.trim();
const artist = json.user.username.trim();
const fileMetadata = {
title: json.title.trim(),
artist: json.user.username.trim(),
title,
album: json.publisher_metadata.album_title?.trim() ?? title,
artist,
album_artist: artist,
composer: json.publisher_metadata.writer_composer?.trim(),
genre: json.genre.trim(),
date: json.display_date.slice(0, 4),
copyright: json.license.trim(),
}
return {

View File

@ -17,9 +17,12 @@ const ffmpegArgs = {
const metadataTags = [
"album",
"composer",
"genre",
"copyright",
"title",
"artist",
"album_artist",
"track",
"date",
];

View File

@ -129,14 +129,17 @@ the response will always be a JSON object containing the `status` key, which is
#### output.metadata object
all keys in this table are optional.
| key | type | description |
|:------------|:---------|:-------------------------------------------|
| `album` | `string` | album name or collection title |
| `copyright` | `string` | copyright information or ownership details |
| `title` | `string` | title of the track or media file |
| `artist` | `string` | artist or creator name |
| `track` | `string` | track number or position in album |
| `date` | `string` | release date or creation date |
| key | type | description |
|:---------------|:---------|:-------------------------------------------|
| `album` | `string` | album name or collection title |
| `composer` | `string` | composter of the track |
| `genre` | `string` | genre or genres of the track |
| `copyright` | `string` | copyright information or ownership details |
| `title` | `string` | title of the track or media file |
| `artist` | `string` | artist or creator name |
| `album_artist` | `string` | artist or creator name of the album |
| `track` | `string` | track number or position in album |
| `date` | `string` | release year or creation year |
#### audio object
| key | type | value |

View File

@ -45,9 +45,12 @@ type CobaltTunnelResponse = {
export const CobaltFileMetadataKeys = [
'album',
'composer',
'genre',
'copyright',
'title',
'artist',
'album_artist',
'track',
'date'
];