Amazon fire stick 2. gen und HEVC Codec

Guten Abend zusammen,

mal eine Verständnisfrage. Ich habe einen 1080p Film (AVC) in HEVC umgewandelt. Dieser hat nun 10,4 GB Datenmenge. Der Amazon Stick soll meines Wissens nach HEVC abspielen. Warum transcodiert der Server nun wieder nach h264 und reizt den upload nur zu 1/5 aus?

In den Servereinstellungen habe ich das maximun des uploads (2,7 MBit) eingetragen.

Hat sich erledigt.

Da steht bei wiki aber etwas anderes…

In der FireStick Werbung steht steht allerdings:
Unterstützte Formate Video: H.264 1080p30H.265 1080p30,

Poste doch erst mal die Plex XML info der Datei.
Während du die XML info im Web Browser offen hast, ändere die URL so dass anstatt
&includeExtras=1
jetzt &includeBandwidths=1 drin steht. Dann drücke Enter.

(Du kannst gerne den Dateinamen und die Filmbeschreibung raus löschen)

hier der Auszug aus der xml (die “unwichtigen” Info habe ich mal gelöscht :stuck_out_tongue: ).

Der Chromecast hat nur einen sehr kleinen Netzwerkpuffer. Demzufolge kommt hier die größte ermittelte Bandbreite der Datei zu Tragen. Und das sind knapp 50MBit/s, allein fürs Video. (requiredBandwidths=)
(die 11,6 MBit/s ist lediglich die durchschnittliche Bandbreite der Datei - die lässt momentane Schwankungen komplett außer Acht.)
Außerdem ist ein PGS Untertitel ausgewählt, den der Chromecast mit Sicherheit nicht darstellen kann.

Ich bin mir ziemlich sicher, aus diesen beiden Gründen wird das Videobild transkodiert.

Wenn du das Plex Media Server.log anschaust, wird dir der Grund fürs Transkodieren in Klartext ausgechrieben. Suche dir die Zeitstempel vom Start der Wiedergabe und achte auf Zeilen die mit MDE: anfangen.
(setzt voraus, dass ‘Debug’ Logging aktiviert ist.)

@OttoKerner
chromecast?

Ich kann mir einiges zusammenreimen aber verstehen werde ich es ohne Hilfe nicht.

Jan 22, 2018 14:20:48.563 [0x7f8d50fff700] DEBUG - MDE: Selected protocol hls; container: mpegts
Jan 22, 2018 14:20:48.563 [0x7f8d50fff700] DEBUG - MDE: analyzing media item 325288
Jan 22, 2018 14:20:48.563 [0x7f8d50fff700] DEBUG - MDE: Baywatch (2017): Direct Play is disabled
Jan 22, 2018 14:20:48.563 [0x7f8d50fff700] DEBUG - MDE: Baywatch (2017): media must be transcoded in order to use the hls protocol
Jan 22, 2018 14:20:48.563 [0x7f8d50fff700] DEBUG - MDE: Baywatch (2017): no direct play video profile exists for http/mkv/hevc
Jan 22, 2018 14:20:48.563 [0x7f8d50fff700] DEBUG - MDE: Baywatch (2017): no direct play video profile exists for http/mkv/hevc/truehd
Jan 22, 2018 14:20:48.564 [0x7f8d50fff700] DEBUG - MDE: Baywatch (2017): selected media 0 / 325288
Jan 22, 2018 14:20:48.564 [0x7f8d50fff700] DEBUG - Streaming Resource: Changing decision parameters to fit bandwidth limit of 2000kbps
Jan 22, 2018 14:20:48.564 [0x7f8d50fff700] DEBUG - Codecs: testing h264_qsv (encoder)
Jan 22, 2018 14:20:48.565 [0x7f8d50fff700] DEBUG - Codecs: hardware transcoding: testing API qsv
Jan 22, 2018 14:20:48.565 [0x7f8d50fff700] ERROR - [FFMPEG] - No VA display found for device: .
Jan 22, 2018 14:20:48.565 [0x7f8d50fff700] DEBUG - Codecs: hardware transcoding: opening hw device failed - probably not supported by this system, error: Invalid argument
Jan 22, 2018 14:20:48.565 [0x7f8d50fff700] DEBUG - Codecs: testing h264_vaapi (encoder)
Jan 22, 2018 14:20:48.566 [0x7f8d50fff700] DEBUG - Codecs: hardware transcoding: testing API vaapi
Jan 22, 2018 14:20:48.566 [0x7f8d50fff700] ERROR - [FFMPEG] - No VA display found for device: /dev/dri/renderD128.
Jan 22, 2018 14:20:48.566 [0x7f8d50fff700] DEBUG - Codecs: hardware transcoding: opening hw device failed - probably not supported by this system, error: Invalid argument
Jan 22, 2018 14:20:48.566 [0x7f8d50fff700] DEBUG - Codecs: testing h264_nvenc (encoder)
Jan 22, 2018 14:20:48.567 [0x7f8d50fff700] ERROR - [FFMPEG] - Cannot load libcuda.so.1
Jan 22, 2018 14:20:48.567 [0x7f8d50fff700] WARN - avcodec_open2 returned -1313558101 for encoder ‘h264_nvenc’
Jan 22, 2018 14:20:48.567 [0x7f8d50fff700] DEBUG - Codecs: hardware transcoding: testing API vaapi
Jan 22, 2018 14:20:48.567 [0x7f8d50fff700] ERROR - [FFMPEG] - No VA display found for device: /dev/dri/renderD128.
Jan 22, 2018 14:20:48.567 [0x7f8d50fff700] DEBUG - Codecs: hardware transcoding: opening hw device failed - probably not supported by this system, error: Invalid argument
Jan 22, 2018 14:20:48.567 [0x7f8d50fff700] DEBUG - Scaled up video bitrate to 52492Kbps based on 4.500000x fudge factor.
Jan 22, 2018 14:20:48.568 [0x7f8d50fff700] DEBUG - MDE: Selected protocol hls; container: mpegts
Jan 22, 2018 14:20:48.568 [0x7f8d50fff700] DEBUG - MDE: analyzing media item 325288
Jan 22, 2018 14:20:48.568 [0x7f8d50fff700] DEBUG - MDE: Baywatch (2017): Direct Play is disabled
Jan 22, 2018 14:20:48.568 [0x7f8d50fff700] DEBUG - MDE: Baywatch (2017): media must be transcoded in order to use the hls protocol
Jan 22, 2018 14:20:48.568 [0x7f8d50fff700] DEBUG - MDE: Baywatch (2017): no direct play video profile exists for http/mkv/hevc
Jan 22, 2018 14:20:48.568 [0x7f8d50fff700] DEBUG - MDE: Baywatch (2017): no direct play video profile exists for http/mkv/hevc/truehd
Jan 22, 2018 14:20:48.568 [0x7f8d50fff700] DEBUG - MDE: Baywatch (2017): Direct Streaming is disabled, so video stream will be transcoded
Jan 22, 2018 14:20:48.568 [0x7f8d50fff700] DEBUG - MDE: Baywatch (2017): no remuxable profile found, so video stream will be transcoded
Jan 22, 2018 14:20:48.568 [0x7f8d50fff700] DEBUG - Codecs: testing h264_nvenc (encoder)
Jan 22, 2018 14:20:48.569 [0x7f8d50fff700] ERROR - [FFMPEG] - Cannot load libcuda.so.1
Jan 22, 2018 14:20:48.569 [0x7f8d50fff700] WARN - avcodec_open2 returned -1313558101 for encoder ‘h264_nvenc’
Jan 22, 2018 14:20:48.569 [0x7f8d50fff700] DEBUG - Codecs: hardware transcoding: testing API vaapi
Jan 22, 2018 14:20:48.569 [0x7f8d50fff700] ERROR - [FFMPEG] - No VA display found for device: /dev/dri/renderD128.
Jan 22, 2018 14:20:48.569 [0x7f8d50fff700] DEBUG - Codecs: hardware transcoding: opening hw device failed - probably not supported by this system, error: Invalid argument
Jan 22, 2018 14:20:48.569 [0x7f8d50fff700] DEBUG - Scaled up video bitrate to 52492Kbps based on 4.500000x fudge factor.
Jan 22, 2018 14:20:48.570 [0x7f8d50fff700] DEBUG - MDE: Baywatch (2017): Audio Direct Streaming is disabled, so video’s audio stream will be transcoded
Jan 22, 2018 14:20:48.570 [0x7f8d50fff700] DEBUG - MDE: Baywatch (2017): selected media 0 / 325288
Jan 22, 2018 14:20:48.570 [0x7f8d50fff700] DEBUG - Streaming Resource: Reducing playback quality for 1904kbps stream bitrate: video resolution to 720x406, audio channels to 2, quality to 41
Jan 22, 2018 14:20:48.570 [0x7f8d50fff700] DEBUG - Codecs: testing h264_nvenc (encoder)
Jan 22, 2018 14:20:48.571 [0x7f8d50fff700] ERROR - [FFMPEG] - Cannot load libcuda.so.1

@Kodiman06128 said:
chromecast?

Oder Firestick. Die nehmen sich nicht viel.
(Wieso kopierst du eigentlich nicht den Text des Logs hier rein? Da könnte man so schön zitieren.)

Es sieht so aus, als ob ein Bandbreitenlimit von 2 MBit/s besteht.
Ist der Client im selben Netzwerk wie der Server?
Benutzt er eventuell eine Relay-Verbindung?

Limit der Bandbreite/Upload ist im Serber mit 2,7 eingestellt, jedoch gibt die Leitung nur 2,6 her. Der Client ist nicht im selben Netzwerk, es geht alles über Internet.

Mal eine kleine Rechnung (berichtigt mich, falls ich einen Fehler habe!)

2,5 MBit/s Leitung im Upload (eigentlich ja noch etwas mehr) sind umgerechnet 3125 Kilobyte/s.
Der Film hat 10.370.018 KB / 3125 = 3318,40… Sekunden
3318,40 / 60 = 55,30 Minuten

somit müsste es ja möglich sein, den Film per Internet von a nach b in der Laufzeit des Filmes zu “streamen”.
Macht er die Transkodierung für das Video weil der Ton transkodiert werden muss, oder geht das getrennt?

Laut deiner obigen XML hat dein Film 11,6 MBit/s Durchschnitts-Bitrate allein im Video Stream.
(das lässt Schwankungen in der Video-Bitrate ganz außen vor, wie ich oben bereits schrieb.)
Da das wesentlich mehr ist, als dein Limit von 2,7 MBit/s wird transkodiert.

@Kodiman06128 said:
2,5 MBit/s Leitung im Upload (eigentlich ja noch etwas mehr) sind umgerechnet 3125 Kilobyte/s.

Da hast du einen Knoten im Gedankengang:
2,5 Mbit/s sind 2,5 Megabit
1 Byte = 8 Bit
1Mbit /8 = 125 kByte/s
2,5 Mbit/s = 312,5 kByte/s

da hast du vollkommen Recht. Ich trottel habe 25 anstatt 2,5 eingegeben. Schande über mein Haupt.

wenn ich es also richtig verstanden habe wird sogar bei einem upload von 10 MBit/s transkodiert, ergo muss ein potenterer Server her, da mehr als 10 MBit/s im Upload hier nicht machbar sind.

So, wer hat einen Sack Geld über? :smiley:

@OttoKerner Danke für deine Hilfe, man lernt halt nie aus.

@Kodiman06128 said:
So, wer hat einen Sack Geld über? :smiley:

Das ist einer der Gründe warum ich derzeit immer noch von einem Einsatz des HEVC Codecs abrate: wenn transkodiert werden muss, geht der Prozi in die Knie - es sei denn du hast einen der neusten Generation, der HEVC in Hardware dekodieren kann.

Gut, eigentlich würde ich den HEVC auch nicht einsetzten, nur der Platz ist am Ende und in neue Platte investieren ist wohl eine noch größere „Geldvernichtung“, zumal die bisherigen Platten noch ihren Dienst tun. Ich hatte ja eh vor, den großen PC, der als player dient in einen Nuc7 mit i3 zu tauschen. Dann wird es halt ein i5 auf dem der Server läuft. Sollte ja hoffentlich reichen.

Also eine neue Platte ist wesentlich billiger als ein neuer Prozi+Mobo