Necessary Matlab compiler options to integrate generated dll in VI

What Matlab compiler (mcc) options are required for Labview to be able to import the generated dll?
Using typical options, there are symbol definition problems with the header file.

I've never actually done this, but in searching the forums I found a number of helpful posts:
http://forums.ni.com/ni/board/message?board.id=180&message.id=19209&requireLogin=False
http://forums.ni.com/ni/board/message?board.id=170&message.id=7344&requireLogin=False
http://forums.ni.com/ni/board/message?board.id=170&message.id=29793&requireLogin=False
http://forums.ni.com/ni/board/message?board.id=170&message.id=19555&requireLogin=False
Let me know if this isn't enough (or the correct) information.
David_B
Applications Engineer
National Instruments

Similar Messages

  • How to use matlab compiled DLL in Labview ?

    I have LV 8.5, and am unable to use a matlab compiled DLL in my LV code. I have tried the 'import'  command, but it does not list any functions. However, it does not show any errors during its execution. The existing solutions/responses to this question do not work either. I would also like to know of a way to deal with mxArray datatype. What is its equivalent in C (or any other high-level language) ? How do I retrieve an array that is returned from the matlab dll ?

    I'm assuming you have either Matlab installed or at the very least the Matlab Runtime, otherwise the DLL won't work. The "import" command relies on having a header file. Do you have one? You also need to make sure the DLL has been compiled so that it's compatible with LabVIEW. The most likely problem is name mangling, which also occurs when you try to compile a DLL written in C++. See this post, which contains links to useful posts.
    The mxArray datatype is a special datatype which is actually a structure. It's complicated. Your best bet is to create a C DLL that acts as an intermediary between the Matlab DLL and LabVIEW. If you are able to, you can, instead, simply call the Matlab code directly using the Matlab script node.

  • -keep-generated-actionscript Compiler Option Question

    I'm trying to learn how Actionscript works. I turned on the -keep-generated-actionscript compiler option so that I could see the generated actionscript for an ItemRenderer I'm creating.
    Should I:
    1. directly edit the generated file, or
    2. use the generated file as a reference for creation of my own ItemRenderer class file.
    I'm thinking the latter, right?
    all feedback appreciated!
    many thanks,
    Mark

    You can do either, but there are AS item renderers in the SDK that are
    better reference implementations.

  • BUG in Oracle SQL Developer 3.0.04 on the "generating DLL" with comments?

    I'm newbie on oracle, but I think that I found out a bug in Oracle SQL Developer version 3.0.04 on the "generating DLL" tool using "comments".
    I will describe the steps that I gave:
    I created a view, but after I test it I had to change my “where” condition, so I comment the old code and then I wrote the new “where” condition below. After I done that I tried to look at the sql code of my view using “generating DLL” tool, but oracle sql developer only shown me half of the code, a lot of code were missing. Then I began with some test trying to understand what happen and I notice that if I put an invalid sql code in my comment the generating DLL start working with no problems, for example(pseudo-code):
    (COMMENT WITH VALID SQL CODE the "Generating SQL" don't work:)
    CREATE OR REPLACE VIEW <user>.<view_name> ( <column1>,<column2> )
    AS
    SELECT column1, column2
    FROM table1
    INNER JOIN
    (SELECT
    FROM table2
    INNER JOIN .....
    INNER JOIN ....
    --where time_stamp = (select max(time_stamp) from .....)
    WHERE time_stamp >= TRUNC(sysdate)
    ) t1 ON t1.ID = ....
    AND ..... >= TRUNC(sysdate)
    ORDER BY ....
    Generating DLL returns this(when the error occurs):
    CREATE OR REPLACE VIEW <user>.<view_name> ( <column1>,<column2> )
    AS
    (COMMENT WITH VALID SQL CODE the "Generating SQL" work with no problems:)
    CREATE OR REPLACE VIEW <user>.<view_name> ( <column1>,<column2> )
    AS
    SELECT column1, column2
    FROM table1
    INNER JOIN
    (SELECT
    FROM table2
    INNER JOIN .....
    INNER JOIN ....
    --where
    WHERE time_stamp >= TRUNC(sysdate)
    ) t1 ON t1.ID = ....
    AND ..... >= TRUNC(sysdate)
    ORDER BY ....
    I believe that "Generating DLL" tool have some problem with the comments, I also used /*...*/ to comment but the problem is still active.
    I notice as well that if I started to add some more comments along the code, the conditions migth change, so I think the problem is related with "comments" code.
    Would you mind telling me if this is a real bug or if I'm doing anything wrong.
    Thank you in advance,
    Rodrigo Campos
    Edited by: 894886 on 3/Nov/2011 5:29

    Hi Rodrigo,
    Thank you for reporting this. The only bug I see currently logged on a comment affecting the generated View DDL involves ending the last line of the definition with a comment, which treats the ending semi-colon (even if on a different line) as part of the comment. That is actually related to a low-priority bug against an Oracle database API.
    Unfortunately, your pseudo-code is a bit complex. Trying a few quick, simpler tests against the standard HR schema did not reproduce the issue. I tried INNER JOIN, and nested SELECTs. It would help greatly if you could provide a test case compilable against one of the standard schema, like HR or SCOTT.
    Regards,
    Gary
    SQL Developer Team

  • Question about LabVIEW generated DLL's

    Hello,
    I want to try programming games in either JAVA or FLASH.
    What I want to know is if I can use the LabVIEW generated DDL's for use in my games, without having to need the LabVIEW runtimes installed.
    (in other words, are the LabVIEW generated DLL's, stand alone DLL's as generated in for example C/C++ or other programming languages?) 
    Second, how good is LabVIEW in converting it's code into a DLL. Can I make complicated algorithms, or are just simple functions allowed.
    Hope you guys can spare a few words on this topic.
    Sincerely,
    Heinen  
    The Enrichment Center is required to remind you that you will be baked, and then there will be cake.

    Hello dan_u and thank you for your quick reply.
    If the LabVIEW Runtimes are needed to use the DLL's, that is not a good option for me then. I eventually want to distribute my games over the internet, and having to sent the LabVIEW runtimes with the games is just not an option.
    To bad, I'm better in programming stuff in LabVIEW then in writen C++ like code.
    Sincerely,
    Heinen 
    The Enrichment Center is required to remind you that you will be baked, and then there will be cake.

  • Generating DLL with LabVIEW - A basic question

    Hi everybody !
    I'm trying to generate a simple DLL with LV. I have read as much as I could on the subject, prepared a small test vi (calculate x*x), built the corresponding dll, inserted and configured the ddl into another vi... Every thing seems to be fine, except that the ddl returns 0 whatever I'm doing.
    I'm obviously missing something here, and I would be very gratefull if somebody could guide me out of this stupid corner.
    CC
    Chilly Charly    (aka CC)
             E-List Master - Kudos glutton - Press the yellow button on the left...        

    Hi Chrisger & Becktho !
    Thanks for your replies.
    Unfortunately I'm still stuck.
    First thing is that I followed already exactly the path develepped by Chrisger. I also tried changing the calling convention as suggestedc by Becktho. No success.
    Second thing is that the ddl provided by Chrisger works perfectly (sorry Becktho, you just forgot the attachment...). At least that's something that shows I'm not entirely stupid, since I'm able to use a DDL compiled by someone else !
    So, this seems to be a problem related to the way I am generating the DLL. Just in case, I have attached here the files I'm using (the source, the .bld file, and the generated DLL. Could you give them a look/trial ?
    CC
    Chilly Charly    (aka CC)
             E-List Master - Kudos glutton - Press the yellow button on the left...        
    Attachments:
    Test DLL.zip ‏18 KB

  • Unable to compile the Java Files generated by JAXB

    Hi,
    I have generated the Java Files for a DTD and .xjs file using JAXB. But when i tyr to compile the .java files generated i am getting errors.
    My DTD file is addctq.dtd
    <?xml version="1.0" encoding="UTF-8"?>
    <!ELEMENT AddCtq (Ctq*)>
    <!ELEMENT Ctq (PartNumber ,PartDescription,CtqDescription,CtqType,ProductLine,Supplier,Ppctq,Ctp,Ctc,CtqCode1,CtqCode2,CtqCode3,Commodity,SubCommodity,UnitOfMeasure,Client,SamplingFrequency,Remarks,VariableData)>
    <!ELEMENT VariableData (SubGroupSize, Specification,Nominal,Usl,Ual,Lal,Lsl,Zal,RangeVal?,RangeAlarmVal?)>
    <!ELEMENT PartNumber (#PCDATA)>
    <!ATTLIST PartNumber new CDATA #REQUIRED >
    <!ELEMENT PartDescription (#PCDATA)>
    <!ELEMENT CtqDescription (#PCDATA)>
    <!ELEMENT CtqType (#PCDATA)>
    <!ELEMENT ProductLine (#PCDATA)>
    <!ELEMENT Supplier (#PCDATA)>
    <!ELEMENT Ppctq (#PCDATA)>
    <!ELEMENT Ctp (#PCDATA)>
    <!ELEMENT Ctc (#PCDATA)>
    <!ELEMENT CtqCode1 (#PCDATA)>
    <!ELEMENT CtqCode2 (#PCDATA)>
    <!ELEMENT CtqCode3 (#PCDATA)>
    <!ELEMENT Commodity (#PCDATA)>
    <!ELEMENT SubCommodity (#PCDATA)>
    <!ELEMENT UnitOfMeasure (#PCDATA)>
    <!ELEMENT Client (#PCDATA)>
    <!ELEMENT SamplingFrequency (#PCDATA)>
    <!ELEMENT Remarks (#PCDATA)>
    <!ELEMENT SubGroupSize (#PCDATA)>
    <!ELEMENT Specification (#PCDATA)>
    <!ELEMENT Nominal (#PCDATA)>
    <!ELEMENT Usl (#PCDATA)>
    <!ELEMENT Ual (#PCDATA)>
    <!ELEMENT Lal (#PCDATA)>
    <!ELEMENT Lsl (#PCDATA)>
    <!ELEMENT Zal (#PCDATA)>
    <!ELEMENT RangeVal (#PCDATA)>
    <!ELEMENT RangeAlarmVal (#PCDATA)>
    and the .xjs file i created is addctq.xjs
    <?xml version="1.0" encoding="UTF-8" ?>
    <xml-java-binding-schema version="1.0-ea">
    <options package="com.geindustrial.sqms"/>
    <element name="AddCtq" type="class" root="true">
    <content>
    <element-ref name="Ctq"/>
    </content>
    </element>
    <element name="Ctq" type="class">
    <content>
         <element-ref name="PartNumber"/>
         <element-ref name="PartDescription"/>
         <element-ref name="CtqDescription"/>
         <element-ref name="CtqType"/>
         <element-ref name="ProductLine"/>
         <element-ref name="Supplier"/>
         <element-ref name="Ppctq"/>
         <element-ref name="Ctp"/>
         <element-ref name="Ctc"/>
         <element-ref name="CtqCode1"/>
         <element-ref name="CtqCode2"/>
         <element-ref name="CtqCode3"/>
         <element-ref name="Commodity"/>
         <element-ref name="SubCommodity"/>
         <element-ref name="UnitOfMeasure"/>
         <element-ref name="Client"/>
         <element-ref name="SamplingFrequency"/>
         <element-ref name="Remarks"/>
         <element-ref name="VariableData"/>
    </content>      
    </element>
    <element name="VariableData" type="class">
    <content>
    <element-ref name="SubGroupSize"/>
    <element-ref name="Specification"/>
    <element-ref name="Nominal"/>
    <element-ref name="Usl"/>
    <element-ref name="Ual"/>
    <element-ref name="Lal"/>
    <element-ref name="Lsl"/>
    <element-ref name="Zal"/>
    </content>
    </element>
    <element name="PartNumber" type="value">
    <attribute name="new"/>
    </element>
    <element name="PartDescription" type="value">
    </element>
    <element name="CtqDescription" type="value">
    </element>
    <element name="CtqType" type="value">
    </element>
    <element name="ProductLine" type="value">
    </element>
    <element name="Supplier" type="value">
    </element>
    <element name="Ppctq" type="value">
    </element>
    <element name="Ctp" type="value">
    </element>
    <element name="Ctc" type="value">
    </element>
    <element name="CtqCode1" type="value">
    </element>
    <element name="CtqCode2" type="value">
    </element>
    <element name="CtqCode3" type="value">
    </element>
    <element name="Commodity" type="value">
    </element>
    <element name="SubCommodity" type="value">
    </element>
    <element name="UnitOfMeasure" type="value">
    </element>
    <element name="Client" type="value">
    </element>
    <element name="SamplingFrequency" type="value">
    </element>
    <element name="Remarks" type="value">
    </element>
    <element name="SubGroupSize" type="value" convert="int">
    </element>
    <element name="Specification" type="value">
    </element>
    <element name="Nominal" type="value" convert="float">
    </element>
    <element name="Usl" type="value" convert="float">
    </element>
    <element name="Ual" type="value" convert="float">
    </element>
    <element name="Lal" type="value" convert="float">
    </element>
    <element name="Lsl" type="value" convert="float">
    </element>
    <element name="Zal" type="value" convert="float">
    </element>
    <element name="RangeVal" type="value" convert="float">
    </element>
    <element name="RangeAlarmVal" type="value" convert="float">
    </element>
    </xml-java-binding-schema>
    When i ran the xjc , it generated 3 .java files
    AddCtq.java , Ctq.java and VariableData.java
    But i am unable to compile any of the above files...
    The Error i am getting is
    VariableData.java:710: Undefined variable or class name: AddCtq
    return AddCtq.newDispatcher();
    ^
    1 error
    If i try to compile AddCtq.java , the Error i am getting is
    AddCtq.java:4: Class com.geindustrial.sqms.Ctq not found in import.
    import com.geindustrial.sqms.Ctq;
    ^
    AddCtq.java:169: Class com.geindustrial.sqms.Ctq not found.
    if (!(ob instanceof Ctq)) {
    ^
    AddCtq.java:170: Class com.geindustrial.sqms.Ctq not found.
    throw new InvalidContentObjectException(ob, (Ctq.class));
    ^
    3 errors
    And when i try to compile Ctq.java , i am getting the following Error:
    Ctq.java:4: Class com.geindustrial.sqms.VariableData not found in import.
    import com.geindustrial.sqms.VariableData;
    ^
    1 error
    How to solve this problem..Pls advise...
    Thanks
    Sateesh

    I suspect you are trying to compile the files one by one. You may also be trying to compile them disregarding the package structure.
    From your post, I gather these files are in the package: com.geindustrial.sqms
    Therefore, if they are not so already, put them under a directory structure:
    com/geindustrial/sqms
    and then compile with:
    javac com/geindustrial/sqms/AddCtq.java com/geindustrial/sqms/Ctq.java com/geindustrial/sqms/VariableData.java
    (The above is all on one line.)
    HTH,
    Manuel Amago.

  • Javac compiler options

    Could anyone explain the difference between these two javac compile options:
    -source <release> Provide source compatibility with specified release
    -target <release> Generate class files for specific VM version
    Say, I want to make sure my bytecode runs on Java 2 version 1.4 or above, which option should I choose?

    Could anyone explain the difference between these two
    javac compile options:
    -source <release> Provide source compatibility with specified releaseTurns on specific compiler cabilities.
    -target <release> Generate class files for specific VM versionGenerates class files that are compatible with specific versions (the class file
    format has changed somewhat with versions.)
    >
    Say, I want to make sure my bytecode runs on Java 2
    version 1.4 or above, which option should I choose?Well unless you are using 1.5 then you do not use either of the above options.

  • Passing compile options in PKGBUILD honoured or overriden?

    Hey there.
    First post. New Arch user here, saying: hello! Been using Linux for years. Recently switched from a .DEB-based distro. Love the rolling release model and pacman and ABS (first time exposure to the latter - I don't even have it in my car!). Thanks for all the good stuff.
    I figured a good way to start using Arch would be to contribute to the Wiki and to build a package or two.
    In the PKGBUILD I submitted, I have:
    make GCCOPTS="-DKERNEL2_1 -D_GNU_SOURCE -O3 -Wall" tleds || return 1
    I included options like -O3 and -Wall verbatim from the Makefile of the original tarball. Do these get overridden by CFLAGS from /etc/makepkg.conf? (I pretty much left it untouched)
    Is -D_GNU_SOURCE even necessary? (it seems to compile without it as well)
    * Edit: changed subject.
    Last edited by MajorTom (2008-10-10 15:10:24)

    tomk wrote:If these options are already in the Makefile, you don't have to pass them explicitly to make. After all, make reads the Makefile.
    In this particular case, the default Makefile needs to be modified or else the app won't work with kernels 2.1.x and up. This is taken care of by the $GCCOPTS variable (defined by the app author in the Makefile) which will pass the "-DKERNEL2_1" compile option to 'make'.
    What I'm unsure of is: the Makefile also specifies "-O3" while /etc/makepkg.conf defines "-O2". Which one wins? Should the PKGBUILD not include that option and in that case would 'make' use "-O2" from the makepkg.conf?
    Moreover, the Makefile includes "-Wall". Can/should this be omited? Does it really matter?
    Asking questions is the only way to learn. Thanks guys!

  • TS1468 Where is the compilation option in version 11?

    I have a single album what was split into 5 sections because of variations on artist name. Past support articles suggested using the Compilation option when selecting the multiple split portions. Where is that option in version 11 of iTunes? I do no see this feature.

    Compilation can be found in the Get Info dialog. Generally all you need to do to link things is fill in an appropriate Album Artist.  For more details see my article on Grouping Tracks Into Albums, in particular the topic One album, too many covers.
    tt2

  • [svn:fx-trunk] 12077: Although Spark RichText does not support link formats , modifying compiled FXG to not generate ActionScript code that will cause compile time exceptions .

    Revision: 12077
    Revision: 12077
    Author:   [email protected]
    Date:     2009-11-20 18:16:32 -0800 (Fri, 20 Nov 2009)
    Log Message:
    Although Spark RichText does not support link formats, modifying compiled FXG to not generate ActionScript code that will cause compile time exceptions.
    Removing references to Flex Builder 3 in RPC.
    QE notes: N/A
    Doc notes: N/A
    Bugs:
    SDK-24305 - Link format property nodes cause errors on RichText in FXG 2.0
    SDK-24322 - A couple references to Flex Builder 3 in Flex 4 LangRef (and code comments)
    Reviewer: Deepa
    Tests run: checkintests
    Is noteworthy for integration: No
    Ticket Links:
        http://bugs.adobe.com/jira/browse/SDK-24305
        http://bugs.adobe.com/jira/browse/SDK-24322
    Modified Paths:
        flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/xml/XMLDecoder.as
        flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/fxg/FlexFXG2SWFTranscoder.java

  • Adding Engine component causes: "Compiler errors occurred when generating a Windows Forms wrapper...​"

    I got this error when I tried to drop a TestStand Engine class onto my main form in VisualStudio.NET.
    Compiler errors occurred when generating a Windows Forms wrapper for ActiveX control 'AxNationalInstruments.TestStand.Interop.API'
    The error message went on to say that it saved the source in ./obj/AxInterop.TS.cs so I added that to the project. When I try to build it, I get this error:
    The designer must create an instance of type 'System.Windows.Forms.AxHost' but it cannot because the type is declared as abstract.
    I am using TestStand 3.0 evaluation, Version 7.1.3088 of Microsoft Development Environment 2003, and .NET Framework 1.1 Version 1.1.4322 SP1.
    Is this aximp.exe problem?
    Can someone suggest how to fix this?
    Thanks,
    Jeff

    TestStand installs pre-built interop wrappers for the TestStand engine and all the TestStand UserInterface controls. You can find them in \API\DotNet\Assemblies\CurrentVersion\.
    However, the best thing to do is usually to add the ApplicationMgr control to your .NET form and then call form.axApplicationMgr1.GetEngine() to get the engine. Doing this automatically adds references to the interop assemblies to your project. You can find this control in the TestStand tab of your .NET toolbox when you have a form active.
    Ideally, you should start with the .NET simple operator interface examples which are in \OperatorInterfaces\NI\Simple\CSharp\ and \OperatorInterfaces\NI\Simple\VB.Net\
    - James

  • "Compiler errors occurred when generating a Windows Forms wrapper...

    "Compiler errors occurred when generating a Windows Forms wrapper for ActiveX control 'AxNationalInstruments.TestStand.Interop.API'."

    Sorry, I accidentally hit enter as I was composing this post. Please see my full post at:
    http://forums.ni.com/ni/board/message?board.id=330&message.id=5633

  • Passing extra compiler options to flexunit ANT task?

    Hi,
    Is there a way to send any extra compiler options to the <flexunit> ANT task?
    I'm using conditional compilation and compilation (mxmlc) is failing from the <flexunit> task:
    "Error: Access of undefined property DEBUG.
    CONFIG::DEBUG {"
    I tried sneaking "-define+=CONFIG::DEBUG,false" in with one of the other compiler options you can set on the <flexunit> task, but that just doesn't work or results in a validation error like this:
    "One of the directories specified as a 'testSource' element does not exist."
    Let me know if this is possible at all.
    Thanks,
    Wijnand

    Hi Brian,
    legrosb wrote:
    @Wijnand - Sorry for the belated response.
    Not late at all! I think a response within a day on a forum is quite fast!
    legrosb wrote:
    I thought I had captured this on the wiki, but it looks like I haven't, so thank you for the heads up.
    I'll also update the wiki @ http://docs.flexunit.org/index.php?title=Ant_Task to be more detailed regarding compilation so other don't have to dig. 
    Did you just do an update on that Wiki page or did I completely miss the part that explained the <flexunit> parameters?
    legrosb wrote:
    In 4.2, which is super pre-alpha right now, I've added support to accept a series of flex-config.xml files provided by the user.  Not sure if conditional compilation can be tackled with a custom flex-config.xml file, but if so then that'd be the feature that may help you.
    Yes, being able to add (+=) a custom config file will solve this problem for me. You can define properties and values like this:
    <flex-config>
        <compiler>
            <define>
                <name>CONFIG::DEBUG</name>
                <value>false</value>
            </define>
        </compiler>
    <flex-config>
    So in your AS code you can use:
    CONFIG::DEBUG {
        // Do something that only should be done in debug mode.
    I have another question, I ran into this one during testing my SWF with flexunit.
    unittest.xml:82: java.util.concurrent.ExecutionException: command [<testcase classname='com.tuenti.video.unittest.testcase.player::MockPlayerCase' name='loadPlayer' time='0.000'  status='success'/>] not understood
    I had a look at the FlexUnitSocketThread.parseInboundMessages method that throws this error and it looks like that your defined END_OF_SUCCESS doesn't entirely match what the SWF is spitting out. They are of by 1 space: END_OF_SUCCESS is defined as: "status=\"success\" />", whereas my SWF spits out the following: "status='success'/>" (single quotes and no space before the closing of the tag).
    It looks like I'm not the only one with the ExecutionException as it is reported on StackOverflow as well: http://stackoverflow.com/questions/3953677/flexunittasks-error-of-command-not-understood
    Cheers,
    Wijnand

  • How to specify java compiler options in JDeveloper ?

    I am using JDeveloper 10.1.2. I downloaded and installed JDK 5.0.
    In my "Project Properties"->"Libraries" I created a new "JDK 5.0" J2SE Version and pointed to the new JDK5.0 execuitable. So far so good.
    Now I need to compile all my source code with -source=1.4 option. How do I specify java compiler option "-source=1.4" in JDeveloper ?
    Thanks
    Sachin

    Even before compilig I am not sure that by just going to "Project Properties"->Libraries and creating a new J2SE, I now have the new compiler working with JDEveloper. How do I test this ?

Maybe you are looking for

  • Mail Inbox no longer displays full email under "To".

    I have multiple email addresses in use from different email services (cable, web based).  Apple Mail draws from all accounts to populate my Inbox, but since switching to Yosemite, I no longer can see which of my email accounts is receiving a new mess

  • Function module to get the same date of the previous month

    Hi Can anybody tell me how to get the same date of the previous month. example if i am entering date as 30 may 2007 i want the date as 30 april 2007

  • Exclude Condition Record by Item Category

    Hi All, We need to exclude a condition record in pricing based on the line item category. We are trying to use a routine (VOFM->Formulas->condition base value)for this and haven't had much success so far in clearing out the condition value based on t

  • After itunes 11.1.5 upgrade can't open itunes

    I upgraded to itunes 11.1.5 on my mac and now it won't open. I'm currently running on Mac OS X 10.6.8. I don't get an error message or anything. Any ideas?

  • What's required to upgrade from 1.4.0 to 1.4.2?

    I've got four Xserve RAIDs in a single Xsan, with two MDCs (both PowerPC Xserves running OS X Server 10.4.11). They were running Xsan 1.4.0, which meant a lot of our Leopard clients were reporting incorrect sizes for files -- like, video files that w