Given a hypothetical folder structure like this:

Star.Trek.Discovery.S04E06.German.DL.1080p.BluRay.x264-iNTENTiON/
├── star.trek.discovery.s04e06.german.dl.1080p.bluray.x264-intention.mkv
├── star.trek.discovery.s04e06.german.dl.1080p.bluray.x264-intention.nfo
└── Subs
    ├── star.trek.discovery.s04e06.german.dl.1080p.bluray.x264-intention-eng.idx
    ├── star.trek.discovery.s04e06.german.dl.1080p.bluray.x264-intention-eng.sub
    ├── star.trek.discovery.s04e06.german.dl.1080p.bluray.x264-intention.idx
    └── star.trek.discovery.s04e06.german.dl.1080p.bluray.x264-intention.sub
Star.Trek.Discovery.S04E07.German.DL.1080p.BluRay.x264-iNTENTiON/
├── star.trek.discovery.s04e07.german.dl.1080p.bluray.x264-intention.mkv
├── star.trek.discovery.s04e07.german.dl.1080p.bluray.x264-intention.nfo
└── Subs
    ├── star.trek.discovery.s04e07.german.dl.1080p.bluray.x264-intention-eng.idx
    ├── star.trek.discovery.s04e07.german.dl.1080p.bluray.x264-intention-eng.sub
    ├── star.trek.discovery.s04e07.german.dl.1080p.bluray.x264-intention.idx
    └── star.trek.discovery.s04e07.german.dl.1080p.bluray.x264-intention.sub

4 directories, 12 files

What’s the best way to integrate all the subtitles into the corresponding MKV file?

  • Lemmchen@feddit.orgOP
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    2 days ago

    I’m pretty sure MKV can handle VOBSUB. Why do you convert them to .srt before merging them?

    Edit:

    I’ve also just found this: https://github.com/elizagamedev/vobsubocr

    The most comparable tool to vobsubocr is VobSub2SRT, but vobsubocr has significantly better output, especially for non-English languages, mainly because VobSub2SRT does not do much preprocessing of the image at all before sending it to Tesseract. For example, Tesseract 4.0 expects black text on a white background, which VobSub2SRT does not guarantee, but vobsubocr does. Additionally, vobsubocr splits each line into separate images to take advantage of page segmentation method 7, which greatly improves accuracy of non-English languages in particular.

    Edit 2:

    And a fork of it, of course: https://github.com/gwen-lg/subtile-ocr

    As you seems to not update this project anymore, I have done a fork to continue the project. With subtile-ocr I have use subtile subtile is a fork no longer maintained vobsub crate. With this I was able to :

    • modernise the code by :
      • update dependencies, especially nom who need a lot of code modification.
      • migrate to thiserror and anyhow for error management
    • do some small optim (by reducing a lot the memory allocation count) And it could be a better start to add functionality (like managing .sup: blue-ray subtitle format).
    • Bakkoda@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      0
      ·
      2 days ago

      Iirc vobsub is not text so while you can add it to the container it will always require a transcode on plex/jelly/etc to burn in.

      • Lemmchen@feddit.orgOP
        link
        fedilink
        English
        arrow-up
        0
        ·
        2 days ago

        I wasn’t aware of the transcoding requirement, thank you. So I guess converting the subtitles is a best practice I should adopt.