Absolute paths in project files? Come on!

  • 16
  • Problem
  • Updated 11 months ago
Hi,

Why on earth do the .camproj files use absolute paths to refer to the source .camrec files? What possible advantage could that have over relative paths? Unbelievable...

Yeah, I know, somebody's going to come round now and ask why I would ever want it otherwise, and perhaps tell me about some zip and export feature and all that stuff... but seriously, this is just a bad decision!

My scenario is simple - I have folders with lots of different projects - current thing I'm looking at has five folders with around 12 camproj files each. Some of the camprojs have only one camrec, but some have many. Now, I'll be working on such an overall project for a while, and then it reaches a completed status. I back up the entire hierarchy onto my file server (actually, I'll do that in between as well, but when the project is completed, I might also remove the files from the work computer). Current project I'm looking at, this is 3.84GB of stuff I'm talking about.

Now, a while later, I need to revive the project. Either it needs some "in-place" editing, or I actually want to create a new variation of the project, all 3.84GB of it. So I copy it to some machine to start working on it - slim chance I'll be using the same path where the project was originally created!

And why on earth would I have to????

As long as the hierarchy of files is kept intact, it should be perfectly fine to copy the files anywhere I like. I haven't seen such a problem in many years by now... you're the first this decade at least! 

Would you please fix this? I found an issue reported here two years ago - nothing has changed. It's not really hard!

Thanks for listening.
Oliver
Photo of Oliver Sturm

Oliver Sturm

  • 5 Posts
  • 11 Reply Likes
  • angry

Posted 6 years ago

  • 16
Photo of kayakman

kayakman, Champion

  • 7021 Posts
  • 2284 Reply Likes
as you intimated, your best practice would be to export finished projects as a zip archive [file menu], then save off the zip file somewhere; when you import that zip later, all project files will be restored into the same sub folder and you can continue to work with the project

it is a bullet proof method

but you sort of accomplish what you want now by putting the projects in Library, then saving off the Library folder to be restored [as a Library folder] later; putting projects in Library collects all the files into the same [unzipped] sub folder

if interested further, this tutorial explains how to work with multiple Libraries ...
http://www.screencast.com/t/m18uiEIGrSq
Photo of Oliver Sturm

Oliver Sturm

  • 5 Posts
  • 11 Reply Likes
Dude... how is that a "best practice"? That is a practice born of necessity, because some programmer made a bad decision. Best practice? I told you I have around 60 camproj files in this project, and you're telling me the best practice is to zip them individually for the simple purpose of creating backups?

I checked out the idea of libraries for a while there, but then it all comes down to zip files again... seriously, I don't want to be handling 3.84GB zip files for my purposes. That's stupid.

Just get a developer onto the change to relative paths. It won't take more than a day, I promise. Probably it won't take more than an hour. All the other suggestions are just workarounds for the basic and inexplicable mistake of using absolute paths. Just fix it!

Photo of Brian Cugelman

Brian Cugelman

  • 2 Posts
  • 2 Reply Likes
I agree with you . So often, companies say "we can't do that", and I respond, some short sighted developer or manager made the decision, and now you're not fixing it, or avoiding accountability for poor judgement, or covering up incompetence. Relative paths has obvious advantages across many fronts. 
(Edited)
Photo of brian.ambrose

brian.ambrose

  • 9 Posts
  • 1 Reply Like
V8.1-- Waiting on 9..  Love the software but, seriously!   
I agree!  I have created 15 different training modules that have VERY similar names.  Often I made title mistakes in folder paths well above the Cam. files, but it never fails one backslash or period out of place and it a total hunt again.  So I put all the files in the Library.. simple fix right.. NOPE.. you can't even move the files, (to my knowledge) to the working area from the Library, and it doesn't seem that saving files into the library assures your not going to have the same missing errors, so why save it in the library at all?  if the library isn't the "parachute" for the data then why even have it?  
Photo of kayakman

kayakman, Champion

  • 6780 Posts
  • 2155 Reply Likes
the Library is not intended to be used as a project file storage location; it should be used to create "assets" that will be used in "projects" going forward in time.

best practice is to export your project as a zip, then import that zipped project and continue your editing work

that way, all files are placed into the same folder
Photo of MelGrubb

MelGrubb

  • 13 Posts
  • 14 Reply Likes
That's not a "best practice", that's a recommended workaround. It's not the same at all. For someone with a dedicated machine that does nothing but Camtasia this might work. For those of us actually using the product, it's a terrible experience, and one that is not shared by other project-based systems like code IDEs.

This is not expected behavior, regardless of how you "intend" people to use the product. As a software developer myself, I can tell you that a large part of UX design is centered around doing what your USERS want, not what you want your users to want. Your users clearly want the projects to be easily portable. That's why this issue keeps coming up.
Photo of Paul Cavanagh

Paul Cavanagh

  • 3 Posts
  • 2 Reply Likes
As a Product Owner I know that I need to involve my development team in the UX conversation with my customers to ensure I understand where they will realise value from the planned feature, and I need to continue to listen once we have started to ship that feature.... Feedback on the absolute path dependency in Camtasia  seems to be  a long term and common persistent frustration.
Photo of Rick Stone

Rick Stone

  • 5206 Posts
  • 2459 Reply Likes
Personally, I don't see "Best Practice" and "Workaround" as being mutually exclusive. I think in many cases such as this one, the best practice is nothing but a workaround. That's not to say it's not frustrating and excuse a development team for ignoring the issue (assuming they are). 

As I see it, a best practice is something recommended by folks that are very familiar with using the software. It may be a workaround and it may be something else. The whole point is to ease any frustration and streamline working with the product as much as you can. 

Cheers... Rick :)
Photo of brian.ambrose

brian.ambrose

  • 9 Posts
  • 1 Reply Like
What I started doing was making 3 copies as a rule.  The Cam project file, A full MP$  version, and now a zip file.. THANK YOU FOR THE tip!   
I am remote VPN to my office 4 days a week so I do all of this local first, then push up the completed files to the network.  Did they address this issue in V 9.. I am still waiting on my company getting me that upgrade.

  
Photo of kayakman

kayakman, Champion

  • 6780 Posts
  • 2155 Reply Likes
if you are doing work locally at home, then want to continue editing at work, all you should need to do is zip locally, the send the zip to work site; at work, import that zip, and continue editing

the zip contains the project file [tscproj] along with everything used in the project at home

when ready to continue working at home, zip at the office, and send the zip to yourself; import and continue

exporting as zip is the bullet proof way to share projects
Photo of kayakman

kayakman, Champion

  • 6780 Posts
  • 2155 Reply Likes
brian.ambrose ...

I received a email notification of a post you made against this thread; did you delete that post?  I can't find it here

here is what was in the email ...

Question: 
So those folders you can build in the Library, they stay with Camtasia after that, always, not just that project, correct? 
So if you have 10 audio files, for 10 different builds, even after you closed Camtasia, when you go to build project 11 your going to still see the other 10 previous projects audio files?    TRUE or FALSE?   

Also, you can load up Library folders, with all the files you'd like to, but I have not found a way to just drag and drop them onto the Clip Bin?  I just don't understand?  What is the point of the library, if it won't even be used as the "Local" source or path the software uses to later reference and call the media?  

If you build a Library file area, from what little exp I have,  that doesn't protect the files from being "not found" if they are inside that folder, if once you load that folder with all your media, your can't d rag and drop items from it into the clip bin either, this to me was crazy.. but am i missing a step to get the folders working together? 

Thanks for the advice.. comments..   happy developing!

END OF EMAIL

if still looking for answers, perhaps watch this ...

About Camtasia Project File Types 2017-04-07
http://www.screencast.com/t/nkfJX0S49i9A
Photo of polyfarlino

polyfarlino

  • 7 Posts
  • 1 Reply Like
Dude... how is that a "best practice"? That is a practice born of necessity, because some programmer made a bad decision. Best practice? I told you I have around 60 camproj files in this project, and you're telling me the best practice is to zip them individually for the simple purpose of creating backups?
I checked out the idea of libraries for a while there, but then it all comes down to zip files again... seriously, I don't want to be handling 3.84GB zip files for my purposes. That's stupid.  ShowBox Mobdro TutuApp
Just get a developer onto the change to relative paths. It won't take more than a day, I promise. Probably it won't take more than an hour. All the other suggestions are just workarounds for the basic and inexplicable mistake of using absolute paths. Just fix it!
Through I's eyes, a best practice is something suggested by people that are extremely comfortable with utilizing the product. It might be a workaround and it might be something different. The general purpose is to facilitate any disappointment and streamline working with the item as much as you can.
(Edited)
Photo of kayakman

kayakman, Champion

  • 7021 Posts
  • 2284 Reply Likes
you filed this thread as a "problem"; suggest you change it [or refile it] as an "idea" so others that also might find it helpful can vote for it

I am not a TechSmith employee; the developers do not work for me; I am a CS8 user just like yourself

however, I've done a fair amount of absolute vs. relative code development over the years, and personally cannot imagine how that want could be reliably accomplished within the CS8 code base

the file paths are in the camproj files and those would need to be re-parced to reflect relative paths [after restoration], which is what happens [I believe] when a project is exported as a zip

also, if you take the Library approach, you could export all 60 projects at same time by exporting those Library assets as a grouped libzip file [an equally effective best practice]

FYI, I played around with the Library's ability to work with relative vs. absolute [copied] paths; it worked, and saved lots of system drive space, but it was way too easy to render a project corrupt if all source files were not restored to exactly same original location

perhaps give the Library & libzip method a try?
Photo of Oliver Sturm

Oliver Sturm

  • 5 Posts
  • 11 Reply Likes
Well... I deal with source code hierarchies every day of my life. As long as the hierarchy is maintained, there is no reason why relative paths would ever break. The likelyhood of absolute paths breaking is much greater, because there are all sorts of legitimate reasons for a change of the overall hierarchy location. 

I know you're not an employee. Should I report this issue to TechSmith directly or do they read these feedback forums? None of the other issues I could find seemed to have any official replies...

Of course I reported this as a "problem", because that's what it is. It's a pretty serious problem, and while I appreciate your suggestions about the library functionality, I don't really want to spend the time to investigate a special feature to replace what is a basic file system operation... moving a top-level folder from here to there should not break the content within that folder. I'd call that behavior a bug if it was possible in this system.
Photo of kayakman

kayakman, Champion

  • 7021 Posts
  • 2284 Reply Likes
although I believe TechSmith employees watch this forum, the best approach here would be for you to create an "idea" thread

also, if you are not yet familiar with how the Library functions, I recommend you try it out; I've found that it extends the capabilities of the Editor substantially

if you want, you are welcome to view this collection of 13 tutorials about using the Library to maximum advantage ...

http://www.screencast.com/t/22PyVrhGvl

otherwise, I wish you the best with your ongoing project work
Photo of Don Wallbaum

Don Wallbaum

  • 14 Posts
  • 3 Reply Likes
I AGREE!!!

The lack of relative pathing is bizarre in the extreme, especially since we who started in this area using Dreamweaver which DRILLED the virtues of relative pathing expect relative pathing to be the default.

To have it unavailable at all is incomprehensible, for an otherwise very thoughtfully thought out product.

 I can't believe this was not discussed during product definition.

To not have relative pathing options in  a product this mature simply makes no sense.
Photo of michaelmagistro

michaelmagistro

  • 4 Posts
  • 5 Reply Likes
In this day of cloud computing, relative file references are a necessity.
If I am on a desktop doing MOST of my editing, but then need to go on a business trip and take my laptop, there's NO WAY I am going to zip up all of my camtasia projects just to work on them on the go. "Oh, well, just zip up the ones you need." Ugh... ok fine, here's the trump card. My computer one day decides to explode. Every other file I have in my cloud folder is fine and i have peace of mind until I realize... "oh crap, my camtasia files are not relative file references!!"

It is NOT practical to zip the camtasia file every time you want to have it backed up. Just adding my 2 cents :)
Photo of Steve Smith

Steve Smith

  • 7 Posts
  • 10 Reply Likes
Agree! It's a problem, not an idea!
Photo of MelGrubb

MelGrubb

  • 13 Posts
  • 14 Reply Likes
I just finished my first course, and as I try to regain my precious SSD space, I find that I have to carefully plan out the archive, and leave myself a note about precisely where to place it so that Camtasia won't barf when I eventually have to do some work on it again. I'd actually like to offload the whole thing to an external drive for safekeeping, but it would be so much better if I knew I could simply reattach that drive and resume work on the project rather than moving the whole thing back onto my primary drive. I would have begun production on an external drive to begin with if I weren't concerned about the throughput. My laptop just missed the USB 3.0 wave, and while it does have an eSATA port on it, I felt that using my internal SSD gave the greatest odds of things going smoothly.

Has anyone had any luck doing a search and replace on the .camproj files? They're just XML, so it seems like hacking the file paths would be a pretty simple matter, wouldn't it? Maybe I'll give that a shot later on and see what happens... AFTER the whole thing's been safely backed up, of course.
Photo of Eric Quagliozzi

Eric Quagliozzi

  • 1 Post
  • 0 Reply Likes
After building ten Camtasia projects, I've just discovered it is not possible to move project location without losing resource paths simply because they are stored as absolute paths.

Finally, following the MelGrubb's suggestion, I have successfully achieved this with a simple workaround:

  1. Backup your .tscproj file before doing anything
  2. Edit it with NotePad++ (or any other text editor)
  3. Apply a "Search & Replace" for string containing the first part of your absolute path, simply replace it with nothing (null string)
  4. Save the file
  5. Load it with Camtasia. It will use the relative paths to reconstruct all full absolute paths.
  6. Save the currently rebuilt project
  7. That's all :)

Exemple: 
I assume my project is in the directory "D:\\MyAbsolutePath\\Video" and all resources are in sub dir.
I search and replace  "D:\\MyAbsolutePath\\Video\\" with "". 
All your resources come now with a relative path: 

"D:\\MyAbsolutePath\\Video\\logo-watermark\\my-logo.png"
"D:\\MyAbsolutePath\\Video\\cliparts\\image1.png"
...

=>

"logo-watermark\\my-logo.png"
"cliparts\\image1.png"

After loading the project file in Camtasia, the new XML file contains the new absolute paths:

"D:\\MyNewAbsolutePath\\logo-watermark\\my-logo.png"
"D:\\MyNewAbsolutePath\\cliparts\\image1.png"

Working great for me, I hope for you too guys !

For the TechSmith team:

Please, could you implement such a feature in the next release, as it seems the current release is natively able to retrieve relative path and convert it to new absolute path.
Thank you :)


(Edited)
Photo of MelGrubb

MelGrubb

  • 13 Posts
  • 14 Reply Likes
I do something very similar using VScode. I open the root folder for my whole project, which consists of multiple folders and csproj files. I can do a global search and replace across the whole thing in one shot. I've done it several times while moving things from one computer to another, and it works just fine. I also use VScode's Git integration to record the changes to the projects and push them to an offsite repo for safe keeping.
Photo of Tony Chung

Tony Chung

  • 1 Post
  • 5 Reply Likes
When you have massive numbers of media files in a project, you want to keep them in subfolders related to the main project. Exporting to Zip flattens this hierarchy in the Zip file. When the project is imported, all the files are in one folder. This ruins the organization that we spent so much time setting up.

Please Techsmith consider the use of relative paths in Camtasia Windows and Mac.

Thanks.
Photo of clephane1

clephane1

  • 10 Posts
  • 6 Reply Likes
Totally onboard with this.  
Its pretty basic on other packages.

Wish it existed here.
Photo of margaret.hassall

margaret.hassall

  • 1 Post
  • 1 Reply Like
I'd like to add to the issue.
We have a problem when we need to edit a project started by someone else. We use the zip facility to more easily get all the files, but we still lose our sub-folders.
1 more vote for relative paths!
Photo of trayhorn

trayhorn

  • 1 Post
  • 1 Reply Like
I have upwards of 200 videos/projects.  We were using the Google Apps and our company moved to Office 365 for Business.  I just got all of them migrated and I needed to edit/update some of them and I now realize that I basically have to start over on any of the projects that need updating.  I work for a software company and sometimes over the years I have seen our company put out some Rube Goldberg workflows that can confound the best user.  It happens, but come on, it can be improved substantially without a huge effort.
Photo of Mike Song

Mike Song

  • 6 Posts
  • 0 Reply Likes
Request for Help:  I agree that relative pathways would be great as I work with another Camtasia developer and always come back to find all the files missing from the project and have to piece it back together.  Can someone spell out the zip file method for me in a step by step manner?  I need help.  Is there anyway to do a select all for a Media Update?  It seems like you have to go one at a time...its so hard to do this as content is always changing. 
Photo of kayakman

kayakman, Champion

  • 7016 Posts
  • 2277 Reply Likes
if you have a good, well connected project, just use the export as zip function on the file menu; give the zip to you associate, and they just import that zip file; it's bullet-proof

otherwise, there is no "select all for update media"
Photo of kmakowski

kmakowski

  • 3 Posts
  • 0 Reply Likes
having this would make things with collaboration so much easier! Just have everything  on a shared place and people in different time zones could work easily hand in hand...
Photo of peter.sebelius

peter.sebelius

  • 1 Post
  • 0 Reply Likes
I was seconds away from selecting Wevideo instead, due to this limitation when it comes to collaboration. I am looking at workarounds, but it is really weird that the project file doesn't use relative paths. Quite a lot of people use dropbox, and now you can't work on the same files unless you the media files in the same folder as the project file (I have been told).