Direct stream copy

Hi,
This program is just what I’ve been looking for!
However, it seems it’s missing one crucial element: direct stream copy, as per https://ffmpeg.org/ffmpeg.html#Stream-specifiers-1. I’m sure there’s a reason for it not being included, but if not I’d so dearly love for this to be possible. It saves hours of encoding time when you simply want to join a few clips together or cut off the end of a clip.

Any chance this could be implemented?

Transcoding video files, however ‘100%-y’ the quality, always seems like a waste of time and loss of quality when direct stream can be used.

Hi, I don’t think something like this will be implemented in Shotcut. From the FAQ we have the information:

How do I cut or trim a clip without encoding or transcoding it?
This is not supported, and there are currently no plans to support it. We recommend that you use VirtualDub or Avidemux for that.

That’s a shame, as I see no reason why this would be of any real trouble to implement and would make it a killer app. Shame it’s so hobbled by the lack of this.

Avidemux does perfectly the job for losslessly cutting, trimming or joining clips within seconds, fredgolightly, and it takes only 80 Mb on my HD.

Just set the video and audio input to “Copy” in Avidemux. It is a perfect complement to Shotcut.

Shotcut + Avidemux take less disk space than most commercial video editing software.

1 Like

This are also the tools I use in my video editing flow. I usualy prepare the videos that come out of the SJ4000 camera by eliminating the parts I for sure will not need and copying the parts I need while transcoding the audio from PCM to AAC.

As I never use an action cam, I seldom need to crop the clips this way, but I think you are right: I suppose you sometimes get very long clips with large unusable parts.
But I would keep the lossless PCM audio.

VirtualDub can also stream copy and edit

To revive this issue, I agree.
Direct Stream Copy is paramount for serious woks flow, mainly because if one uses a lossless codec, (lets say FFV1) and exports/render the timeline to a file, if later it becomes necessary to use that file in a new project, ShotCut will changes the color pallet from that file because it is going to re-compress’s it again (even using the FFV1 codec), resulting in something way-off from the original render.

Don’t believe me? Ok, you can test it yourself very easily:

Start ShotCut add a clip to the time line.
Render that clip (name it CLP1 for this example).
Use FFV1 lossless codec at maximum quality settings (or any other lossless codec, you prefer the most).
After render the clip, close Shotcut.

Open Shot cut again.
Load the last rendered clip (the one you named CLP1) to the time line.
Render it again.
This time name it “CLP1_P2” but use the same exact codec FFV1 at maximum quality settings, as before (or the other one lossless codec, you prefer the most).

Now, compare the color space (color tones) of both rendered files (CLP1 and CLP1_P2).
Yeah… completely off (not the same color space).
That’s why Direct Stream Copy is so important when using the same codec to encode material.
The best is not to re-encode never, ever!

But hey, ShotCut is free, so… :wink: