[music] use double quotes instead of single quotes in ffmpeg

This commit is contained in:
aliveoutside
2022-09-17 20:23:46 +03:00
parent 6be6b5c714
commit 9763f54bf5
2 changed files with 10 additions and 7 deletions
@@ -1,5 +1,7 @@
package ru.vtosters.lite.music;
import android.util.Log;
import com.vk.dto.music.MusicTrack;
import java.io.File;
@@ -58,7 +60,8 @@ public class M3UDownloader implements ITrackDownloader {
var tsesDir = new File(outDir, String.valueOf(payload.hashCode()));
tsesDir.mkdirs();
var resultTs = new File(tsesDir, "result.ts");
var resultMp3 = new File(outDir, IOUtils.getValidFileName(cache ? LibVKXClient.asId(track) : track.toString()) + ".mp3");
var fileName = IOUtils.getValidFileName(cache ? LibVKXClient.asId(track) : track.toString() + ".mp3");
var resultMp3 = new File(outDir, fileName);
callback.onProgress(5);
for (TransportStream ts : tses) {
@@ -30,25 +30,25 @@ public class FFMpeg {
// convert .ts file to .mp3 file via ffmpeg
var sb = new StringBuilder();
sb.append("-y -i '").append(in.getAbsolutePath()).append("'");
sb.append("-y -i \"").append(in.getAbsolutePath()).append("\"");
sb.append(" -map 0 -dn ");
sb.append(" -loglevel error");
sb.append(" -hide_banner");
sb.append(" -write_id3v2 1");
if (track.f != null) {
sb.append(" -metadata title='").append(track.f).append("'");
sb.append(" -metadata title=\"").append(track.f).append("\"");
}
if (track.L != null) {
sb.append(" -metadata artist='").append(track.L.stream().map(Artist::w1).collect(Collectors.joining(", "))).append("'");
sb.append(" -metadata artist=\"").append(track.L.stream().map(Artist::w1).collect(Collectors.joining(", "))).append("\"");
} else if (track.C != null) {
sb.append(" -metadata artist='").append(track.C).append("'");
sb.append(" -metadata artist=\"").append(track.C).append("\"");
}
if (track.I != null) {
sb.append(" -metadata album='").append(track.I.getTitle()).append("'");
sb.append(" -metadata album=\"").append(track.I.getTitle()).append("\"");
}
sb.append(" -c copy '").append(out).append("'");
sb.append(" -c copy \"").append(out).append("\"");
var command = sb.toString();