The Holy Grail of XBMC for Mac OS X achieved? - 1080p 24Hz with no dropped frames
#1
I've spent the good majority of the last two days tweaking OSXBMC, OSX Display Settings, and the settings on my Pioneer Kuro 1080p display, and I've finally reached the goal. I currently have 1920x1080p playback, 24hz refresh rate with buttery smooth motion and no juddering, and zero dropped frames. I'd like to share this info with those who would like to bypass the hours of trial and error.

Setup:
Mac Mini 2.33 ghz Core 2 Duo / 2 GB RAM
DVI - HDMI 1.3a cable from monoprice

Source : Infrant ReadyNAS NV+ (Radiator 4 ) XRaid
Connected through Gigabit ethernet, CAT-6 cables, optimized for OSX transfers, and AFP.

Pioneer PDP-5010 50" 1080p ( Kuro )
Necessary Settings - : Film mode OFF, HDMI Settings to Video, not PC

OSXBMC - Screen set to 1920x1080 , Vertical Sync set to always on
Set Streaming Cache to the maximum value

Test Files :
300 1080p, 12.7 GB, AC-3 audio
Transformers 1080p, 13 GB File, DTS 1.5mb audio stream
Apocalypto 1080p, 12.5 GB file, AC-3

Theoretically this should work for any Pioneer Kuro Display, including the 720p models which accept the 1080p/24 signal. I have not tested it with any of the 120hz LCD displays, but the results of my testing are telling me that 72hz very problematic with the current state of OSX/OSXBMC.

Here are the basic steps for those with a Pioneer Kuro Display:

- Connect the Mini with a DVI-HDMI connected to the Pioneer
- Power on the Pioneer, and set the HDMI Input to PC under HDMI settings.
- Boot the mini. it will default to 1920x1080 60hz.
- Open the Display Preferences. For 1920x1080, all Refresh options will be greyed out except for 23.9hz and 60hz NTSC.
- Select 23.9 HZ and wait for re-sync.
- Now you will have a 23.9hz choppy image sent to the Pioneer. The display input info on the Pioneer will show 1920x1080 24hz. The problem now is that the Pioneer is in PC mode and will not covert the 23.9hz input to it's native 72hz properly.
- The Trick: Sleep the Mac Mini. Go to the setup on the Pioneer and now change the input back to Video, from PC. Make sure under advanced settings that Film mode is set to : OFF.
- Wake the Mac Mini. Now the input will say 1080 24p, INSTEAD of 1920x1080 24hz. What's happening now is that the Mini is outputting a true 24hz signal to the Pioneer which is processing it as a 1080p HDMI video input instead of a 1920x1080 PC monitor resolution.
- Run OSXBMC, and have the resolution at 1920x1080 Fullscreen.
- Video Playback should be a true 3:3:3 cadence now.

I am experiencing zero dropped frames during playback. Even during intense scenes when the bitrate shoots to the roof. If I jump around the file during streaming, I do experience some dropped frames, but during actual continuous playback I have yet to experience any dropped frames. I have tested this through a USB2.0 Drive, and my ReadyNAS NV+ on gigabit.

I believe that this would be possible on a 2.0ghz C2D mini, but I did not have one for testing. Since the Refresh is now 24hz instead of 60hz, the Mini is not working nearly as hard to keep up. The only problem with this is that not many displays support 24hz.

I would like to thank Elan for bringing OSXBMC to us. It is amazing that at this early point in development that we have a solution for 1080p 24ghz film playback on relatively cheap hardware.
Reply
#2
Thumbs Down 
DeanM3 Wrote:Setup:
Mac Mini 2.33 ghz Core 2 Duo / 2 GB RAM...
Apple does not sell a 2.33GHz Mac mini, so I assume that you have upgraded the CPU in yours yourself? ...if so then I would not call that "The Holy Grail". Upgrading a Mac mini to a faster CPU is very expensive, non-trivial, and not something your average Mac user ever do, plus I believe it also voids the warranty.

IMHO if you are willing to go to such extreme lengths then instead of a Mac mini you might just as well buy a AOpen miniPC MP965-DR and put in any Socket-P CPU you like into it without voiding the warranty, then run XBMC for Linux on it.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
#3
Thumbs Up 
Big Grin Great job DeanM3! And thank you for posting your findings! Very informative and even though I don't have a mac mini (yet.) I found about five VERY useful insights from your posted settings/results... especially in regard to 24hz and proper interfacing with a plasma/lcd setup!

Congratulations on achieving 1080p without dropped frames!!!! Shocked
Reply
#4
Dean, first of all thank you very much for your informative post! Lots of good stuff in there. I wanted to make a few specific comments on your post, because I want to make sure I understand it.
  • In terms of the Mini not having to "work as hard" at 24Hz refresh rate, I don't think that the display refresh rate corresponds at all to how much the CPU has to work, since it's the video hardware doing the work.
  • When OSXBMC is playing a 24p video file, it attempts to update the display 24 times a second regardless of the refresh rate of the display.
  • When display sync is enabled, the refreshing of the display by the app is synchronized with the refreshing of the video output.
  • If the application is late in refreshing the display, it will miss a vertical retrace and thus its update will coincide with the next refresh (right?).

If these things are true, then:
  • If the video is 24p and the display resolution is 30Hz or 60Hz, there will be some visual jitter which corresponds to the difference in cadence. In the first case a frame might be 1/30 second late, and in the latter case 1/60 second late.
  • If the video is 24p and the display is running at 24p, and the application "misses" a retrace, that frame will be off by 1/24 second.

From the conclusions above, I would think that you'd want a display running at the highest possible refresh rate to minimize the visual jitter, and that running a display at the exact rate of the video would be most dangerous because a late frame is penalized more.

I want to play around with this more because my Sony Bravia display is capable of 24p display, and I'm going to full around with SwitchResX to see if I can get it working. But I want to understand some of these other things first.

Can you comment on this?

Many thanks,

-elan

P.S. Assumedly if you're watching 29.997fps material you have to take the display out of 24p mode.

P.P.S. I don't think it would be that hard to have the code look for the optimal refresh rate before playing a video, and switch to it.
Reply
#5
I too am using a Sony Bravia (KDL-46XBR4) with my new Mac Mini 2.0GHz and also interested in getting the best possible picture from my setup.

I do have a question about the setup described that implies you are getting audio over the DVI-HDMI cable...

I thought the Mac Mini only supported audio out of the two ports in the back and not over HDMI (even with a 1.3a cable)...Am I wrong?
Reply
#6
gmackenz Wrote:I too am using a Sony Bravia (KDL-46XBR4) with my new Mac Mini 2.0GHz and also interested in getting the best possible picture from my setup.

I do have a question about the setup described that implies you are getting audio over the DVI-HDMI cable...

I thought the Mac Mini only supported audio out of the two ports in the back and not over HDMI (even with a 1.3a cable)...Am I wrong?

DVI doesn't carry audio. You will need to use the optical Audio out on your Mini.
Reply
#7
Elan,

It is true that PAL (25 fps) and 30 fps will not work with this method. I have tested both material and it seems that frames are being dropped at random to match the 24 hz of the display. The refresh rate would have to be adjusted to match the source material.

What I can confirm is true, at least for Pioneer Kuro Plasma's, is that the display will apply different processing and settings for PC-type inputs, and HDMI-type inputs. When I have the Pioneer set to look at the Mini's output as a PC source, it can auto-detect compatible refresh rates match to the display, 24/60/74 in this case. When the HDMI input is set to VIDEO only a native 480/720/1080 signals can be sent. Additionally the Pioneer ( in VIDEO mode) will apply various video filters and modifications, such as a 3:2 pulldown and the various Film mode settings.

Typically this Display does a good job of detecting a 3:2 cadence and eliminating judder. I have tested this with various HDMI DVD-players and The NMT Popcorn Hour A-100 (with 1080p mkv files). When using the Mac Mini however, the display never seems to pick up on the 3:2 cadence properly and do the necessary pull down. I've tested this with 720/1080 sources at 60hz. I think that it is possible that the Mini is not sending out a true "standard" 1080p signal. Elan, you are also correct about the late-frame penalty. Although the info is not showing dropped frames, occasionally I will notice a "missed" frame.

Here are my testing results thus far ( using only the OS built-in display modes, not SwitchResX )

Display Set to PC Mode:
1280x720 - 60hz : 30 Fps works flawless, 25 FPS has inconsistent speed, 24 fps has no dropped frames, but a consistent judder
1280x720 - 24hz : Although it shows up in the display module, it is Not compatible

1920x1080 - 72 Hz : Does not work
1920x1080 - 60 Hz : 30 Fps works fine, 25 FPS has inconsisten speed - 24 Fps works with a consistent judder. Only dropped frames when FF/RW through the file
1920x1080 - 24 Hz : 30 Fps video speed is inconsistent, 25FPS has a dropped frame in each sequence, 24 fps works great. Smooth motion and no dropped frames.

The next step for me, will be to install SwitchResX and do some serious and tedious trial and error tests. I think the ideal result would to develop a custom SwitchResX config that would have the Mini outputting a true "standard" 1080p 60hz signal, which would allow the playback of 24/25/30 fps material, while allowing those of us with TV's capable of 24 fps playback to properly display judder free film content.

I have set up my Mini to be controlled via Remote Desktop, which will allow me to tweak SwitchResX and the Display Settings and allow me to fix my mistakes without too much down time.
Reply
#8
In my last post, I should have added that the 1920x1080 setting that produced smooth 24FPS, the display was actually in the HDMI mode, not PC.
Reply
#9
I tried to get my Sony Bravia display to accept 1080/24p input from my Mac Mini over the weekend and failed. The display claims to support this mode, but it doesn't advertise it because the Mini doesn't show it. I created a few modes in SwitchResX but couldn't get the display to accept any of them.

Thanks for your reply, I'm starting to understand this all better.

-elan
Reply
#10
Elan, check if your bravia has a PC/Video mode for the input. You could attempt my trick of putting the display to PC mode and then swapping back to Video after the Mac has been set in 24hz mode.

I'm assuming your bravia is a 120hz native panel? If so, does the mac mini's GMA950 support that refresh rate?
Reply
#11
DeanM3 Wrote:I'm assuming your bravia is a 120hz native panel? If so, does the mac mini's GMA950 support that refresh rate?

No, I don't think it is. It's the 46" Costco Bravia (the 46VL130). It specifically mentions support for 1080/24p mode via HDMI.

-elan
Reply
#12
Elan,

Looks like that is a relabeled KDL-46V3000, a 60hz display. I accepts a 24p signal, but it must do some sort of trickery to match the 60hz without judder.
Reply
#13
From what I understand after doing some more research myself, it has a 48Hz mode. I'll try to see if I can get the Mac Mini to produce this.

Quote:The KDL-46V3000's HDMI port also accepted 1080p input at 24 Hz (1080p24), and Sony claimed the TV automatically displays this video format using a 48 Hz refresh rate (24 Hz x 2 - an even multiple) that eliminates the shaking/wobbling effect known as judder that is caused when 24p material is converted for display on a typical (60 Hz refresh rate) HDTV—the telecine process.

-elan
Reply
#14
Can you get 24fps on this clip though? http://rapidshare.com/files/82525583/kil...4.mkv.html

Its an extereme example of high bitrate content but you might once in a while run into stuff like this in day to day usage. My 3.6ghtz OC'd Core Duo E8400 just about survives the ordeal and can playback the clip with a couple of dropped frames...
Reply
#15
I'll test that file when I get home from work today and report the results. The most strenuous file i've run through would be Transformers (13gb) at 1080p with DTS sound.
Reply

Logout Mark Read Team Forum Stats Members Help
The Holy Grail of XBMC for Mac OS X achieved? - 1080p 24Hz with no dropped frames0