Welcome, Guest. Please login or register.
Amiga Kit Amiga Store Iridium Banner AMIStore App Store A1200/A600 4xIDE Interface

AuthorTopic: FFmpeg + FFplay SVN-r18880 (m68k)  (Read 15646 times)

0 Members and 1 Guest are viewing this topic.

Offline bernd_afa

Re: FFmpeg + FFplay SVN-r18880 (m68k)
« Reply #60 on: May 24, 2009, 06:24:09 PM »
Quote from: Matt_H;456001
If I understand Piru's arguments correctly, the changes to the ixemul includes will affect anything compiled with
Quote


do you think Piru is god ?

Wy you dont believe what i write or wy you not download the ffmpeg and try out on MOS ?.Here you see it do not crash.a requester come need V61 ixemul.

the new includes cant crash on MOS.

but i get in mind, its possible when you do stupid thing.

When you use new V61 libc (that must copy by hand in lib dir)AND not the corresponding V61 crt0.o is copy to lib dir, then it can crash on MOS, because ixemul have the bad design that the version check is in crt0.o and not in libc.

but it is easy possible to remove the check in crt0.o so they are always the same and add the version check in libc.maybe in further release i do that.
 

Offline dcr8520

Re: FFmpeg + FFplay SVN-r18880 (m68k)
« Reply #61 on: May 24, 2009, 08:22:51 PM »
Quote from: bernd_afa;455980

Quote from: dcr8520

Well, in those last posts we didn't mention to rename the lib, i just suggested to set the version back to 49.x considering it should be ok to both parts (you Bernd, and Piru).

Yes, i can do that


Ok, we achieved something ;)

then, Piru, it is ok to you as well to set the ixemul-68k's version back to 49.30?


Quote from: bernd_afa;455980

so to follow the MOS side rule, i must add a requester this code cant run on MOS.

Is this now better ?


No, if you really hate MOS let those programs crash :D :D ;)


Quote from: bernd_afa;455980

If you add blacklist whitelist code is nice.
i think best is only a blacklist, here can add the few programs as apache, that can restart on crash.

What do you think about this ?


I hope you do not mean to auto re-start programs when an allocation fails.. in the worst case we can add a per-task flags/options for the behavior to be achieved when an allocation fails, EG: a) show a requester b) kill the application c) let the app continue, etc...

I'll start working on this the next weekend.
 

Offline dcr8520

Re: FFmpeg + FFplay SVN-r18880 (m68k)
« Reply #62 on: May 24, 2009, 08:36:36 PM »
Quote from: Matt_H;456001
If I understand Piru's arguments correctly, the changes to the ixemul includes will affect anything compiled with them, even if they don't use v61 features


isn't (only) about the ixemul includes, it's mainly related to the crt#?.o files (startup code each program is linked with, which requires a newer ixemul version regardless if it really needs it)

Quote from: Matt_H;456001

and that's why running those programs under MorphOS will result in crashes.


No, ATM those programs can't crash under MOS because those programs can't even run there (no ixemul V5x or V6x there)

But, those programs will start to crash under MOS if we set the ixemul-68k version back to 49.30 (until the Ixemul-MOS is updated to implement the new API functions added on newer m68k builds), whatever it is, setting the version back to 49.30 seems the correct action, rather than bumping to 50, 61.1, 70..
 

Offline dcr8520

Re: FFmpeg + FFplay SVN-r18880 (m68k)
« Reply #63 on: May 24, 2009, 08:45:00 PM »
Quote from: bernd_afa;456016
Quote from: Matt_H;456001
If I understand Piru's arguments correctly, the changes to the ixemul includes will affect anything compiled with

do you think Piru is god ?

Well, in the Amiga World... yes, almost at least :)

Do you know/remember he rewrote the Exec? with that i said all :D

Quote from: bernd_afa;456016
but it is easy possible to remove the check in crt0.o so they are always the same and add the version check in libc.maybe in further release i do that.

Yes... we need to find a proper way to not require always the higher ixemul version, if new features are not really required/needed/used.
« Last Edit: May 24, 2009, 08:48:49 PM by dcr8520 »
 

Offline Matt_H

Re: FFmpeg + FFplay SVN-r18880 (m68k)
« Reply #64 on: May 24, 2009, 08:55:40 PM »
Quote
Wy you dont believe what i write or wy you not download the ffmpeg and try out on MOS ?.Here you see it do not crash.a requester come need V61 ixemul.
I have absolutely no doubt that is what will happen - because ffmpeg specifically requires v61.

But consider a program that specifies v48. Compile it once with the v48 includes. Compile it again with the v61 includes. Run each of them under MorphOS. What will happen? If nothing bad happens, then I'll shut up and say no more on the matter. :-)

Don't get me wrong - I appriciate the improvements you're making (it's fantastic that we now have ffmpeg and ffplay for 68k). I simply think that because of the divergence of OS3, OS4, and MorphOS, a more pragmatic way to distinguish changes between architectures is in order.

I again refer back to the suggestion to integrate multiplatform builds in the style of Jens Langner's projects.
« Last Edit: May 24, 2009, 08:58:49 PM by Matt_H »
 

Offline bernd_afa

Re: FFmpeg + FFplay SVN-r18880 (m68k)
« Reply #65 on: May 25, 2009, 02:04:51 PM »
Quote from: Matt_H;456040
I have absolutely no doubt that is what will happen - because ffmpeg specifically requires v61.

But consider a program that specifies v48. Compile it once with the v48 includes. Compile it again with the v61 includes. Run each of them under MorphOS. What will happen? If nothing bad happens, then I'll shut up and say no more on the matter. :-)


this work too.if a program crash because new features are miss, is not dependent from includes.

it depend on lib you link.the libc contain the functions for ixemul.

when you link with V48 libc then only the V48 functions can use.if a Unix program use a function that V48 not have, but V61 then you get a compiler error.the program cant build, no executable here, that can crash.

same happen when you use SDL for ixemul.on V48 libc.You get compiler error ix_CreateChildData not find.

when you use V61 libc stuff, then it compile well but on MOS get now error ixemul V61 need.

>I again refer back to the suggestion to integrate multiplatform >builds in the style of Jens Langner's projects.

but thats not my problem, we have ixemul on amiga sourceforge and everybody can jump in and do a MOS or OS4 native Port.

But there is red versus blue war and as can see on netsurf, OWB, or other ports that OS4 and MOS cant working together, same on ixemul lib too.MOS V49 and OS4 V51.1 are some kind of diffrent and diffrent sourcetree.

I ask some times about the OS4 source of ixemul, this i not get.

Quote from: dcr

No, if you really hate MOS let those programs crash


i dont hate MOS.
« Last Edit: May 25, 2009, 02:14:41 PM by bernd_afa »
 

Offline dcr8520

Re: FFmpeg + FFplay SVN-r18880 (m68k)
« Reply #66 on: May 25, 2009, 10:23:41 PM »
Quote from: bernd_afa;456167

i dont hate MOS.


it was an ironic joke, meaning it should be better doing nothing (let it crash or whatever) rather than showing annoying requesters about a program [MAY] not work under MOS and making it die. (unless you create a crt0 which check for version AND revision of installed ixemul..)
 

Offline MrZammler

Re: FFmpeg + FFplay SVN-r18880 (m68k)
« Reply #67 on: May 26, 2009, 11:00:45 AM »
Quote from: Piru;455814
Um, probably not. I didn't quite understand that, sorry.

This is often the case, but yet it does not justify f*cking up libc for the cases where it is not. libc should not bring up some requester when malloc() fails.

The correct way to handle this would be to have a link-library that replaces malloc/realloc/free. This link library would then have the requester code. When building a program that can be expected to crash if malloc fails just add the linklib to the link cmdline in makefile (say -lsafemalloc). Clean, easy, no need to mess up the libc with silly requesters.

Anyone with even decent emount of design experience can see this.


Completely agree with Piru here. I even think the -lsafemalloc is not needed (overkill). It's up to the host application (and programmer) who calls malloc to see whether it worked or not. There shouldn't be any requesters or something like that coming from malloc. It is indeed a bad design idea.

We should not care what apache does in unix, instead if someone ports it over to Amiga, he should add the proper checks to malloc.

Btw, this is just my opinion, don't get me wrong. I'm very grateful with what Bernd is doing on 68k, and he should definitely keep it up! I also hope this ixemul thing is resolved soon.
Anyway is the only way
 

Offline bernd_afa

Re: FFmpeg + FFplay SVN-r18880 (m68k)
« Reply #68 on: May 26, 2009, 11:21:14 AM »
Quote from: dcr8520;456220
it was an ironic joke, meaning it should be better doing nothing (let it crash or whatever) rather than showing annoying requesters about a program [MAY] not work under MOS and making it die. (unless you create a crt0 which check for version AND revision of installed ixemul..)


on german anews there are more lies tell about ixemul V61 , but nobody tell wy this version not work.MOS os4 can run 68k programs.

So to have same effect as rename the library, a check for MOS and OS4 must done and the program end and if really a MOS or OS4 user copy the ixemul v61 lib to his system, then this is not load.

but of course nobody can test and find bugs wy this ixemul not work on MOS or OS4.

when enhance a amiga library for OS3, for example intuition library, or guigfx library  this make then too problems on MOS or OS4.

because MOS and OS4 have diffrent enhancement, that make only no problem because mos binaries cant execute on OS4 and OS4 benaries cant execute on MOS without emu.

but 68k executable can run on both.

So thats the reason that there some guys that want that 68k not furrtherdevelop.the degrade 68k to a retro system that should not enhance.And this is bad.

and this problem can either solved complete by rename the lib or by check for MOS or OS4.

how mos can detect i know, but how is OS4 detect in clean way ?
« Last Edit: May 26, 2009, 11:23:31 AM by bernd_afa »
 

Offline bernd_afa

Re: FFmpeg + FFplay SVN-r18880 (m68k)
« Reply #69 on: May 26, 2009, 12:26:02 PM »
Quote from: MrZammler;456320
Completely

We should not care what apache does in unix, instead if someone ports it over to Amiga, he should add the proper checks to malloc.



and thats the main reason, wy many devs left amiga, amiga devs should do more than other.they should make their program run on a 060/50 well or in case of MOS OS4 should run too on slow PPC 600-1 GHZ Systems.

When look what systems are currently on desktop, they are all more powerfull as this systems.so devs safe time, when they develop not for Amiga systems.

the Amiga OS does only very few grow in compare to other OS, there is red versus blue war.this mean user say sometimes new features are crap because their loved OS have them not(.This should demotivate the "enemy" side to enhance more to avoid trolling.so all in all AOS stay on low quality level.

Programs can not easy port from MOS to OS4 etc.some programs are done seperate by a OS4 or MOS OS developer or other, but very few working together.

Additional work cost time, and if a dev not love the amiga very much, wy he should spend additional time and stay on Amiga ?

On Unix there is virtual unlimited mem on amiga not.68k have luck so there is a virtual mem solution, but using virtual mem is slow.i dont like virtual mem, and notice suddenly much slowdown, so i better switch off.and many 68k users have no vmem active.

ffplay is over 12 megabyte sourcecode, this mean 12 million characters, now a porter should find out in this 12 million source lines which do the crash.

its hopless and much work, that Linux or windows progs work in low memory situation, because coders are so lazy here and dont check for enough mem, because of virtual mem system never can run out of mem.

I dont understand wy in the memalloc there is  a diffrence in compare to Harddrive, so i think this feature is same usefull as on hardrives standard.

when harddrive is full then a requester come and the user can free mem and continue, wy should not do same on memalloc by default ?

If some rare situations as apache without User dont need it, it can switch off.

without the feature  ffplay crash when show a digicam pic of size 3000*2000 when there are not 50 megabyte ram free.

i have more todo than fixing all Unix programs that do not check for enough mem.

and so nobody can report ffplay is crap because it crash showing a pic, this message was mainly add, because the other "sides" maybe dont like that 68k is furtherdevelop, and they look carefully in the hope to find something negative

So its no wonder that there are more and more left amiga and there is really less progress here and the disadvantage for amiga and other OS get more and more.

the reason that this happen is not the bancrupt of commodore i think , it is the split and the users who want fight that the commercial side get more users.

there are not left much here, so other side cant get much users that buy for much money a new amiga system.when i look on download for OS4 ffmpeg and ffmpeg GUI in OS4 depot, (newest version is only here and news links are to os4depot and its longer here)
it have 280 downloads.68k version come in the 6 days to 245 downloads and also some amikit downloads that contain this files.numbers i not know

so there is no reason that 68k should not furtherdevelop both systems are valid on more or less same dead or alive

amiga should make fun and not fight for all costs for users.
i dont want fight for system, i like use amiga dopus magellan2  and i think when i really spend much work on change ixemul name, there come other that bashing, so do only what go in fastest time.
 

Offline wawrzon

Re: FFmpeg + FFplay SVN-r18880 (m68k)
« Reply #70 on: May 26, 2009, 02:18:44 PM »
bernd, quit here and go back to work.:P it makes no sence to endlessly discuss here conspiracy theories. you can prove your point best by effects of your work.

those who dont like or want, what bernd has done with ixemul or sdl are free to stay away from it. frankly, i do not recall an unix port on amiga that installs _any_ ixemul version by default, let alone not asking the user, but ixemul of this or that versionsnummer is usually named as required. alas not always so with other libraries. construtive criticism along with founded propositions will help all of us to advance. hate-wars will not.
 

Offline ami_stuff

Re: FFmpeg + FFplay SVN-r18880 (m68k)
« Reply #71 on: May 26, 2009, 03:08:00 PM »
@wawrzon:

Please read your PM.
 

Offline bernd_afa

Re: FFmpeg + FFplay SVN-r18880 (m68k)
« Reply #72 on: May 26, 2009, 06:58:01 PM »
I find now a solution that is easy to add, and PPC User can happy that they have the higher library number ;-)

I open in crt0.o the ixemul library V48
when a lib is open, i check in library structure for V48 number and the revisionsnumber.

But the Question is, when the program run on MOS, the library is open, i must check if its V48.is there a correct AOS conform library structure here, or can i identify elsewhere that this is a ppc library and not the 68k ixemul ?

if i detect the 68k lib, then i check for revision

so newer versions with increased API get then a higher revisionsnum.
 

Offline x303

Re: FFmpeg + FFplay SVN-r18880 (m68k)
« Reply #73 on: May 26, 2009, 09:24:02 PM »
Quote from: bernd_afa;456382
I find now a solution that is easy to add, and PPC User can happy that they have the higher library number ;-)

I open in crt0.o the ixemul library V48
when a lib is open, i check in library structure for V48 number and the revisionsnumber.

But the Question is, when the program run on MOS, the library is open, i must check if its V48.is there a correct AOS conform library structure here, or can i identify elsewhere that this is a ppc library and not the 68k ixemul ?

if i detect the 68k lib, then i check for revision

so newer versions with increased API get then a higher revisionsnum.
Why not simply rename the MOS version to ixemul.library.mos ? This way the 68k programs under mos can safely use ixemul.library and mos programs can use ixemul.library.mos !!! Instead of renaming the 68k version which exists a lot longer than the mos one.

x303 :D :D :D
 

Offline ami_stuff

Re: FFmpeg + FFplay SVN-r18880 (m68k)
« Reply #74 on: May 27, 2009, 01:33:06 AM »
BTW. About stability: You can try to run multiple videos at the same time... of course only under emulation. Nice effect :)