17 Replies Latest reply on Jun 25, 2018 7:32 AM by Premiopolis

    projectItem.createSmartBin: Is there any documentation for it? (and other questions)

    ETorr Level 1

      So far haven't found anything of significance in Adobe Forums, via Google, or at https://github.com/Adobe-CEP/Samples/blob/master/PProPanel/jsx/PPRO/Premiere.jsx)

       

      A quick dive prompted the following observations & questions:

       

      1) Every createSmartBin() generates a new smart bin, even if using the same name.  Makes sense, but it would also helpful to be able if ExtendScript could update (i.e. Edit) an existing Smart Bin.  Is there a way to edit the terms of an existing Smart Bin via ExtendScript?

       

      2) Use of the term "QueryString":

      So far I'm only able to place a single search term for that parameter, and the results apply to "All Categories".

      I'm familiar with "QueryString" from of www fame w/ their key/val pairs (e.g. Comments=SomeComment&Caption=SomeCaption).  That teases the prospect of more complex searches, targeting multiple properties and values.

       

      So far I'm only able to generate a single, basic, All-Metadata search.

       

      Is there way to execute more complex searches?

        • 1. Re: projectItem.createSmartBin: Is there any documentation for it? (and other questions)
          Bruce Bullis Adobe Employee

          No, there is no documentation. Being built.

           

          > Is there a way to edit the terms of an existing Smart Bin via ExtendScript?

           

          Oddly enough, no one's ever asked for that. What's the use case? When would that be preferable to making a new search bin, with the new search string?

           

          Complex searches = any string you can type in the Project panel search box, you should be able to pass as a search string. Good luck escaping all those RegEx characters.

          • 2. Re: projectItem.createSmartBin: Is there any documentation for it? (and other questions)
            ETorr Level 1

            https://forums.adobe.com/people/Bruce+Bullis  wrote

             

            No, there is no documentation. Being built.

             

            > Is there a way to edit the terms of an existing Smart Bin via ExtendScript?

             

            Oddly enough, no one's ever asked for that. What's the use case? When would that be preferable to making a new search bin, with the new search string?

             

            Complex searches = any string you can type in the Project panel search box, you should be able to pass as a search string. Good luck escaping all those RegEx characters.

            RE RegEx escapes -- difficult but we do it in other contexts all the time.  It will work in this context?

             

            Shorter explanation:

             

            Here's an example of a complex search:

            Fiction  - "Scenes 2, 10, and 119, Pickups only, Mediums and Closeups only"

            Reality - "Cameras A & D only, from days 2, 3 or 6, featuring character X, in the Kitchen"

            Documentary - "Interviewee X, 2nd session, themes: danger and escape"

             

            You can build that kind of info into tags with greater ease, speed, specificity, and flexibility than you can with bins.

             

             

            Longer explanation....

             

            Big Picture: We effectively replace bin-based organization with tag-based organization. Of course we still have bins, but tend to ignore them.

             

            Take the following examples of bin-based organization:

              - Scripted show: Project is first organized according to the order in which scenes are shot (bin per day's shoot), then re-organized by scene number (bins for each scene).  As you're editing you will volley back and forth between these two (and more and more) ways of thinking  about your footage,

             

              - Reality TV example: There's a master bin for "Shoot Day 1", "Shoot 2", etc.  Sub-bins for "A-Cam", "B-Cam", etc; Sub-sub-bins for Characters.  (Shows vary but basically they're all variants of this)

             

            - Documentary: Bins for shoot days, Interviews, B-Roll, Stock footage, later theme and sections.

             

            In all these cases, no sooner is a bin structure set up than you need to cut across the hierarchies to get the clips to satisfy your "need-of-the-moment".  So what's really the best project structure?  One that's fluid, dynamic, capable of handling an array of questions that are evolving by the minute.

             

            This we achieve with a single Search Bin which at any given moment can be filtered to serve the query-of-the-moment -- an ability to filter & sort with sophistication, articulation, and speed.  Sure you can generate additional Search Bins and have multiple searches up at once, but that's just icing on the cake (or clutter if you make too many of them)

             

            For us this is not a far fetched dream. We've long since implemented, and it's proven itself very effective.  Even as it stands now the current Search Bin UI's "All Metadata" with it's 2-search criteria max and a single and/or option frequently covers (or can jerry-rigged to meet) our needs.  BUT...

             

            ...Once you glimpse the speed, and creative power made available by this approach project management you recognize the power of tagging over bins, and need for search sophistication.

            • 3. Re: projectItem.createSmartBin: Is there any documentation for it? (and other questions)
              Bruce Bullis Adobe Employee

              > It will work in this context?

               

              Anything you can type into a smart bin's search field, can be used as the searchString.

               

              I still don't understand the necessity of repurposing an existing bin, for new searches.

               

              If the new search implies that the user no longer needs the old search, what prevents you from deleting the first bin and creating a new one? [Even more motivation not to re-purpose the existing one, if the new search doesn't supplant the old one.]

               

              It sounds like you have another feature request, about allowing more complex searches...?

              • 4. Re: projectItem.createSmartBin: Is there any documentation for it? (and other questions)
                ETorr Level 1

                https://forums.adobe.com/people/Bruce+Bullis  wrote

                 

                > It will work in this context?

                Anything you can type into a smart bin's search field, can be used as the searchString.

                 

                My experience with Search Bins (and for that matter Filter Bin Content) is that these are string-only searches with no hidden options to run regex or logical operators.  (Search Bins give you two search conditions connecting by one logical operator that can be set to and/or.  Filter Bin Content is strictly a single string search)  I would love to discover otherwise.  If you have leads clues that reveal hidden power under the hood, I'd be thrilled.

                 

                I still don't understand the necessity of repurposing an existing bin, for new searches.

                 

                If the new search implies that the user no longer needs the old search, what prevents you from deleting the first bin and creating a new one? [Even more motivation not to re-purpose the existing one, if the new search doesn't supplant the old one.]

                RE Why repurpose the same Search Bin instead of replacing it...

                Continuity of the bin setup, i.e. retaining its position on the screen, its size, the columns that appear in it, in which order, under what sort configuration.

                 

                Effectively that's what the Filter Bin Content feature does now: you type in your search to limit the contents, the Bin (or Project) Panel stays in place and updates as you type.  That raises the question: Why not just use Filter Bin Content instead of a Search Bin?  There are big differences

                     - Filter Bin Content merely constrains the existing bin contents whereas a Search Bin is always a project wide search, representing items in a quasi-alias form.

                     - Filter Bin Content does not show items in flat-list form, retaining bins and their sub-contents.  At times that's helpful, other times it muddies the results.  Search Bin results are always in flat-list form; the bins are irrelevant.

                 

                It sounds like you have another feature request, about allowing more complex searches...?

                Probably a couple of feature requests:

                In both the Search Bin popup and the Filter Bin Content field

                1 - The ability to target specific XMP properties (Find string "Dolly shot" in field "CameraLog")

                2 - Use of operators like "and / or", contains, exact match, starts/ends with, greater/less than, parentheses etc.

                I suspect these could be implemented in easter egg form (if they're not there already) so as not to burden users who are comfortable with the existing string-only searches.

                Will write those up and send soon.

                • 5. Re: projectItem.createSmartBin: Is there any documentation for it? (and other questions)
                  Bruce Bullis Adobe Employee

                  There are no hidden powers; whatever a user can do, the API can do.

                  • 6. Re: projectItem.createSmartBin: Is there any documentation for it? (and other questions)
                    Trevor_Asq Level 4

                    Definitely can see a reason to update (rather than create multiple new) search bin.

                     

                    Came to this discussion from Ed’s media relatives query elsewhere. I rarely use media relatives but what I do use in Avid a lot is ‘set bin display - show reference clips’. With a bin containing 1 sequence it gives you all the relevant master clips, enabling sifting & sorting & checking/changing metadata.

                    • 7. Re: projectItem.createSmartBin: Is there any documentation for it? (and other questions)
                      Premiopolis Level 2

                      ETorr  wrote

                       

                      I still don't understand the necessity of repurposing an existing bin, for new searches.

                       

                      If the new search implies that the user no longer needs the old search, what prevents you from deleting the first bin and creating a new one? [Even more motivation not to re-purpose the existing one, if the new search doesn't supplant the old one.]

                      RE Why repurpose the same Search Bin instead of replacing it...

                      Continuity of the bin setup, i.e. retaining its position on the screen, its size, the columns that appear in it, in which order, under what sort configuration.

                       

                      ATT: Bruce Bullis Employee

                      Following up on this.

                       

                      Can ExtendScript select a Search Bin and edit the search properties?

                      Just posted a request for a Keyboard Shortcut to "Edit Search Bin..." but would be just as happy to code one up.

                       

                       

                      Also thumbs on looking to expand the capability fo Search Bins with wild cards, regex, and full access to all metadata properties.  Would be fantastic.

                      • 8. Re: projectItem.createSmartBin: Is there any documentation for it? (and other questions)
                        Bruce Bullis Adobe Employee

                        var newSearchBin = projectItem.createSmartBin("name of bin", "search string exactly as user would type it");

                        • 9. Re: projectItem.createSmartBin: Is there any documentation for it? (and other questions)
                          Premiopolis Level 2

                          https://forums.adobe.com/people/Bruce+Bullis  wrote

                           

                          var newSearchBin = projectItem.createSmartBin("name of bin", "search string exactly as user would type it");

                          Can make that work.  BUT was hoping something like the following...

                          existingSearchBin.modifySmartBin(existingSearchBin.name [or change], "Search String");

                           

                          or, shy of that...

                          var newSearchBin = existingSearchBin.parentBin.createSmartBin(existingSearchBin.name, "Search String");

                          existingSearchBin.delete();

                          • 10. Re: projectItem.createSmartBin: Is there any documentation for it? (and other questions)
                            Bruce Bullis Adobe Employee

                            Changing a smart bin's 'smartness' (search string) makes it...a different bin.

                             

                            Deleting a bin does delete its contents; many panel devs use a temporary 'deleteMe' folder at the project root, for such purposes.

                            • 11. Re: projectItem.createSmartBin: Is there any documentation for it? (and other questions)
                              Premiopolis Level 2

                              https://forums.adobe.com/people/Bruce+Bullis  wrote

                               

                              Changing a smart bin's 'smartness' (search string) makes it...a different bin.

                              How do you mean/in what sense?

                              If you change the 'smartness' of an existing Smart (aka Search) Bin manually (i.e. Right-click the bin, choose "Edit Search Bin...") the bin remains in place (a new one is not created), the name remains the same, but the contents change.*

                              * (I think in the past the name of the bin changed to reflect the new search, but I just tested, and that no longer seems to be the case)

                               

                              So how we're currently with the Search Bin feature: We create a search bin, giving a name like "-SearchBin" (deliberately using the hyphen to keep it sorted to the top of the project window), and using it to quickly find items.

                               

                              Why do this instead of the "Filter Bin Content" feature?  Faster.  Much faster.  The filter updates "onKeystroke" and (for high-content projects) freezes the system keystroke after keystroke, and the results take longer to populate overall.  Search bins don't hiccup the system, execute on Return, and overall get results much faster.  Also cleaner: Filtering from root (temporarily) affects the entire project.  Search Bin'ing searches the entire project as if from root but the results only populate the Search Bin affecting nothing else.  (More on all that here: Keyboard Shortcut for "Edit Search Bin..."? )

                               

                              So we're loving Search Bins.  The only fly in the ointment is that there is no keyboard shortcut, so here we are in SDK forums to try to make one.  (I did, BTW create per your suggestion.  It proliferates multiple Search Bins, which is slightly annoying -- hence my interest in a ProjectItem.modifySmartBin method -- but it's nonetheless workable.

                               

                               

                               

                              https://forums.adobe.com/people/Bruce+Bullis  wrote

                               

                              Deleting a bin does delete its contents; many panel devs use a temporary 'deleteMe' folder at the project root, for such purposes.

                              Deleting a regular bin deletes the contents, but Search Bin contents act more like aliases to real Project Items, so deleting a Search Bin only removes the bin itself.  Any Project Items that were represnted in it -- which were drawn from other parts of the project -- remain fully intact where they ever were.

                              • 12. Re: projectItem.createSmartBin: Is there any documentation for it? (and other questions)
                                Bruce Bullis Adobe Employee

                                Right, I was imprecise; you can put a search bin in a normal 'deleteMe' bin, then delete 'deleteMe'...

                                • 13. Re: projectItem.createSmartBin: Is there any documentation for it? (and other questions)
                                  Premiopolis Level 2

                                  https://forums.adobe.com/people/Bruce+Bullis  wrote

                                   

                                  Right, I was imprecise; you can put a search bin in a normal 'deleteMe' bin, then delete 'deleteMe'...

                                  How to move a Search Bin to the 'deleteMe' bin programatically?

                                  • 15. Re: projectItem.createSmartBin: Is there any documentation for it? (and other questions)
                                    Premiopolis Level 2

                                    https://forums.adobe.com/people/Bruce+Bullis  wrote

                                     

                                    serachBinProjectItem.moveBin(newParentBin);

                                    Fantastic!  Thanks!!

                                    It would be tidier a new method searchBinProjectItem.modifySmartBin(Name,SearchContents);

                                    feature request possible?

                                    But this is a perfectly fine hack.

                                    • 16. Re: projectItem.createSmartBin: Is there any documentation for it? (and other questions)
                                      Bruce Bullis Adobe Employee

                                      Feature request definitely possible, though the prognosis for its implementation isn't good, given the work-around.

                                      • 17. Re: projectItem.createSmartBin: Is there any documentation for it? (and other questions)
                                        Premiopolis Level 2

                                        I'll live with it.  There's something reassuring about all those 'old' searches.