Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


Video Player Selfhostet with transcoding ?
New on LowEndTalk? Please Register and read our Community Rules.

All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.

Video Player Selfhostet with transcoding ?

Hello all,
I am looking for a tool to watch videos on my server that are transcoded down in real time. I have some 4k recordings from my drone and am looking for a video player that basically renders down to 1080p so the user with a slow internet connection won't notice.

Do you know of such a selfhosted tool other than throwing the videos on youtube :D

Comments

  • risharderisharde Patron Provider, Veteran

    That would be interesting, subscribing in

  • Maybe one more option I would like to embed the player also on other pages via HTML e.g.: so that this transcodes as mentioned in real time.

  • plex emby?

  • @taizi said:
    plex emby?

    hmmm i think i search for an video player not a whole media server

  • There's no player rendered town from 4K to FHD. That requires transcoding. There're a few ways to implement eg. with nginx and on the fly transcoding or paid solution like Wowza.

    After that, you can basically use it together with video.js or JWplayer or any other open-source HTML5 player.

  • Transcoding is an industry.
    Real time transcoding do requires significant resources for computation of output.

    For current use case:

  • yoursunnyyoursunny Member, IPv6 Advocate

    I made my own video solution.

    Demo site: https://pushups.ndn.today
    Source code: https://github.com/yoursunny/NDNts-video

    It's transcoded beforehand on a dedicated server, and then I can serve cheaply from multiple locations in the world.
    The player software is Shaka Player.

  • tetechtetech Member
    edited December 2021

    A player is something that renders the video. What you are describing is not a player (or at least not only a player). You need to do some transcoding. This will require heavy CPU/GPU on your server, so first make sure you have that capacity.

    What format is the video coming from the drone? For example if RTMP then nginx has a RTMP module which does this. Server ingests RTMP, and outputs video in your choice of resolutions/quality in either HLS or DASH which can be consumed by standard HTML5 players like plyr.io.

  • @yoursunny said:
    I made my own video solution.

    Demo site: https://pushups.ndn.today
    Source code: https://github.com/yoursunny/NDNts-video

    It's transcoded beforehand on a dedicated server, and then I can serve cheaply from multiple locations in the world.
    The player software is Shaka Player.

    So when will there be a LET push-up competition, everyone submits their pushup videos, the one that does the most wins (???) shirts? swag?

  • yoursunnyyoursunny Member, IPv6 Advocate

    @vovler said:
    So when will there be a LET push-up competition, everyone submits their pushup videos, the one that does the most wins (???) shirts? swag?

    Connect with @stefeman who is interested in hosting such an event.

    I do have a live streaming app https://homecam.ndn.today that can help with this event.
    However, it streams in a single resolution and has no transcoding functionality.

  • stefemanstefeman Member
    edited December 2021

    @vovler said:

    @yoursunny said:
    I made my own video solution.

    Demo site: https://pushups.ndn.today
    Source code: https://github.com/yoursunny/NDNts-video

    It's transcoded beforehand on a dedicated server, and then I can serve cheaply from multiple locations in the world.
    The player software is Shaka Player.

    So when will there be a LET push-up competition, everyone submits their pushup videos, the one that does the most wins (???) shirts? swag?

    I intended to sponsor the rewards, and even brainstormed some template rules but Im not the right person to host it and judge the winners, I would need someone more competent to take charge of it.

    Ideally it would go like this: I'd prepay (SEPA/Paypal/CC/Crypto) to some host/hosts who agree to settle with winners as long as they pass neccessary host specific fraud checks.

    Then we could actually start the event when rewards are already paid for.

    Issue is, we would need to find provider(s) + an event leader for this.

  • @stefeman said: some host/hosts who agree to settle with winners as long as they pass necessary host specific fraud checks.

    How can someone check for fraud pushups? Can you imagine a host asking for blood samples? Oh wait...


    Back to the TeoM's original question

    Setting up a live encoding software is not worth it. It's really only for live-streaming. To a limited number of targets. Not for distributing. Neither your server, nor your planet will thank you for transcoding the same 4k video [# of users] times.

    Here is a tutorial preparing your footage with ffmpeg: https://crookm.com/journal/2018/transcoding-to-dash-and-hls-with-ffmpeg/ And here are some basically production ready reference samples of a player with ABR: https://reference.dashif.org/dash.js/latest/samples/ Just point the player in the right directory/resolutions, and you are good to go even with a static website.

  • xTomxTom Member, Patron Provider

    PeerTube is a good choice

    https://github.com/Chocobozzz/PeerTube

  • @TeoM said:
    Hello all,
    I am looking for a tool to watch videos on my server that are transcoded down in real time. I have some 4k recordings from my drone and am looking for a video player that basically renders down to 1080p so the user with a slow internet connection won't notice.

    Do you know of such a selfhosted tool other than throwing the videos on youtube :D

    Doesn't exists.

    It is possible with Wowza but even then it always cheaper to convert them before and only serve the output when needed

  • yoursunnyyoursunny Member, IPv6 Advocate

    @ceter said:

    @stefeman said: some host/hosts who agree to settle with winners as long as they pass necessary host specific fraud checks.

    How can someone check for fraud pushups? Can you imagine a host asking for blood samples? Oh wait...

    I ask submitter include a specific logo in the video or say a specific phrase.
    This ensures the push-ups are for the specific occasion, not reused or downloaded from elsewhere.

  • risharderisharde Patron Provider, Veteran

    I have thought about this a bit and I suspect hardly anyone will want to develop this is that most people use transcoding to make movies and shows smaller for network transfer while a client side transcoder would still require the large data to be downloaded first and kind of defeat the whole idea. However client side transcoder would I
    only be useful for device format playback (???)

  • @risharde said:
    I have thought about this a bit and I suspect hardly anyone will want to develop this is that most people use transcoding to make movies and shows smaller for network transfer while a client side transcoder would still require the large data to be downloaded first and kind of defeat the whole idea. However client side transcoder would I
    only be useful for device format playback (???)

    On the contrary, basically what the OP is asking for is a live-streaming server. There are plenty of paid services (like castr) and self-hosted ones (we do it using Azure VMs) for this, because it is applicable not only to his use case but any type of live-streaming. The big thing to know is what is the transport format of the video - some software can handle RTSP, some RTMP, etc. Most IP cameras are RTSP, not RTMP.

    If the live-stream is for private use or you know the limited audience, you can customize/restrict the number of transcoding streams to only those which are necessary, but the principle remains the same.

    OP is just confused or accidentally used the wrong language about the word "player". Obviously if the goal is to view on a lower-bandwidth connection, then the video bit stream must be transcoded before it transits that connection, otherwise the problem is not solved.

Sign In or Register to comment.