m1k1o / go-transcode

On-demand transcoding origin server for live inputs and static files in Go using ffmpeg. Also with NVIDIA GPU hardware acceleration.
Apache License 2.0
224 stars 39 forks source link

VOD transcoding: Video is smooth, audio may have clicks at segments? #56

Open stevyn81 opened 4 months ago

stevyn81 commented 4 months ago

Hello,

I have been enjoying setting up and testing the impressive go-transcode software. I am testing the VOD feature with a .MP4 file transcoding down to a smaller size and the video looks smooth and great, but with headphones on and listening very carefully I can sometimes hear a click. Monitoring with the browser "inspect" I see the click matches with the segment transition.

I am hesitant to post this as perhaps it is my computer having trouble. I have tested with the video-keyframes: false or true and seems to happen either way.

If I stream the .mp4 as a normal static file, no transcoding, the video + audio is smooth.

Searching online I find a few others researching the audio click issues.. example: https://stackoverflow.com/questions/58898638/precise-method-of-segmenting-transcoding-videoaudio-via-ffmpeg-into-an-on

Can anyone confirm this audio issue or is it just me? Thanks much for your work!

m1k1o commented 4 months ago

From: https://stackoverflow.com/questions/58898638/precise-method-of-segmenting-transcoding-videoaudio-via-ffmpeg-into-an-on

I think this may be an issue with splitting using time in ffmpeg, where possibly the audio stream cannot be accurately sliced at the exact frame the video is.

This points again to the old known issue that was believed to be fixed but resurfaces again https://github.com/m1k1o/go-transcode/issues/38

So far, I've been unable to figure out a solution to this problem.

stevyn81 commented 1 week ago

Hello, I have been looking at the transcoder code in a "plex like alternative" project called Kyoo, and it appears they are transcoding the audio separately from the video and then serve up both. https://github.com/zoriya/Kyoo/tree/master/transcoder