Home  
Login
Username:

Password:

Remember me



Lost Password?

Register now!
Sections
Who's Online
70 user(s) are online (61 user(s) are browsing Forums)

Members: 0
Guests: 70

more...
Support us!
Recent OS4 Files
OS4Depot.net



(1) 2 »


Accelerating video playback in Odyssey (composited video)
Just can't stay away
Joined:
2007/1/26 21:48
From New Zealand
Posts: 1853
Odyssey can currently play videos, but performance could be improved if its player used composited video.** Composited video is what allows LiveForIt's version of mplayer to play HD video on the A1-X1000.

I've been hoping that an able developer would step up to use composited video in Odyssey ever since I created that feature, just over a year ago. It hasn't happened yet.

So, is there someone who would be willing to give it a go?

To help get you started, here are a few pointers:
- Composited video documentation: here (includes example code)
- The key files in Odyssey's source that I think need modifying are:
    - MediaPlayerPrivateMorphOS.cpp (the acceleration/overlay code has been disabled; search for "MM_OWBBrowser_VideoBlit")
    - owbbrowserclass.cpp (search for the OWBBrowser_VideoBlit, OWBBrowser_VideoEnterFullPage, & backfill methods)
- LiveForIt's mplayer composited video code (useful as an example of using avcodec's "direct rendering" mode with composited video):
    - vo_comp_yuv.c
    - vo_comp_yuv2.c

Hans


** On Radeon HD cards, that is. You'd have to use old fashioned P96 overlay for older graphics cards.

   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Home away from home
Joined:
2007/9/11 11:31
From Russia
Posts: 4193
From my side i can easy integrate new files in current os4 version with no probs once work will be done.

Also there is current aos4 versions (see amigaos4 ifdefs) of those files about which Hans point out if it will be any of help:

BCMediaPlayerPrivateMorphOS.cpp
owbbrowserclass.cpp

I didn't disable there anything, it mostly the same as originals, just with few remakes of hooks and crap for aos4 equivalents

Quote:

** On Radeon HD cards, that is. You'd have to use old fashioned P96 overlay for older graphics cards.


At least once compositing based version will be done, later if anyone will be in interest p96 fallback can be added to with no probs.

   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Just can't stay away
Joined:
2007/1/26 21:48
From New Zealand
Posts: 1853
@kas1e
Quote:
Also there is current aos4 versions (see amigaos4 ifdefs) of those files about which Hans point out if it will be any of help:

Oh, so there isn't a common code-base for all platforms? Or are the links that you gave to a source snapshot for the last released version of Odyssey for AmigaOS?

Hans

   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Not too shy to talk
Joined:
2006/11/28 22:14
Posts: 313
@kas1e

on R200 cards was really important to get p69 overlay support imho...so if possible plz add it.

   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Home away from home
Joined:
2007/9/11 11:31
From Russia
Posts: 4193
@Hans
Quote:

Oh, so there isn't a common code-base for all platforms? Or are the links that you gave to a source snapshot for the last released version of Odyssey for AmigaOS?


That one on Github are last 1.25 version where is not all amigaos4 changes added at moment (we working on it). I just upload that 2 files from current (1.23) aos4 version, which are about the same as in 1.25. So, anyone can works on files from github, just with taking in account those 2 from 1.23. As i can see almost nothing changes in terms of mediaplayer from 1.23 to 1.25.

Quote:

on R200 cards was really important to get p69 overlay support imho...so if possible plz add it.


I can't do good code, so it should be someone else. Currently we need someone to do radeonhd based code with all info from first post, and then, once it done and works, we can try find someone else who will do p96 based code.

   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Not too shy to talk
Joined:
2008/5/2 12:14
From Sweden
Posts: 473
Yeah, using composition isn't very difficult.

Maybe if someone looked at this, the memory trashing bug could be spotted too?

Currently the media player in OS4 Odyssey cannot really be used because the whole system become totally unstable after it was used with random crashes anywhere and usually system freeze some time later.

   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Just can't stay away
Joined:
2007/1/26 21:48
From New Zealand
Posts: 1853
@Deniil
Quote:
Yeah, using composition isn't very difficult.

Maybe if someone looked at this, the memory trashing bug could be spotted too?

That would be nice. We're still waiting for someone to step up and give it a go, though.

This thread has plenty of views, so there's definitely an interest. Perhaps it still looks like a daunting task.


@kas1e

If someone were interested, how easy would it be for them to go from checking out the code through to compiling Odyssey?

Specifically:
- What steps would someone have to go through after they have the code?
- Can it be built on AmigaOS? Or do you need a Linux machine plus cross compiler?
- Which dependencies need to be installed?
- I see both a Makefile and CMakeLists.txt. Is CMake needed? Or will a simple "make" build it?
- Any tricks/pitfalls that people need to be aware of?

Lots of questions, but the easier it is for someone to build their own version, the sooner they can start looking into the video player code.

Hans

   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Home away from home
Joined:
2007/9/11 11:31
From Russia
Posts: 4193
@Hans
Quote:

This thread has plenty of views, so there's definitely an interest. Perhaps it still looks like a daunting task.


That because topic name sounds like there something to test already , not like we need developer for :)

Quote:

If someone were interested, how easy would it be for them to go from checking out the code through to compiling Odyssey?


In current form from github - hard enough. Once i will add all aos4 specific changes to github repo, it will be almost easy (exception that there will needs to setup 3d party libs, as well as some of them need specific aos4 changes as well, as for example fontconfig, to have one hook in, curl with normal threaded resolver and co).

Through, 1.25 have problems with JS code, so even when binary will compiles and works, it will crash on every JS site , till big engian problems will be fixed (will they?). But, at least person who will in interest to add changes to media-player parts, can test it, and in case if noone will fix endian problems, i can backport related code to 1.23, where is no JS endian problems.

Quote:

Specifically:
- What steps would someone have to go through after they have the code?


Once i will done with adding changes to repo: clone repo, and just:

cd /usr/local/amiga/odyssey-github/OdysseyWebBrowser/cross-build/ ;
./build_aos4
make owb

Quote:

- Can it be built on AmigaOS? Or do you need a Linux machine plus cross compiler?


Linux with cross-compiler must. And because of speed, and because of tons of deps like last cmakes, bisons, yawns, perls and all the stuff half of which we don't have on os4 natively.

Quote:

- Which dependencies need to be installed?


About 10 3d party libs, they all can be found once someone will start compiling, and having missing includes errors.

Quote:

- I see both a Makefile and CMakeLists.txt. Is CMake needed? Or will a simple "make" build it?


Cmake need it.

Quote:

- Any tricks/pitfalls that people need to be aware of?


Currently i add changes to kas1e_bracnh_v1 on github, so you can clone it , (on linux with installed latest crosscompiler from adtools repo, with enabled threading c++11 stuff (it is disabled by default)). And then run those 3 commands i shown above. And it will stop compiling (if all installed well), somewhere where we stop currently.

Another way,to avoid all that boring problems, its if someone can just change that 2 files, put it here (or send to me), i can then just work with him online like he do chaneges , i compile new binary, we do checks. As we do before with Deniil. Sure not very comfortable, but probabaly not as if one don't want to boring with all that crosscompiler/3dparty libs problems.

   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Quite a regular
Joined:
2009/4/28 3:57
From Adelaide, Australia
Posts: 817
I did a port of fontconfig that's in the libffmpeg archive (excl. binaries), and included the source changes. I used the AROS diffs and changed the #ifdef statements to __amigaos4__. I think there's 1 remaining uncommented (no #ifdef) change in the AROS diffs but it's easy to find if you compare the before and after files.

Edit: I know I did another change somewhere to use unlink(). All changes can be found by searching for __amigaos4__, including the change above that wasn't commented in the AROS diffs.

libcurl on OS4Depot I enabled the threaded resolver using fixes kas1e gave me, but it hasn't been thoroughly tested in that version.


Edited by MickJT on 2016/2/19 17:09:44
Edited by MickJT on 2016/2/20 4:12:42
   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Home away from home
Joined:
2007/9/11 11:31
From Russia
Posts: 4193
@MickJT
Also fontconfig for odyssey should have special odyssey related hook/callback in (i.e. version of libfontconfig for odyssey will be different in compare with general libfontconfig). That need to make progress-bar of font generations works.



   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Just can't stay away
Joined:
2007/1/26 21:48
From New Zealand
Posts: 1853
@kas1e

Quote:
Quote:
This thread has plenty of views, so there's definitely an interest. Perhaps it still looks like a daunting task.


That because topic name sounds like there something to test already , not like we need developer for :)

I'd interpret the number of views more as "this is something people are interested in and want."

Quote:
...

Another way,to avoid all that boring problems, its if someone can just change that 2 files, put it here (or send to me), i can then just work with him online like he do chaneges , i compile new binary, we do checks. As we do before with Deniil. Sure not very comfortable, but probabaly not as if one don't want to boring with all that crosscompiler/3dparty libs problems.

I personally wouldn't have the patience to work that way. If I can't at least build something on my own machine, then it's too frustrating to work on. Of course, if someone else doesn't mind...

An alternative would be for someone to set up a Linux server with the code ready to go, and offer remote access via ssh (or similar). Perhaps this could be done using the Cloud 9 service.

Anyway, thanks for the info.

Hans

   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Home away from home
Joined:
2006/11/20 16:26
From Norway
Posts: 2639
@kas1e

I think there is at least 2 bugs in OWB Player.

When movie comes to a end, the GR pops up. saying it crashed in fill_buffer or more deeply on some kind of read function, it's possible that buffer was freed before, so program can't buffer, or it possible the tcp socket was closed, and program crashed, it’s a typical async issue.

The other crash you get is if you run mplayer while your running OWB player, something corrupts memory and crash, I expect lazy startup code, and poor checking for success in init functions in OWB Player.

Happy hunting, I'm not going to touch OWB, source code too big for me, too many dependency's.

   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Just popping in
Joined:
2008/4/22 17:03
From Lawrenceburg, KY
Posts: 136
@Hans

Did anyone ever take up the tasks of integrating composite video and removing the memory trashing bugs?

   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Home away from home
Joined:
2007/9/11 11:31
From Russia
Posts: 4193
As far as i know - noone.

   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Just popping in
Joined:
2009/12/31 17:27
From Westerwald
Posts: 68
Okay. In germany we say "Butter bei die Fische"...
So is there anybody who will take this task?
And when, what "number" he need to take it?

   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Home away from home
Joined:
2007/5/19 13:23
From England
Posts: 3487
@TearsOfMe
I'm not clear what you're trying to say with "butter with the fish" (about as good a literal translation as I could find, and the non-literal ones were too vague for me to be sure how you intended it to apply). And what is this "number" you refer to? (Money?)

   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Just popping in
Joined:
2007/7/30 21:55
From Sweden
Posts: 180
@kas1e
Quote:
Another way,to avoid all that boring problems, its if someone can just change that 2 files, put it here (or send to me), i can then just work with him online like he do chaneges , i compile new binary, we do checks. As we do before with Deniil. Sure not very comfortable, but probabaly not as if one don't want to boring with all that crosscompiler/3dparty libs problems.


Could you not just put the files you have locally up on a subversion server (f.i. sourceforge maybe) so someone else could compile it too?

Because currently, trying to work with the non-compiling 1.25-branch is really very boring. I'd rather much more work in something I myself could create an executable from, and then possibly try and merge that with the 1.25-changes.

Edit: just saw that the sources are available on your homepage! Perhaps I'll give it a go!

Edit2: it wasnt the sources, but the binaries. :(


Edited by jaokim on 2016/5/26 18:21:26
   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Home away from home
Joined:
2006/11/26 21:45
From A haunted Castle somewhere in the Bavarian Mountains
Posts: 2878
@ChrisH

"Butter bei die Fische" - german slang, more or less means
"Lets put our money where the mouth is".

He likes to know what the community needs to gather to make someone take over the task

   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Home away from home
Joined:
2007/9/11 11:31
From Russia
Posts: 4193
@Jaokim
We always can works online: you just do changes , i compile test binary and send you / put on web for you / whatever.

   Report Go to top

Re: Accelerating video playback in Odyssey (composited video)
Just can't stay away
Joined:
2007/1/26 21:48
From New Zealand
Posts: 1853
@kas1e
Quote:
We always can works online: you just do changes , i compile test binary and send you / put on web for you / whatever.

That's a horribly slow way to work. If you don't want to put it in an svn/git repository, then you could always create an archive snapshot of the source and upload it somewhere where Jaokim can get it.**

Hans


** The new dropbox/google-drive handler for AmigaOS is quite useful for sharing stuff.

   Report Go to top


(1) 2 »



[Advanced Search]


Powered by XOOPS 2.0 © 2001-2016 The XOOPS Project