Jump to content

Improve streaming performance from Server to Android devices?


Crestj

Recommended Posts

Not sure how streaming is dealt with but it can be quite slow and buffer a lot.

My server is an HP Proliant Microserver N36L.

As it's cpu is not built for decoding / encoding, would a faster cpu be better for this or is it more down to wifi speeds etc?

My wifi is 5ghz and the android devices are nexus 7's and Samsung galaxy tab 3 's.

 

Sent from my Nexus 5 using Tapatalk

 

Edited by Crestj
Link to comment
Share on other sites

Transcoding is pure cpu grunt work. We have some changes in the wings that may make it better for lower end cpu's but I don't think they will be fully finished by the next server build.

 

Have a look at one of your ffmpeg logs that playback buffered in. Look for fps=  if it is lower than the source framerate then it is down to cpu if it is higher then there is a bottle neck somewhere else.

Link to comment
Share on other sites

Thanks, I'll take a look. Where are the logs Btw?

I highly suspect my cpu is not up to this but upgrading means a new server :-(

 

Sent from my Nexus 5 using Tapatalk

 

Edited by Crestj
Link to comment
Share on other sites

Ah right, the details are within the server log files?

 

Sent from my Nexus 5 using Tapatalk

 

 

Link to comment
Share on other sites

Latchmor

Hi, they are in the same folder but the server and ffmpeg log files are separate. You'll easily spot them though as they have ffmpeg in the name!

Cheers

;)

Edited by Latchmor
Link to comment
Share on other sites

Lol oh yes! Incidentally I've just watched my cpu go straight to 98% when ffmpeg .exe starts and stays there with nothing appearing on my tablet.

It would seem your average low watt / low power server cpu is the opposite that's needed for transcoding.

I presume ffmpeg don't have a gpu capable version? I could put one of those in a server.

 

Sent from my Nexus 7 using Tapatalk

 

Edited by Crestj
Link to comment
Share on other sites

Do people run mb Server on more powerful desktops for Android streaming then?

Can you run 2 mb servers pointing to 1 library, one for transcoding and one for your htpc?

 

Sent from my Nexus 5 using Tapatalk

 

 

Link to comment
Share on other sites

Ok, looks like I need to investigate newer Server hardware then.

:-(

 

Sent from my Nexus 5 using Tapatalk

 

 

Link to comment
Share on other sites

Redshirt

The CPU usage isn't the only marker as to whether transcoding is over taxing your hardware. Transcoding uses as much cpu as is available. It's still in the 90%+ range with my core i7. The real question is what are the fps= values in your ffmpeg logs. That defines whether or not your server can keep up.

Link to comment
Share on other sites

Here's the log: https://dl.dropboxusercontent.com/u/11699277/ffmpeg-d7c82038-3e3b-400a-94f6-ff8467a074f1.txt

 

Looks like it gets about 11 FPS but the movie plays for about 3 minutes and then pauses (rebuffering I guess) then starts again.

 

Does that suggest the server CPU is not up to the task? (poor thing is only an old AMD Turion II 1.3Ghz !!!)

Link to comment
Share on other sites

Redshirt

yeah it's transcoding at well below the videos framerate. The server can't generate the data fast enough. 

Link to comment
Share on other sites

Hmm do all you guys have the same issues or do most people use their desktops and leave them on 24/7?

 

Sent from my Nexus 5 using Tapatalk

 

 

Link to comment
Share on other sites

Redshirt

I have two servers running, one on my desktop which I dev on. The other is my real server which is a Core2Duo e6600 and it is able to transcode pretty much anything I throw at it. Depending on the source media it can even transcode more than one video at a time. That server runs 24/7. 

Link to comment
Share on other sites

Latchmor

Hi, I have an HTPC which is on all the time and it runs the MBS. Most of my Media is on a NAS that I turn on/off as required. HTPC specs below, it was built 1.5 years ago and like Red above it transcodes anything I've tried.

 

Streacom FC5 OD Fanless Aluminium Chassis
160W Pico PSU with 150W Adapter Power Kit
Gigabyte GA-Z68MX-UD2H-B3
Intel Core i5-2405S @ 2.5GHz
Corsair XMS3 8GB DDR3 1600 MHz CAS 9 Dual Chan
Crucial 128GB M4
Samsung Spinpoint 1TB
Streacom Sony BC-5600S Slot Load Blu-Ray
TBS6284 Quad DVB-T2/DVB-C
HFX 554 Flexible Riser Card PCI-E x1
Windows 7 64 bit
 
Cheers
Edited by Latchmor
Link to comment
Share on other sites

I'm running MBS on a headless file server which has a soon-to-be-updated AMD Phenom II 960T.  My main HTPC is a recent build with an i7-3770S (it has all the tuner cards), my secondary HTPC uses an i3-3225.  All of these are separate from my main desktop system (which is also in need of a serious upgrade <g>).

 

Both my file server (PII x4 960T) and my main desktop (PII x4 965) are capable of handling transcoding on the fly, but neither of them come close to the IvyBridge chips in performance.  I'm rather fond of the i7-3770S' specs for low-end servers and HTPC systems - the TDP is only 65W and if you're smart you can make a system that is virtually silent even under load.

 

Main HTPC:

Silverstone Media Center case: ML03B

Seasonic 80+Gold 360W PSU: SSR-360GP

Gigabyte Z77 motherboard: GA-Z77MX-DH3

Intel IvyBridge CPU: i7-3770S @ 3.1GHz

Kingston HyperX Blu 16GB (2x 8GB) 1600MHz DDR3 RAM: KHX1600C10D3B1K2/16G

Samsung 840 Series 120GB Sata3 SSD: MZ-7TD120BW

Western Digital RED 3TB Sata3 NAS HD: WD30EFRX

Pioneer 15x Internal BD/DVD/CD burner: BDR-208DBK

(4x) Avermedia PCIe Dual ATSC TV Tuner: A188 HD Duet

(4x) Noctua 80mm PWM Case Fan: NF-R8-PWM

 

With the four Noctua fans providing positive air pressure into the case and using the stock Intel cooler, all of the fans run at their loweset speed the vast majority of the time.  You literally cannot hear the system from further than a foot away unless the optical drive is in use.

Edited by markshu
  • Like 1
Link to comment
Share on other sites

Thanks for the info.

Might create a thread on mini itx m/b and cpu recommendations.

 

Sent from my Nexus 5 using Tapatalk

 

 

Link to comment
Share on other sites

  • 1 year later...

Can someone break down what this means in the log. Good, Bad, Average? 

 

frame=  156 fps=0.0 q=-1.0 size=    1494kB time=00:00:06.35 bitrate=1925.3kbits/s    
frame=  328 fps=327 q=-1.0 size=    3580kB time=00:00:13.29 bitrate=2206.8kbits/s    
frame=  522 fps=347 q=-1.0 size=    5886kB time=00:00:21.09 bitrate=2285.3kbits/s    
frame=  689 fps=344 q=-1.0 size=    7997kB time=00:00:27.69 bitrate=2366.0kbits/s    
frame=  914 fps=365 q=-1.0 size=   10335kB time=00:00:36.65 bitrate=2310.0kbits/s    
frame= 1120 fps=373 q=-1.0 size=   12606kB time=00:00:45.01 bitrate=2294.2kbits/s    
frame= 1336 fps=381 q=-1.0 size=   15471kB time=00:00:53.61 bitrate=2364.0kbits/s    
frame= 1532 fps=382 q=-1.0 size=   17907kB time=00:01:01.29 bitrate=2393.4kbits/s    
frame= 1764 fps=391 q=-1.0 size=   20174kB time=00:01:10.76 bitrate=2335.5kbits/s    
frame= 2009 fps=401 q=-1.0 size=   23204kB time=00:01:20.36 bitrate=2365.4kbits/s    
frame= 2173 fps=394 q=-1.0 size=   24956kB time=00:01:27.08 bitrate=2347.7kbits/s    
frame= 2351 fps=391 q=-1.0 size=   26807kB time=00:01:34.23 bitrate=2330.5kbits/s    
frame= 2540 fps=390 q=-1.0 size=   29167kB time=00:01:41.78 bitrate=2347.5kbits/s    
frame= 2772 fps=395 q=-1.0 size=   31930kB time=00:01:51.08 bitrate=2354.8kbits/s    
Link to comment
Share on other sites

fps means frames per second.  In other words, how many frames per second it's able to encode.

 

You need 24 fps for smooth playable video so that performance is quite good.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...