Fix reprocess for audio originals

This commit is contained in:
Carl Pearson
2024-09-23 05:35:13 -06:00
parent b90e105828
commit de5f1fe1de
2 changed files with 12 additions and 6 deletions

View File

@@ -836,9 +836,9 @@ func deleteOriginalVideos(originalID int) {
db.Delete(&Video{}, "original_id = ? AND source = ?", originalID, "original") db.Delete(&Video{}, "original_id = ? AND source = ?", originalID, "original")
} }
func deleteAudios(originalID int) { func deleteAudiosWithSource(originalID int, source string) {
var audios []Audio var audios []Audio
db.Where("original_id = ?", originalID).Find(&audios) db.Where("original_id = ?", originalID).Where("source = ?", source).Find(&audios)
for _, audio := range audios { for _, audio := range audios {
path := filepath.Join(getDataDir(), audio.Filename) path := filepath.Join(getDataDir(), audio.Filename)
log.Debugln("remove audio", path) log.Debugln("remove audio", path)
@@ -847,7 +847,7 @@ func deleteAudios(originalID int) {
log.Errorln("error removing", path, err) log.Errorln("error removing", path, err)
} }
} }
db.Delete(&Audio{}, "original_id = ?", originalID) db.Delete(&Audio{}, "original_id = ? AND source = ?", originalID, source)
} }
func videoDeleteHandler(c echo.Context) error { func videoDeleteHandler(c echo.Context) error {
@@ -860,7 +860,8 @@ func videoDeleteHandler(c echo.Context) error {
deleteTranscodes(id) deleteTranscodes(id)
deleteTranscodedVideos(id) deleteTranscodedVideos(id)
deleteOriginalVideos(id) deleteOriginalVideos(id)
deleteAudios(id) deleteAudiosWithSource(id, "original")
deleteAudiosWithSource(id, "transcode")
db.Delete(&orig) db.Delete(&orig)
return c.Redirect(http.StatusSeeOther, "/videos") return c.Redirect(http.StatusSeeOther, "/videos")
@@ -881,7 +882,7 @@ func processHandler(c echo.Context) error {
id, _ := strconv.Atoi(c.Param("id")) // FIXME: strconv.ParseUint? id, _ := strconv.Atoi(c.Param("id")) // FIXME: strconv.ParseUint?
deleteTranscodes(id) deleteTranscodes(id)
deleteAudios(id) deleteAudiosWithSource(id, "transcode")
deleteTranscodedVideos(id) deleteTranscodedVideos(id)
err := SetOriginalStatus(uint(id), DownloadCompleted) err := SetOriginalStatus(uint(id), DownloadCompleted)

View File

@@ -132,7 +132,11 @@ func videoToAudio(transID uint, kbps uint, videoFilepath string) {
db.First(&orig, "id = ?", trans.OriginalID) db.First(&orig, "id = ?", trans.OriginalID)
// create audio record // create audio record
audio := Audio{OriginalID: orig.ID, Filename: audioFilename, Bps: kbps * 1000} audio := Audio{OriginalID: orig.ID,
Filename: audioFilename,
Bps: kbps * 1000,
Source: "transcode",
}
fileSize, err := getSize(audioFilepath) fileSize, err := getSize(audioFilepath)
if err == nil { if err == nil {
@@ -190,6 +194,7 @@ func audioToAudio(transID uint, kbps uint, srcFilepath string) {
OriginalID: orig.ID, OriginalID: orig.ID,
Filename: dstFilename, Filename: dstFilename,
Bps: kbps * 1000, Bps: kbps * 1000,
Source: "transcode",
} }
fileSize, err := getSize(dstFilepath) fileSize, err := getSize(dstFilepath)