使用soundcloud api将歌曲/音频文件上传到特定的soundcloud帐户?

时间:2019-05-21 19:08:58

标签: javascript php api sdk soundcloud

我正在处理如下所示的php代码,它将 mp4文件(位于in_folder中)转换为 mp3(并将其发送到out_folder中)

<?php
foreach ($mp4_files as $f)
{

    $parts = pathinfo($f);
    switch ($parts['extension'])
    {
        case 'mp4' :
            $filePath = $src_dir . DS . $f;
            system('ffmpeg -i ' . $filePath . ' -map 0:2 -ac 1 ' . $destination . DS . $parts['filename'] . '.mp3', $result);

            break;

        case 'mp3' :
            // copy($f, $destination. DS . $parts['filename']. '.' . $parts['extension']);
            copy($f, $mp3_processed . DS . $parts['filename'] . '.mp3');
            copy($f, $destination . DS . $parts['filename'] . '.mp3');
            break;
    }
}
?>


<script src="https://connect.soundcloud.com/sdk/sdk-3.3.2.js"></script>
<script>
SC.initialize({
  client_id: 'YOUR_CLIENT_ID',
  redirect_uri: 'http://example.com/callback'
});

var getTracks = function() { return SC.get('/me/tracks'); };

// connect and update track data
SC.connect().then(getTracks).then(function(tracks){
  SC.put('/tracks' + tracks[0].id, {
    track: {
      description: 'This track was recorded in Berlin',
      genre: 'Electronic'
    }
  });
});
</script>

下一步是将 mp3文件(位于out_folder中)上传到特定的soundcloud帐户。我从 soundcloud开发人员指南添加了一些脚本(PHP代码已完成)作为第一步,以便上传歌曲 从歌曲目录到soundcloud。

问题陈述:

我想知道我应该对上面的脚本代码进行哪些更改,以便我们可以将歌曲/音频文件从 out_folder目录上传到任何特定的soundcloud帐户。任何指针 将不胜感激。

1 个答案:

答案 0 :(得分:0)

使用copy()写入文件后,应该可以执行以下操作:

$blob=file_get_contents($destination . DS . $parts['filename'] . '.mp3');
$title='THE_TITLE';
echo "
<script>
var aFileParts = ['$blob']; // an array with binary data  
var audioBlob = new Blob(aFileParts, {type : 'audio/mpeg'}); 

SC.upload({
  file: audioBlob , // a Blob of your WAV, MP3...
  title: '$title'
});
</script>
";

当然,您可能需要转义$ blob