Code Monkey home page Code Monkey logo

Comments (6)

segator avatar segator commented on August 23, 2024

Hls it was an experiment its not stable, probsbly needs to be rebuilded from scratch, Im afraid i dont have time for this :( feel free to make PR and I happily will review it

from proxylive.

alturismo avatar alturismo commented on August 23, 2024

cant make any pr on java at all

as note about abr with vaapi, sample here running smooth and stable

`ffmpeg -hwaccel v....

but this requires then to serve the master.m3u8 only ...

so i can of course get the ffmpeg line into your application.aml, but i dont get the webserver part to serve the master.m3u8 instead ...

EDIT

made myself now a php solution with hls and dash, sorry, but java really aint my world ;)

so can be closed

from proxylive.

mme89 avatar mme89 commented on August 23, 2024

@alturismo , would you share your php solution?

from proxylive.

alturismo avatar alturismo commented on August 23, 2024

hmm, when i find some time i can do so, currently theres nothing documentated yet, builded it into another docker of mine locally here, i ll look into it and drop a comment here when i find some time.

from proxylive.

segator avatar segator commented on August 23, 2024

I'm considering to build from scratch the HLS/Dash adapter any tought?

from proxylive.

alturismo avatar alturismo commented on August 23, 2024

@segator yes ;) the majot goal in my case was ABR (adaptive streaming rates) so it really makes use of HLS/DASH

in my usecase i have it currently as config part like this, input m3u, 3 bitrates which are then used by connection quality, a fixed resolution die i didnt wanted to add also dynamic resolutions depending on bitrate ;) specially depending on players this can cause issues.

`<?php
// streamlink, sample https://yourdomain.com/?streamtype=hls&streamlink=123456789abc

// fetch args from link local or remote
if ($_GET) {
$streamtype = $_GET['streamtype'];
$streamlink = $_GET['streamlink'];
} else {
$streamtype = $argv[1];
$streamlink = $argv[2];
}

// setup inputstream
$inputline = "http://localhost:34400/stream/$streamlink"; // format inputline
//
$bitratelow = "400k"; // lowwest bitrate
$bitratemed = "750k"; // medium bitrate
$bitratehigh = "1100k"; // highest bitrate
//
$resolution = "854"; // resolution width, Aspect ratio is kept

// end config here`
...

which ends up in some bigger ffmpeg strings ...

image

and this only makes sense with hw accel ffmpeg transcoding, in software its just too much to handle

in case i can help out a bit ...

from proxylive.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.