Several issues with Kdenlive/Transmageddon

Hello,

I installed Kdenlive and I want to start with video editing. These are the problems I ran into:

  • I have a mov. file which I want to use. When in Kdenlive, opening files and opening videos, the mov. file is not showing up. I solved this by opening the files app and dragging the mov. file to the Kdenlive project window. So not a big problem.
  • Now, Kdenlive is only playing sound, no video. I tried with another sample (not mov. file) and I had video and sound. So the mov.file has some issue.
  • I used Transmageddon to convert this mov.file into an avi.file. Kdenlive is showing video this time (+ sound).

Unfortunately, now the quality of the avi.file is much worse then before. I cannot use it for my editing project.

So, why can’t I see but only hear the mov.file in Kdenlive and how should I solve it?
What can I do for not having worse quality after converting mov.file to avi.file in Transmageddon?

My understanding is that a MOV file is a movie file saved in the QuickTime File Format (QTFF), which is a multimedia container file format.

i.e. a container file - which means it could be one of a various sort of codecs … ie it stores one or more tracks in different types of media data, such as video, audio, and text (subtitles). But which one?

Can you please advise as to which video codec, and which audio codec used by this MOV?

When I want to find out this information, I install (from Packman packager web site) the application “mediainfo”. Then if I have a file, say example.mov, in a terminal I send the command:


mediainfo example.mov

In that same terminal session, will then be information on the video and audio codecs inside “example.mov”. Once you advise us as to which audio and video codecs are in the .MOV that gave you issues, either myself or someone else may be able to help you.

I never use Transmageddon so I can’t help there.

Further to the above - I just conducted a test and I note kdenlive does work with .mov - so I do not share your issue - which makes me suspect there are configuration issues with your openSUSE LEAP-15.2 setup.

I went to this site for some sample mov files and downloaded th 68 MB file “sample_1280x720_surfing_with_audio.mov”. I checked its codecs with mediainfo:

mediainfo sample_1280x720_surfing_with_audio.mov"

and I learned:


Complete name                            : sample_1280x720_surfing_with_audio.mov
Format                                   : MPEG-4
Format profile                           : QuickTime
Codec ID                                 : qt   0000.02 (qt  )
...
Video
...
Format                                   : **AVC**
Format/Info                              : Advanced Video Codec
...
Codec ID                                 : **avc1**
Codec ID/Info                            : Advanced Video Coding
...
Audio
...
Format                                   : **AAC** LC
Format/Info                              : Advanced Audio Codec Low Complexity
Codec ID                                 : **mp4a**-40-2

I then dragged it into kdelive. Video and audio plays in the timeline. I then extracted a 5 second clip of it and re-encoded that 5 seconds with kdelive into an mp4, and audio and video plays no issue. Here is the ‘media’ info from the extracted part with kdenlive:


Format                                   : MPEG-4
Format profile                           : Base Media
Codec ID                                 : isom (isom/iso2/avc1/mp41)
...
Format                                   : AVC
Format/Info                              : Advanced Video Codec
...
Audio
...
Format                                   : AAC LC
Format/Info                              : Advanced Audio Codec Low Complexity
Codec ID                                 : mp4a-40-2

So this ‘just works’ for me. There is an issue we need to sort with your PC setup - 1st thou, tell us more about the codecs in that .mov you are using.

I note I am using openSUSE-LEAP-15.2. I have switched ‘system package versions’ to the Packman repository. My kdenlive version is kdenlive-20.04.2-lp152.1.1.x86_64. And I am using mediainfo-20.08-lp152.4.3.1.x86_64.

Alternative to mediainfo, to get the codec, you could also install ‘ffmpeg’ and use that in a terminal/konsole to get the codecs in use. For example for the " sample_1280x720_surfing_with_audio.mov " video that I mentioned above, I typed in a terminal:


ffmpeg -i sample_1280x720_surfing_with_audio.mov

and it provided me this in regards to the codec in use:


Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'sample_1280x720_surfing_with_audio.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 512
    compatible_brands: qt  
    encoder         : Lavf58.45.100
  Duration: 00:03:03.15, start: 0.000000, bitrate: 3134 kb/s
    **Stream #0:0: Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720** [SAR 1:1 DAR 16:9], 3001 kb/s, 23.98 fps, 23.98 tbr, 24k tbn, 47.95 tbc (default)
    Metadata:
      handler_name    : DataHandler
      encoder         : Lavc58.91.100 libx264
    **Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stere**o, fltp, 128 kb/s (default)
    Metadata:
      handler_name    : DataHandler

ok, thank you,

I tried with a sample file and this worked in Kdenlive.
So, I installed Kdenlive on a Windows os and I had the same issue with this mov file. The sample file was working fine. So I must conclude that the mov file is broken somehow: It was a shot from a cheap gopro clone.

Do you still need more info about the codecs to find out if the file is broken? I tried mediainfo but it did not work. (for every problem I need to solve, I get at least 1 new problem:)
I must start reading about this “codecs”. I have actually no clue what you are talking about.:’(

cheers

like I wrote before, not working with mediainfo. With ffmpeg I get “No such file or directory”

harry@localhost:~> mediainfo 20210510_145911.MOV 
 
harry@localhost:~> ffmpeg -i 20210510_145911.MOV 
ffmpeg version 3.4.8 Copyright (c) 2000-2020 the FFmpeg developers 
  built with gcc 7 (SUSE Linux) 
  configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --incdir=/usr/include/ffmpeg --extra-cflags='-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -g' --optflags='-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -g' --disable-htmlpages --enable-pic --disable-stripping --enable-shared --disable-static --enable-gpl --disable-openssl --enable-avresample --enable-libcdio --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libcelt --enable-libcdio --enable-libdc1394 --enable-libfreetype --enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libzimg --enable-libzvbi --enable-vaapi --enable-vdpau --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3 --enable-libx264 --enable-libx265 --enable-libxvid 
  libavutil      55. 78.100 / 55. 78.100 
  libavcodec     57.107.100 / 57.107.100 
  libavformat    57. 83.100 / 57. 83.100 
  libavdevice    57. 10.100 / 57. 10.100 
  libavfilter     6.107.100 /  6.107.100 
  libavresample   3.  7.  0 /  3.  7.  0 
  libswscale      4.  8.100 /  4.  8.100 
  libswresample   2.  9.100 /  2.  9.100 
  libpostproc    54.  7.100 / 54.  7.100 
20210510_145911.MOV: No such file or directory 
harry@localhost:~>  

Thats too bad. It does read that the .mov is corrupted.

I was going to propose using ffmpeg to repair it, but if ffmpeg can not read it, then that is an issue.

A dumb question … you are certain that " 20210510_145911.MOV " is the file name? Linux is case sensitive, so if file name was " 20210510_145911.mov " then neither mediainfo nor ffmpeg would work with a capital " .MOV ".

As for video codecs … A video codec is software or hardware that compresses and decompresses digital video into a compressed data stream (referred to as a codec). The compressed data format usually conforms to a standard video coding format (hence the word ‘codec’) . There are different standards at work here and hence different formats. Video files such as .avi, or .mov or .mkv are basically ‘containers’ and the video inside them could be compressed in different video formats/codecs. The compression is typically lossy, meaning that the compressed video lacks some information present in the original video. A consequence of this is that decompressed video has lower quality than the original, uncompressed video because there is insufficient information to accurately reconstruct the original video. Further the more one re-encodes a video (which is the same for audio) the more quality is typically lost.

Here is a link to a a wiki on Video codecs.

Similar an audio codec is a device or computer program capable of encoding or decoding a digital data stream (where that data stream referred to as a codec) that encodes or decodes audio. An audio codec is a computer program implementing an algorithm that compresses and decompresses digital audio data according to a given audio file or streaming media audio coding format (again, hence the word ‘codec’). The objective of the algorithm is to represent the high-fidelity audio signal with minimum number of bits while retaining audio quality. This can effectively reduce the storage space and the bandwidth required for transmission of the stored audio file. Conceptually simular to video codecs, there are different formats in which audio files can be compressed to store information, and this can often be a ‘lossy’ format (where some quality is lost).

Here is a link to a wiki on Audio codecs.

Hi,

I am using the correct file name.
So FFmpeg found the (already repaired) file after changing directories:shame:

harry@localhost:~/Videos/sentviska> ffmpeg -i repaired1.mov 
ffmpeg version 3.4.8 Copyright (c) 2000-2020 the FFmpeg developers 
  built with gcc 7 (SUSE Linux) 
  configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64 --incdir=/usr/include/ffmpeg --extra-cflags='-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -g' --optflags='-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -g' --disable-htmlpages --enable-pic --disable-stripping --enable-shared --disable-static --enable-gpl --disable-openssl --enable-avresample --enable-libcdio --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libcelt --enable-libcdio --enable-libdc1394 --enable-libfreetype --enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libzimg --enable-libzvbi --enable-vaapi --enable-vdpau --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3 --enable-libx264 --enable-libx265 --enable-libxvid 
  libavutil      55. 78.100 / 55. 78.100 
  libavcodec     57.107.100 / 57.107.100 
  libavformat    57. 83.100 / 57. 83.100 
  libavdevice    57. 10.100 / 57. 10.100 
  libavfilter     6.107.100 /  6.107.100 
  libavresample   3.  7.  0 /  3.  7.  0 
  libswscale      4.  8.100 /  4.  8.100 
  libswresample   2.  9.100 /  2.  9.100 
  libpostproc    54.  7.100 / 54.  7.100 
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x564cab9a7ec0] st: 1 edit list: 2 Missing key frame while searching for timestamp: 0 
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'repaired1.mov': 
  Metadata: 
    major_brand     : isom 
    minor_version   : 0 
    compatible_brands: mp41avc1 
    creation_time   : 2021-05-17T08:08:38.000000Z 
    encoder         : vlc 3.0.13 stream output 
    encoder-eng     : vlc 3.0.13 stream output 
  Duration: 00:04:06.07, start: 0.000000, bitrate: 16872 kb/s 
    Stream #0:0(eng): Audio: mp3 (mp4a / 0x6134706D), 44100 Hz, stereo, s16p, 127 kb/s (default) 
    Metadata: 
      creation_time   : 2021-05-17T08:08:38.000000Z 
      handler_name    : SoundHandler 
    Stream #0:1(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720 [SAR 1:1 DAR 16:9], 16729 kb/s, 200 fps, 240 tbr, 90k tbn, 480 tbc (default) 
    Metadata: 
      creation_time   : 2021-05-17T08:08:38.000000Z 
      handler_name    : VideoHandler 
At least one output file must be specified 
harry@localhost:~/Videos/sentviska>  
  

But like I wrote before, I found a solution to repair the mov.file. I have used VLC media player for that. Now, Kdenlive is showing the video.:slight_smile: So, for me, this issue is closed.
Thank you for your support.