422658476 / MPV-EASY-Player

MPV-EASY Player - An easy to use, modern video player based on mpv (一个基于MPV,易于使用,现代化的视频播放器)
http://www.rjno1.com/mpv-easy-player/
GNU General Public License v3.0
1.03k stars 56 forks source link

HLS m3u8 streams #53

Closed trimechee closed 1 year ago

trimechee commented 1 year ago

Hello, ffmpeg seems to have some problems to decode hls m3u8 streams, but a tool like HLSDL seems to solve these problems, please it will be great if there is support for specific hls streams of some websites by integrating these m3u8 softwares to avoid these bugs, thank you so much !

C program to download VoD HLS (.m3u8) files

https://github.com/selsta/hlsdl

m3u8 : Python m3u8 Parser for HTTP Live Streaming (HLS) Transmissions :

https://github.com/globocom/m3u8

[.NET] m3u8 downloader Open source command line m3u8/HLS/dash downloader, supports common AES-128-CBC decryption, multi-threading, custom request headers, etc. Supports Simplified Chinese, Traditional Chinese and English. English Supported.

https://github.com/nilaoda/N_m3u8DL-CLI

[.NET7] Cross-Platform stream downloader for DASH/HLS.

https://github.com/nilaoda/N_m3u8DL-RE

and

https://github.com/HeiSir2014/M3U8-Downloader

https://github.com/Spark-NF/hls-downloader

" HLSDL appears working much better than ffmpeg in these cases. Hlsdl is public and the source code available. The stream plays almost immediately and is stable. No errors or buffering. Using ffmpeg for the download step gives a very long intial delay and is not very stable. so I assume that the new crypto+hls RAI flows are badly handled by ffmpeg based players now.

the video is choppy and unable to buffer enough for a fluid vision. Parole has no problem.

FFmpeg is not good for HLS streams, but I watched a lot of various HLS streams without any problems. The main problem is that FFmpeg downloads all streams (many video sizes at once), so you can watch only HLS stream with single video size"

422658476 commented 1 year ago

Sorry, you may need to consult the mpv official for these functions, because mpv easy player is just a front end of mpv, it does not actually process what you said, when mpv easy player plays online video streams, it just passes the video link to mpv.exe, actually mpv.exe handles all downloading, buffering and playing video content

trimechee commented 1 year ago

Interesting, i didn't know it concerns mpv, thank you for this explanation :)

422658476 commented 1 year ago

It doesn't matter, I believe the mpv official will give you a more professional explanation. The questions you submit are likely to improve the effect of mpv when playing them.

trimechee commented 1 year ago

Yes, I think so, me i discouver this problem while reeding issues in QMPLAY2 in it's gitbud page, a use complain about "Problems on RAI (Italian Broarcaster) hls flows", the ssue is still open after a year and a half and apparently one of the proposed solutions is to use hlsdl because ffmpeg seems to have problems handling hls....and so the developer is looking for a solution...it says the media player "parole media player" made by xfce does not encounter these problems about hls streams because that uses gstreamer as backend. Almost all the ffmpeg based players (and sometime ffmpeg itself), have some problems.....

.....in any case thank you very much for your valuable help and this wonderful MPV-EASY-Player 💯 🥇

i have another request please : we hope that it will be a simple option ti increase buffer network size buffer because sometimes the internet connection becomes very weak and while watching tv shows in very high quality! for example it will be great to have a network buffer of 60 seconds to avoid possible lag and jerks! if we pause the video, therefore player performs media file download independently of playback. Let it continue downloading even when playback is paused.

in the past, I used a plugin for media player called "3DYD Youtube Source", but it is compatible with only certain media players, we hope that it will be an option like this please, thank you!

Download media data independently from playback:

"This approach is useful when you have slow or unstable Internet connection (so playback is stuttering), or when you need to seek a lot within a file. However if all these cases are not about you, and usually you do not watch whole video , it may end up with bandwidth overuse since a lot of downloaded data eventually will be not watched.

When this option is unchecked, filter downloads only part of data that is about to be played.

Filter caches downloaded data in temporary directory regardless of the state of this option and never re-downloads the same data again. Caching is well visualized by Activity popup page."

trimechee commented 1 year ago

And, if it is possible, beacause my web browser can't detect and translate chineese language, it will be great if changelog are in english language too so we can understand what new amazing features are added to Mpv-Easy-Player , thank you :)

https://github.com/422658476/MPV-EASY-Player/releases

422658476 commented 1 year ago

You describe too many things, and since English is not my native language, I can only briefly answer you.

If you want to see the English version of the changelog, please see: https://www.softpedia.com/get/Multimedia/Video/Video-Players/MPV-EASY-Player.shtml

https://www.softpedia.com/progChangelog/MPV-EASY-Player-Changelog-258866.html

Softpedia official staff are very friendly and diligent, every time a new version is released they will translate the changelog into English, you can check it here.

Usually mpv handles caching automatically, so you usually don't need to worry about this.

If you want to cache by seconds, open with a text editor:

mpv-easy player\data\mpv-easy-data\rjno1.conf

All settings in mpv.conf have been migrated to this folder.

Please add a line below [ini-rjno1]:

cache-secs=

To add more cache-related settings, please check the manual.pdf provided by mpv, most of the settings are compatible with mpv-easy player, and the --cache section has all the instructions you want.

If you want to monitor cache size or download speed while playing online video, just:

Use the menu [Show file information] or [i] or uppercase [i] (permanent display) to view the total cache in the third line.

If you want to check the current download speed, please press [3] above the button [Q] after the file information interface is displayed, and the displayed [speed] is the download speed you want. Press [1] above [Q] again to switch back to the file information page.

When pressing [3] and not pressing [1] to switch back to the file information page, then next time you use the menu [Show file information] or [i] or capitalized [i], the page of [speed] will be displayed directly.

mpv-easy player is a local player, it will not pay attention to the problems caused by playing online videos, because online videos are usually difficult to obtain the correct address, and debugging will also be very difficult.

In fact, online videos are still recommended to be downloaded and played.

trimechee commented 1 year ago

Marvellous !! thank you so much for your precious help and kindness, and sorry for asking so many things and we are so grateful to you for this exceptional media player 🥇