11#include " AudioClip.h"
22
33#include < QDir>
4+ #include < QFileInfo>
45
56#include < opendspx/audioclip.h>
67
@@ -66,9 +67,7 @@ namespace dspx {
6667 QDir (audioPathInfo.absoluteDir ).filePath (audioPathInfo.fileName ).toStdString (),
6768 };
6869 clip.workspace [" diffscope" ][" audio" ] = nlohmann::json::object ({
69- {" absoluteDir" , audioPathInfo.absoluteDir .toStdString ()},
7070 {" relativeDir" , audioPathInfo.relativeDir .toStdString ()},
71- {" fileName" , audioPathInfo.fileName .toStdString ()},
7271 {" formatEntryClassName" , audioPathInfo.formatEntryClassName .toStdString ()},
7372 {" userData" , encodeUserData (audioPathInfo.userData )},
7473 {" sha512" , audioPathInfo.sha512 .toStdString ()}
@@ -81,19 +80,19 @@ namespace dspx {
8180 control ()->fromOpenDspx (clip.control );
8281 time ()->fromOpenDspx (clip.time );
8382 workspace ()->fromOpenDspx (clip.workspace );
83+ auto fileInfo = QFileInfo (QString::fromStdString (clip.path ));
8484 auto diffscopeWorkspace = clip.workspace .contains (" diffscope" ) ? JsonUtils::toQJsonValue (clip.workspace .at (" diffscope" )).toObject () : QJsonObject ();
8585 if (diffscopeWorkspace.contains (" audio" )) {
8686 auto audio = diffscopeWorkspace[" audio" ].toObject ();
8787 setPath ({
88- .absoluteDir = audio[ " absoluteDir " ]. toString (),
88+ .absoluteDir = fileInfo. absolutePath (),
8989 .relativeDir = audio[" relativeDir" ].toString (),
90- .fileName = audio[ " fileName " ]. toString (),
90+ .fileName = fileInfo. fileName (),
9191 .formatEntryClassName = audio[" formatEntryClassName" ].toString (),
9292 .userData = decodeUserData (audio[" userData" ].toString ().toUtf8 ()),
9393 .sha512 = audio[" sha512" ].toString ()
9494 });
9595 } else {
96- auto fileInfo = QFileInfo (QString::fromStdString (clip.path ));
9796 setPath ({
9897 .absoluteDir = fileInfo.absolutePath (),
9998 .relativeDir = {},
0 commit comments