Posts by jeepcook

    example:

    "http://localhost:8088/https://www.youtube.com/watch?v=gxG3pdKvlIs"

    What am I doing wrong and why does the same link work for me? Use exteplayer3 with streamproxy, I also wrote to you about this, but not on this forum thread ...

    OK, using gstreamer the stream is ko but using exteplayer3 i's now ok, I should do this test before writing here !

    (where did you write me about this , which forum?)


    By the way ... I modified the code a little more, limiting the selection to stream types that do not require ffmpeg "processing" and now VOD broadcasts from youtube work fine and without any "gags"

    I wrote this yesterday, did you read it? But this applies to VOD broadcasts youtube, live - as it worked, it still works

    I read that but you say "live - as it worked, it still works", but we don't have ffmpeg process anymore for live tv, not just for VOD broadcasts (A misunderstood of your sentence from my part?)



    Test with another url:

    "http://localhost:8088/https://www.france.tv/france-2/direct.html"


    ???

    This was just to show you a case where the proxy was ok with another url than a youtube one, to show you that my image setup is OK.

    But if you read the edit part of the post you can see I have recurring blackscreens for this stream (and all from france.tv). I don't know if it's a reader bug, streamlinkproxy fail or a stream bug. Btw If I watch the channel directly with their website, there are no blackscreen.

    A way to log these errors perhaps?

    After a fresh OATV 7.3 installation, just installed streamlinkproxy and e2m3u2b latest versions. But I have problems with youtube urls.


    example:

    "http://localhost:8088/https://www.youtube.com/watch?v=gxG3pdKvlIs"


    a second streamlinkproxy python process is created but no ffmpeg process so no video is displayed


    Test with another url:

    "http://localhost:8088/https://www.france.tv/france-2/direct.html"


    the second python process is there and ffmpeg too, so I have the video.


    So for YT videos , had to install streamlinkwrapper and modify the url to replace http://localhost:8088/ by streamlink:// and videos are ok but streamlinkproxy is not used in this case, obviously.


    I have to test dailymotion videos to see the result.



    Edit:


    By chance, detected the case when I have black screen on a stream. I seems that the python process fall


    before the blackscreen

    Code
    root      2581     1  0 00:47 ?        00:00:00 python /etc/rc3.d/S99streamlinkproxy start
    root      2582     2  0 00:47 ?        00:00:00 [kworker/3:1H]
    root      2583     1  0 00:47 ?        00:00:00 /bin/sh /usr/bin/enigma2.sh
    root      2599  2555  0 00:47 pts/0    00:00:00 /bin/login
    root      2619  2583 17 00:47 ?        00:01:22 /usr/bin/enigma2
    root      2700  2599  0 00:47 pts/0    00:00:00 -bash
    root      2748  2529  0 00:48 ?        00:00:00 /usr/sbin/smbd
    root      3018  2529  0 00:54 ?        00:00:00 /usr/sbin/smbd
    root      3021  2581 54 00:55 ?        00:00:08 python /etc/rc3.d/S99streamlinkproxy start
    root      3030  3021  4 00:55 ?        00:00:00 /usr/bin/ffmpeg -nostats -y -i /tmp/streamlinkpipe-3021-1-9615 -i /tmp/streamlinkpipe-3021-2-4442 -c:v copy -c:a copy -map 0:v? -map 0:a? -map 1

    during the blackscreen (no ffmpeg process) and just one python process

    Code
    root      2581     1  0 00:47 ?        00:00:00 python /etc/rc3.d/S99streamlinkproxy start
    root      2582     2  0 00:47 ?        00:00:00 [kworker/3:1H]
    root      2583     1  0 00:47 ?        00:00:00 /bin/sh /usr/bin/enigma2.sh
    root      2599  2555  0 00:47 pts/0    00:00:00 /bin/login
    root      2619  2583  9 00:47 ?        00:02:50 /usr/bin/enigma2
    root      2700  2599  0 00:47 pts/0    00:00:00 -bash
    root      2748  2529  0 00:48 ?        00:00:00 /usr/sbin/smbd
    root      3046     2  0 00:55 ?        00:00:00 [kworker/u8:0]
    root      3058  2529  0 01:04 ?        00:00:00 /usr/sbin/smbd
    root      3162  2700 99 01:16 pts/0    00:00:00 ps -wwef

    and after the automatic action of relaunch by quarterpounder, the processes are back

    But who is responsible of the fall, the stream itself or streamlinkproxy...?

    How to know which plugins are installed. Alle the ones available here Plugins - Streamlink 5.5.1 documentation ? or do have I to add some in a specific directory ?

    I don't understand your question. The installation package of the plugin includes the latest "library" streamlink from GitHub ... It includes all add-on plugins described on the official web page - https://streamlink.github.io/plugins.html

    Ok sorry I didn't understand that. I will ask the community for a new plugin for french channels from sfr provider if possible to exploit.

    A feedback. Not so simple to implement because of the variety of streams.


    For YouTube direct streams, no problems.


    For France Television channels (1080p 25fps streams):

    "https://www.france.tv/france-2/direct.html"

    "https://www.france.tv/france-3/direct.html"

    "https://www.france.tv/france-4/direct.html"

    "https://www.france.tv/france-5/direct.html"

    "https://www.france.tv/franceinfo/direct.html"


    Gstreamer: sound and video are desynchronized

    GstPlayer: sound and video are ok, but after few minutes there is a failed stream (blackscreen), relanch by quarterpounder

    Exteplayer3: the more stable player for these streams, sound and videos are synchronized, no blackscreen for now.


    So a promising project ;-)


    Edit: Zapping from a "proxy" stream to another generate a sound/video desynchronization. The solution is to zap to a normal stream and back to the "proxy" one and everything is ok. :upside down face:

    First impression, it's cool to have the way now to add direct links for some channels (like live youtube channels, France Television Channels ....)


    - for a provider, we enabled the proxy for all streams in e2m3u2b. But in fact this will disabled the access on some other streams (proxy forbidden). An idea, perhaps a new tag to enable or disable proxy in the sort override file.

    I answer to myself. The prox is started, so the solution is to disable "Use streamlink proxy for broadcasts" in provider card and to configure individual streams with the prefix http://localhost:8088:/

    First impression, it's cool to have the way now to add direct links for some channels (like live youtube channels, France Television Channels ....)


    Few questions:

    - for a provider, we enabled the proxy for all streams in e2m3u2b. But in fact this will disabled the access on some other streams (proxy forbidden). An idea, perhaps a new tag to enable or disable proxy in the sort override file.

    - for some streams, plugins are necessary. How to configure the directory of them in the stream (or in the streamproxy configuration)

    Due to the absence of the bc utility on the receivers, I had to use this construct to determine the valid python versions

    Code
    pyver=$(python -V | cut -d' ' -f2)
    
    if awk "BEGIN {exit !(${pyver%.*} < 3.8)}"; then
        echo -e "\n${LRED}${PluginName} plugin for Python3-based images only!${NC} \U0001F62A"
        exit 1
    fi

    Give the following command in the terminal and show the output

    Code
    echo $(python -V | cut -d' ' -f2)
    Code
    root@sf8008:/tmp# echo $(python -V | cut -d' ' -f2)
    3.11.2

    bc is installed on my box

    Thanks for your work. I think you have to create a support thread for this plugin.


    1st message for this thread.


    I'm on OATV 7.3 30 june 2023 and the installation is failed:


    Code
    root@sf8008:/tmp# opkg install enigma2-plugin-extensions-streamlinkproxy_5.5.1_all.ipk
    Installing enigma2-plugin-extensions-streamlinkproxy (5.5.1) on root.
    Configuring enigma2-plugin-extensions-streamlinkproxy.
    
    Streamlinkproxy plugin for Python3-based images only! 😪
     * pkg_run_script: package "enigma2-plugin-extensions-streamlinkproxy" postinst script returned status 1.
     * opkg_configure: enigma2-plugin-extensions-streamlinkproxy.postinst returned 1.
    Code
    root@sf8008:/tmp# python --version
    Python 3.11.2

    Few month ago the command was like that (exemple with a german stream) instead of streamlink://:
    Code http://127.0.0.1:8088/https://www.auftanken.tv/livestream/

    I completely rewrote streamlinksrv .. now it works with the latest version of https://streamlink.github.io/ on any Enigma2 Python3-based images ... Moreover, you can "drive" links to IPTV broadcasts of providers through streamlinksrv. Streamlink has a very high-quality "reader" of HLS streams and we can try to use it to deal with the "freezing" of broadcasts and out-of-sync audio and video ... The code of my "proxy" variant is no more than 30 lines of code :upside down face: if you do not take into account the lines of code for "demonization" of the proxy

    Снимок экрана 2023-06-29 в 13.13.54.png

    Great news :star struck:


    I guess you've planned to explain more of how to use it in e2m3u2b, and how to use the streamlink embedded reader and the plugins if they are compatible. I suppose there will be more to install.


    But, take your time, and for now thanks for your work!

    This solution for this kind of serviceref records is only on OpenATV and nowhere else.

    Having studied in more detail, I can say with confidence that this can be implemented on any Python3-based image, provided that the feed contains the libraries necessary for the streamlink code to work ... Instead of enigma2-plugin-extensions-streamlinkwrapper, you can write a simple proxy for streamlink... In this case, the serviceref line for using with a proxy will look a little different (without the "streamlink://" prefix) ... but this is not essential and will work exactly the same

    Few month ago the command was like that (exemple with a german stream) instead of streamlink://:

    Code
    http://127.0.0.1:8088/https://www.auftanken.tv/livestream/

    OATV is preparing a new version of Gstreamer (playbin3) which will be even more powerful than the actual version (playbin).

    As far as I understand, the source texts of this opensource project are used to compile gstreamer - https://gstreamer.freedesktop.org/

    In fact, currently in OATV 7.3 there are 2 versions of Gstreamer with the same internal Gstreamer version, first is the same as the one in OATV 7.2 (playbin) and the new one (playbin3). The "new Gstreamer" as named by OATV team is not finished and is disabled by default (Setup/Usage & Gui/Customize system settings/Enable new Gstreamer playback), but users can switch from current to new to test it.


    How to add youtube tv channels with streamlink protocol,

    Added support for this type of record when parsing m3u playlists for the latest versions of OpenATV. Will be available in the next update

    thanks for this turnaround

    It's not a misunderstanding, just I do not care about the internal processes. I just want my configuration works. The rest is not for me, perhaps for the devs. But your plugin is a simple user utility, how it work does not interest anyone exept you. But in all case not me.

    The analysis of a link is not specific to "streamlink". You can see the same process for example on Samsung TV Plus urls. The url in entry is not the same as the url played. There is a session/token in with an expiration date. But it's an internal process of the player. For the user it's always the same https url that is played.

    Let's summarize

    Your post about "How to add youtube tv channels with streamlink protocol,...." was initially fundamentally wrong ... The question should be - "is it possible to add processing (parsing) streamlink protocol records in m3u-paylist for the newest OpenATV images..."

    Not wrong, just not precise enough at the beginning, but during the discussion I explained more the need. But there was no need to say that my question was stupid implying that I was ignorant. This was a detestable and not adult answer. OATV is preparing a new version of Gstreamer (playbin3) which will be even more powerful than the actual version (playbin).