• Login
  • Register
  • Login Register
    Login
    Username/Email:
    Password:
    Or login with a social network below
  • Forum
  • Website
  • GitHub
  • Status
  • Translation
  • Features
  • Team
  • Rules
  • Help
  • Feeds
User Links
  • Login
  • Register
  • Login Register
    Login
    Username/Email:
    Password:
    Or login with a social network below

    Useful Links Forum Website GitHub Status Translation Features Team Rules Help Feeds
    Jellyfin Forum Development Web Development WebOS with hls.js

     
    • 2 Vote(s) - 5 Average

    WebOS with hls.js

    timitt
    Offline

    Junior Member

    Posts: 11
    Threads: 1
    Joined: 2025 Mar
    Reputation: 0
    Country:Finland
    #1
    2025-03-09, 08:48 PM
    I cloned the repository and made modifications to jellyfin-web to use modified hls.js and this version seems to completely fix issues that native HLS implementation of WebOS has.

    Native HLS had main issue that it simply only plays stereo sound. But using hls.js plays multi channel audio fine as long as it is coded as AAC.
    Other issue was with fast forwarding and quick test seems to show that using hls.js does fix that too (at least with one video I had the problem using native HLS).

    Here it is: https://github.com/timitt/jellyfin-web/t...0.10.z-mod
    And here is my modfied hls.js: https://github.com/timitt/hls.js/release....5.20-dovi (although it is automatically used if you compile my modified jellyfin-web).

    Main problem when you just start using hls.js is that WebOS is not able to play ac-3 and eac-3 audio when it is part of the video. So it is needed to tell jellyfin-web to transcode those.
    Other problem is that jellyfin-server uses dvh1 tag with all DoVi videos and that causes Profile 8 videos to break completely when using hls.js. This is not the case with my modified hls.js, but I think it is still wrong to use dvh1 tag with Profile 8 videos.

    I also noticed that it would be possible to use ac-3 and eac-3 with hls.js, but it would require that audio and video needs to be put to different hls stream. That is fairly easy as ffmpeg supports it:

    Example:
    Code:
    c:\programs\ffmpeg-jellyfin\ffmpeg -i ..\DoViProfile5_Atmos51.mkv \
    -map 0:v -c:v copy -tag:v:0 dvh1 -strict -2 -f hls -hls_time 6 -hls_segment_type fmp4 -hls_list_size 6 -hls_fmp4_init_filename "video-1.mp4" -hls_segment_filename "video_%03d.mp4" video.m3u8 \
    -map 0:a -c:a copy -f hls -hls_time 6 -hls_segment_type fmp4 -hls_list_size 6 -hls_fmp4_init_filename "audio-1.mp4" -hls_segment_filename "audio_%03d.mp4" audio.m3u8

    With that we would need proper master.m3u8:
    Code:
    #EXTM3U
    #EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio",NAME="Default",AUTOSELECT=YES,DEFAULT=YES,URI="audio.m3u8"

    #EXT-X-STREAM-INF:BANDWIDTH=28689993,AVERAGE-BANDWIDTH=28689993,VIDEO-RANGE=PQ,CODECS="dvh1.05.06,ec-3",RESOLUTION=3840x2160,FRAME-RATE=23.976,AUDIO="audio"
    video.m3u8

    I tested this with hls.js demo and it played correctly. I also tried it with native HLS, but it still played everything in stereo.

    Now question remains. Would it be possible to change official Jellyfin to do that just because it would allow to not need to transcode audio to AAC?

    I have not tried to offer my changes to official repository as it needs customized hls.js for now.
    « Next Oldest | Next Newest »

    Users browsing this thread: 1 Guest(s)


    Messages In This Thread
    WebOS with hls.js - by timitt - 2025-03-09, 08:48 PM
    RE: WebOS with hls.js - by GDX - 2025-03-24, 06:35 AM
    RE: WebOS with hls.js - by timitt - 2025-03-26, 09:14 PM
    RE: WebOS with hls.js - by nyanmisaka - 2025-03-27, 05:49 AM
    RE: WebOS with hls.js - by Ereb_Zx - 2025-03-27, 08:38 AM
    RE: WebOS with hls.js - by timitt - 2025-03-27, 05:13 PM
    RE: WebOS with hls.js - by Ereb_Zx - 2025-03-27, 09:46 PM
    RE: WebOS with hls.js - by timitt - 2025-03-28, 09:54 AM
    RE: WebOS with hls.js - by Ereb_Zx - 2025-03-28, 08:52 PM
    RE: WebOS with hls.js - by timitt - 2025-03-28, 10:25 PM
    RE: WebOS with hls.js - by timitt - 2025-03-29, 03:52 PM
    RE: WebOS with hls.js - by Ereb_Zx - 2025-03-29, 09:39 PM
    RE: WebOS with hls.js - by raulo1985 - 2025-03-31, 06:25 PM
    RE: WebOS with hls.js - by timitt - 2025-03-30, 08:36 AM
    RE: WebOS with hls.js - by Ereb_Zx - 2025-03-31, 07:22 PM
    RE: WebOS with hls.js - by timitt - 2025-03-31, 08:01 PM
    RE: WebOS with hls.js - by timitt - 2025-03-31, 07:32 PM
    RE: WebOS with hls.js - by Ereb_Zx - 2025-03-31, 09:16 PM
    RE: WebOS with hls.js - by timitt - 2025-04-01, 06:54 AM
    RE: WebOS with hls.js - by timitt - 2025-04-02, 08:28 PM

    • View a Printable Version
    • Subscribe to this thread
    Forum Jump:

    Home · Team · Help · Contact
    © Designed by D&D - Powered by MyBB
    L


    Jellyfin

    The Free Software Media System

    Linear Mode
    Threaded Mode