Linux - SoftwareThis forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I spent some time digging into the weeds of MLB.tv, and I put together a couple of quick hacks that, at least with my limited testing so far, lets one use MLBviewer and mlbhls to watch games in glorious 5 megabit, 60 frame per second streams.
To make this work, changes are required to both MLBviewer and mlbhls. A patch with the MLBviewer changes is attached here:
After applying the patch to MLBviewer and using the newly-updated mlbhls, you should be able to watch 60fps streams by setting the following settings in mlb.cfg:
The "use_wired_web_60" switch is a new one I added to enable/disable the hack that's switching things over to the 60 fps playlist. The rest should be familiar to anyone who's been using MLBviewer.
I'm not really sure what the state of 60 fps support is in media players these days, but the streams play great for me using mpv. People using other media players might have problems, so keep that in mind.
So far this is very lightly tested, and it's only doing MLB game streams, not highlights, condensed games, or any of that. For those sections that have 60 fps content it shouldn't be too hard to add those, but I wanted to get this out there now so people can try it out and bask in the glory of higher quality streams.
Feel free to chime in if something's not working right and I'll see if I can figure it out, and as always, many thanks to daftcat and all the other folks who've moved the ball forward on mlbviewer and mlbhls development.
...and as always, many thanks to daftcat and all the other folks who've moved the ball forward on mlbviewer and mlbhls development.
Hi!
First of all I absolutely go with the quote...!!
Second: I would like to test all this new stuff, confessing that I've always gone with the very basic version of mlbviewer, no mlbhls nor nexdef nor ...
So, what do I have to do with the patches, how do I get these new features to work? I've updated mlbviewer to the newest version with "svn up"...
Any help would be very much appreciated!
I was hoping that folks who are already comfortable with applying patches and building mlbhls would take a look at things first, but until that happens, you should be able to download the patch file I attached to my comment, and then put it in your mlbviewer directory and run:
Code:
$ patch -p0 < mlbviewer.60fps.patch.txt
and it should update the code. Then you'll need to build the updated mlbhls, which should be more or less this sequence of steps:
Code:
$ https://github.com/tonycpsu/mlbtv-hls-nexdef/
$ cd mlbtv-hls-nexdef
$ git checkout experimental
$ make
$ cp mlbhls /usr/local/bin
For the last step, you might need to adjust the path to wherever your mlbhls executable currently is.
Then add the config settings I mentioned in my post, and you should be good to go, though again, I haven't tested any of this much yet.
Feel free to chime in if something's not working right and I'll see if I can figure it out, and as always, many thanks to daftcat and all the other folks who've moved the ball forward on mlbviewer and mlbhls development.
I would like to understand what is supposed to work. Is it the case that only the 5000K feed is at 60fps, or are the lower speeds also at the higher frame rate if use_wired_web_60 is set to 1. I say this because I do not use 5000K and at lower speeds setting use_wired_web_60 has no effect, on archived games at least. What does the 60fps playlist look like?
I was hoping that folks who are already comfortable with applying patches and building mlbhls would take a look at things first, but until that happens, you should be able to download the patch file I attached to my comment, and then put it in your mlbviewer directory and run:
Code:
$ patch -p0 < mlbviewer.60fps.patch.txt
and it should update the code. Then you'll need to build the updated mlbhls, which should be more or less this sequence of steps:
Code:
$ https://github.com/tonycpsu/mlbtv-hls-nexdef/
$ cd mlbtv-hls-nexdef
$ git checkout experimental
$ make
$ cp mlbhls /usr/local/bin
For the last step, you might need to adjust the path to wherever your mlbhls executable currently is.
Then add the config settings I mentioned in my post, and you should be good to go, though again, I haven't tested any of this much yet.
I've tested the 60 fps patch and it works well. However, it also breaks rtmp streams. Here is a simplified patch that still works for nexdef streams but leaves rtmp alone.
I reviewed the first 60fps patch and yes. That only works if that's all you're interested in using.
I want to move this code to mlbMediaStream and I want to do something that's been bothering me for years. I want to create a toggle for HLS stream speeds like I have for RTMP. I am sure the original reason why I hadn't done this is obsoleted by code reorganization I have done in recent years.
That said, I'm ten days away from a big deadline at work so this likely won't happen until after the 21st.
I've tested the 60 fps patch and it works well. However, it also breaks rtmp streams. Here is a simplified patch that still works for nexdef streams but leaves rtmp alone.
Oh wesome. You just made the change I wanted to make in your patch.
Besides wanting to implement the speed toggle, the only change I'd make to this patch is something more automatic and leave out the config option. Like if nexdef and speed >= 5000. Except check for max_bps and also adaptive setting. If adaptive, some or all bets are off and use normal streams. This is why I want to make the speed toggle. I could keep the min and max in the config for network tuning but I'd like for users to be able to select HLS speed as easy as RTMP.
I agree, there is no need for the extra config option. In fact, it looks like the new playlist also includes lower bitrate streams; only the max bitrate (5000) is actually 60 fps. Both fixed and adaptive streaming work fine for me using the new playlist. In adaptive mode it starts at low bitrate / framerate and adjusts up.
So perhaps always use the new playlist in HLS mode?
By the way, does the tuple NEXDEF_SPEEDS actually do anything anymore? As far as I can tell it is never read.
Another thought: the name "nexdef" doesn't really make sense anymore, as that plugin has gone by the wayside. Maybe rename "nexdef" -> "hls" throughout mlbviewer?
I agree, there is no need for the extra config option. In fact, it looks like the new playlist also includes lower bitrate streams; only the max bitrate (5000) is actually 60 fps. Both fixed and adaptive streaming work fine for me using the new playlist. In adaptive mode it starts at low bitrate / framerate and adjusts up.
So perhaps always use the new playlist in HLS mode?
By the way, does the tuple NEXDEF_SPEEDS actually do anything anymore? As far as I can tell it is never read.
Another thought: the name "nexdef" doesn't really make sense anymore, as that plugin has gone by the wayside. Maybe rename "nexdef" -> "hls" throughout mlbviewer?
As far as I can tell, NEXDEF_SPEEDS is not actually used. I think it was meant to be the tuple to implement the speed switching in the GUI, but I never got around to it.
I agree that renaming NEXDEF to HLS makes more sense.
I'll look at all of this after work deadline in two weeks.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.