fe80Grau / ytdlp2STRM

A little script to serve Youtube / Twitch / Crunchyroll videos without storage it. Uses yt-dlp HTTP data throught Flask and dynamic URLs. We can use this dynamic URLs to set STRM files.
https://github.com/fe80Grau/ytdlp2STRM
MIT License
173 stars 15 forks source link

youtube .strm files not playable in jellyfin #35

Closed fanyangto closed 2 months ago

fanyangto commented 3 months ago

I used the docker image and it seems to work fine. After the youtube channels are generated and .strm files are there. I copy them to jellyfin lib folder and did a lib scan.

Jellyfin appears to show these media files, but none are playable. When I play it, it complained about it's not a playable format or recognized format.

What did I miss ?

fe80Grau commented 3 months ago

What port are you working with in Docker? Is the DOCKER_PORT variable set to the same value as the Docker host port??? Open with notepad any strm to check if the url has the same DOCKER_PORT and try to play your strm files with vlc

p-rintz commented 2 months ago

I am using port 5000 inside docker, as well as outside. URL looks like the following (for example): http://10.0.0.22:5000/youtube/bridge/b73xG1HlFhY

URL does not work in Jellyfin, Firefox, Vivaldi or VLC. (Firefox and Vivaldi: as in just directly trying to visit the URL and watching the video in the browser)

VLC and Vivaldi does not give any error. Firefox and Jellyfin complain about not being compatible.

This client isn't compatible with the media and the server isn't sending a compatible media format.

Here is the compose file I'm using:

---
version: "2.1"
services:
  ytdlp2strm:
      image: fe80grau/ytdlp2strm
      container_name: ytdlp2STRM
      environment:
        - AM_I_IN_A_DOCKER_CONTAINER=Yes
        - DOCKER_PORT=5000
      volumes:
        - ./media:/media
        - type: bind
          source: ./youtube-channels.json
          target: /opt/ytdlp2STRM/plugins/youtube/channel_list.json
        - type: bind
          source: ./youtube-config.json
          target: /opt/ytdlp2STRM/plugins/youtube/config.json
        - type: bind
          source: ./config.json
          target: /opt/ytdlp2STRM/config/config.json
        - type: bind
          source: ./crons.json
          target: /opt/ytdlp2STRM/config/crons.json
      ports:
        - 5000:5000
      restart: always
fe80Grau commented 2 months ago

Please check latest version I think is fixed, I pushed in Github and Docker hub

p-rintz commented 2 months ago

Can confirm it works!

Thank you!