Announcement

Collapse
No announcement yet.

Wayland/Weston 0.95 Land In Ubuntu 12.10

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • e_tank
    replied
    Originally posted by Ansla View Post
    Can you elaborate a bit on this? From what I know vsync should work the following way: once frame x is sent to the monitor rendering starts for frame x + 1 with whatever information is available at that time and not render anything else until the next vsync event. Now, at 60 fps the interval between frames is ~16ms. If rendering the next frame took just 4ms and somewhere between ms 4 and 12 new info comes from another player should a properly coded engine render a new frame that takes into account this new info?
    you're right about how rendering with vsync enabled works, but there's no right way for every game, although there are definitely wrong ways to go about stuff like this. actually, for arcade style / old school games with fixed timesteps, as well as most game system emulators, double buffering and syncing to vblank on buffer swaps is optimal on modern hardware when it comes to minimizing input latency and getting a consistent framerate while eliminating tearing.

    a game like this may have a main loop that looks something like this:
    Code:
    while(not done)
        readInput()
        stepGameLogic()
        drawCommands()
        vsyncAndSwapBuffers()
    the above code under ideal conditions (proper gpu drivers, no lag from a non-crt display, etc) works like so:
    while frame_n calls the first 3 functions, frame_{n-1} is being rendered on the gpu, and frame_{n-2} is being scanned out on the display. frame_n then sends a swapbuffers command which should put it to sleep until the vblank fires. so with a game like this, when you press a button you should see a completed frame on the screen showing the games reaction within 3-4 frames worth of time later (for 60hz: 3.X/60 secs), depending on when you pressed the button - ie best case right before readInput, worst right after. (just in case you're wondering why it's 3-4 frames later and not 2-3, it's because a given frame only starts the scanout 2 frames worth of time later, it takes 1 additional frame for it to be completely displayed)

    also emulators can benefit from 120hz rendering, both to reduce lag and for simulating the effects of a crt on a non-crt displays.

    i also want to add that i'm worried about how wayland/weston will handle games/emulators that rely on vsync for timing, like the above example does. i mean, fullscreen applications shouldn't be a problem as it should just unredirect them, but i've yet to see a compositor that's able to work well when running these kinds of applications in a window (compiz and windows aero cannot, can't speak for macosx..)

    Leave a comment:


  • Ancurio
    replied
    Originally posted by Akka View Post
    If you compile, you can chose whatever you like in every distribution obviously, at least if the upstream developer support it as a compile directive.
    If he knew how to do that, he obviously wouldn't be ranting here.

    Leave a comment:


  • Akka
    replied
    Originally posted by Ansla View Post
    That's pretty much what Gentoo is trying to do, and it's doing a pretty decent job. I have 3 machines running Gentoo, 2 of them running over plain alsa and one with PA, all 3 work flawlessly. And I could even switch one to OSS if I wanted, though I think there would be some apps that no longer have OSS output even as compile time option...
    If you compile, you can chose whatever you like in every distribution obviously, at least if the upstream developer support it as a compile directive.

    Leave a comment:


  • Ansla
    replied
    Originally posted by Ancurio View Post
    Distros can't accommodate for every nitpick users might have. "I don't wanna use Devkit! Why won't they let me use HAL?" "I don't wanna use DBus! Why won't they let me use CORBA?"
    This is free software. If something doesn't work for you, move on.
    That's pretty much what Gentoo is trying to do, and it's doing a pretty decent job. I have 3 machines running Gentoo, 2 of them running over plain alsa and one with PA, all 3 work flawlessly. And I could even switch one to OSS if I wanted, though I think there would be some apps that no longer have OSS output even as compile time option...

    Leave a comment:


  • Ancurio
    replied
    Originally posted by AJSB View Post
    Well i would agree with the bug fixes but the truth is that the PA dev seem unable to fix these bugs and actually have the nerve to dismiss them discarding the responsibility to the apps....witch is funny taking in account their goals for PA with a perfect integration with ALSA,etc.
    If their goals were a perfect integration , THEY FAILED to deliver.
    But maybe the real reason is another...i believe that there is something fundamentally flawed in PA that not could simply be solved with "bug fixes".....maybe KLANG would the right answer.

    ...and you didn't listen to me....so i will repeat:

    All apps that use audio in Slackware simply work and work properly w/o PA.

    Many apps (in special games, mind you, not only very demanding games but even simple JAVA FICS clients like JIN) that use audio via PA in *UBUNTU* or it's derivatives like *LINUX MINT* DON'T WORK AT ALL as for AUDIO goes.


    So you are seeing things upside down...ALSA, except for the users that need multichannel (...and NO serious player EVER uses multichannel in a game even if it supports it) works just fine w/o latency problems, mysterious sound mutes/crashes or w/o make game CTD.
    PA, OTOH, makes all those nasty things with a bunch of games.



    ...and talking about games....did you noticed how quiet VALVE been lately ?

    They promised updates and nothing yet.......

    Did Michael saw L4D2 at Valve running with audio ON or OFF ?!?

    I wonder if Valve was comparing only *video* performance w/o audio enabled in both Windows and LINUX and now hit a sudden audio "issue" .


    I bet that in the end we will see a SteamOS UBUNTU-based new distro w/o PA using only ALSA or maybe ALSA+KLANG....and Nouveau ditched with a proper NVIDIA blob preinstalled.

    You're implying that Steam, or for that matter, any serious game devs actually talk to PA. They don't. They use abstractions like OpenAL or SDL_mixer, which work flawlessly with PA.

    You're talking about "bugs in PA". Can you point out some, as well as the source code in PA that is responsible for them? That would certainly interest me.
    Maybe I'm just biased because I've been running PA since Fedora14 without any problems whatsoever.

    Oh, and you might want to consider that devs of normal apps might phase out direct ALSA support entirely because PA has become the de facto standard.
    And your argument would become the same as
    "Why do they shove GTK2 down our throats? Everything worked perfectly with GTK1, but now everything breaks when I remove GTK2!".
    Distros can't accommodate for every nitpick users might have. "I don't wanna use Devkit! Why won't they let me use HAL?" "I don't wanna use DBus! Why won't they let me use CORBA?"
    This is free software. If something doesn't work for you, move on.

    Leave a comment:


  • Ansla
    replied
    Originally posted by elanthis View Post
    unless the monitor supports 120hz there is zero reason to actually render at 120hz. Note also that many games are just coded improperly and suffer additional lag in the whole system with vsync on; this is not the fault of vsync or the display system in general, but rather the game engines blocking everything until a vsync event instead of merely delaying rendering (triple buffering is the easy way to fix this for games that work that way, if your driver allows you to force it on)
    Can you elaborate a bit on this? From what I know vsync should work the following way: once frame x is sent to the monitor rendering starts for frame x + 1 with whatever information is available at that time and not render anything else until the next vsync event. Now, at 60 fps the interval between frames is ~16ms. If rendering the next frame took just 4ms and somewhere between ms 4 and 12 new info comes from another player should a properly coded engine render a new frame that takes into account this new info?

    Leave a comment:


  • AJSB
    replied
    Originally posted by Artemis3 View Post
    It is called pasuspend, but its seldom used as things work just fine by default. Also, you are full of lies: https://help.ubuntu.com/community/In...ion/MinimalCD/

    Short story? Don't like it, don't use it. Use your fav distro and let others use theirs. To each their own.

    My experience with PA is that it works just fine (Using Xubuntu 12.04). I run wine games (Ie. Skyrim, Civ4, etc) with sounds playing along with media players and web browsing (youtube et all) and it all works as expected, simultaneously even. I have reproduced the same experience in various different machines; you might have a particular problem with your setup.

    Valve doesn't need to do any disabling because the stuff works fine. What they might do is customize the interface for their own needs if they go with a linux console or games distro and need a much simpler interface; Ubuntu TV style.
    I know very well pasuspend, DOESN'T solve the problems AT ALL.
    Full of lies on what ?!? WTF as the minimal CD to do with PA and UBUNTU ?!? Does yjr minimal CD not include PA ?!? Let's imagine that it doesn't....SFW ?!? As soon as you start to pull the audio-related apps from the UBUNTU repositories, it will install PA.


    Yeah, in that you are correct, i don't like it , i don't use it.


    BS !!! You play the *WINDOWS* versions of them via WINE..
    Play a NATIVE game like ETQW in a PC with REALTEK AUDIO and press one of the VOIP buttons of the game....CTD.
    Install a JAVA game like JIN FICS Chess client, enable audio and let's see if you get any audio of it.
    etc, etc.

    Notice that i had two MB with build-in audio from different brands and same s**t with PA happened .

    Leave a comment:


  • Artemis3
    replied
    Originally posted by AJSB View Post
    Bur even talking about PA, UBUNTU and others should give a TRUE AND SIMPLE WAY TO DISABLE IT if we want
    It is called pasuspend, but its seldom used as things work just fine by default. Also, you are full of lies: https://help.ubuntu.com/community/In...ion/MinimalCD/

    Short story? Don't like it, don't use it. Use your fav distro and let others use theirs. To each their own.

    My experience with PA is that it works just fine (Using Xubuntu 12.04). I run wine games (Ie. Skyrim, Civ4, etc) with sounds playing along with media players and web browsing (youtube et all) and it all works as expected, simultaneously even. I have reproduced the same experience in various different machines; you might have a particular problem with your setup.

    Valve doesn't need to do any disabling because the stuff works fine. What they might do is customize the interface for their own needs if they go with a linux console or games distro and need a much simpler interface; Ubuntu TV style.
    Last edited by Artemis3; 26 August 2012, 09:50 PM.

    Leave a comment:


  • AJSB
    replied
    Originally posted by Teho View Post
    I don't think so. They should just fix the bugs their users have with PulseAudio.

    That's not how it works. Ubuntu and Debian compile packages with PulseAudio support enabled and Slackware doesn't. PulseAudio is compatible with ALSA so those applications will still work on Slackware altough they can't take use of any PA features and might not work properly. Application usually depend on libpulse that does exactly what you are after: if PulseAudio is not present then it uses ALSA.
    Well i would agree with the bug fixes but the truth is that the PA dev seem unable to fix these bugs and actually have the nerve to dismiss them discarding the responsibility to the apps....witch is funny taking in account their goals for PA with a perfect integration with ALSA,etc.
    If their goals were a perfect integration , THEY FAILED to deliver.
    But maybe the real reason is another...i believe that there is something fundamentally flawed in PA that not could simply be solved with "bug fixes".....maybe KLANG would the right answer.

    ...and you didn't listen to me....so i will repeat:

    All apps that use audio in Slackware simply work and work properly w/o PA.

    Many apps (in special games, mind you, not only very demanding games but even simple JAVA FICS clients like JIN) that use audio via PA in *UBUNTU* or it's derivatives like *LINUX MINT* DON'T WORK AT ALL as for AUDIO goes.


    So you are seeing things upside down...ALSA, except for the users that need multichannel (...and NO serious player EVER uses multichannel in a game even if it supports it) works just fine w/o latency problems, mysterious sound mutes/crashes or w/o make game CTD.
    PA, OTOH, makes all those nasty things with a bunch of games.



    ...and talking about games....did you noticed how quiet VALVE been lately ?

    They promised updates and nothing yet.......

    Did Michael saw L4D2 at Valve running with audio ON or OFF ?!?

    I wonder if Valve was comparing only *video* performance w/o audio enabled in both Windows and LINUX and now hit a sudden audio "issue" .


    I bet that in the end we will see a SteamOS UBUNTU-based new distro w/o PA using only ALSA or maybe ALSA+KLANG....and Nouveau ditched with a proper NVIDIA blob preinstalled.
    Last edited by AJSB; 26 August 2012, 09:35 PM.

    Leave a comment:


  • russofris
    replied
    Posters suggesting that pro/competitive-gamers notice 10ms differences in latency are correct. When you're playing, you aren't really reacting, you're pushing buttons in a timed sequence. It becomes, "How quickly can I push F1 followed by F2, and still have them both register correctly in the sequence which you entered them". Press F2 too soon after F1, either the sequence isn't registered (comp thinks you pushed both at the exact same time), or one of the hits doesn't register at all.

    I hit the top 20 players on BC in Eve online as an interdictor pilot that leveraged a Low-latency setup that was little more than, F1 --> F2, F3, F2, click, F3, F2, click, F3, F2, click, F3, F4, click. The whole process took less than a second, and assured that whatever came through the stargate wasn't going anywhere. Watch it on video and it looks like I'm just spamming the keyboard and mouse for a moment. It couldn't be Fraps'd because Fraps would increase the latency too much to pull off the maneuver.

    F

    Still top 30 after 6 months away from the game.
    Last edited by russofris; 26 August 2012, 09:08 PM.

    Leave a comment:

Working...
X