No Quicktime support anymore...

[quote=72171:@Markus Winter]It is deprecated, not removed. QT works just fine in Mavericks.
[/quote]
Please go reread what I said - I did not say it was removed - I said

I never said it was removed

[quote=72171:@Markus Winter]QT for Windows was updated just a few weeks ago and continues to work fine.
[/quote]
A security patch
There’s not been new functionality in years and its not installed by iTunes any longer
It’s not “required” on Windows like it used to be if you used iTunes
It’s dead - folks just don’t know it yet
And it will never be 64 bit - ever

[quote=72171:@Markus Winter]Isn’t that what an intelligent linker is for?
[/quote]
The linker doesn’t strip C++ code in any way shape or form and the framework (dylib, ell, so) is all C++/Obj-C

[quote=72171:@Markus Winter]Or could you not have put the QT functionality into a plugin?
[/quote]
If you had any idea of the scope of this you’d understand why I’ll just say “no”

[quote=72171:@Markus Winter]Or you could even have put out two Xojo versions until AV Foundation can actually do more.
[/quote]
Ummm … no
Its enough work to do ONE - you want 2 ???
Not going to happen

[quote=72171:@Markus Winter]I don’t agree. There are other possibilities but you decided to remove, not deprecate QT. And by that you removed OUR choice. Using QT or not aka selling on MAS or not should have been a build setting.
[/quote]
Agreement isn’t required
QTKit & Quicktime HAD to go - esp if we EVER want to get a version of the IDE into MAS as it cannot contain QT or Quicktime ANYWHERE - not even in frameworks we include

[quote=72171:@Markus Winter]I’m annoyed because now we have an IDE we didn’t need but instead have lost functionality that I do need. From where I stand Xojo hasn’t made smart decisions lately.
[/quote]

Geez Markus, you needed the IDE improvement enough to personally slam just me a few months ago.

https://forum.xojo.com/4489-disappointed-with-xdev-magazine-issue-11-5-with-poll

I don’t need an apology or a recognition that I was kinda on target, but a thank you to the Xojo guys for addressing many of your gripes seems in order.

???

Sorry, you lost me there. What IDE improvements did I need??? I’m still happily using REAL.studio 2012 R1.2 and pretty much only use Xojo 2013 R3.3 for compiling. I try out the new versions but am still unimpressed, so as I said, I’m baffled.

[quote]to personally slam just me a few months ago.
https://forum.xojo.com/4489-disappointed-with-xdev-magazine-issue-11-5-with-poll%5B/quote%5D
Well, my “slamming” was applauded by quite a few people (have you read what other people said in the thread?). Beside me 20 out of 21 people on the doodle poll agreed with me that XDev needs to focus more on Xojo. Marc Zeedar took my “slamming” constructively and made the requested changes to XDev. Since then he had a lot of positive feedback.

As for the “personal slamming”: Maybe you should look at your article again and at least try to check wether it is balanced or not?

You weren’t.

But do you really want to go there?

Which gripes?

No! Don’t answer that! This is off-topic, so I will not answer here again. If you want to continue this then send me a pm. I doubt we will see eye to eye, but I’m happy to try and explain it to you.

[quote=72198:@Norman Palardy]Markus Winter Or could you not have put the QT functionality into a plugin?
If you had any idea of the scope of this you’d understand why I’ll just say “no”[/quote]
I happily agree that I don’t have the foggiest idea about the scope.
That’s why I use Xojo in the first place. As far as I’m concerned you are the experts and it is your job to deal with all the things too difficult for us and make them available. But would you agree that it is not impossible to put the QT functionality into a plug-in?

From my point of view Xojo got a LOT less attractive over the last two years. That’s why I still use a two year old version nearly exclusively.

[quote=72198:@Norman Palardy]Markus Winter I don’t agree.
Agreement isn’t required[/quote]

Are you going all “Borg” on me? :wink:

[quote=72300:@Markus Winter]Which gripes?

No! Don’t answer that! This is off-topic, so I will not answer here again. If you want to continue this then send me a pm. I doubt we will see eye to eye, but I’m happy to try and explain it to you.
[/quote]

We’ll discuss this publicly. You and yours were most upset that I contended that Xojo was not going to just throw away the new IDE and essentially revert to the old one. Two Xojo releases later, that seems to be the case, the IDE is much improved from the incremental improvements I talked about, and nobody’s talking about rolling it back anymore.

The thing that makes me happy though, is that Xojo seems to listen to its current paying customers more than whiney holdouts. If you include the beta process, they fixed a huge MAS issue in, wait for it, wicked quick time. I’m sure if you took a poll, you’d find a whole slew of MAS developers quite happy about that. They are the ones paying the bills and contributing toward the future, Markus.

FWIW, the reason QuickTime got removed so quickly is that Apple started rejecting apps with no warning. We take no joy in accelerating our deprecation schedule like that.

What’s the latest Xojo release that adequately/fully supports QTKit? I have an old MonkeyBread enhanced Xojo app that needs to be slightly updated.

2013R3.3

tnx

Technically if you only use QTKit without the xojo movie/movieplayer classes, it may even work in never versions.

may even work ?

let me test something…

[code] dim f as FolderItem = SpecialFolder.Desktop.Child(“test.mp4”)
dim e as NSErrorMBS
dim m as QTKitMovieMBS = QTKitMovieMBS.LoadMovieFromFile(f, e)

MsgBox m.duration.String

dim t as QTKitTimeMBS = QTKitTimeMBS.Time(10 * 600, 600)
Backdrop = m.frameImageAtTime(t).CopyPicture[/code]

Seems to give me time and load the video frame.

I also am ‘annoyed’ at the loss of movie properties, such as rate. I have spent many hours looking to develop a replacement for rate (whilst keeping on with XOJO2013r2), and at wits end, emailed Christian Schmitz at MonkeyBread Software, developers of the fantastic plugin set for Xojo. Christian replied the following day with a simple code example of setting and getting a movie’s rate irrespective of Mac/Win/QT.

This was amazing and has enabled me to investigate further into using various of his plugins. It also, however, highlights the problem.

XOKO used to be (when Realbasic) a simple IDE for writing apps without you having to know much about how the target OS handled movies. Yes, I know, that was because of Quicktime. But that is the point. Now Quicktime has gone, XOJO has lost that simple cross platform property. Yes, I know, Christian’s code shows me how to handle OLE on Windows, Quicktime and AVFoundation, but the point was that used to be all catered for by XOJO (Realbasic). Now I have to understand the fundamentals of AVFoundation whereas before I could just write movieplayer.rate and XOJO handled everything else.

This smacks to me of going back to languages such as C++/Frotran/COBOL where I had to have a good understanding of the underlying stuff, which is why I morphed to Realbasic in the first place. XOJO is in danger of losing users, I think, but maybe they don’t care as those simple users are not their target demographic anymore.

I would have thought there is an opportunity here for someone (XOJO?) to write a module/class/extension/plugin/?? that given a movie gets/sets the various properties on all supported platforms. Alternatively, XOJO should provide a simple example of how to handle movies on the various environments, so that people like me can get the insight we need without growing grey(er). Christian’s code is such a simple example and I am now trying to see how to use his example for duration. We should not all have to go through this process. There should be good explanations in the XOJO help manuals rather than leaving the stuff there on Quicktime as it has gone! The explanation should explain when/why to use Quicktime, QTKIT, AVFoundation, OLE, etc.

Just my two cents worth.

bobj

You should think of it this way… Xojo (RealBasic/RealStudio) provided those functions BECAUSE Quicktime was available, in order to provide extensiblity at “little cost” (relativly speaking). It was not the fault of XOJO (its employees, or engineers) that QT support was removed… It was a decision that APPLE made. Now Xojo has lost the ability to provide those features without incurring a considerably larger cost, and while it does provide negative impact to those developers that used the QT features, I’m pretty certain that the number was comparatively small, and that XOJO would rather (and hopefully) put their current efforts into fixing known issues (can you spell IDE?), rather than develop a custom API to replace QT, especially when it looks like MBS has been able to bridge that gap

Dave,

you’re right and I’m not saying its XOJO’s fault. But the issue for users is the lost functionality. Now, I don’t know how many XOJO users display/process video /audio but with the explosion in video/audio on the web, I would have thought if it is a small number now, it will be an increasing number wishing to do so. So, the opportunity still exists for XOJO to replace this lost functionality and make it easier to manipulate video/audio. MonekyBread does some of this but you really need to understand in details, for example Apple’s AV Foundation documentation, to even begin to understand which methods/classes to use. Replacing the missing properties of a movie player, such as rate and duration, would at least bring us back to where we were, assuming all the details of AVFoundation and OLE were hidden of course and removing the Quicktime dependency altogether.

Christian’s sample code, for accessing a movie’s rate, shows how simple it could be.

I enclose Christian’s code, hopefully with his permission:

He instantiates a Module, called RateMBS. It has two instantiations, one for getting the rate, the other for setting the rate. movieTotranscribe is the object that represents the movie opened in a moviePlayer control.

So accessing the

RateMBS(extends movietoTranscribe as Movieplayer) as double
  //returns movie rate
  #if TargetMacOS then
    
    #if RBVersion >= 2014.0 then
      // newer AVFoundation
      dim p as AVPlayerMBS = movieTotranscribe.AVPlayerMBS
      return p.rate
    #else
      // old QuickTime
      return movieTotranscribe.rate
    #endif
    
  #elseif TargetWin32 then
    
    #if RBVersion < 2014.0 then
      if movieTotranscribe.PlayerType = 1 then
        // QuickTime
        return movieTotranscribe.Rate
      end if
    #endif
    
    dim o as OLEObject = movieTotranscribe.MovieController
    
    MsgBox o.TypeName
    return o.Player.settings.rate
  #endif

RateMBS(extends movieTotranscribe as MoviePlayer, assigns r as Double)
  // set movie rate
  #if TargetMacOS then
    
    #if RBVersion >= 2014.0 then
      // newer AVFoundation
      dim p as AVPlayerMBS = movieTotranscribe.AVPlayerMBS
      p.rate = r
    #else
      // old QuickTime
      movieTotranscribe.Rate = r
    #endif
    
  #elseif TargetWin32 then
    
    #if RBVersion < 2014.0 then
      if movieTotranscribe.PlayerType = 1 then
        // QuickTime
        movieTotranscribe.Rate = r
        Return
      end if
    #endif
    
    // Windows Media Player
    dim o as OLEObject = movieTotranscribe.MovieController
    MsgBox o.TypeName
    o.Player.settings.rate = r
    
  #endif

As you can see, it is simple and easily understandable but without detailed knowledge of all the techie documentation, I would have thought it would be not so simple to produce.

Isn’t this why compilers were developed so that not everyone had to invent the same way to do the same thing?

An extra cent’s worth :slight_smile:

bobj

Thanks for the honor.

you may want to leave away the “MsgBox o.TypeName” lines.