Skip to content
Snippets Groups Projects
Commit fd175118 authored by Chris Pastl's avatar Chris Pastl
Browse files

Merge branch 'datatype-trackduration-51' into 'main'

Change datatype for trackduration

See merge request !9
parents 40e7c863 2d4646b4
No related branches found
No related tags found
1 merge request!9Change datatype for trackduration
Pipeline #7132 passed
......@@ -39,6 +39,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Configuration: Renamed environment variable `AURA_ENGINE_SERVER_TIMEOUT` to `AURA_ENGINE_SERVER_TIMEOUT`
and configuration setting `telnet_server_timeout` to `server_timeout`.
- Configuration: Increase default value for `server_timeout`, to avoid malfunctions when idle (aura#165)
- Use datatype float instead of int for `trackDuration` (#51)
### Fixed
......
......@@ -98,7 +98,7 @@ def build_metadata(json_string) =
playlist_item: string,
track_type: int,
track_start: string?,
track_duration: int?,
track_duration: float?,
track_title: string?,
track_album: string?,
track_artist: string?
......@@ -123,13 +123,13 @@ end
# b.) as a fallback from the meta field "track_duration"
#
# Returns
# (int) duration in seconds
# (float) duration in seconds
def get_meta_track_duration(meta) =
track_duration = int_of_float(request.duration(meta["filename"]))
if track_duration != -1 then
track_duration = request.duration(meta["filename"])
if track_duration != -1.0 then
track_duration
else
int_of_string(meta["track_duration"])
float_of_string(meta["track_duration"])
end
end
......@@ -143,7 +143,7 @@ def post_playlog(api_url, data) =
json_data.add("playlistId", int_of_string(list.assoc("playlist_id", data)))
json_data.add("trackType", int_of_string(list.assoc("track_type", data)))
json_data.add("trackStart", list.assoc("track_start", data))
json_data.add("trackDuration", int_of_string(list.assoc("track_duration", data)))
json_data.add("trackDuration", float_of_string(list.assoc("track_duration", data)))
json_data.add("trackTitle", list.assoc("track_title", data))
json_data.add("trackAlbum", list.assoc("track_album", data))
json_data.add("trackArtist", list.assoc("track_artist", data))
......
......@@ -33,7 +33,7 @@ usage_set_track_metadata = "set_track_metadata { \
\"playlist_item\": \"\", \
\"track_type\": 2, \
\"track_start\": \"2022/02/22 22:02:22\", \
\"track_duration\": 808, \
\"track_duration\": 808.8, \
\"track_title\": \"Lorem Ipsum\", \
\"track_album\": \"\", \
\"track_artist\": \"\" \
......
......@@ -91,7 +91,7 @@ usage_set_track_metadata = "set_track_metadata { \
\"playlist_item\": \"\", \
\"track_type\": 1, \
\"track_start\": \"2022/02/22 22:02:22\", \
\"track_duration\": 303, \
\"track_duration\": 303.3, \
\"track_title\": \"Bar\", \
\"track_album\": \"\", \
\"track_artist\": \"Foo\" \
......
......@@ -30,7 +30,7 @@ json_string = "{ \
\"playlist_item\": \"\", \
\"track_type\": 0, \
\"track_start\": \"2022/02/22 22:02:22\", \
\"track_duration\": 303, \
\"track_duration\": 303.3, \
\"track_title\": \"FooBar 2000\", \
\"track_album\": \"\", \
\"track_artist\": \"\" \
......
......@@ -23,18 +23,18 @@ settings.frame.audio.samplerate.set(44100)
%include "../src/functions.liq"
# Read duration from metadata field => 808
metadata = [( "track_duration", "808" )]
# Read duration from metadata field => 808.8
metadata = [( "track_duration", "808.8" )]
duration = get_meta_track_duration(metadata)
print("Track duration in meta 'track_duration': #{duration}")
assertEquals(duration, 808)
assertEquals(duration, 808.8)
# Read duration from file => 207
# Read duration from file => 207.0
input_fs = single(id="fs", "assets/audio.mp3")
def process(metadata) =
duration = get_meta_track_duration(metadata)
print("Track duration on file: #{duration}")
assertEquals(duration, 207)
assertEquals(duration, 207.0)
shutdown(code=0)
end
input_fs.on_metadata(process)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment