• AnyStream is having some DRM issues currently, Netflix is not available in HD for the time being.
    Situations like this will always happen with AnyStream: streaming providers are continuously improving their countermeasures while we try to catch up, it's an ongoing cat-and-mouse game. Please be patient and don't flood our support or forum with requests, we are working on it 24/7 to get it resolved. Thank you.

Mehrere Tonspuren

alterverwalter

Well-Known Member
Thread Starter
Joined
Jul 31, 2008
Messages
66
Likes
7
Wie oben geschrieben. Gibt es bei Anystream eine Möglichkeit diese so zu sortieren, dass deutsch die ersta Auswahl ist?
 
Nein, wurde bisher nicht umgesetzt. Einzige Möglichkeit ist es, die Datei neu zu muxen (MKVToolNix), wobei du dann aber ne Kopie bekommst. Bei ner Serie oder langen Filmen kann es also entsprechend dauern und Handarbeit sein. Wobei es da im englischen Forum glaube ein Script gab.
 
Ich hatte mal was änliches dazu geschrieben
 
Danke für die Antworten!

Das wär echt Mal ein sinnvolles feature, dass man die Tonspuren sortieren kann.

Eines der besten Tools ist meiner Erfahrung nach ero Recode (wenn es funktioniert).
Das geht schnell, man kann per drag und drop die Tonspuren umsortieren.

Leider ist die Nero Software sehr verbuggt. Es erkennt z.B. bei Disney+ die Tonspuren nicht.
Auf meinem neueren TV kann ich die auswählen, aber das ist sehr nervig.
 
Ich hatte mal ein Phyton script angefangen, kam aber nie zum testen.
Kann also viele fehler enthalten.

Aktuell komm ich auch nicht zum testen, wenn wahrscheinlich erst naechste woche, hier mal das script wenn es sich einer anschauen moechte.

Code:
import json
import subprocess
from ffprobe import FFProbe

def get_audio_streams(filename):
    metadata = FFProbe(filename)
    
    streams = []
    for stream in metadata.streams:
        if stream.is_audio():
            streams.append(stream)

    return streams

def get_language_order(streams):
    language_order = []
    for stream in streams:
        try:
            language_order.append(stream.__dict__['codec_tag_string'])
        except KeyError:
            pass

    return language_order

def reorder_audio(filename, order):
    output_filename = "output.mkv"
    
    # Create list of '-a' arguments for mkvmerge command
    audio_args = [f"-a {i}" for i in order]
    
    # Construct mkvmerge command
    cmd = ["mkvmerge", "-o", output_filename] + audio_args + [filename]
    
    subprocess.run(cmd)

def main():
    filename = "input.mkv"
    
    streams = get_audio_streams(filename)
    order = get_language_order(streams)
    
    desired_order = ['ger', 'ita', 'eng']
    new_order = sorted(range(len(order)), key=lambda i: desired_order.index(order[i]))

    reorder_audio(filename, new_order)

if __name__ == "__main__":
    main()
 
Mit Programmcodes mag ich mich nicht rumschlagen, trotzdem Danke an Tectpro!

Ich denke ich werde Mal MKVToolNix testen und berichten.
 
Es wird sehr wahrscheinlich funktionieren und mit einem leistungsfähigen Computer
dauert ein Film auch nur eine Minute.
 
... wär trotzdem schön, wenn das Redfox Team die Möglichkeit in Anystream integrieren knnte ;-)
 
Back
Top