Premiere Bashing?

Discussion and help related to Adobe video software goes here. e.x. Premiere, After Effects, Photoshop, etc.
Aedren
Joined: Sat Jun 07, 2008 9:10 pm
Org Profile

Premiere Bashing?

Post by Aedren » Thu Jun 19, 2008 4:16 am

Basically, what I want to know is where all the Premiere bashing comes from? The two major complains that I read about are as follows: 1) Inability to properly handle 23.976 video, 2) Bugginess/crashing.

I've experienced the bugginess and crashing, but found that it's actually at fault of either AviSynth or the IM-AviSynth.prm plugin. As soon as I uninstalled the plugin from Premiere (at the disc-space-cost of using Huffy sources), APP has been rock-solid stable. (Not to get too technical, but I took a gander at the plugin source-code. There's a slight memory-handing oversight in it. There's an inconsistency in the location of "new" to each respective "delete". In short: Not all C++ libraries handle new/delete keywords the same way, so those commands shouldn't be mixed between end-user libraries. Handling memory this way runs the risk of mixing "new"s and "delete"s between different runtime libraries, which can cause memory leaks and irregular behavior.)

I'm not quite sure about the 23.976 video. I've run a test export from APP to HuffYUV, which Media Player Classic (henceforth "MPC") has told me is 23.98 fps. That said, I've gotten the exact same results from a VirtualDub export: MPC tells me that a file (never even loaded into APP) is 23.98fps. Loading up both AVIs into APP, Premiere tells me that the .AVI container is 23.976fps but the video codec stream is 23.98fps. For both of them! Granted, I'm using CS3 and they may have fixed the 23.976 problem since earlier releases. But then again, it might not actually be their problem (seeing as how it exported exactly the same way VirtualDub did).

Any clarification would be greatly appreciated. I've actually been enjoying most of Premiere (which may be partly due to the psychology of shelling out the money to buy it--I don't want to be disappointed in my purchase). That said, I want to know which work-arounds I need to use, and what behavior to be on-the-lookout-for when editing/exporting.

On a side note: if I have a 23.976 .avi container with a 23.98 video stream, which do I believe? Which is correct? And why is there a redundancy of that information, especially if it doesn't coincide? (I'm planning for the final-export to be 29.97fps, so it doesn't matter a whole lot, but I'm curious.)

User avatar
Zarxrax
Joined: Sun Apr 01, 2001 6:37 pm
Contact:
Org Profile

Post by Zarxrax » Thu Jun 19, 2008 10:00 am

In my experience, Premiere and Premiere Pro are both very finicky even without the AVS plugin installed. Not only that, but premiere pro is buggy exporting to just about any codec other than Uncompressed. I have actually submitted a bug report about that to adobe like 5 times, ever since they released premiere pro 1.0, and they never do a damn thing about it, despite me having a reproducible problem that is verified by numerous other people.

Regarding 23.976fps, I think the current version of premiere pro actually handles it alright.

If you see problems in the code of the avs plugin, it would be great if you could offer fixes.

Aedren
Joined: Sat Jun 07, 2008 9:10 pm
Org Profile

Post by Aedren » Thu Jun 19, 2008 1:59 pm

Zarxrax wrote:In my experience, Premiere and Premiere Pro are both very finicky even without the AVS plugin installed. Not only that, but premiere pro is buggy exporting to just about any codec other than Uncompressed. I have actually submitted a bug report about that to adobe like 5 times, ever since they released premiere pro 1.0, and they never do a damn thing about it, despite me having a reproducible problem that is verified by numerous other people.

Regarding 23.976fps, I think the current version of premiere pro actually handles it alright.

If you see problems in the code of the avs plugin, it would be great if you could offer fixes.
Firstly, thanks for your quick response. Interesting to know about the exporting problem. (Which I have experienced, though it's not too much of a hassle to export to Huffy for me.) Does it play nice with Huffy and Lagarith for you?

As for fixes to the code, I don't have a development environment (or even just a barebones compiler) setup here so I'm going purely on visual reading of the source. As such, I don't feel right offering "fixes" so much as offering suggestions. Couple that with the fact that I'm not familiar with the interface APP provides to the plugin, nor with the interface AviSynth exports. All I know about either interface is what's used by the APP AviSynth plugin.

User avatar
Zarxrax
Joined: Sun Apr 01, 2001 6:37 pm
Contact:
Org Profile

Post by Zarxrax » Thu Jun 19, 2008 2:13 pm

Aedren wrote:Firstly, thanks for your quick response. Interesting to know about the exporting problem. (Which I have experienced, though it's not too much of a hassle to export to Huffy for me.) Does it play nice with Huffy and Lagarith for you?
No, it does not work properly with them either. It will randomly corrupt the video in some frames, usually observed along the top or bottom of the frame. It may not happen in every export.

User avatar
BasharOfTheAges
Just zis guy, you know?
Joined: Tue Sep 14, 2004 11:32 pm
Status: Breathing
Location: Merrimack, NH
Org Profile

Post by BasharOfTheAges » Thu Jun 19, 2008 2:54 pm

It has happened to me on 3 separate occasions as well. I've simply taken to exporting uncompressed as well. I have the HDD space, so it's not a major issue.
Anime Boston Fan Creations Coordinator (2019-2023)
Anime Boston Fan Creations Staff (2016-2018)
Another Anime Convention AMV Contest Coordinator 2008-2016
| | |

flend
Joined: Sun Jun 22, 2008 12:40 pm
Org Profile

Post by flend » Sun Jun 22, 2008 12:50 pm

Hiya Aedren. I maintain (occasionally) the avisynth premiere plugin.
There's an inconsistency in the location of "new" to each respective "delete".
Can you be more specific about exactly where you see this inconsistency?

The only place where I use new is to make the FileInfo struct:

Code: Select all

FileInfo *fi = (FileInfo *)stdparms->piSuites->memFuncs->newPtr(sizeof(FileInfo));
new (fi) FileInfo();
which is a combination of Premiere's memory handling stuff (which it likes you to use) and placement new.

The call to CreateScriptEnvironment

Code: Select all

fi->scriptEnvironment = CreateScriptEnvironment(AVISYNTH_INTERFACE_VERSION);
returns a class new'd inside Avisynth so I delete this at the end:

Code: Select all

delete fileptr->scriptEnvironment;
If you believe any of this may cause a problem, let me know what would be better and I'll send you a new version to test.

To be honest, the only time I free or delete stuff is when Premiere shuts down. So I can't see that part of the memory management affecting Premiere's stability whilst it's running.

-flend

Aedren
Joined: Sat Jun 07, 2008 9:10 pm
Org Profile

Post by Aedren » Sun Jun 22, 2008 5:08 pm

flend wrote:The call to CreateScriptEnvironment

Code: Select all

fi->scriptEnvironment = CreateScriptEnvironment(AVISYNTH_INTERFACE_VERSION);
returns a class new'd inside Avisynth so I delete this at the end:

Code: Select all

delete fileptr->scriptEnvironment;
If you believe any of this may cause a problem, let me know what would be better and I'll send you a new version to test.
That's the area I was talking about. Basically, since the new/delete are being mixed between AviSynth's runtime library and the IM-AviSynth runtime library, there is huge potential for memory handling mismatches. Runtime libraries do similar, but not exactly the same, things when handling new/delete. So if you don't compile with the exact same compiler/library that AviSynth was compiled with, you'll likely see problems... To deal with this, most libraries provide functions along the lines of: CreateMemorySpaceInsideLibrary() and FreeMemorySpaceThatWasAllocatedInsideLibrary(). (Sometimes the "CreateMemory..." is implicit with a load command, sometimes not.) I'm not sure that AviSynth gives you this...

When I still had the plugin installed, I would experience a crash every time I closed Premiere. It was the standard "Premiere needs to close, but will try to save your data for a later restore." Granted, I was closing Premiere anyway, but that doesn't make it O.K. for it to crash. :(

Other than that, I'm pretty certain most of the crashes stem from AviSynth itself. (I'm not at all impressed with the either the interface it gives scripts or the library it provides to programs. Granted, it works, but it barely does that. I would get regular CRC mismatches from the deinterlacing scripts which used output=/input=, hardly something that should happen for a library that boasts consistent frameserving.)

flend
Joined: Sun Jun 22, 2008 12:40 pm
Org Profile

Post by flend » Mon Jun 23, 2008 4:00 pm

Aedren wrote:To deal with this, most libraries provide functions along the lines of: CreateMemorySpaceInsideLibrary() and FreeMemorySpaceThatWasAllocatedInsideLibrary(). (Sometimes the "CreateMemory..." is implicit with a load command, sometimes not.) I'm not sure that AviSynth gives you this...
Well, CreateScriptEnvironment is (basically): return new ScriptEnvironment; but there is no API function provided to delete it nicely that I can see (avisynth 2.5.7) .
When I still had the plugin installed, I would experience a crash every time I closed Premiere.
This could have been caused by me free-ing stuff in the wrong order. Avisynth uses a shared frame memory store stored in the ScriptEnvironment so it's not safe to delete S.E. (and therefore the store) before making sure all references to classes such as PClips etc. (which themselves refer to the memory in S.E.) are dealt with first.

I uploaded a fix for this bug a few days ago to the sourceforge page http://sourceforge.net/projects/videoeditorskit/ . If anyone was having problems with crashing on exit and the new version 1.91 fixes it, I'd be keen to know.

I think it's clear that these issues won't affect Premiere at any time before final closing. I had a look through the source code of the plugin for anything else dodgy but couldn't find anything. Premiere occasionally still comes up with strange results but I blame either Premiere itself or some memory overwriting going on in avisynth.

Cheers!

flend

User avatar
badmartialarts
Bad Martial Artist
Joined: Sat Oct 25, 2003 5:31 am
Location: In ur Kitchen Stadium, eatin ur peppurz
Org Profile

Post by badmartialarts » Mon Jun 23, 2008 8:37 pm

I never had the 'crash on exit' thing until recently, I thought it was some weird interaction with the particular plugins I was using in my scripts. I'll give 1.91 a shot, and post my findings.
Life's short.
eBayhard.

User avatar
Pwolf
Friendly Neighborhood Pwaffle
Joined: Thu May 03, 2001 4:17 pm
Location: Some where in California, I forgot :\
Contact:
Org Profile

Post by Pwolf » Mon Jun 23, 2008 8:48 pm

6.5 works great, have very little problems with it.

I've been using 6.0 at work and that POS crashes all the time i hate it.


Pwolf

Locked

Return to “Adobe Software”