import/play videos
Submitted by Adam Dingle
Assigned to Lucas Beeler
Link to original bug (#715683)
Description
---- Reported by adam@yorba.org 2009-10-06 15:51:00 -0700 ----
Original Redmine bug id: 855
Original URL: http://redmine.yorba.org/issues/855
Searchable id: yorba-bug-855
Original author: Adam Dingle
Original description:
Shotwell should be able to import videos as well as photos from a camera, and should be able to show videos in the photo list. We could play videos either inside Shotwell (preferred) or by launching an external video player such as Totem.
---- Additional Comments From shotwell-maint@gnome.bugs 2013-05-01 11:41:00 -0700 ----
History
Comment 1
Updated by Adam Dingle about 4 years ago
- Priority set to High
Comment 2
Updated by Adam Dingle about 4 years ago
-
Priority deleted (
<strike>
_High_</strike>
)
Comment 3
Updated by Adam Dingle over 3 years ago
-
Target version deleted (
<strike>
__</strike>
) - Priority set to High
Comment 4
Updated by Adam Dingle over 3 years ago
-
Priority deleted (
<strike>
_High_</strike>
)
Comment 5
Updated by Bengt Thuree over 3 years ago
At least import the videos first, if not handling them.
So we know all items on the camera's memory card is copied accross, and we can erase the memory card.
Comment 6
Updated by Cosmin Cosma over 3 years ago
Replying to [comment:6 bthuree]:
At least import the videos first, if not handling them.
So we know all items on the camera's memory card is copied accross, and we can erase the memory card.
I agree, I would be the best that shotwell to handle all the files from the camera and start as fast as possible importing them from the camera at least as f-spot does.
Comment 7
Updated by Adam Dingle over 3 years ago
- Subject changed from import videos to import/play videos
Comment 8
Updated by Adam Dingle over 3 years ago
- Priority set to High
Comment 9
Updated by Alexander Menk over 3 years ago
+1
Lots of digital still cameras can also record short video clips (and also lots of video cameras can as well take pictures).
So this is very useful.
@cosmingcosa: I think we can not import all the stuff from the camera, as for example some cameras store additional meta information. So basically after the import there could be a list of imported files and even some “Move them to the trash†button. (actually that is an other feature “Give the ability to delete from the camera after successful importâ€)
Comment 10
Updated by Adam Dingle over 3 years ago
- Status changed from Open to Review
- Assignee changed from Anonymous to Lucas Beeler
I hope we'll be able to implement this for 0.7. For this release, however, we will probably launch Totem when the user double-clicks a video rather than attempting to play it inside the Shotwell window.
Comment 11
Updated by cameleon - over 3 years ago
It would be a very good news if Shotwell became the first photo manager able to deal with video! For instance, F-Spot is still not able to display them.
Comment 12
Updated by Adam Dingle over 3 years ago
- Subject changed from import/play videos to [strings] import/play videos
Comment 13
Updated by Adam Dingle over 3 years ago
- Subject changed from [strings] import/play videos to import/play videos
Comment 14
Updated by Oystein Walle over 3 years ago
I really hope this feature makes it into 0.7! :)
One concern: My camera (Canon Ixus 80 IS) saves the videos in an AVI container. The codec is Motion JPEG according to Nautilus. The metadata is stored in a file with the same name except with a “%(=caps)THM%†extension. It is really just a small JPEG image. AFAIK this is common for many cameras.
When I stick my SD card in my laptop the THM files appear next to their AVI counterparts. All is well. When I use a USB cable between my laptop and the camera, the THM files do not appear. Certain other file (conf files I guess) do not appear either. The camera basically censors the contents of the SD card. How can Shotwell deal with this?
Comment 15
Updated by Adam Dingle over 3 years ago
Osse,
video support in Shotwell will unfortunately not make 0.7. We did make some progress toward implementing it for this release, but it turned out to be too large a change to complete before the deadline for releasing 0.7 in order to make it into Ubuntu 10.10. So we will support videos in 0.8 instead, which will come some time this fall. Thanks for your patience!
When we do complete the video implementation we'll have to look at a few different cameras. It would be nice if we could handle the THM files if available, and even nicer if we could figure out some way to get the THM files over USB on a camera like yours.
Comment 16
Updated by Alexander Menk over 3 years ago
- Keywords set to Videos
- Target version set to 0.6
Motivation:
I do not care about playing or even the preview, but with F-Spot I am currently using I often have the problem that I copy all fotos, then format the SD Card and then remind that I took one, two videos that I just lost :(
Is there already a plan which files would be supported.
As for me I need:
.avi (Canon PowerShoot SX110IS)
.mts (Canon HD Camera Videos that can also take photos)
Even if it is not possible that shotwell reads all of the possible file formats on such cameras right now, I think it is crucial that it COPIES them somehow (like you make a looong list of all kinds of video format extentions that exist out there).
They should be shown at least, preview could be given by gstreamer.
Comment 17
Updated by Adam Dingle over 3 years ago
Yes – we do plan to copy all video files even if we don't have GStreamer codecs that can play them. Once again, this functionality will not be in 0.7, but will be in the 0.8 release later this fall.
We will need to make a list of video format extensions that cameras are known to produce. I think that maybe there aren't so many, though .avi, .mts and .mov should certainly be on the list. I'm sure that the Shotwell community will help us come up with a more complete list.
Comment 18
Updated by Adam Dingle over 3 years ago
-
Target version deleted (
<strike>
_0.6_</strike>
)
Comment 19
Updated by Oystein Walle over 3 years ago
I'm sorry to hear that, adam, but I have patience, no one else has that feature anyway :P
The next time I'm near a Mac I'll try to check if iPhoto handles my camera if it is connected via an USB cable. The only way I can think of is to somehow copy the next blocks or whatever from the SD card, but if you see the SD card contents through the camera maybe the TOC and what-not is not available. I'm way out of my element here by the way.
How far have you really come with this? I mean the whole video thing, not my specific challenge.
Comment 20
Updated by Adam Dingle over 3 years ago
@Osse,
yes, it would be interesting to know whether iPhoto can handle video images from your camera – let us know.
As I mentioned we did make some progress on video support during development for 0.7, but didn't get far enough to include this in the release. With the code we've written so far (which is not yet checked into trunk), the user can import videos from cameras and they show up on a Videos page. We need to do further work so that videos can appear alongside photos in Shotwell events and can have tags, ratings and so on. This is a significant project because all of our photo-handling code in Shotwell must now be generalized to deal with videos as well. I think there are no significant technical barriers to completing this work, though, so I'm confident we'll complete this for 0.8 or 0.9 at the very latest.
Comment 21
Updated by Adam Dingle over 3 years ago
- Assignee changed from Lucas Beeler to Anonymous
Comment 22
Updated by Adam Dingle about 3 years ago
- Assignee changed from Anonymous to Lucas Beeler
Comment 23
Updated by Noran - about 3 years ago
I think we should import videos in Videos XDG directory (with same sub- directories than Photos).
Comment 24
Updated by cameleon - about 3 years ago
Replying to [comment:29 Noran]:
I think we should import videos in Videos XDG directory (with same sub- directories than Photos).
Sorry but I disagree : I will prefer that the video come in the same folder than the photos, because they are generaly linked. I use video folder to store movies or documentaries and Photo folder to store all that come from my camera (photos AND videos).
Any other advice?
Comment 25
Updated by Noran - about 3 years ago
Replying to [comment:31 cameleon]:
Replying to [comment:29 Noran]:
I think we should import videos in Videos XDG directory (with same sub- directories than Photos).
Sorry but I disagree : I will prefer that the video come in the same folder than the photos, because they are generaly linked. I use video folder to store movies or documentaries and Photo folder to store all that come from my camera (photos AND videos).
Any other advice?
So we need being possible to configure output directory for Videos too.
But, in default, we make both pointing to Photos directory for your use case.
And, I can change Videos directory if I want for my use case ?
I think we must adressing both possibility.
Comment 26
Updated by antistress - about 3 years ago
I don't think that application should mess with XDG directory
By default videos should be stored using Videos XDG directory and photos using Photos XDG directory
People may look for a video into video folder 1st
Comment 27
Updated by antistress - about 3 years ago
Once photos and videos are tagged, even if they are stored in different folders, shotwell should be able to display simultaneously both photos and videos regarding their event ou tag
Comment 28
Updated by Noran - about 3 years ago
Replying to [comment:34 antistress]:
Once photos and videos are tagged, even if they are stored in different folders, shotwell should be able to display simultaneously both photos and videos regarding their event ou tag
Exactly ! I agree
Comment 29
Updated by Adam Dingle about 3 years ago
Thanks for all the comments on this ticket. As you all know videos are a top priority for 0.8!
I agree with Noran's suggestion that the user should be able to specify separate import directories for photos and videos. By default, I think we should probably put photos in the XDG Photos directory and videos in the XDG Videos directory. If the user changes the setting so that videos are also in the XDG Photos directory, then photos and videos from the same day/time will be imported into the same subdirectory.
I also agree that even if photos and videos are stored in different folders, Shotwell will display them together as part of the same events/tags. That's definitely how this feature will work.
Comment 30
Updated by Noran - about 3 years ago
Perfect
Another thing is how we get the exact date for videos.
The modified time is a good candidate (assume that the video is never modified).
Is there a created date at file system level ? metadata ?
Comment 31
Updated by Brian Candler about 3 years ago
Could I just add a few comments:
- Both my HTC Desire and my wife's Sony Ericsson K800i create video files with a .3gp extension, so please import these as well as .avi etc.
- Please remember to de-dupe video files. If I leave them on the camera, F-spot just keeps re-importing them :-(
- Ubuntu has a 'Videos' directory already created. I don't really mind if they go under Videos or Pictures, but for me it would be easier to browse them in Totem if they went under Videos
For me, just having the import integrated into Shotwell is the most important feature. I don't mind using a different program to view them.
Thanks… Brian.
Comment 32
Updated by Lucas Beeler about 3 years ago
- Status changed from Review to 5
- Resolution set to fixed
- % Done set to 100
Comment 33
Updated by Oystein Walle about 3 years ago
(After writing the stuff below, I realized it has a criticizing and negative tone. That is NOT intentional, I'm very happy with Shotwell!)
Thanks so much for implementing this! I've compiled from trunk and tested this feature today. Some observations (please read my post above about my camera):
If I put the SD card in my card reader, videos are imported and organized by their “Last modified†date. Shotwell deos not show any thumbnails for the videos prior to importing.
If I connect my camera to my computer via a USB cable, videos are imported and organized by the true date they were shot. However, the time of day or any other metadata do not appear. Shotwell does show thumbnails for the videos prior to importing.
It seems to me that when I use the USB cable, Shotwell is able to read the THM files. AFAIK AVI files themselves cannot contain any metadata. Also, the thumbnail Shotwell uses prior to import is seemlingly identical to the THM file.
So I have three questions: 1) Does Shotwell actually read the THM files? 2) If yes, why does Shotwell only read the date and nothing else? 3) Why does not Shotwell read the THM files when I directly put the memory card in my card reader?
My cell phone (Sony Ericsson k850i) produces MP4-videos. AFAIK this format contains metadata. I didn't manage to get Shotwell to import this format.
Comment 34
Updated by Oystein Walle about 3 years ago
Replying to [comment:43 Osse]:
- Why does not Shotwell read the THM files when I directly put the memory card in my card reader?
Regarding my question. When I use the USB cable Shotwell recognizes my camera with make and model. If I only use the memory card, it only appears as “Mass storage Cameraâ€. I'm guessing that when Shotwell detects the camera it knows that it should use the THM files or something along those lines.
Comment 35
Updated by Jim Nelson about 3 years ago
Actually, the behavior you're seeing is expected (to some degree). To answer your questions:
-
Shotwell does not read the THM files. Shotwell uses gphoto2, a digital camera library that hides the details of communicating with cameras, fetching thumbnails and metadata, and more. Each camera is a little different, and this library does a good job hiding those differences from us. In this case, gphoto2 is reading the THM files to give us thumbnails (and perhaps also some metadata).
-
Regarding importing videos by their creation date (rather than their file system modification date), two things: First, if we can't read the video's creation date via gphoto2, our importer will use the modification date on the camera's filesystem as the creation date -- that's usually reliable. (This occurs before the video is downloaded to your computer.) Just last night I committed additional code (#2796 (closed)) that uses libquicktime to read the creation time from the video metadata (after it's been copied to your computer) if it's available. libquicktime is not a complete solution, however, as it has some serious flaws and limitations. In particular, its AVI support seems sketchy (although it claims to support it).
-
I believe #1 (moved) answers your third question.
So, when you import videos via “Mass Storage Camera†in Shotwell, that's going through gphoto2, and all its benefits come into play. When you go through the file system (i.e. File -> Import or drag-and-drop), we have fewer tools at our utilization for fetching video metadata.
BTW, also included in #2796 (closed) is support for importing MP4 files.
Hopefully this clears up the behavior you're seeing. Video support is young and we're still working out the fine details of fully supporting them in Shotwell.
Comment 36
Updated by Oystein Walle about 3 years ago
Thanks for the clarifications, Jim! They are much appreciated. Although, when I read the memory card directly I guess that counts as going through the file system; in Shotwell it is still listed as “Mass Storage Cameraâ€. Maybe change the text to “Memory cardâ€? I can perhaps make a new ticket for it. I see this one is closed.
I just realized that AVI files actually contain some metadata. In the mean time, copying the videos and THMs back onto the camera for importing is a nice fix :)
Comment 37
Updated by Jim Nelson about 3 years ago
Actually, if you click on the “Mass Storage Camera†item in the Shotwell sidebar, that's going through gphoto2 (which supports more than just cameras, but also SD cards). The name itself comes from gphoto2, so if you wanted a better name, that's the project to ask (although there's some question if we're using the best name possible in Shotwell, see #854 (closed)).
Comment 38
Updated by Charles Lindsay 7 months ago
- Status changed from 5 to Fixed
--- Bug imported by chaz@yorba.org 2013-11-25 21:42 UTC ---
This bug was previously known as bug 855 at http://redmine.yorba.org/show_bug.cgi?id=855
Unknown Component Using default product and component set in Parameters Unknown version " in product shotwell. Setting version to "!unspecified". Unknown milestone "unknown in product shotwell. Setting to default milestone for this product, "---". Setting qa contact to the default for this product. This bug either had no qa contact or an invalid one.
Resolution: RESOLVED FIXED