Diaoul / enzyme

Python video metadata parser
MIT License
59 stars 24 forks source link

Error detecting subtitle language as english #29

Open mattmac24 opened 7 years ago

mattmac24 commented 7 years ago

I am having trouble with enzyme detecting the first(or maybe just english?) embedded subtitle language. This seems to be happening with all of my files so is it somehow possible that this is a result of something in my setup? I originally reported this as a bug with nzbget-subliminal but @caronc has helped me realise the actual problem lies with enzyme here. Apologies, but I am not sure how to get further debugging information from enzyme to help.

An example file I am talking about is: Game.of.Thrones.S05E01.The.Wars.to.Come.1080p.WEB-DL.DD5.1.H.264-NTb ffprobe output: https://pastebin.com/iQVU4whX mediainfo output: https://pastebin.com/BtUNSRjf but the enzyme output is:

python test.py /home/matt/subliminal_test/Game.of.Thrones.S05E01.The.Wars.to.Come.1080p.WEB-DL.DD5.1.H.264-NTb.mkv /home/matt/subliminal_test/Game.of.Thrones.S05E01.The.Wars.to.Come.1080p.WEB-DL.DD5.1.H.264-NTb.mkv {'forced': False, 'name': None, 'language': None, 'default': False, 'enabled': True, 'number': 3, 'codec_name': None, 'codec_id': u'S_TEXT/UTF8', 'lacing': False, 'type': 17}

Another example is: mediainfo output: https://pastebin.com/xS7B4L78 ffprobe output: https://pastebin.com/69bCLQ75 enzyme output is: American Horror Story - S05E01 - Checking In (Bluray-1080p - x264 DTS [EN+FR+DE+JA+ES]).mkv {'forced': False, 'name': None, 'language': None, 'default': False, 'enabled': True, 'number': 3, 'codec_name': None, 'codec_id': u'S_HDMV/PGS', 'lacing': False, 'type': 17} {'forced': False, 'name': None, 'language': u'fre', 'default': False, 'enabled': True, 'number': 4, 'codec_name': None, 'codec_id': u'S_HDMV/PGS', 'lacing': False, 'type': 17} {'forced': False, 'name': None, 'language': u'ger', 'default': False, 'enabled': True, 'number': 5, 'codec_name': None, 'codec_id': u'S_HDMV/PGS', 'lacing': False, 'type': 17} {'forced': False, 'name': None, 'language': u'jpn', 'default': False, 'enabled': True, 'number': 6, 'codec_name': None, 'codec_id': u'S_HDMV/PGS', 'lacing': False, 'type': 17} {'forced': False, 'name': None, 'language': u'spa', 'default': False, 'enabled': True, 'number': 7, 'codec_name': None, 'codec_id': u'S_HDMV/PGS', 'lacing': False, 'type': 17}

Any help with getting this fixed would be fantastic :)

aulemahal commented 7 years ago

You are right! This is not really a bug but enzyme does not follow the Matroska specs on this. As can be read here, the Language EBML element should have eng as a default value, not None.

mattmac24 commented 7 years ago

Thank you for the great work and solving this so quickly 👍