From b557bf68e623ec22727fbb9ae879c7080a262c63 Mon Sep 17 00:00:00 2001 From: Jacob Casper Date: Tue, 3 May 2022 12:40:29 -0500 Subject: [PATCH] document current most important todo for jellyfin streaming HLS + jellyfin still transcode when the container is piped via ssh like this. I attempted to use mkclean(8) and mkvalidator(8) from Matroska streaming project but they did not fix anything. Using ffmpeg and skipping any additional muxing allows for the hard work to be done on a beefier machine, and a quick 150-200x repacking to be done on the weaker headless box. --- hevc-pipeline.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/hevc-pipeline.sh b/hevc-pipeline.sh index a6cc09a..4508e7a 100755 --- a/hevc-pipeline.sh +++ b/hevc-pipeline.sh @@ -23,3 +23,8 @@ printf '%s\0' "${hevc_films[@]}" | xargs -0 -P 1 -I@ bash -c 'ssh mbp '"'"'cat " -f matroska \ - | \ ssh mbp '"'"'cat > "@".new'"'"'' +# TODO this cat generates an .mkv container with invalid timestamps or something else Jellyfin + HLS +# can't understand. Requires reconstruction on the other side. +# it's often re-encoded at >150x speed so it's not important, but maybe it should be piped to ffmpeg +# on the other system automatically. +# ffmpeg -i $out.mkv.new -map 0 -vcodec copy -acodec copy $out.mkv.new.mkv -- 2.20.1