I have the 512 Pi and am using an 8gb class 10 sd card. I am wired to the pi from my computer through a Linksys WRT54g2 v1 router. This router is 10/100.
I am trying to play an .mkv file that is about 18gb in size and a bitrate of 15mb/s. I can bring up the display that shows bitrate and cache. The cache starts at about 63mb and slowly dwindles down to 0 after about 3-4 minutes. Then the video keeps pausing. If I pause the movie and let it fill up again to about 60, I will get another 3 minutes or so until it happens again.
Should this be happening with my setup? Is there anything I can change? Is the bottleneck my router and the only fix is to get a new one?
The bitrate of the movie could be more the problem, Pi can have trouble filling the cache fast enough if the bitrate is constantly high. The Pi only has a 10/100 ethernet port (which is connected via a USB2 bus), so your local network shouldn't be a problem if everything is wired. I find 1080p works as long as it doesn't include long high speed / fast movement scenes.
I was able to play the same file with no problems on a different network. The PC I used was the same. The differences were:
1) Router - cisco e1000 (this is also 10/100 but a newer router)
2) Home theater with a receiver
The setup I am having this issue with is just hooked up straight to a samsung tv via HDMI cable. Do you think something about the older WRT54g2 router could be causing the issue?
Is it a movie that has a lot of action or fast moving scenes? Does it do the same pause symptoms when you watch other 1080p movies?
Can you watch 720p content without any pausing?
The router you're using now is much older than the E1000. They both have 10/100 NICs so it shouldn't be the problem. Using older equipment for something as demanding as streaming high bitrate 1080p MKVs could be problematic. What firmware are you using? Do you have it configured properly without using QOS options and other things that may choke it? Make sure whatever you do you're not using a modem/router combo given to you by your internet service provider. They are utter crap especially if you are trying to route a lot of constant bandwidth through the system.
It could simply be a combo of having to stream a really high bitrate file plus haing to decode the audio at the same time is casuing a hiccup. Can you watch other action based movies in 1080p without any pausing? If you can watch other action packed 1080p MKV files while it still has to decode audio without pausing than that takes the receiver issue possibly out of the equation.
If you don't have the router configured properly and are using a service like QOS and others that could be choking the bandwidth as well.
We really need to know if it's doing the same thing with other 1080p MKV files or is it just happening on this single high bitrate MKV?
A 1080p movie with a bitrate of about 10mb/s worked perfectly. While watching the movie, the cache didn't really dip at all. In the higher bitrate movie the cache drops pretty fast. I'm about to try another action movie thats closer to 15mb/s to see if I get the same problem. I have not configured anything on the router. Settings are pretty much defult. Firmware is original as they no longer support the device. Can you go into some details about router configuration I could try?
A 1080p movie with a bitrate of about 10mb/s worked perfectly. While watching the movie, the cache didn't really dip at all. In the higher bitrate movie the cache drops pretty fast. I'm about to try another action movie thats closer to 15mb/s to see if I get the same problem. I have not configured anything on the router. Settings are pretty much defult. Firmware is original as they no longer support the device. Can you go into some details about router configuration I could try?
Login to the router
goto the Application and Gaming section
under the QoS tab make sure it is not enabled.
QoS helps divert bandwidth away in order of preference as some applications may need more at a certain time. Can cause issues when trying to stream. It may not be enabled but it's something to check.
We need to know if during another action movie in 1080p if you also get the stutter. If you do not I don't think it's due to the Pi needed to decode the audio. If that were the case it would not happen only during one 1080p MKV (even if it is high bandwidth) but it would happen more often as the Pi is always decoding the audio.
I tried another movie with a 15mb/s bitrate and get the same exact issue. The cache quickly decreases and within 2 minutes I get the stutter. If I pause to let the cache fill up again, I can get another ~2 minutes of perfect playback. I will try the dd-wrt firmware and report back.
I tried another movie with a 15mb/s bitrate and get the same exact issue. The cache quickly decreases and within 2 minutes I get the stutter. If I pause to let the cache fill up again, I can get another ~2 minutes of perfect playback. I will try the dd-wrt firmware and report back.
You will benefit in everything you do by updating your firmware anyways.
After that if you or someone you know can help you overclock your Pi slightly you can see if that helps with the decoding of the audio...
I asked the developer Longchair to see if he has any thoughts on how to troubleshoot this since a few people are seeing it.
I have the Pi connected to my router without a receiver and I do not see any stutter on high bitrare 1080p MKV's.
One thing you might want to consider, what are you settings for System > Audio Output > AC3 capable receiver & DTS Capable receiver. If any of these are on, can you try to disable them and see if it makes any difference ?
Also what is you setting under System > Advanced > Vertical blank Sync ? try to disable this one if it's enabled.
Lemme know what you findings are on these two tests :)
One thing you might want to consider, what are you settings for System > Audio Output > AC3 capable receiver & DTS Capable receiver. If any of these are on, can you try to disable them and see if it makes any difference ?
Also what is you setting under System > Advanced > Vertical blank Sync ? try to disable this one if it's enabled.
Lemme know what you findings are on these two tests :)
Longchair,
Thanks for all the hard work you put into developing Rasplex. I try to donate whenever I can. I think these guys are in good hands now that an actual developer might have some ideas.
Could it even possibly be the fact that the Pi has to decode the audio? Is it that big of a chore?
Personally I think he's network is the bottleneck, upgrade too a gigbyte netowrk instead. Considering 10/100 was never design too cater too 720 or 1080 streaming considering that the 10/100 is an 6-8 year old technology. read this url http://www.pcworld.com/article/173129/upgrade_to_gigabit_networking.html
Upgrading to gigabit will not really help. The Raspberry is using a 100mbit-NIC that is connected via USB2. If you check the speed of this via e.g. iperf you will get ~ 90 - 94 mbit/sec, which is very good for a 100 mbit NIC. So the Raspberry as single device will not benefit from a gigabit switch (of course overall performance in the network will benefit...)
So even if your are playing files with a overall bitrate of 15 mbit/sec the network will not be the bottleneck - assuming that the 100mbit network is running fine (cables, switches etc.)
You should try the tips given by LongChair.
- No decoding of audio in the Raspberry (of course worls only if you have a receiver that can decode the audio-stream)
- deactivate vertical blank sync
This is also my setting. Running 9.9.20, 100mbit connect to gigabit switch, OS running from USB-stick. So far I don´t have any issues with 1080p
So I updated to the dd-wrt firmware as you suggested NMansell, and unfortunately there was no difference.
My setting for AC3 capable receiver and DTS capable receiver were off, so I tried putting them on and there was no difference.
I then tried disabling the vertical blank sync, which was set to let the driver decide, and again there was no difference.
Every time the cache runs out at about 3minutes 22 seconds into the movie give or take ~5 seconds and I get the pause/unpause.
Keep in mind I was able to run this movie as I recall without any problems on an E1000. Any other ideas? Can I blame the crappy router at this point despite upgrading the firmware? As I understand correctly there are other things bad about this old router besides just the 10/100 which it seems like isn't the issue.
So I updated to the dd-wrt firmware as you suggested NMansell, and unfortunately there was no difference.
My setting for AC3 capable receiver and DTS capable receiver were off, so I tried putting them on and there was no difference.
I then tried disabling the vertical blank sync, which was set to let the driver decide, and again there was no difference.
Every time the cache runs out at about 3minutes 22 seconds into the movie give or take ~5 seconds and I get the pause/unpause.
Keep in mind I was able to run this movie as I recall without any problems on an E1000. Any other ideas? Can I blame the crappy router at this point despite upgrading the firmware? As I understand correctly there are other things bad about this old router besides just the 10/100 which it seems like isn't the issue.
Thanks for the help!
There was a slim chance of it helping the Plex issue but it is for sure a huge upgrade over the stock Linksys firmware.
The two main differences you stated between it working and not working were the router and not using a receiver now.
I have my Pi connected directly to my TV like you do and I do not have a receiver for audio. I have a very modern router. I am able to stream 1080p movies in MKV format with bitrates higher than 15-17mbit/s without issue. I am also not overclocking my Pi. So we are using the exact same equipment besides your older router. The router in theory should be able to keep up just in regards to it being 10/100.
Without the ability to see your network setup directly I can only give a good esitmation on what I think it is. I do not think that the Pi needing to handle the DTS audio would cause such a bad delay, but Longchair would have to answer that. It seems to be more of an issue of the Pi getting the high bitrate data consistently than it not being able to decode fast enough.
Everything works fine for you with a 10mbit/s file. When you goto around 15mbit/s your network can not deliver the information in a constant form and it's causing a timeout. The key in my eyes is finding out where that kink in your network is and I can't think of anything except the CAT 5 cabling or router. It can't be a faulty Pi because it worked fine at another location with a newer router.
really high bitrate streaming content is very demanding and any sort of blip in the system will cause a timeout like you're seeing. it requires the data information to be available at all times and at a constant rate.
After I updated the firmware, I had forgotten to change my computer from static IP to autoIP and autoDNS. After making my last post, I changed it back to autoIP and autoDNS and then tried the movie again for ■■■■■ and giggles. The movie played much better than before with the cache never dipping below 60mb. I only played the movie for 2 minutes before stopping it (I should've let it go longer). The difference now was that although the cache stayed full, there would be a half second stutter every 20 seconds or so. I then rebooted the pi and tried playing the movie again and its back to the same issue as before with the cache dropping.
Is there way to put this together or is it just coincidence. Would the ips of these devices on my LAN have anything to do with anything?
You mentioned CAT 5 cabling. There is a slight difference between the cabling in the setup with the e1000 and receiver and my current setup. In the setup that worked I had a 100ft CAT6 ethernet cable going from my PC to the router and then a much shorter cable (not sure if CAT 5 or 6) going from the router to the Pi. Currently I have a 10ft CAT 6 cable from my pc to the router and a 100ft CAT 6 from my router to the Pi.
After I updated the firmware, I had forgotten to change my computer from static IP to autoIP and autoDNS. After making my last post, I changed it back to autoIP and autoDNS and then tried the movie again for ■■■■■ and giggles. The movie played much better than before with the cache never dipping below 60mb. I only played the movie for 2 minutes before stopping it (I should've let it go longer). The difference now was that although the cache stayed full, there would be a half second stutter every 20 seconds or so. I then rebooted the pi and tried playing the movie again and its back to the same issue as before with the cache dropping.
Is there way to put this together or is it just coincidence. Would the ips of these devices on my LAN have anything to do with anything?
You mentioned CAT 5 cabling. There is a slight difference between the cabling in the setup with the e1000 and receiver and my current setup. In the setup that worked I had a 100ft CAT6 ethernet cable going from my PC to the router and then a much shorter cable (not sure if CAT 5 or 6) going from the router to the Pi. Currently I have a 10ft CAT 6 cable from my pc to the router and a 100ft CAT 6 from my router to the Pi.
if all of your network traffic is through one router I don't think it could really be an IP issue. you were still seeing a stutter issue without the cache dropping.
cat five cabling run can be over 250 feet without any issue. cat six cabling can be over 650 feet.
since you are using the ddwrt firmware now why not install a band width monitor on the router so you can see the output from your pc and how fast its entering the Pi when it leaves the router? maybe you will be able to see the peaks and valleys and if the congestion is happening in the router
Can you point me in the right direction on how to install the bandwidth monitor? Alot of this is very foreign to me.
Update: I tried playing a different 1080p 15mb/s mkv that only has AC3 audio and get about 9 minutes of playback before encountering the same issue.I
im not sure of that specific router but its done via the command line interface on the router firmware. you will also have to telnet to the router. it may be too advanced it sounds like.
youre attemping to use a 6 year old router that was not built to handle any of this. streaming back then was a foreign concept. the little elves at linksys didn't even perceive 1080p 15mb/s mkv's going through this thing. even the reviews when it came out 6 years ago said it had very bad throughput. i think when youre hitting 15 mb/s the internal hardware of the router simply cannot sustain the data it needs to for high bitrate. youre going to continue to give yourself huge headaches
Thanks for the help. I’m just gonna grab a new router. The thing is over 6 years old anyways. What router do you use where you are able to stream with no problems? I’m looking to spend no more than $130. Any suggestions? Thanks