Bug: 33% frames lost when rendering videos recorded from OBS (VFR)

Coincident
Coincident Website User Posts: 13 Just Starting Out
edited November 2020 in HitFilm

Hello.

I've been using HitFilm for several months; I'm now on version 15.2.10619.40501 and there's a bug that keeps happening and greatly reduces the quality of my renders:

1 out of every 3 frames is lost when decoding a source video, turning my smooth 60-fps original recordings into stuttery 40-fps videos. This happens on every single video if I:

  • record with OBS (settings in the .png attachment)
  • remux the .flv file into an .mp4 file with OBS
  • open a project with that resulting .mp4 file (sample .mp4 file in the .zip attachment)

I know that if I re-encode the .mp4 file using avidemux into a new .mp4, the problem is solved... but only for the first 1h30mins of the video. After that time mark, 1/3rd of frames are still lost. Plus this takes a very long time to do, especially on 2h+ videos .

I believe this is a decoding problem, because the problem also happens in the HitFilm "Viewer" Window, and can be easily spotted by advancing the video frame by frame (shortcut: "." in HitFilm, "e" in VLC).

This severely hinders my ability to put out videos; especially long ones. I have tried many workarounds and none of them seem to work effectively. I'm reaching the point where I'm considering stop using HitFilm and going for other applications instead. I don't really want it to come to that, instead, I would love to see this fixed in HitFilm.

What more can I do to help you folks fix this bug?


My specs: Windows 10 64bit. Intel i7 7700K @ 4.2GHz. 16GB of RAM. GeForce 1080ti. Samsung SSD 850 EVO, and two other Western-Digital HDD drives for storage.


«1

Comments

  • TheBenNorris
    TheBenNorris Staff Administrator, Website User, Imerge Beta Tester, HitFilm Beta Tester Posts: 2,005 Staff

    @Coincident can you try and use MediaInfo to provide a breakdown for the footage you're inputting to HitFilm? Just so we have a record here for everyone to see without downloading files.

  • Coincident
    Coincident Website User Posts: 13 Just Starting Out

    Absolutely.

    Never tried MediaInfo before; I tried opening the file and exporting the info as "advanced text". I hope this is what you were talking about.

    Anything else I can do to help, let me know.



    General

    Complete name              : E:\Coincident\Received\game60fps.mp4

    Format                  : MPEG-4

    Format profile              : Base Media

    Codec ID                 : isom (isom/iso2/avc1/mp41)

    File size                : 46.3 MiB

    Duration                 : 19 s 700 ms

    Overall bit rate mode          : Variable

    Overall bit rate             : 19.7 Mb/s

    Writing application           : Lavf58.29.100


    Video

    ID                    : 1

    Format                  : AVC

    Format/Info               : Advanced Video Codec

    Format profile              : [email protected]

    Format settings             : CABAC / 2 Ref Frames

    Format settings, CABAC          : Yes

    Format settings, Reference frames    : 2 frames

    Codec ID                 : avc1

    Codec ID/Info              : Advanced Video Coding

    Duration                 : 19 s 700 ms

    Bit rate mode              : Variable

    Bit rate                 : 19.5 Mb/s

    Maximum bit rate             : 40.0 Mb/s

    Width                  : 1 920 pixels

    Height                  : 1 080 pixels

    Display aspect ratio           : 16:9

    Frame rate mode             : Variable

    Frame rate                : 60.000 FPS

    Minimum frame rate            : 58.824 FPS

    Maximum frame rate            : 62.500 FPS

    Color space               : YUV

    Chroma subsampling            : 4:2:0

    Bit depth                : 8 bits

    Scan type                : Progressive

    Bits/(Pixel*Frame)            : 0.156

    Stream size               : 45.7 MiB (99%)

    Color range               : Full

    Color primaries             : BT.709

    Transfer characteristics         : BT.709

    Matrix coefficients           : BT.709

    Codec configuration box         : avcC


    Audio

    ID                    : 2

    Format                  : AAC LC

    Format/Info               : Advanced Audio Codec Low Complexity

    Codec ID                 : mp4a-40-2

    Duration                 : 19 s 690 ms

    Bit rate mode              : Variable

    Bit rate                 : 237 kb/s

    Maximum bit rate             : 256 kb/s

    Channel(s)                : 2 channels

    Channel layout              : L R

    Sampling rate              : 44.1 kHz

    Frame rate                : 43.066 FPS (1024 SPF)

    Compression mode             : Lossy

    Stream size               : 569 KiB (1%)

    Default                 : Yes

    Alternate group             : 1

  • TheBenNorris
    TheBenNorris Staff Administrator, Website User, Imerge Beta Tester, HitFilm Beta Tester Posts: 2,005 Staff

    @Coincident ah, as expected, the footage is using variable frame rate, whereas you need it to be constant. Most NLE's will struggle with variable framerate, as it is rather unoptimal, but also in itself not a constant framerate, which I imagine is causing the issues you're seeing. You can use something such as Handbrake to transcode the footage, or I believe there is an option in OBS to stop this.

  • Triem23
    Triem23 Moderator Moderator, Website User, Ambassador, Imerge Beta Tester, HitFilm Beta Tester Posts: 19,930 Ambassador

    As Ben said, for future recordings you'll want to go into OB and force constant frame rate.

    For existing media you'll need to transcode.

    This video will discuss the basics of video codecs and go into more detail about vfr. There are chapter marks in the description to skip around, but about 19:30 or so is a segment on using HANDBRAKE (it's free) to transcode, along with some tested and optimized settings.

    Once footage is transcoded, open your HF project, right-click the exiting media clips in the bin, select "RELINK" and choose the transcoded file. This will replace the original footage on the timeline with the transcoded and should preserve your edits. because VFE can cause drift you'll need to go through the project and maybe make some corrections here and there, but most of your edits should be ok, so you won't have to rebuild the entire project.

  • Coincident
    Coincident Website User Posts: 13 Just Starting Out


    Thank you for the replies.

    I understand that, as an NLE, HitFilm struggles with variable framerate. But I never expected it to leave frames out of the final rendered video.

    Just to make sure: by variable framerate, do you mean this?

    Frame rate mode             : Variable

    Frame rate                : 60.000 FPS

    Minimum frame rate            : 58.824 FPS

    Maximum frame rate            : 62.500 FPS

    I have looked all around in the OBS settings, and found no way to control this. I'll try searching around the internet.

    Hello, and thanks for the input.

    You mention "this video", but I don't see any link in your post. I would love to watch the video and learn more about the subject.

  • tddavis
    tddavis Moderator, Website User Posts: 5,055 Moderator
    edited November 2020

    @Coincident I very much suspect Triem23 meant to link this video right here.

    Not at home right now so I couldn't copy and paste the list of links I have for such occasions. Sorry.

    I also found this one by FilmSensei:


  • FilmSensei
    FilmSensei Moderator, Website User, Ambassador, HitFilm Beta Tester Posts: 3,099 Ambassador
    edited November 2020

    This video is the one that you want to see...


  • Triem23
    Triem23 Moderator Moderator, Website User, Ambassador, Imerge Beta Tester, HitFilm Beta Tester Posts: 19,930 Ambassador

    As @tddavis correctly posted, yes, that was the video I meant. Sorry, multitasking at this end.

    CFR settings in OBS are in the advanced tab. This link should help.

    Look, I remembered the link this time.

    Ok, VFR in short... Instead of a constant frame rate of 60, 60, 60, 60, (really 59.94, but "60" is easier to type), the file actually recorded. 60, 59, 60, 58, 58, 62, 62, 60, 60, 58, etc. For playback in a media player this doesn't matter - the player can adjust on the fly cuz it's just streaming frames to the screen. For EDITING you need a nice constant clock rate because an editor "does things" to frames. Hitfilm TRIES (as do a couple other NLEs) to properly space everything out, but it doesn't always work - in fact, several NLE's won't even ingest VFR footage at all!.

    I have an extreme clip I sometimes use for testing and an example. It's shot at "29.97 fps" but the VFR varies between 19 and 32. Hitfilm has no idea what to make of this clip and, if I import it sometimes HF thinks it's 24 fps, 25 fps, 29.97 fps or 30 fps... It's an extreme example, mind you, but that's why i keep it around.

    Handbrake is pretty fast for transcoding. On my 6 year old machine handbrake transcodes at about 70fps. My new machine, about 200! Must faster than real-time.

  • Coincident
    Coincident Website User Posts: 13 Just Starting Out

    Thank you all for the replies.

    Unfortunately, those options are no longer there in the latest versions of OBS.

    From my searches, I've found more people with this problem in OBS: https://obsproject.com/forum/threads/bug-60fps-recording-60-33fps.129701/ and no solution in sight (the suggestion of recording to .mkv or .flv doesn't work) 😔

    I have been using avidemux (for years and years really) to transcode the videos to constant bit rate to help HitFilm. That solved the problem momentarily, but after 1h30m of footage, the problem appeared again. Anyway, apparently, avidemux keeps the video's frame rate variable. I don't see any options to make it constant. I will give HandBreak a try.

  • spyresca
    spyresca Website User Posts: 205 Enthusiast
    edited November 2020

    @Coincident You are mistaken about current versions of OBS not having CBR. It's right there in Settings.


    Here is the absolute latest (updated today) version of OBS (Win 64): ( Settings -> Output -> Recording -> Rate Control )

    I just recorded some screen capture with those settings, verified them as "CBR" in mediainfo and was able to use the video (no frame loss) in Hitfilm 15.2.

  • NormanPCN
    NormanPCN Website User Posts: 4,061 Enthusiast
    edited November 2020

    CBR = constant bitrate. CFR = constant frame frame. They are different and constant bitrate will not help audio desync or Hitfilm issues with variable frame rate resampling to constant frame rate.

    Also, for quality encodes never use constant bitrate, but that is a different topic than the variable frame rate thing here.

    ---

    That OBS doc is out of date. The CFR option no longer exists.

    OBS does record constant frame rate when recording to MP4. When recording to MKV is it variable frame rate. I am not sure why the difference or why MKV does not have an option to offer constant frame rate.

  • spyresca
    spyresca Website User Posts: 205 Enthusiast

    Hm, interesting. Same file from obs. Default .mkv has constant frame rate:

    But... if you ask OBS to remux your video to .mp4 you get this:


    But if you take the original mkv file from OBS and use handbrake to transcode it to .mp4, all is well.

    Really looks like OBS's remux option is the culprit here (i.e. forcing the original "Constant Frame Rate" mkv. to a variable frame rate .mp4. Handbrake for the win!

  • Triem23
    Triem23 Moderator Moderator, Website User, Ambassador, Imerge Beta Tester, HitFilm Beta Tester Posts: 19,930 Ambassador

    @spyresca nice troubleshooting!

  • spyresca
    spyresca Website User Posts: 205 Enthusiast
    edited November 2020

    And... though Handbrake works to convert constant frame .mvk to constant frame .mp4, it's potentially "Lossy", and we (or at least "I"!) want to remux cleanly from .mkv (from obs) to .mp4 (for Hitfilm).

    The answer is FFmpeg, which OBS seems to use incorrectly (i.e. remuxes constant frame rate to variable frame rate).

    However FFmpeg is a command line program (kind of a pain to use) so I went hunting and found this nice (Free, Open source) graphical front end for it.

    This is probably not for beginners, but it works great!

    Essentially, you download/install FFmpeg. Then you download the front end GUI "ffe" and run it to link it to the FFmpeg install.

    Once it's set up, you can point it (with a wildcard value as below) in such as way that running the "ffe" program will cleanly remux all .mpv files in a chosen directory to hitfilm friendly .mp4 files (Constant frame rate, I checked!)

    I turned off OBS's "auto remuxing" and generated two constant frame rate .mpv files.

    I then ran the "ffe" program with the settings as above, and voila!


  • spyresca
    spyresca Website User Posts: 205 Enthusiast
    edited November 2020

    And for windows users (only) here's another nice, free front end for FFmpeg to convert constant frame rate .mpv to constant frame rate mp4.


    It's an easier install (just one files to extract and run) and handles batching, but it also insists on generating text logs of the conversion, which is ok (don't use them) but seems kinda sloppy. The other GUI converter ("FE") is a bit harder to set up, but seems to run a bit faster/cleaner.

  • Coincident
    Coincident Website User Posts: 13 Just Starting Out

    I never thought it would be OBS's remuxing feature that messed with the framerate. After some experiments, I discovered that avidemux transcoding also turns constant framerate videos into variable framerate. So avidemux was part of the problem. The weird thing is that avidemux is a front-end interface for ffmpeg, but apparently also uses it incorrectly (according to my settings it should keep the source framerate).

    Anyway, I think I'll just use OBS to record directly to .mp4 from now on, and same myself a lot of time and trouble. I'm trying HandBrake right now on a 2-hour-long video that was causing me trouble after 1h30, to make sure the problem's gone. I'll post here again when I have more news.


    Despite VFR being "troublesome" for HitFilm, I still bugs me that it's considered "OK" for HitFilm to consistently lose 1 out of every 3 frames when exporting. It's literally:

    • 1 frame OK
    • 1 frame OK
    • 1 frame SKIPPED
    • 1 frame OK
    • 1 frame OK
    • 1 frame SKIPPED

    For the entire duration of the video. Like clockwork.

    That doesn't look like a "performance issue because the source video has VFR", it looks a lot more like a software problem. Are the developers aware of this issue?

  • spyresca
    spyresca Website User Posts: 205 Enthusiast
    edited November 2020

    @Coincident I just recorded some 60 FPS game footage (cuphead- 60 FPS constant framerate with variable bit rate) from OBS directly to .mp4.

    I brought that footage into Hitfilm Pro 15.2, trimmed it a bit and added a text overlay. I then exported from HF back out to 1080P (original resolution) and did not see any of the frame skipping you mention. The final export (.mp4 - played with current version of VLC player) looked perfect, even though I don't have a beast of a machine.

    You're not getting the "skipping" with the constant frame right video are you? Just the variable frame rate stuff right? I hope you don't think getting great exports out of variable frame rate footage is a simple (or practical) software fix. It's my understanding (and I could be wrong) that most video editors don't work well (in general) with variable frame rate footage.

    Perhaps you have some other local issue? Hardware, conflicting software, playback, etc? I wonder if an actual support ticket to fxhome would allow them to do a deeper dive and really identify why you're having this specific issue.

  • Coincident
    Coincident Website User Posts: 13 Just Starting Out

    That's not the way to reproduce the problem - if I do it that way, I also have no frames skipped. The issue is if you record from OBS directly into .flv (or .mkv), and then use OBS' remux feature to convert that to .mp4. That causes the problem I described two posts above.

    But anyway thank you for your help; I'll just record directly to .mp4 from now on - that seems to have solved the problem for me. (Although I still have a gut feeling there might a bigger problem underneath the symptoms I described...)

  • spyresca
    spyresca Website User Posts: 205 Enthusiast
    edited November 2020

    Glad for the exercise, as I use OBS a lot and didn't realize it was bollixing up the constant frame rate (via broken remuxing).

    I'm too chicken to export out directly to .mp4 with OBS, as it can cause loss of footage.

    I'll stay with .mkv, which is safer and can be remuxed cleanly to .mp4 with one of the easy to use (free) third party solutions.

  • NormanPCN
    NormanPCN Website User Posts: 4,061 Enthusiast
    edited November 2020

    Despite VFR being "troublesome" for HitFilm, I still bugs me that it's considered "OK" for HitFilm to consistently lose 1 out of every 3 frames when exporting.

    It's not okay. It is what it is. And it's got nothing to do with exporting. It happens on import.

    I don't think it ever will change in Hitfilm. Given how long ago Hitfilm attempted to resample VFR media, and always done a bad job of it and that nothing has changed over time, Before Hitfilm attempted VFR resampling then audio desync quickly becomes an issue. No frame resample thing but audio naturally becomes off.

    The answer is FFmpeg, 

    I've not had any luck with using ffmpeg for remuxing. MKV from OBS always becomes VFR after an ffmpeg remux.

    MediaInfo has not always able to identify what mode the MKV media is encoded in. VFR or CFR. Sometimes it said nothing. Sometimes it said something, Makes me wonder if that something accurate. This makes me a little bit leary about MediaInfo reporting in this specific regard.

    ---

    If one has crashing issues and thus the OBS MP4 output makes you nervous, it is possible to have OBS output a fragmented MOV/MP4. Hitfilm supports fragmented MOV/MP4 files.

    Fragmented output structures MP4 in a manner similarly to common, but not required, MKV fragmented/SEGMENTED structure. It is the fragmented structure that "saves" one from a system crash. Fragments outputted before the crash are on disk and complete. The current fragment is all that is lost. Whatever the length of the fragment is. True for fragmented/segmented MKV and MOV/MP4. Fragmented is also in general better for the crazy long captures often done by gamers and similar. It takes less memory. The capture encoder does not need to keep all metadata for the hour(s) of media for the single 'fragment' write when the capture is done. Capture software might temp file such metadata to save memory.

  • spyresca
    spyresca Website User Posts: 205 Enthusiast

    I tested FFmpeg (using third party UI) re-muxing 60 FPS .mkv files to 60 FPS .mp4 files, which Hitfilm then imported nicely and exported back perfectly. I don't care if hitfilm has issues importing VFR, as I don't intend to use files in that non optimal format and expect optimal results.

    Not sure why the FFmpeg muxing solution wouldn't work for others, but I've now tested it on multiple files... and... pretty much perfect each time.

    But hey, don't listen to me or anyone else, try it yourself.


  • Coincident
    Coincident Website User Posts: 13 Just Starting Out

    I just finished my tests with HandBrake. It does indeed fix my frame problems even with 2h+ long videos. In the future I'll use HandBrake to transcode, or just record directly to MP4 in OBS. The fact that the file cannot be "finalized" in case of a BSOD doesn't concern me; it is so rare I don't even remember the last time my system crashed.

    Thank you all for helping me find the cause of the problem. It was driving me nuts not knowing what was provoking the lost frames.

    By the way, in HandBrake, why is the "Fast Decode" option so important to toggle on?

  • NormanPCN
    NormanPCN Website User Posts: 4,061 Enthusiast

    By the way, in HandBrake, why is the "Fast Decode" option so important to toggle on?

    Fast decode makes the AVC video faster to decode (decompress). Thus easier to edit. Better performance. Describe it how you will.

    If the GPU hardware decode feature is functioning properly on your machine it may not matter much if at all to performance. As a reminder the HW AVC decode feature only works withy 8-bit 4:2:0 video. Luckily the typical/common format. If the software decoder is being used then fast decode really helps edit performance.

  • spyresca
    spyresca Website User Posts: 205 Enthusiast
    edited November 2020

    @Coincident awesome to hear that it's working out for you now.

  • Coincident
    Coincident Website User Posts: 13 Just Starting Out

    This problem was not solved, after all. The VFR may be one of the causes of this bug, but it's not the only one.

    I'm having the same 33% frames lost on a constant framerate video, that I recorded from OBS to mp4 directly, without remuxing. The video is fine until the 1h mark - after that, this is what I see in the final rendered video:

    • 1 frame OK
    • 1 frame OK
    • 1 frame SKIPPED
    • 1 frame OK
    • 1 frame OK
    • 1 frame SKIPPED

    and it's CONSISTENTLY like this for the rest of the duration of the video (1h 09 min in this case, but I've had this happen to longer renders). The problem starts happening at 1:00:24, which coincides with the time that the preview window of HitFilm starts lagging.

    I leave the MediaInfo of the source video file here; again, notice that this is a constant framerate video.

    Any other ideas as to what might cause this? Should I report a bug to fxhome (if so, how)?


    General

    Complete name              : E:\Coincident\Sources\Video\Doom\Japanese Community Project\MAP12-MAP14 Blind Run\game.mp4

    Format                  : MPEG-4

    Format profile              : Base Media

    Codec ID                 : isom (isom/iso2/avc1/mp41)

    File size                : 12.3 GiB

    Duration                 : 1 h 9 min

    Overall bit rate mode          : Variable

    Overall bit rate             : 25.3 Mb/s

    Writing application           : Lavf58.29.100


    Video

    ID                    : 1

    Format                  : AVC

    Format/Info               : Advanced Video Codec

    Format profile              : [email protected]

    Format settings             : CABAC / 2 Ref Frames

    Format settings, CABAC          : Yes

    Format settings, Reference frames    : 2 frames

    Codec ID                 : avc1

    Codec ID/Info              : Advanced Video Coding

    Duration                 : 1 h 9 min

    Bit rate mode              : Variable

    Bit rate                 : 25.0 Mb/s

    Maximum bit rate             : 40.0 Mb/s

    Width                  : 1 920 pixels

    Height                  : 1 080 pixels

    Display aspect ratio           : 16:9

    Frame rate mode             : Constant

    Frame rate                : 60.000 FPS

    Color space               : YUV

    Chroma subsampling            : 4:2:0

    Bit depth                : 8 bits

    Scan type                : Progressive

    Bits/(Pixel*Frame)            : 0.201

    Stream size               : 12.1 GiB (99%)

    Color range               : Full

    Color primaries             : BT.709

    Transfer characteristics         : BT.709

    Matrix coefficients           : BT.709

    Codec configuration box         : avcC


    Audio

    ID                    : 2

    Format                  : AAC LC

    Format/Info               : Advanced Audio Codec Low Complexity

    Codec ID                 : mp4a-40-2

    Duration                 : 1 h 9 min

    Bit rate mode              : Constant

    Bit rate                 : 256 kb/s

    Channel(s)                : 2 channels

    Channel layout              : L R

    Sampling rate              : 44.1 kHz

    Frame rate                : 43.066 FPS (1024 SPF)

    Compression mode             : Lossy

    Stream size               : 128 MiB (1%)

    Title                  : Track1

    Default                 : Yes

    Alternate group             : 1

  • spyresca
    spyresca Website User Posts: 205 Enthusiast

    You should probably put in a formal support ticket. Since we're not hearing a plethora of other people with the same issue, you have probably either hit a "corner case" type bug or there might be some other issue specific to your situation.

  • [Deleted User]
    [Deleted User] Posts: 1,995 Just Starting Out
    edited November 2020

    Record VFR mkv, transcode CFR mp4. You avoid frame time variance issues, you cant see them even when recording in OBS. Your average 60 FPS if that is the case, will not have a frame time of 16.6 for each frame. Recording CFR does not mean its CFR, i dont believe that for a second, literal imposibility in game engines.

  • Coincident
    Coincident Website User Posts: 13 Just Starting Out

    I'm not sure I understand this correctly. Are you saying that; even if MediaInfo says it's CFR for the .mp4 file recorded directly from OBS, behind the curtains it's not really CFR, and the time of each frame still varies?

    By the way, let me add that, after recording and checking the logs, I had absolutely zero frames lost during the entire 1h09m recording. This is because my hardware is above average, and I'm recording doom (from 1993); so performance problems when recording the original source is not the issue.

    I wanted to avoid transcoding because each extra encoding = losing quality. Also, I presume remuxing doesn't fix this because it doesn't change the time of each frame behind the curtains (right?)

    So I either: transcode and lose quality, or don't transcode and lose frames...


    I'm going to send a support ticket to FXhome; at least to pass on to the devs the information found here about the problem, maybe it can be used to improve HitFilm in the future.

    Is this the right link for doing so? https://fxhome.com/questions/submit

  • [Deleted User]
    [Deleted User] Posts: 1,995 Just Starting Out
    edited November 2020

    Well, doom in a non modern game engine does change things. And yes, thats what i ment.

    I wanted to avoid transcoding because each extra encoding = losing quality.

    In theory that is true, but in practise not really. You have control over the bitrate in the editing and encoding process. Besides, H. 264/AVC with hardware decoding enabled gives you the lowest overhead possible. Editing with this format is faster than intermediates like Cineform, however, Cineform will have the advantage if youre encoding, to then use in another software and encode it again. The AVC is a lot more susceptible to loss in quality during re-encodes.

    If you want to talk about quality loss, then look at YouTube's quality bit grinder. It annhiliates anything that passes through. The streamer you use will be the only issue. As a point of comparison, blu ray (highest observed quality output video in cinema) are H.264 MP4's, however it doesnt pass through the grinder before landing on the disc.

  • Triem23
    Triem23 Moderator Moderator, Website User, Ambassador, Imerge Beta Tester, HitFilm Beta Tester Posts: 19,930 Ambassador

    @kevin_n I'm probably arguing semantic points here, but, re: "As a point of comparison, blu ray (highest observed quality output video in cinema) are H.264 MP4's, however it doesntt pass through the grinder before landing on the disc." Well, yeah, it does. My 2011 Canon XF-305 Broadcast Camera shot 50mbps video, but the Blu-Ray max is about 20. It's just not as abusive a grinder.

    That said, the quibble does agree with your main point - that a user controlled transcode won't be nearly as damaging to the footage as the mangling that YouTube or Vimeo will do. @Coincident Yeah, technically a transcode has the opportunity to lose quality, but a dedicated transcoder is doing nothing but decoding frames and writing them back to a file. They don't "do anything" to the clip. In an NLE (certainly in Hitfilm), just putting the clip on a timeline "does something" to the clip and changes it a bit. But, you can always crank up the bitrate and use more drive space if you're worried about the effects of generation loss, but, honestly, this is something people worry about WAAAAAAY too much.

    Go look at the Star Wars Prequels. Shot on a Sony HDW-F900R, that would have provided 3:1:1 "Full HD Video" except... It's 1440x1080 with a 1.33 anamorphic pixel stretch and recorded to a subset of MPEG-2. MPEG-2 had a lower compression rate and a higher amount of loss that mp4. The HDW-F900R would have shot to HDCAM tape which would have been transferred to the EditDroid system. Any VFX done over the original tape would have resulted in "Generation loss" because "RAW" footage (and mp4) just didn't exist then. The Special Editions were also done with scanned, bounced and redone 1080p video. Even the Star Wars Sequels were mastered (and VFX produced) at 1080p (so any "4K" versions of Star Wars you find are upsamples from a 1080p OR LOWER resolution).

    Watching a Star Wars movie, no one, ever, had gone "Wow - look at those compressions artifacts" except me - and even that's when whipping out images from the YouTube encoding of the Rogue One trailer to point out that if LucasFilm can't get a good YouTube stream that's the fault of YouTube and stop stressing about it.

    To be blunt, most digital video looks like crud. People notice it more when it's their projects. Even 4k... Typically a streaming service will give twice the bandwidth to 4K than 1080p... for four times the pixel data. What they're counting on is that the eye can't actually resolve 4k pixels at typical viewing distance until you have something like a 70" screen (4k on a phone or tablet is a total waste of GPU power - your eyes can't even resolve the individual pixels of a 1080p phone screen).

    Don't worry about your "pristine" visual quality. That's a myth, and no one attains it.

    Finally, both Avid and FCP only ingest a limited amount of file formats and both programs force you to transcode to one of them before import. Going to VFR for a moment.... VFR is the bane of ALL NLE's. Some won't even let you ingest VFR files at all because they're really hard to deal with. Transcoding is a part of life for major TV and film productions. I have a buddy working as "Assitant Editor" on a feature right now. His JOB is to transcode and log everything. Nobody edits in RAW, nobody produces VFX over RAW. After shooting RAW only gets used for a final render with color correcting for shots that don't have VFX.

    But, yes, that's the correct link for Support Questions.