Skip to main content
Participant
February 5, 2014
Question

Drag&Drop from Lightroom to Premiere doesn't work! Programming an alternative?

  • February 5, 2014
  • 1 reply
  • 837 views

Unfortunally the is no working Drag&Drop ability to drag a videofile from the Lightroom Library into the Premiere Project View.

(This Problem appears only on a Windows machine not on Mac)

This is becaus if you send a (valid) filepath to "Adobe Premiere Pro.exe" as a parameter it doesn't do anything! Why that?!?!?

It makes no difference if you drop a file on "Adobe Premiere Pro.exe" or if you use the windows command shell like "C:/...<path to premiere>.../Adobe Premiere Pro.exe" "myfile.avi"  , simply nothing happens - at least with Premiere Pro CS5...

So the Idea is to build an Lightroom Plug-In, that opens an exe-file with the filepaths of the currently selected Viedeos from the Lightroom Library as parameter.

The exe-file should pass the information to an opened Project in Premiere an load the Videos into the Project.

With ExtendScript Tool i can get this behaviour with this code:

var myFiles = ["C:\\01.avi, ..."];

app.project.importFiles(myFiles);

I don't think that the Premiere SDK will help me out, because with that I can only build Plug-Ins that work INSIDE Premiere. I need a Executable that can send information/files to Premiere from Outside. The only thing I can think of is to load the right dll-file and call the function() for importing files to Premiere (I think this is what ExtendScript Tool does ), but I don't know how to start, because nothing is documented about the dlls...

Any Ideas

This topic has been closed for replies.

1 reply

alex_auchAuthor
Participant
February 5, 2014

EDIT:

Ok, I identified the dll which is importing Video-Files to Premiere:  HSL.dll

At my pc it is located in:

"C:\Program Files\Adobe\Adobe Premiere Pro CS5\"

The function that is called is named ImportFiles(...)

That's the whole code, reverse engineered:

HSL::ImportFiles

(

    std::vector <

                std::basic_string <unsigned short, std::char_traits<unsigned short>, dvacore::utility::SmallBlockAllocator::STLAllocator<unsigned short> >,

                std::allocator <std::basic_string<unsigned short, std::char_traits<unsigned short>, dvacore::utility::SmallBlockAllocator::STLAllocator<unsigned short> > >

                >

    const&,

    bool,

    bool,

    std::vector <

                ASL::InterfaceRef<BE::IProjectItem, BE::IProjectItem>,

                std::allocator<ASL::InterfaceRef<BE::IProjectItem, BE::IProjectItem> >

                >&,

    std::vector <

                std::pair<int, std::basic_string<unsigned short, std::char_traits<unsigned short>, dvacore::utility::SmallBlockAllocator::STLAllocator<unsigned short> > >,

                std::allocator<std::pair<int, std::basic_string<unsigned short, std::char_traits<unsigned short>, dvacore::utility::SmallBlockAllocator::STLAllocator<unsigned short> > > >

                >&,

    ASL::InterfaceRef<BE::IProjectLoadStatus, BE::IProjectLoadStatus>&,

    DLG::ImportFromEDL::ImportFromEDLDialog*,

    std::basic_string<unsigned short, std::char_traits<unsigned short>, dvacore::utility::SmallBlockAllocator::STLAllocator<unsigned short> > const*,

    DLG::ImportFromEDL::ImportNewSequenceMediaParamsDialog*

)

Can anybody "read" that , or anybody know how to get this working with c++?

Inspiring
February 5, 2014

Hi there,

More recent versions of Premiere Pro support importing files using scripting.  But I don't think CS5 supports those calls.

Zac

alex_auchAuthor
Participant
February 5, 2014

Hi Zac, thank you for replying.

Scripting is no problem, as I said.

This Script is working with ExtendScript in CS5:

var myFiles = ["C:\\01.avi, ..."];

app.project.importFiles(myFiles);

But I need an Executable file. Or can I save the Script as .jsx and run it with custom parameters (e.g. with the console)?

[If I doubleclick the .jsx it is only opening the ExtendScript Tool and not executing directly, this behaviour is not what I need...]