Can someone explain exactly transcoding works in Subsonic?

General discussions.

Moderator: moderators

Can someone explain exactly transcoding works in Subsonic?

Postby blargg » Fri Dec 16, 2016 6:52 am

Hello

I'm new to this community and the Subsonic platform, I did a little digging on the forum to see if this specific concern had been addressed but I didn't find anything.

Total noob question here but I'm wondering if someone can overview the technical aspects of transcoding in Subsonic and how it works.

A little background...

I have a large collection of music in FLAC and MP3 formats, and my Subsonic server is installed on my personal PC (Windows), with Subsonic reading the music files from a well-organized 5TB external hard drive.

I have an iPhone, and my iPhone uses the app play:Sub to access the Subsonic server, when I'm on a remote network, I access the Subsonic server via a VPN, and I've instructed the play:Sub app to transcode FLAC files while on cellular data, and to download the original FLAC file while connected via WiFi.

So herein lies my question:

Currently, I have flac.exe and lame.exe in C:\subsonic\transcode. In my transcoding settings I have the following configuration, which is enabled for all players on all users.

Name: mp3 flac
Convert from: flac
Convert to: mp3
Step 1: flac --silent --decode --stdout %s
Step 2: lame --silent -h -b %b -

From what I understand these transcoding settings send my FLAC files through the flac.exe program which sends the output directly in to the lame.exe program to transcode the FLAC file into a lossy MP3 file, at the bitrate which is specified by the Data limit that the player chooses (in this case, play:Sub).

Now this set-up works pretty dang well, but here's where I would like some clarification:

Is this process destructive to my original FLAC files in any way? It doesn't appear to actually modify the files, but I do NOT want the original FLAC files to be rendered in to MP3 files or turned into a "mutt file" (basically a FLAC->mp3->FLAC transcode). I'm operating on the assumption that it leaves the original file totally intact but I don't really understand what exactly Subsonic is doing when it's transcoding, and I want an explanation to satisfy my paranoia...

Is the transcoded file transcoded in and streamed in real-time by Subsonic, then stored in the player's cache, until it's later updated to the original file (if this is requested by the client)?
Is the transcoded file stored somewhere locally on the PC that hosts the Subsonic server?

The Subsonic log file doesn't really answer my question, and I assume that the former is true, and that the latter is not, but I would greatly appreciate someone giving me a basic explanation of how this works.
blargg
 
Posts: 2
Joined: Fri Dec 16, 2016 6:37 am

Re: Can someone explain exactly transcoding works in Subsoni

Postby blargg » Fri Dec 16, 2016 7:28 am

Doing a little investigative research myself based on my understanding of audio I came to the conclusion that the files aren't modified in any way, but I'd still like a technical explanation of how the transcoding with Subsonic works for my own curiosity.

Below is the spectral analysis of the Gorillaz "Rhinestone Eyes" from a Hi quality FLAC file ripped from a CD, notice how the frequency spectrum extends above 20 KHz, which is what tells me that this is indeed a lossless file and not a "mutt file" or "mutt rip"

Image

To test, I listened to the file on my play:Sub app, which transcoded the file to a 192 KBPS MP3 and re-analyzed the frequency spectrum of the same file after the song played out, and it looked the same as above.

As a control, I transcoded the actual file to a 192 KBPS MP3 file using dBpoweramp. You can see very clearly how the frequency spectrum changes due to the lossy compression of the original file:

Image

In short, the original files don't appear to be modified in any manner by Subsonic, which is good, but I still would like to know how this works!
blargg
 
Posts: 2
Joined: Fri Dec 16, 2016 6:37 am

Re: Can someone explain exactly transcoding works in Subsoni

Postby toolman » Fri Dec 16, 2016 12:48 pm

There's no need to worry.
Subsonic doesn't alter your media files in any way except if you're using the "Edit Tags" option in Subsonic.
To explain transcoding in the most simple way:
Subsonic reads your flac-file. Next it creates a temporary mp3-file from your flac-file and streams it. When the streaming is done Subsonic deletes the temporary mp3-file.
So there's no messing with your flac-files.
If you want to be absolutely very sure without a shadow of a doubt, you could change all your flac-files to read only-files and you'll see that subsonic still keeps transcoding them and streaming them.
The only downside of that would be that you are no longer able to edit tags from within Subsonic.
toolman
 
Posts: 538
Joined: Fri Dec 11, 2009 4:18 pm
Location: Netherlands


Return to General

Who is online

Users browsing this forum: No registered users and 17 guests