Announcement

Collapse
No announcement yet.

H.264 VA-API GPU Video Acceleration For Flash

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

  • #11
    Originally posted by nanonyme View Post
    Just how did they slap Adobe in the face? There's still tons of Flash content Gnash can't play at all, I'd prefer time spent on getting higher Flash version support more than hacking around with video acceleration. (who watches that high quality content over Flash anyway that this improvement matters a bit?)
    Speak for yourself. If you've only ever concentrated on Gnash, sure you might have your own gripe with the piece of code. If, like millions of flash users, you've been wondering why Adobe can get their act together and provide some video that doesn't hog anything less than a high end CPU, only to hear their excuses that it's too hard a problem to solve (when any media player can play 2 times more complex videos flawlessly), you'd give a bit more slack to Gnash.

    Comment


    • #12
      Originally posted by miles View Post
      Speak for yourself. If you've only ever concentrated on Gnash, sure you might have your own gripe with the piece of code. If, like millions of flash users, you've been wondering why Adobe can get their act together and provide some video that doesn't hog anything less than a high end CPU, only to hear their excuses that it's too hard a problem to solve (when any media player can play 2 times more complex videos flawlessly), you'd give a bit more slack to Gnash.
      Well, fine. I'm impatiently waiting for their GLSL support though so they also get some accel method for Flash games (which make a significant part of Flash content on the web).

      Comment


      • #13
        Gnash is getting there...

        Gnash flash support is around Flash lite 3. Meaning it can handle AVM1, AS2 and a bit of AS3. Now all it needs for most video sites to work is AVM2 Support which fortunately they appear to be working on.

        Comment


        • #14
          Originally posted by BlackStar View Post

          Gnash passes the video stream to the VA-API, which either decodes in hardware, passes it to VDPAU or uses some other method to decode the video (FFMPEG?) Gnash itself shouldn't be at risk.
          If that's the case, that's very good news.

          Originally posted by BlackStar View Post

          Besides, Flash itself is heavily patented. Does this invalidate Gnash as a "viable Free Software flash player"?

          The only correct course of action regarding patents is to act as if they didn't exist (unless you are a large company that can afford its own patents or a patent troll).
          It doesn't automatically invalidate it, but it certainly doesn't help. It is quite possible that Adobe has licensed its patents in a manner that wouldn't make it a violation to distribute gnash -- for example, I seem to remember them licensing Flash technology for playback purposes only, but creating software to MAKE flash content required a paid license. I tried to do some searching to find out for sure, but don't have time to do the full research right now.

          As for patents in general -- it is irresponsible and dangerous for Free Software developers to ignore known patents. Surely one cannot know every possible patent, but there are plenty of well known patents that are actively enforced -- such as Mpeg-2 and H.264. Implimenting those technologies should only be done in a manner that can be easily seperated -- for example by releasing two source packages, one with the encumbered code, and one without (or a patch or diff, or whatever). That way the software can be used in countries without software patents with all the full features, without sabotaging it in countries like the US.

          As you implied, there are plenty of patent trolls out there (SCO anyone?). In order for Free Software to gain widespread acceptance, businesses have to have reasonable assurance that simply using it won't leave them open to lawsuits. Sure, they could hire someone to do a patent review and gut out all of the offending code, but it would be far, far easier if developers would simply remember that not everyone can simply disregard patents as meaningless, even if they can.

          Comment


          • #15
            The only issue is that if you try to research which patents apply to your software and you actually get sued, you are eligible for much, much larger penalties than if you simply say "I didn't know". The result is that it's best to not search the patent database at all.

            Businesses should use enterprise distributions (RHEL, SuSE) which are hardened against this threat. These distros don't distribute (potentially) encumbered software for a reason.

            Of course, nothing can protect you from the likes of SCO. Sometimes, the best solution is to go ahead and hope for the best.

            Comment


            • #16
              Originally posted by nanonyme View Post
              Well, fine. I'm impatiently waiting for their GLSL support though so they also get some accel method for Flash games (which make a significant part of Flash content on the web).
              Is this a joke?

              Comment


              • #17
                Originally posted by russell_h View Post
                Is this a joke?
                Not really but can you be more precise what you meant? :3

                Comment


                • #18
                  I have got problems to compile gnash, it is not really clear how to build only a firefox/iceweasel plugin and nothing for kde3/kde4. Also building against internal ffmpeg would be much better, which is possible with mplayer. mplayer works for me with vaapi (using the vdpau wrapper), the reflect effect looks funny - just nothing that you would really need. As libva is a build-dep for gnash anyway this script could still be helpful for Debian/Ubuntu:



                  Tested even with U 9.10 live mode - i enabled build of i965 driver, vainfo worked too, but mplayer just crashed even with simple mpeg2.

                  Comment


                  • #19
                    Originally posted by Kano View Post
                    I have got problems to compile gnash, it is not really clear how to build only a firefox/iceweasel plugin and nothing for kde3/kde4.
                    IIRC, you could probably just --enable-gui=gtk? I have not tried yet as a plugin, simply with an FLV player (jw_flv_player).

                    Also building against internal ffmpeg would be much better, which is possible with mplayer.
                    Why would it be simpler? It would just duplicate the code. BTW, you need to install the libavcodec/vaapi.h file. I am using a snapshot from 2009/07/15. There were recent changes (today) that seem to cause some integration problems, at least within mplayer. That might have some impact to other players. Probably just wait a little this settles or rollback to a week old snapshot?

                    Tested even with U 9.10 live mode - i enabled build of i965 driver, vainfo worked too, but mplayer just crashed even with simple mpeg2.
                    I also wanted to try it out this afternoon. There are at least two bugs. One easy to fix is to actually implement vaQueryDisplayAttributes() even if there are none, thus just returning 0. The other one, I have not looked at it yet as debugging on a live CD is not fun. If we are talking of the same error, vaCreateBuffers() returns VA_STATUS_ERROR_INVALID_BUFFER, which looks weird. Fortunately, we have the sources of the driver.

                    Comment


                    • #20
                      Well when you have got lots of other packages in your system which is build against an older ffmpeg snapshot like in debian lenny you will really prefer internal solutions. I see no real performance problem to compile those small bits more often - a complete mplayer compile takes only 3 min or less on my cpus.

                      Comment

                      Working...
                      X