From 9d9e12eda923abacae11ca861baa3f2952d055b7 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 20 Nov 2025 20:05:44 -0500 Subject: [PATCH 001/143] Add glossary section to index.html --- index.html | 3 +++ 1 file changed, 3 insertions(+) diff --git a/index.html b/index.html index 6e937be..db2eeca 100644 --- a/index.html +++ b/index.html @@ -147,6 +147,9 @@
Streams
+ + +

Learn about more advanced FFmpeg concepts

From a9265655c982aab182bb6eddda99af50dc06d162 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 20 Nov 2025 20:45:48 -0500 Subject: [PATCH 002/143] Fix indentation for glossary section in index.html --- index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index db2eeca..e9a1f4e 100644 --- a/index.html +++ b/index.html @@ -147,8 +147,8 @@
Streams
- - + +

Learn about more advanced FFmpeg concepts

From bafcb3e0d8dac9cec5300aaf8286cccb18fb8f85 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 20 Nov 2025 20:51:45 -0500 Subject: [PATCH 003/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index e9a1f4e..292dfd8 100644 --- a/index.html +++ b/index.html @@ -147,7 +147,7 @@
Streams
- +

Learn about more advanced FFmpeg concepts

From 0b932516e62c76be0c007d95d1278c1434b6352e Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 20 Nov 2025 20:52:58 -0500 Subject: [PATCH 004/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 292dfd8..e9a1f4e 100644 --- a/index.html +++ b/index.html @@ -147,7 +147,7 @@
Streams
- +

Learn about more advanced FFmpeg concepts

From 08f368bfac6c5997d5d890486dedaefae1e328fb Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 20 Nov 2025 20:54:26 -0500 Subject: [PATCH 005/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index e9a1f4e..243838f 100644 --- a/index.html +++ b/index.html @@ -147,7 +147,7 @@
Streams
- +

Learn about more advanced FFmpeg concepts

From 88fc311855048e55261384b935840564041adb53 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 27 Nov 2025 10:22:44 -0500 Subject: [PATCH 006/143] Add glossary for basic technical terms Added a glossary section with definitions and examples for technical terms related to codecs. Started Codec and add an anchor link to Codec Defaults section --- index.html | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/index.html b/index.html index 243838f..fe8759e 100644 --- a/index.html +++ b/index.html @@ -147,8 +147,24 @@
Streams
- - + + + +
+
Glossary for Basic Technical Terms
+ Codec +

A codec is the program in the digital file that encodes/decodes the digital information. It denotes the many different algorithms used to compress video. The term codec is derived from the terms encoding/decoding and compression/decompression. Codecs are used to store files on disk, as well as to transmit media. There are different codecs for both audio and video.

+

Audio Codec

+
    +
  • AAC (Advanced Audio Coding):
  • +

    AAC is an audio coding standard for lossy digital audio compression. It is designed to provide high-quality sound at lower bit rates compared to its predecessor, MP3, making it ideal for streaming services and portable devices. +

    +
+ +
+
+ +

Learn about more advanced FFmpeg concepts

@@ -167,7 +183,7 @@
Batch and Loop script usage
-
Codec Defaults
+
Codec Defaults

Unless specified, FFmpeg will automatically set codec choices and codec parameters based off of internal defaults. These defaults are applied based on the file type used in the output (for example .mov or .wav).

When creating or transcoding files with FFmpeg, it is important to consider codec settings for both audio and video, as the default options may not be desirable in your particular context. The following is a brief list of codec defaults for some common file types:

    From 4f2054eb94025bd154ad4b9caf0d5017ddedc108 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 27 Nov 2025 10:28:31 -0500 Subject: [PATCH 007/143] Fix anchor reference for codec link in index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index fe8759e..9998594 100644 --- a/index.html +++ b/index.html @@ -183,7 +183,7 @@
    Batch and Loop script usage
    -
    Codec Defaults
    +
    Codec Defaults

    Unless specified, FFmpeg will automatically set codec choices and codec parameters based off of internal defaults. These defaults are applied based on the file type used in the output (for example .mov or .wav).

    When creating or transcoding files with FFmpeg, it is important to consider codec settings for both audio and video, as the default options may not be desirable in your particular context. The following is a brief list of codec defaults for some common file types:

      From a2084ab846a1f2a18b86b0d43234b7168906ba6d Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 27 Nov 2025 10:37:02 -0500 Subject: [PATCH 008/143] Change codec link to paragraph in glossary section --- index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 9998594..4d1fbb4 100644 --- a/index.html +++ b/index.html @@ -152,7 +152,7 @@
      Streams
      Glossary for Basic Technical Terms
      - Codec +

      Codec

      A codec is the program in the digital file that encodes/decodes the digital information. It denotes the many different algorithms used to compress video. The term codec is derived from the terms encoding/decoding and compression/decompression. Codecs are used to store files on disk, as well as to transmit media. There are different codecs for both audio and video.

      Audio Codec

        @@ -160,7 +160,7 @@
        Glossary for Basic Technical Terms

        AAC is an audio coding standard for lossy digital audio compression. It is designed to provide high-quality sound at lower bit rates compared to its predecessor, MP3, making it ideal for streaming services and portable devices.

      - +
      From bcecd3ea44790b3016d288c7f753065fd245f52e Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 27 Nov 2025 10:46:57 -0500 Subject: [PATCH 009/143] Fixing anchor link issue --- index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 4d1fbb4..8d512ba 100644 --- a/index.html +++ b/index.html @@ -152,7 +152,7 @@
      Streams
      Glossary for Basic Technical Terms
      -

      Codec

      +

      Codec

      A codec is the program in the digital file that encodes/decodes the digital information. It denotes the many different algorithms used to compress video. The term codec is derived from the terms encoding/decoding and compression/decompression. Codecs are used to store files on disk, as well as to transmit media. There are different codecs for both audio and video.

      Audio Codec

        @@ -183,7 +183,7 @@
        Batch and Loop script usage
        -
        Codec Defaults
        +
        Codec Defaults

        Unless specified, FFmpeg will automatically set codec choices and codec parameters based off of internal defaults. These defaults are applied based on the file type used in the output (for example .mov or .wav).

        When creating or transcoding files with FFmpeg, it is important to consider codec settings for both audio and video, as the default options may not be desirable in your particular context. The following is a brief list of codec defaults for some common file types:

          From 2686f49274570a60edace4af147160948846aba7 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 27 Nov 2025 11:01:59 -0500 Subject: [PATCH 010/143] Refactor glossary section to use details tag --- index.html | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/index.html b/index.html index 8d512ba..99eeffb 100644 --- a/index.html +++ b/index.html @@ -147,25 +147,25 @@
          Streams
        - - - -
        -
        Glossary for Basic Technical Terms
        -

        Codec

        -

        A codec is the program in the digital file that encodes/decodes the digital information. It denotes the many different algorithms used to compress video. The term codec is derived from the terms encoding/decoding and compression/decompression. Codecs are used to store files on disk, as well as to transmit media. There are different codecs for both audio and video.

        -

        Audio Codec

        -
          -
        • AAC (Advanced Audio Coding):
        • -

          AAC is an audio coding standard for lossy digital audio compression. It is designed to provide high-quality sound at lower bit rates compared to its predecessor, MP3, making it ideal for streaming services and portable devices. -

          -
        - -
        -
        + +
        + A Glossary for Basic Technical Terms - +

        Codec

        +

        A codec is the program in the digital file that encodes/decodes the digital information...

        + +

        Audio Codec

        +
          +
        • + AAC (Advanced Audio Coding): +

          AAC is an audio coding standard for lossy digital audio compression...

          +
        • +
        +
        + + +

        Learn about more advanced FFmpeg concepts

        @@ -183,7 +183,7 @@
        Batch and Loop script usage
        -
        Codec Defaults
        +
        Codec Defaults

        Unless specified, FFmpeg will automatically set codec choices and codec parameters based off of internal defaults. These defaults are applied based on the file type used in the output (for example .mov or .wav).

        When creating or transcoding files with FFmpeg, it is important to consider codec settings for both audio and video, as the default options may not be desirable in your particular context. The following is a brief list of codec defaults for some common file types:

          From 9affc881b79ac0f1926d4e0d5ee57778130fad3b Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 27 Nov 2025 11:13:41 -0500 Subject: [PATCH 011/143] Refactor glossary section and update links --- index.html | 38 ++++++++++++++++++++------------------ 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/index.html b/index.html index 99eeffb..1f808c5 100644 --- a/index.html +++ b/index.html @@ -147,22 +147,24 @@
          Streams
        - -
        - A Glossary for Basic Technical Terms - -

        Codec

        -

        A codec is the program in the digital file that encodes/decodes the digital information...

        - -

        Audio Codec

        -
          -
        • - AAC (Advanced Audio Coding): -

          AAC is an audio coding standard for lossy digital audio compression...

          -
        • -
        -
        - + + + +
        +

        Codec

        +

        A codec is the program in the digital file that encodes/decodes the digital information. It denotes the many different algorithms used to compress video. The term codec is derived from the terms encoding/decoding and compression/decompression. Codecs are used to store files on disk, as well as to transmit media. There are different codecs for both audio and video.

        +

        Audio Codec

        +
          +
        • AAC (Advanced Audio Coding):

          +

          AAC is an audio coding standard for lossy digital audio compression. It is designed to provide high-quality sound at lower bit rates compared to its predecessor, MP3, making it ideal for streaming services and portable devices.

          +
        • +
        • FLAC (Free Lossless Audio Codec):

          +

          FLAC is an audio codec that is similar to MP3, but lossless. It is supported by the Mastroka container. Digital audio compressed by the FLAC algorithm can typically be reduced to 50 and 70 percent of its original size and decompresses to its identical copy of the original audio data.

          +
        • +
        + +
        +
        > @@ -189,7 +191,7 @@
        Codec Defaults
        • .avi: Audio Codec: mp3, Video Codec: mpeg4
        • .mkv: Audio Codec: ac3, Video Codec: H.264
        • -
        • .mov: Audio Codec: AAC, Video Codec: H.264
        • +
        • .mov: Audio Codec: AAC , Video Codec: H.264
        • .mp4: Audio Codec: AAC, Video Codec: H.264
        • .mpg: Audio Codec: mp2, Video Codec: mpeg1video
        • .mxf: Audio Codec: pcm_s16le, Video Codec: mpeg2video
        • @@ -2960,7 +2962,7 @@
          Resize to width

          flac

          - +
          About flac tool
          From 57f56a3b61eff659b897985a4d99b349ba3add1a Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 27 Nov 2025 11:19:11 -0500 Subject: [PATCH 012/143] fix anchor links --- index.html | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/index.html b/index.html index 1f808c5..f1bf784 100644 --- a/index.html +++ b/index.html @@ -155,16 +155,16 @@

          Codec

          A codec is the program in the digital file that encodes/decodes the digital information. It denotes the many different algorithms used to compress video. The term codec is derived from the terms encoding/decoding and compression/decompression. Codecs are used to store files on disk, as well as to transmit media. There are different codecs for both audio and video.

          Audio Codec

            -
          • AAC (Advanced Audio Coding):

            +
          • AAC (Advanced Audio Coding):

            AAC is an audio coding standard for lossy digital audio compression. It is designed to provide high-quality sound at lower bit rates compared to its predecessor, MP3, making it ideal for streaming services and portable devices.

          • -
          • FLAC (Free Lossless Audio Codec):

            +
          • FLAC (Free Lossless Audio Codec):

            FLAC is an audio codec that is similar to MP3, but lossless. It is supported by the Mastroka container. Digital audio compressed by the FLAC algorithm can typically be reduced to 50 and 70 percent of its original size and decompresses to its identical copy of the original audio data.

          -
          > +
          @@ -191,7 +191,7 @@
          Codec Defaults
          • .avi: Audio Codec: mp3, Video Codec: mpeg4
          • .mkv: Audio Codec: ac3, Video Codec: H.264
          • -
          • .mov: Audio Codec: AAC , Video Codec: H.264
          • +
          • .mov: Audio Codec: AAC, Video Codec: H.264
          • .mp4: Audio Codec: AAC, Video Codec: H.264
          • .mpg: Audio Codec: mp2, Video Codec: mpeg1video
          • .mxf: Audio Codec: pcm_s16le, Video Codec: mpeg2video
          • @@ -2962,7 +2962,7 @@
            Resize to width

            flac

            - +
            About flac tool
            From c399b681a7afeb5e36b0c77bdf4cab928c36865a Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 27 Nov 2025 11:30:36 -0500 Subject: [PATCH 013/143] Force open hash link when hiding Add event listener for hash link clicks to toggle visibility of hidden sections. --- js/js.js | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/js/js.js b/js/js.js index c407c25..b4a19c0 100644 --- a/js/js.js +++ b/js/js.js @@ -94,3 +94,22 @@ document.getElementById('toggle-expand-collapse-all').addEventListener("click", } }) +document.addEventListener("DOMContentLoaded", () => { + // When clicking any hash link + document.querySelectorAll('a[href^="#"]').forEach(link => { + link.addEventListener('click', () => { + const target = document.querySelector(link.getAttribute("href")); + if (!target) return; + + // Find if the target is inside .hiding + const hidden = target.closest(".hiding"); + if (hidden) { + // Open the checkbox toggle + const checkbox = document.querySelector("#Glossary"); + if (checkbox) checkbox.checked = true; + } + }); + }); +}); + + From ae555410adfdde9b3df30941b89ee54712b46561 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Sun, 30 Nov 2025 16:03:47 -0500 Subject: [PATCH 014/143] Enhance FLAC entry with bibliography and video codec Added bibliography and video codec section to FLAC entry. --- index.html | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/index.html b/index.html index f1bf784..7dca971 100644 --- a/index.html +++ b/index.html @@ -160,6 +160,12 @@

            Codec

          • FLAC (Free Lossless Audio Codec):

            FLAC is an audio codec that is similar to MP3, but lossless. It is supported by the Mastroka container. Digital audio compressed by the FLAC algorithm can typically be reduced to 50 and 70 percent of its original size and decompresses to its identical copy of the original audio data.

            +

            Bibliography:

            +
          • Official Website

            +

            Dave Rice's article on FLAC in the Archives

            +

            GitHub Repository

            +
          • +

            Video Codec

          From 26f3bcdf39cda71bcc6f4e221702e1cd5c03ca7d Mon Sep 17 00:00:00 2001 From: Beibei He Date: Sun, 30 Nov 2025 16:10:35 -0500 Subject: [PATCH 015/143] Update FLAC section with bibliography formatting --- index.html | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/index.html b/index.html index 7dca971..a9001ae 100644 --- a/index.html +++ b/index.html @@ -160,12 +160,13 @@

          Codec

        • FLAC (Free Lossless Audio Codec):

          FLAC is an audio codec that is similar to MP3, but lossless. It is supported by the Mastroka container. Digital audio compressed by the FLAC algorithm can typically be reduced to 50 and 70 percent of its original size and decompresses to its identical copy of the original audio data.

          -

          Bibliography:

          -
        • Official Website

          +

          Bibliography:

          + +

          Video Codec

        From 6bf6c67b377902fa95cbb7623ae330dab954accc Mon Sep 17 00:00:00 2001 From: Beibei He Date: Sun, 30 Nov 2025 16:37:43 -0500 Subject: [PATCH 016/143] Enhance glossary with codec details and links Updated glossary section with detailed codec descriptions and added bibliographic references. --- index.html | 45 ++++++++++++++++++++++++++++++++++++++------- 1 file changed, 38 insertions(+), 7 deletions(-) diff --git a/index.html b/index.html index a9001ae..4144e8d 100644 --- a/index.html +++ b/index.html @@ -147,7 +147,7 @@
        Streams
        - +
      + +

    Video Codec

    +
      +
    • DV Codecs:

      +

      DV is a family of codecs used for storing digital video. DV uses lossy compression of video while audio is stored uncompressed. It utilizes intraframe and interframe compression techniques to achieve efficient storage and playback of video content. DV files also include metadata such as timestamps, camera information, and other technical details.

    • -
    +
  • H.264:

    +

    Also referred to as Advanced Video Coding, it is created to provide high efficiency in compression at substantially lower bit rates than previous standards. It can be used for both lossless and lossy compression. It was first launched in 2003 as the successor of MPEG-2. H.264 codec is powerful in greatly reducing file size while preserving image clarity, optimizing network bandwidth, and allowing playback on different devices.

    +
  • +
  • H.265:

    +

    Also referred to as High Efficiency Video Coding, it is designed as the successor of the H.264 codec. It can support solutions up to 8192x4320. HEVC uses both integer discrete cosine transform and discrete sine transform with varied block sizes between 4x4 and 32x32. Compared to the H.264, HEVC achieves about 35-50% better compression, allowing for the same video quality at lower bitrates.

    +

    Bibliography:

    + +
  • +
  • Apple ProRes 422:

    +

    Apple ProRes 422 is a proprietary video codec developed by Apple for editing and post-production purposes. It supports resolutions up to 8K and uses compression algorithms based on the discrete cosine transform. All ProRes variants use chroma sampling of 4:2:2 at 10-bit color depth.

    +

    Bibliography:

    +
    +
  • +
  • FFV1:

    +

    Also referred to as FFmpeg Video Codec 1, FFV1 is a lossless intra-frame video codec. It supports Y′CBCR color space model. From version 3 onwards, it can also encode interlaced video. It also supports YUV and RGB content including alpha channel of color depths ranging from 8 to 16 bits.

    +

    Bibliography:

    + +
  • +
@@ -335,7 +366,7 @@
Generate Broadcast WAV
Rewrap DV video to .dv file

ffmpeg -i input_file -f rawvideo -c:v copy output_file.dv

-

This script will take a video that is encoded in the DV Codec but wrapped in a different container (such as MOV) and rewrap it into a raw DV file (with the .dv extension). Since DV files potentially contain a great deal of provenance metadata within the DV stream, it is necessary to rewrap files in this method to avoid unintentional stripping of this metadata.

+

This script will take a video that is encoded in the Apple ProRes 422

-profile:v 1
Declares profile of ProRes you want to use. The profiles are explained below: @@ -392,10 +392,10 @@
Transcode into a deinterlaced Apple ProRes LT
ffmpeg
starts the command
-i input_file
path, name and extension of the input file
-
-c:v prores
tells FFmpeg to transcode the video stream into Apple ProRes 422
+
-c:v prores
tells FFmpeg to transcode the video stream into Apple ProRes 422
-profile:v 1
Declares profile of ProRes you want to use. The profiles are explained below:
    -
  • 0 = ProRes 422 (Proxy)
  • +
  • 0 = ProRes 422 (Proxy)
  • 1 = ProRes 422 (LT)
  • 2 = ProRes 422 (Standard)
  • 3 = ProRes 422 (HQ)
  • @@ -509,10 +509,10 @@
    H.264 from DCP
    - +
    -
    Create FFV1 Version 3 video in a Matroska container with framemd5 of input
    +
    Create FFV1 Version 3 video in a Matroska container with framemd5 of input

    ffmpeg -i input_file -map 0 -dn -c:v ffv1 -level 3 -g 1 -slicecrc 1 -slices 16 -c:a copy output_file.mkv -f framemd5 -an framemd5_output_file

    This will losslessly transcode your video with the FFV1 Version 3 codec in a Matroska container. In order to verify losslessness, a framemd5 of the source video is also generated. For more information on FFV1 encoding, try the FFmpeg wiki.

    From bdc263bb3356bec26600efdeae564e9bc65e2f5d Mon Sep 17 00:00:00 2001 From: Beibei He Date: Sun, 30 Nov 2025 16:55:58 -0500 Subject: [PATCH 018/143] Enhance ProRes transcoding command description Updated the description of the transcoding command to include a hyperlink for Apple ProRes 422. --- index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index a3c738d..f2b295b 100644 --- a/index.html +++ b/index.html @@ -388,14 +388,14 @@

    Change codec (transcode)

    Transcode into a deinterlaced Apple ProRes LT

    ffmpeg -i input_file -c:v prores -profile:v 1 -vf yadif -c:a pcm_s16le output_file

    -

    This command transcodes an input file into a deinterlaced Apple ProRes 422 LT file with 16-bit linear PCM encoded audio. The file is deinterlaced using the yadif filter (Yet Another De-Interlacing Filter).

    +

    This command transcodes an input file into a deinterlaced Apple ProRes 422 LT file with 16-bit linear PCM encoded audio. The file is deinterlaced using the yadif filter (Yet Another De-Interlacing Filter).

    ffmpeg
    starts the command
    -i input_file
    path, name and extension of the input file
    -c:v prores
    tells FFmpeg to transcode the video stream into Apple ProRes 422
    -profile:v 1
    Declares profile of ProRes you want to use. The profiles are explained below:
      -
    • 0 = ProRes 422 (Proxy)
    • +
    • 0 = ProRes 422 (Proxy)
    • 1 = ProRes 422 (LT)
    • 2 = ProRes 422 (Standard)
    • 3 = ProRes 422 (HQ)
    • From f479598cf6b9fd4066a0fd59c5a0572fb824b74e Mon Sep 17 00:00:00 2001 From: Beibei He Date: Sun, 30 Nov 2025 17:05:17 -0500 Subject: [PATCH 019/143] Fix HTML formatting in rewrap DV video section --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index f2b295b..2176c66 100644 --- a/index.html +++ b/index.html @@ -366,7 +366,7 @@
      Generate Broadcast WAV
      Rewrap DV video to .dv file

      ffmpeg -i input_file -f rawvideo -c:v copy output_file.dv

      -

      This script will take a video that is encoded in the DV Codec but wrapped in a different container (such as MOV) and rewrap it into a raw DV file (with the .dv extension). Since DV files potentially contain a great deal of provenance metadata within the DV stream, it is necessary to rewrap files in this method to avoid unintentional stripping of this metadata.

      ffmpeg
      starts the command
      -i input_file
      path and name of the input file
      From 44e9df45270b59b25198f51171dda3943d37772d Mon Sep 17 00:00:00 2001 From: Beibei He Date: Tue, 2 Dec 2025 15:37:13 -0500 Subject: [PATCH 020/143] Enhance HTML content with definitions and links --- index.html | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/index.html b/index.html index 2176c66..563327c 100644 --- a/index.html +++ b/index.html @@ -200,7 +200,16 @@

      Codec

- +

Transcode

+

Video transcoding means converting already-encoded content by decoding/decompressing it, implementing alterations, and recompressing it for delivery. The transcoding function makes duplicates of the material in different codecs and containers for multiple purposes.

+

Rewrap>

+

Rewrapping refers to the process of moving media between containers without altering its actual data. It only changes the “wrapper” or the container of the file, but does not alter the encoding of the file.

+

PCM (Pulse-code Modulation)

+

Pulse-code modulation is a method to digitally represent an analog signal. A signal is pulse code modulated to convert its analog information into a binary sequence. PCM produces a series of digits, and each of the binary digits represents the approximate amplitude of the signal sample at that instant.

+

Timecode

+

Timecode is a labeling system that is used to identify each frame of recorded video. It is a sequence of numeric codes generated at regular intervals by a timing synchronization system. The timecode commonly employed in film and video production is the SMPTE family of timecodes, which includes linear timecode (LTC), vertical interval timecode (VITC), burnt-in timecode, and so on. + In digital recording formats, the timecode is carried as a part of the Metadata contained within the digital stream or file structure.

+
@@ -291,7 +300,7 @@
Stream mapping
  • -map 0:0 -map 0:2 means ‘take the first and third streams from the first input file’.
  • -map 0:1 -map 1:0 means ‘take the second stream from the first input file and the first stream from the second input file’.
  • -

    When no mapping is specified in an ffmpeg command, the default for video files is to take just one video and one audio stream for the output: other stream types, such as timecode or subtitles, will not be copied to the output file by default. If multiple video or audio streams are present, the best quality one is automatically selected by FFmpeg.

    +

    When no mapping is specified in an ffmpeg command, the default for video files is to take just one video and one audio stream for the output: other stream types, such as timecode or subtitles, will not be copied to the output file by default. If multiple video or audio streams are present, the best quality one is automatically selected by FFmpeg.

    To map all streams in the input file to the output file, use -map 0. However, note that not all container formats can include all stream types: for example, .mp4 cannot contain timecode.

    Mapping with a failsafe

    To safely process files that may or may not contain given a type of stream, you can add a trailing ? to your map commands: for example, -map 0:a? instead of -map 0:a.

    @@ -312,7 +321,7 @@

    Change container (rewrap)

    Rewrap a file

    ffmpeg -i input_file.ext -c copy -map 0 output_file.ext

    -

    This script will rewrap a video file. It will create a new video video file where the inner content (the video, audio, and subtitle data) of the original file is unchanged, but these streams are rehoused within a different container format.

    +

    This script will rewrap video file. It will create a new video video file where the inner content (the video, audio, and subtitle data) of the original file is unchanged, but these streams are rehoused within a different container format.

    Note: rewrapping is also known as remuxing, short for re-multiplexing.

    ffmpeg
    starts the command
    @@ -388,11 +397,11 @@

    Change codec (transcode)

    Transcode into a deinterlaced Apple ProRes LT

    ffmpeg -i input_file -c:v prores -profile:v 1 -vf yadif -c:a pcm_s16le output_file

    -

    This command transcodes an input file into a deinterlaced Apple ProRes 422 LT file with 16-bit linear PCM encoded audio. The file is deinterlaced using the yadif filter (Yet Another De-Interlacing Filter).

    +

    This command transcodes an input file into a deinterlaced Apple ProRes 422 LT file with 16-bit linear PCM encoded audio. The file is deinterlaced using the yadif filter (Yet Another De-Interlacing Filter).

    ffmpeg
    starts the command
    -i input_file
    path, name and extension of the input file
    -
    -c:v prores
    tells FFmpeg to transcode the video stream into Apple ProRes 422
    +
    -c:v prores
    tells FFmpeg to transcode the video stream into Apple ProRes 422
    -profile:v 1
    Declares profile of ProRes you want to use. The profiles are explained below:
    • 0 = ProRes 422 (Proxy)
    • From 608f1edb0f25480e795e4aa34735f57b2ccc0ec5 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Tue, 2 Dec 2025 16:04:18 -0500 Subject: [PATCH 021/143] Add glossary section and improve descriptions --- index.html | 50 ++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 38 insertions(+), 12 deletions(-) diff --git a/index.html b/index.html index 563327c..ab5981e 100644 --- a/index.html +++ b/index.html @@ -20,6 +20,7 @@

      Table of Contents

      Expand/collapse all recipes
      FFmpeg basics
      Troubleshooting common issues
      +
      Glossary of Basic Technical Terms
      Advanced FFmpeg concepts
      Change container (rewrap)
      Change codec (transcode)
      @@ -149,7 +150,7 @@
      Streams
      - +

      Codec

      A codec is the program in the digital file that encodes/decodes the digital information. It denotes the many different algorithms used to compress video. The term codec is derived from the terms encoding/decoding and compression/decompression. Codecs are used to store files on disk, as well as to transmit media. There are different codecs for both audio and video.

      @@ -202,13 +203,38 @@

      Codec

    Transcode

    Video transcoding means converting already-encoded content by decoding/decompressing it, implementing alterations, and recompressing it for delivery. The transcoding function makes duplicates of the material in different codecs and containers for multiple purposes.

    -

    Rewrap>

    +

    Rewrap

    Rewrapping refers to the process of moving media between containers without altering its actual data. It only changes the “wrapper” or the container of the file, but does not alter the encoding of the file.

    PCM (Pulse-code Modulation)

    Pulse-code modulation is a method to digitally represent an analog signal. A signal is pulse code modulated to convert its analog information into a binary sequence. PCM produces a series of digits, and each of the binary digits represents the approximate amplitude of the signal sample at that instant.

    Timecode

    Timecode is a labeling system that is used to identify each frame of recorded video. It is a sequence of numeric codes generated at regular intervals by a timing synchronization system. The timecode commonly employed in film and video production is the SMPTE family of timecodes, which includes linear timecode (LTC), vertical interval timecode (VITC), burnt-in timecode, and so on. In digital recording formats, the timecode is carried as a part of the Metadata contained within the digital stream or file structure.

    +

    Container

    +

    A container, also called a wrapper, is a file format that encapsulates one or more media streams along with metadata, in order for them to be stored and played back together. One of the most important things a media container does is arrange and interleave the data so that the audio and video play out synchronously.

    +

    Audio Container

    +
      +
    • WAV:

      +

      Waveform Audio File Format, or WAVE, is the main format used on Microsoft Windows systems for uncompressed audio. WAV is an application of the Resource Interchange File Format (RIFF) bitstream format for storing data in chunks. WAV files can contain compressed audio, but the most common WAV audio format is uncompressed audio in the linear pulse-code modulation format.

      +
    • +
    • BWF:

      +

      Broadcast Wave Format is a subset of the WAV file format. It is the recording format of most file-based non-linear digital recorders used for motion picture, radio, and television production. It is recommended for archival use. The purpose of this format is the addition of metadata to facilitate the exchange of sound data between different computer platforms and applications.

      +
    • +
    +

    Video Container

    +
      +
    • Matroska:

      +

      The Matroska container is a format for audio, video data, and other multimedia elements. It is a project to create a container format that can hold an unlimited number of video, audio, picture, or subtitle tracks in one file. Its specifications are fully open, and its implementation consists mostly of open source software.

      +
    • +
    • MP4:

      +

      The MPEG-4 video file container is a compressed file format that can contain video, audio, subtitles, and still images. MP4 is based on the MPEG-4 standard and supports a more limited set of video and audio codecs compared to MKV.

      +
    • +
    • MXF:

      +

      Media Exchange Format, or MXF, was developed from the beginning to be an SMPTE format that equipment manufacturers could use to exchange content among their products. An MXF file format can store video, audio data, timecodes, and codec instructions. MXF files are codec-agonistic, thus allowing for various video and audio codecs depending on the quality and storage need.

      +
    • +
    +

    Provenance Metadata:

    +

    Provenance metadata refers to the information that is recorded about the history and the origin of data, including its creation and the history of modification.

    @@ -300,8 +326,8 @@
    Stream mapping
  • -map 0:0 -map 0:2 means ‘take the first and third streams from the first input file’.
  • -map 0:1 -map 1:0 means ‘take the second stream from the first input file and the first stream from the second input file’.
  • -

    When no mapping is specified in an ffmpeg command, the default for video files is to take just one video and one audio stream for the output: other stream types, such as timecode or subtitles, will not be copied to the output file by default. If multiple video or audio streams are present, the best quality one is automatically selected by FFmpeg.

    -

    To map all streams in the input file to the output file, use -map 0. However, note that not all container formats can include all stream types: for example, .mp4 cannot contain timecode.

    +

    When no mapping is specified in an ffmpeg command, the default for video files is to take just one video and one audio stream for the output: other stream types, such as timecode or subtitles, will not be copied to the output file by default. If multiple video or audio streams are present, the best quality one is automatically selected by FFmpeg.

    +

    To map all streams in the input file to the output file, use -map 0. However, note that not all container formats can include all stream types: for example, .mp4 cannot contain timecode.

    Mapping with a failsafe

    To safely process files that may or may not contain given a type of stream, you can add a trailing ? to your map commands: for example, -map 0:a? instead of -map 0:a.

    This makes the map optional: audio streams will be mapped over if they are present in the file—but if the file contains no audio streams, the transcode will proceed as usual, minus the audio stream mapping. Without adding the trailing ?, FFmpeg will exit with an error on that file.

    @@ -333,7 +359,7 @@
    Rewrap a file
    The new container you are rewrapping to is defined by the filename extension used here, e.g. .mkv, .mp4, .mov.

    Important caveat

    -

    It may not be possible to rewrap a file's contents to a new container without re-encoding one or more of the streams within (that is, the video, audio, and subtitle tracks). Some containers can only contain streams of a certain encoding type: for example, the .mp4 container does not support uncompressed audio tracks. (In practice .mp4 goes hand-in-hand with a H.264-encoded video stream and an AAC-encoded video stream, although other types of video and audio streams are possible). Another example is that the Matroska container does not allow data tracks.

    +

    It may not be possible to rewrap a file's contents to a new container without re-encoding one or more of the streams within (that is, the video, audio, and subtitle tracks). Some containers can only contain streams of a certain encoding type: for example, the .mp4 container does not support uncompressed audio tracks. (In practice .mp4 goes hand-in-hand with a H.264-encoded video stream and an AAC-encoded video stream, although other types of video and audio streams are possible). Another example is that the Matroska container does not allow data tracks.

    In such cases, FFmpeg will throw an error. If you encounter errors of this kind, you may wish to consult the list of transcoding recipes.

    @@ -345,7 +371,7 @@

    Important caveat

    Generate Broadcast WAV

    ffmpeg -i input_file.wav -c copy -write_bext 1 -metadata field_name='Content' output_file.wav

    -

    This command will write a file in the Broadcast Wave Format (BWF) containing a BEXT chunk with related metadata.

    +

    This command will write a file in the Broadcast Wave Format (BWF) containing a BEXT chunk with related metadata.

    ffmpeg
    starts the command
    -i input_file.wav
    path and name of the input file
    @@ -375,7 +401,7 @@
    Generate Broadcast WAV
    Rewrap DV video to .dv file

    ffmpeg -i input_file -f rawvideo -c:v copy output_file.dv

    -

    This script will take a video that is encoded in the DV Codec but wrapped in a different container (such as MOV) and rewrap it into a raw DV file (with the .dv extension). Since DV files potentially contain a great deal of provenance metadata within the DV stream, it is necessary to rewrap files in this method to avoid unintentional stripping of this metadata.

    +

    This script will take a video that is encoded in the DV Codec but wrapped in a different container (such as MOV) and rewrap it into a raw DV file (with the .dv extension). Since DV files potentially contain a great deal of provenance metadata within the DV stream, it is necessary to rewrap files in this method to avoid unintentional stripping of this metadata.

    ffmpeg
    starts the command
    -i input_file
    path and name of the input file
    @@ -397,11 +423,11 @@

    Change codec (transcode)

    Transcode into a deinterlaced Apple ProRes LT

    ffmpeg -i input_file -c:v prores -profile:v 1 -vf yadif -c:a pcm_s16le output_file

    -

    This command transcodes an input file into a deinterlaced Apple ProRes 422 LT file with 16-bit linear PCM encoded audio. The file is deinterlaced using the yadif filter (Yet Another De-Interlacing Filter).

    +

    This command transcodes an input file into a deinterlaced Apple ProRes 422 LT file with 16-bit linear PCM encoded audio. The file is deinterlaced using the yadif filter (Yet Another De-Interlacing Filter).

    ffmpeg
    starts the command
    -i input_file
    path, name and extension of the input file
    -
    -c:v prores
    tells FFmpeg to transcode the video stream into Apple ProRes 422
    +
    -c:v prores
    tells FFmpeg to transcodethe video stream into Apple ProRes 422
    -profile:v 1
    Declares profile of ProRes you want to use. The profiles are explained below:
    • 0 = ProRes 422 (Proxy)
    • @@ -429,7 +455,7 @@
      Transcode into a deinterlaced Apple ProRes LT
      Transcode to H.264

      ffmpeg -i input_file -c:v libx264 -pix_fmt yuv420p -c:a aac output_file

      -

      This command takes an input file and transcodes it to H.264 with an .mp4 wrapper, audio is transcoded to AAC. The libx264 codec defaults to a “medium” preset for compression quality and a CRF of 23. CRF stands for constant rate factor and determines the quality and file size of the resulting H.264 video. A low CRF means high quality and large file size; a high CRF means the opposite.

      +

      This command takes an input file and transcodes it to H.264 with an .mp4 wrapper, audio is transcoded to AAC. The libx264 codec defaults to a “medium” preset for compression quality and a CRF of 23. CRF stands for constant rate factor and determines the quality and file size of the resulting H.264 video. A low CRF means high quality and large file size; a high CRF means the opposite.

      ffmpeg
      starts the command
      -i input_file
      path, name and extension of the input file
      @@ -496,7 +522,7 @@
      Transcode to H.264/H.265 using the GPU
      H.264 from DCP

      ffmpeg -i input_video_file.mxf -i input_audio_file.mxf -c:v libx264 -pix_fmt yuv420p -c:a aac output_file.mp4

      -

      This will transcode MXF wrapped video and audio files to an H.264 encoded MP4 file. Please note this only works for unencrypted, single reel DCPs.

      +

      This will transcode MXF wrapped video and audio files to an H.264 encoded MP4 file. Please note this only works for unencrypted, single reel DCPs.

      ffmpeg
      starts the command
      -i input_video_file
      path and name of the video input file. This extension must be .mxf
      @@ -633,7 +659,7 @@
      Transcode to Ogg/Theora
      WAV to MP3

      ffmpeg -i input_file.wav -write_id3v1 1 -id3v2_version 3 -dither_method triangular -out_sample_rate 48k -qscale:a 1 output_file.mp3

      -

      This will convert your WAV files to MP3s.

      +

      This will convert your WAV files to MP3s.

      ffmpeg
      starts the command
      -i input_file
      path and name of the input file
      From a1e88c8c09e029a6761860898e55ccb693c9c6b7 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Tue, 2 Dec 2025 16:13:30 -0500 Subject: [PATCH 022/143] Fix glossary section and add closing comments --- index.html | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index ab5981e..aa9d172 100644 --- a/index.html +++ b/index.html @@ -150,7 +150,7 @@
      Streams
      - +

      Codec

      A codec is the program in the digital file that encodes/decodes the digital information. It denotes the many different algorithms used to compress video. The term codec is derived from the terms encoding/decoding and compression/decompression. Codecs are used to store files on disk, as well as to transmit media. There are different codecs for both audio and video.

      @@ -235,9 +235,10 @@

      Container

    Provenance Metadata:

    Provenance metadata refers to the information that is recorded about the history and the origin of data, including its creation and the history of modification.

    - +
    + From 352260ff329ab16930187307e884d17e25863bc6 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Mon, 8 Dec 2025 19:58:23 -0500 Subject: [PATCH 023/143] Fix indentation and formatting in index.html --- index.html | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/index.html b/index.html index aa9d172..df7f69c 100644 --- a/index.html +++ b/index.html @@ -147,11 +147,10 @@
    Streams
    - -
    +

    Codec

    A codec is the program in the digital file that encodes/decodes the digital information. It denotes the many different algorithms used to compress video. The term codec is derived from the terms encoding/decoding and compression/decompression. Codecs are used to store files on disk, as well as to transmit media. There are different codecs for both audio and video.

    Audio Codec

    From 88b25c5f9f4cadcfa644e88ccaf993fe9ed7418b Mon Sep 17 00:00:00 2001 From: Beibei He Date: Mon, 8 Dec 2025 20:05:27 -0500 Subject: [PATCH 024/143] Remove empty divs from index.html --- index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index df7f69c..b895ae0 100644 --- a/index.html +++ b/index.html @@ -146,7 +146,7 @@
    Streams

    To help you further understand issues regarding streams, check out the stream mapping section.

    -
    + @@ -238,7 +238,7 @@

    Provenance Metadata:

    - +

    Learn about more advanced FFmpeg concepts

    From 201154f8d466fdb2f9082c983a13feb1bc568b6c Mon Sep 17 00:00:00 2001 From: Beibei He Date: Mon, 8 Dec 2025 20:15:03 -0500 Subject: [PATCH 025/143] Fix label and input ID for glossary section --- index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index b895ae0..78d76ee 100644 --- a/index.html +++ b/index.html @@ -148,8 +148,8 @@
    Streams
    - - + +

    Codec

    A codec is the program in the digital file that encodes/decodes the digital information. It denotes the many different algorithms used to compress video. The term codec is derived from the terms encoding/decoding and compression/decompression. Codecs are used to store files on disk, as well as to transmit media. There are different codecs for both audio and video.

    From 2814f35efbea6bccdd9b0a9f460546d32238df11 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 11 Dec 2025 01:01:09 -0500 Subject: [PATCH 026/143] Add Shutter Encoder section and correct typo Added information about Shutter Encoder and fixed a typo. --- index.html | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 78d76ee..3c7ac00 100644 --- a/index.html +++ b/index.html @@ -42,6 +42,7 @@

    Table of Contents

    CDDA (Audio CD) Ripping Tools
    ImageMagick
    flac tool
    +
    Shutter Encoder
    @@ -192,7 +193,7 @@

    Codec

  • FFV1:

    -

    Also referred to as FFmpeg Video Codec 1, FFV1 is a lossless intra-frame video codec. It supports Y′CBCR color space model. From version 3 onwards, it can also encode interlaced video. It also supports YUV and RGB content including alpha channel of color depths ranging from 8 to 16 bits.

    +

    Also referred to as FFmpeg Video Codec 1, FFV1 is a lossless intra-frame video codec. It supports YUV color space model. From version 3 onwards, it can also encode interlaced video. It also supports YUV and RGB content including alpha channel of color depths ranging from 8 to 16 bits.

    Bibliography:

  • -
    +
    +
    + +

    Shutter Encoder

    + + + +
    +
    About Shutter Encoder
    +

    Shutter Encoder is a free and open-source tool that provides a suite of functionalities designed for effectively managing and manipulating image, audio, and video content. Using multiple open-source programs including 7-Zip, VLC, dcraw, FFmpeg, ExifTool, tsMuxeR, mkvmerge, MediaInfo, dvdauthor, youtube-dl, XpdfReader, and bmxtranswrap, Shutter Encoder can perform many preservation tasks and it boasts a rather easy-to-use GUI interface. See here for documentation.

    +

    Create an H.264 access file from the preservation file

    +

    Simply choose H.264 as the output codecs in the function, and specify the destination for the output file by choosing "open destination at end" for storage in the same directory as the source file, or choose change to specify the directory you want the output file to be.Then hit "start function."

    +

    Shutter Encoder also supports batch processing with the same specification. Drag and drop the files under the dropbox of choose files.

    +
    + -
    +
    -

    Shutter Encoder

    @@ -3073,7 +3072,9 @@

    Create an H.264 access file from the preservation file

    Simply choose H.264 as the output codecs in the function, and specify the destination for the output file by choosing "open destination at end" for storage in the same directory as the source file, or choose change to specify the directory you want the output file to be.Then hit "start function."

    Shutter Encoder also supports batch processing with the same specification. Drag and drop the files under the dropbox of choose files.

    - + +
    +
    + + +
    From 17c599c5f4c56996edd24e001b924d956a313ebb Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 11 Dec 2025 01:45:44 -0500 Subject: [PATCH 032/143] Update Shutter Encoder label and description text --- index.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/index.html b/index.html index afc868c..6367b9b 100644 --- a/index.html +++ b/index.html @@ -3059,15 +3059,15 @@

    Transcode from FLAC

    - +

    Shutter Encoder

    - +
    About Shutter Encoder
    -

    Shutter Encoder is a free and open-source tool that provides a suite of functionalities designed for effectively managing and manipulating image, audio, and video content. Using multiple open-source programs including 7-Zip, VLC, dcraw, FFmpeg, ExifTool, tsMuxeR, mkvmerge, MediaInfo, dvdauthor, youtube-dl, XpdfReader, and bmxtranswrap, Shutter Encoder can perform many preservation tasks and it boasts a rather easy-to-use GUI interface. See here for documentation.

    +

    Shutter Encoder is a free and open-source tool that provides a suite of functionalities designed for effectively managing and manipulating image, audio, and video content. Using multiple open-source programs including 7-Zip, VLC, dcraw, FFmpeg, ExifTool, tsMuxeR, mkvmerge, MediaInfo, dvdauthor, youtube-dl, XpdfReader, and bmxtranswrap, Shutter Encoder can perform many preservation tasks and it boasts a rather easy-to-use GUI interface. See here for documentation

    Create an H.264 access file from the preservation file

    Simply choose H.264 as the output codecs in the function, and specify the destination for the output file by choosing "open destination at end" for storage in the same directory as the source file, or choose change to specify the directory you want the output file to be.Then hit "start function."

    Shutter Encoder also supports batch processing with the same specification. Drag and drop the files under the dropbox of choose files.

    From 40909e5a72ef5837b889706f659b30e261a49d5b Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 11 Dec 2025 01:50:12 -0500 Subject: [PATCH 033/143] Clean up index.html by removing extra divs Removed unnecessary closing div tags and added comments for clarity. --- index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 6367b9b..f392d9f 100644 --- a/index.html +++ b/index.html @@ -3059,7 +3059,7 @@

    Transcode from FLAC

    - +

    Shutter Encoder

    @@ -3076,7 +3076,7 @@

    Create an H.264 access file from the preservation file

    - + From e66aa97cc49dfa53e5706afd643274c6f3088f81 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 11 Dec 2025 09:36:43 -0500 Subject: [PATCH 034/143] Fix checkbox toggle functionality in js.js --- js/js.js | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/js/js.js b/js/js.js index b4a19c0..aa56f4f 100644 --- a/js/js.js +++ b/js/js.js @@ -107,6 +107,19 @@ document.addEventListener("DOMContentLoaded", () => { // Open the checkbox toggle const checkbox = document.querySelector("#Glossary"); if (checkbox) checkbox.checked = true; + + // Find if the target is inside .hiding + const hidden = target.closest(".hiding"); + if (hidden) { + // Find the checkbox that controls this .hiding div + const checkbox = hidden.previousElementSibling; + if (checkbox && checkbox.type === 'checkbox') { + checkbox.checked = true; + } + } + }); + }); +}); } }); }); From f003a63a1309a23da665d58976fc89dc7c3c54b9 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 11 Dec 2025 09:37:47 -0500 Subject: [PATCH 035/143] Fix indentation in index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index f392d9f..4227cff 100644 --- a/index.html +++ b/index.html @@ -3076,7 +3076,7 @@

    Create an H.264 access file from the preservation file

    - + From 6bb7dc9d0993e0ef35685b3515714b9ada6ba520 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 11 Dec 2025 09:41:52 -0500 Subject: [PATCH 036/143] Fix label and checkbox IDs for Shutter Encoder --- index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 4227cff..0b24ca3 100644 --- a/index.html +++ b/index.html @@ -3063,8 +3063,8 @@

    Transcode from FLAC

    Shutter Encoder

    - - + +
    About Shutter Encoder

    Shutter Encoder is a free and open-source tool that provides a suite of functionalities designed for effectively managing and manipulating image, audio, and video content. Using multiple open-source programs including 7-Zip, VLC, dcraw, FFmpeg, ExifTool, tsMuxeR, mkvmerge, MediaInfo, dvdauthor, youtube-dl, XpdfReader, and bmxtranswrap, Shutter Encoder can perform many preservation tasks and it boasts a rather easy-to-use GUI interface. See here for documentation

    From 22d998d72eaccc9a5e4794822b9697facebcd670 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 11 Dec 2025 09:45:52 -0500 Subject: [PATCH 037/143] Fix HTML structure for Shutter Encoder section --- index.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/index.html b/index.html index 0b24ca3..e78ad71 100644 --- a/index.html +++ b/index.html @@ -3061,10 +3061,10 @@

    Transcode from FLAC

    -

    Shutter Encoder

    +

    Shutter Encoder

    - - + +
    About Shutter Encoder

    Shutter Encoder is a free and open-source tool that provides a suite of functionalities designed for effectively managing and manipulating image, audio, and video content. Using multiple open-source programs including 7-Zip, VLC, dcraw, FFmpeg, ExifTool, tsMuxeR, mkvmerge, MediaInfo, dvdauthor, youtube-dl, XpdfReader, and bmxtranswrap, Shutter Encoder can perform many preservation tasks and it boasts a rather easy-to-use GUI interface. See here for documentation

    From cc1350d980ebab066f92449110f7d9fd245e41fe Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 11 Dec 2025 12:42:55 -0500 Subject: [PATCH 038/143] Revise Shutter Encoder description and label Updated the description of Shutter Encoder to include the creator's name and additional details. --- index.html | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index e78ad71..47a9405 100644 --- a/index.html +++ b/index.html @@ -3063,12 +3063,13 @@

    Transcode from FLAC

    Shutter Encoder

    - +
    About Shutter Encoder
    -

    Shutter Encoder is a free and open-source tool that provides a suite of functionalities designed for effectively managing and manipulating image, audio, and video content. Using multiple open-source programs including 7-Zip, VLC, dcraw, FFmpeg, ExifTool, tsMuxeR, mkvmerge, MediaInfo, dvdauthor, youtube-dl, XpdfReader, and bmxtranswrap, Shutter Encoder can perform many preservation tasks and it boasts a rather easy-to-use GUI interface. See here for documentation

    +

    Shutter Encoder is a free and open-source tool created by Paul Pacifico that provides a suite of functionalities designed for effectively managing and manipulating image, audio, and video content. Using multiple open-source programs including 7-Zip, VLC, dcraw, FFmpeg, ExifTool, tsMuxeR, mkvmerge, MediaInfo, dvdauthor, youtube-dl, XpdfReader, and bmxtranswrap, Shutter Encoder can perform many preservation tasks and it boasts a rather easy-to-use GUI interface. See here for documentation

    Create an H.264 access file from the preservation file

    +

    Shutter Encoder has been recommended by University of British Columbia's Indigitization Toolkit to create Video Primary Access file with H.264 codec wrapped in MP4 for its built-in and user-friendly interface.

    Simply choose H.264 as the output codecs in the function, and specify the destination for the output file by choosing "open destination at end" for storage in the same directory as the source file, or choose change to specify the directory you want the output file to be.Then hit "start function."

    Shutter Encoder also supports batch processing with the same specification. Drag and drop the files under the dropbox of choose files.

    From 1b07b82f0c82f9ee3e330ec611a1f9ee416c54a6 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 11 Dec 2025 15:32:03 -0500 Subject: [PATCH 039/143] Add sections for thumbnail creation and caution --- index.html | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/index.html b/index.html index 47a9405..0475e9f 100644 --- a/index.html +++ b/index.html @@ -3072,6 +3072,10 @@

    Create an H.264 access file from the preservation file

    Shutter Encoder has been recommended by University of British Columbia's Indigitization Toolkit to create Video Primary Access file with H.264 codec wrapped in MP4 for its built-in and user-friendly interface.

    Simply choose H.264 as the output codecs in the function, and specify the destination for the output file by choosing "open destination at end" for storage in the same directory as the source file, or choose change to specify the directory you want the output file to be.Then hit "start function."

    Shutter Encoder also supports batch processing with the same specification. Drag and drop the files under the dropbox of choose files.

    +

    Create an thumbnail of a Video File

    +

    Shutter Encoder can create an thumbnail of a video file while the interface displays the video. One can manually toggle the timeline and select the exact time in the video for the thumbnail image. Select specifications under Image Creation in functions, which support JPEG, JPEG XL, and Image, and choose the 100% for the full image. Click start function.

    +

    Caution

    +

    While Shutter Encoder keeps a vibrant GitHub Repository for flagging issues and new versions are released frequently. One should exercise caution when using Shutter Encoder as issues such as inaccurate metadata retention and inaccurate remaining time calculation. Always check the output file and playback to ensure integrity.

    From 1b1d0069d724351f0ebb814c68c1f1cb704eeb4b Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 11 Dec 2025 15:37:11 -0500 Subject: [PATCH 040/143] Update thumbnail creation section in index.html --- index.html | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 0475e9f..6717b2d 100644 --- a/index.html +++ b/index.html @@ -3072,12 +3072,15 @@

    Create an H.264 access file from the preservation file

    Shutter Encoder has been recommended by University of British Columbia's Indigitization Toolkit to create Video Primary Access file with H.264 codec wrapped in MP4 for its built-in and user-friendly interface.

    Simply choose H.264 as the output codecs in the function, and specify the destination for the output file by choosing "open destination at end" for storage in the same directory as the source file, or choose change to specify the directory you want the output file to be.Then hit "start function."

    Shutter Encoder also supports batch processing with the same specification. Drag and drop the files under the dropbox of choose files.

    -

    Create an thumbnail of a Video File

    + + +

    Shutter Encoder can create an thumbnail of a video file while the interface displays the video. One can manually toggle the timeline and select the exact time in the video for the thumbnail image. Select specifications under Image Creation in functions, which support JPEG, JPEG XL, and Image, and choose the 100% for the full image. Click start function.

    Caution

    While Shutter Encoder keeps a vibrant GitHub Repository for flagging issues and new versions are released frequently. One should exercise caution when using Shutter Encoder as issues such as inaccurate metadata retention and inaccurate remaining time calculation. Always check the output file and playback to ensure integrity.

    +
    From a586b2735d2f257e5a45916e145bdb13654da025 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 11 Dec 2025 15:42:52 -0500 Subject: [PATCH 041/143] Enhance HTML structure with comments for sections Added comments for clarity and organization in the HTML structure. --- index.html | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 6717b2d..e4143c0 100644 --- a/index.html +++ b/index.html @@ -3063,6 +3063,8 @@

    Transcode from FLAC

    Shutter Encoder

    + +
    @@ -3072,6 +3074,11 @@

    Create an H.264 access file from the preservation file

    Shutter Encoder has been recommended by University of British Columbia's Indigitization Toolkit to create Video Primary Access file with H.264 codec wrapped in MP4 for its built-in and user-friendly interface.

    Simply choose H.264 as the output codecs in the function, and specify the destination for the output file by choosing "open destination at end" for storage in the same directory as the source file, or choose change to specify the directory you want the output file to be.Then hit "start function."

    Shutter Encoder also supports batch processing with the same specification. Drag and drop the files under the dropbox of choose files.

    + +
    + + +
    @@ -3080,7 +3087,8 @@

    Caution

    While Shutter Encoder keeps a vibrant GitHub Repository for flagging issues and new versions are released frequently. One should exercise caution when using Shutter Encoder as issues such as inaccurate metadata retention and inaccurate remaining time calculation. Always check the output file and playback to ensure integrity.

    -
    + +
    From 209658c0db765d6c10d2c9e6889f77522542ecd6 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 11 Dec 2025 15:50:50 -0500 Subject: [PATCH 042/143] Remove empty paragraph from index.html --- index.html | 1 - 1 file changed, 1 deletion(-) diff --git a/index.html b/index.html index e4143c0..0261230 100644 --- a/index.html +++ b/index.html @@ -3074,7 +3074,6 @@

    Create an H.264 access file from the preservation file

    Shutter Encoder has been recommended by University of British Columbia's Indigitization Toolkit to create Video Primary Access file with H.264 codec wrapped in MP4 for its built-in and user-friendly interface.

    Simply choose H.264 as the output codecs in the function, and specify the destination for the output file by choosing "open destination at end" for storage in the same directory as the source file, or choose change to specify the directory you want the output file to be.Then hit "start function."

    Shutter Encoder also supports batch processing with the same specification. Drag and drop the files under the dropbox of choose files.

    -
    From e0796754b3fb3d48bd67b78b7b59a5d1edcfe5f6 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 11 Dec 2025 15:57:06 -0500 Subject: [PATCH 043/143] Update index.html --- index.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/index.html b/index.html index 0261230..4f2b80c 100644 --- a/index.html +++ b/index.html @@ -3065,8 +3065,8 @@

    Shutter Encoder

    - - + +
    About Shutter Encoder

    Shutter Encoder is a free and open-source tool created by Paul Pacifico that provides a suite of functionalities designed for effectively managing and manipulating image, audio, and video content. Using multiple open-source programs including 7-Zip, VLC, dcraw, FFmpeg, ExifTool, tsMuxeR, mkvmerge, MediaInfo, dvdauthor, youtube-dl, XpdfReader, and bmxtranswrap, Shutter Encoder can perform many preservation tasks and it boasts a rather easy-to-use GUI interface. See here for documentation

    @@ -3078,8 +3078,8 @@

    Create an H.264 access file from the preservation file

    - - + +

    Shutter Encoder can create an thumbnail of a video file while the interface displays the video. One can manually toggle the timeline and select the exact time in the video for the thumbnail image. Select specifications under Image Creation in functions, which support JPEG, JPEG XL, and Image, and choose the 100% for the full image. Click start function.

    Caution

    From 44fbdf036bd6b5f58c830e0c9849d9b4cbdd1fec Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 11 Dec 2025 15:59:30 -0500 Subject: [PATCH 044/143] Update label and checkbox for Shutter Encoder --- index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 4f2b80c..a4e2ffb 100644 --- a/index.html +++ b/index.html @@ -3065,8 +3065,8 @@

    Shutter Encoder

    - - + +
    About Shutter Encoder

    Shutter Encoder is a free and open-source tool created by Paul Pacifico that provides a suite of functionalities designed for effectively managing and manipulating image, audio, and video content. Using multiple open-source programs including 7-Zip, VLC, dcraw, FFmpeg, ExifTool, tsMuxeR, mkvmerge, MediaInfo, dvdauthor, youtube-dl, XpdfReader, and bmxtranswrap, Shutter Encoder can perform many preservation tasks and it boasts a rather easy-to-use GUI interface. See here for documentation

    From 0b81281a462e4de32a8794cf6702d20f68c19b0c Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 11 Dec 2025 22:57:31 -0500 Subject: [PATCH 045/143] Update index.html --- index.html | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/index.html b/index.html index a4e2ffb..16ff276 100644 --- a/index.html +++ b/index.html @@ -236,6 +236,18 @@

    Container

    Provenance Metadata:

    Provenance metadata refers to the information that is recorded about the history and the origin of data, including its creation and the history of modification.

    +
      +
    • Interlaced Video:

      +

      Interlaced video is a method of encoding motion by splitting each frame into two fields: one containing the odd-numbered horizontal lines and the other containing the even-numbered lines. The perceived motion smoothness is increased without increasing bandwidth since the fields are recorded at various times. Many analog media, such as broadcast television, VHS, Betamax, Digital8, and LaserDisc, used interlacing as standard,and it still appears in some digital sources.

      +
    • +
    • Deinterlacing:

      +

      Deinterlacing converts interlaced video fields into progressive frames. A deinterlacer buffers the fields and reconstructs missing lines using techniques like blending or motion-adaptive interpolation. Effective deinterlacing reduces artifacts like combing and flicker.

      +
    • +
    • CRF Quality Level:

      +

      Constant Rate Factor (CRF) is the default quality mode for x264 and x265 encoders. It keeps quality constant while allowing bitrate to vary as needed. Values range from 0 to 51: lower = higher quality and bigger files, while higher = more compression and lower quality.

      +
    • + +
    From 2a290837cc991d9a0992e1f107df31e5ab5f778d Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 11 Dec 2025 23:08:52 -0500 Subject: [PATCH 046/143] Update index.html --- index.html | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 16ff276..bf5b2db 100644 --- a/index.html +++ b/index.html @@ -237,7 +237,7 @@

    Provenance Metadata:

    Provenance metadata refers to the information that is recorded about the history and the origin of data, including its creation and the history of modification.

    From 2d6bbf75730f77073f5361cd971ec81176720a82 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 11 Dec 2025 23:46:13 -0500 Subject: [PATCH 052/143] Update index.html --- index.html | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/index.html b/index.html index 89b3bfe..b4f0f7e 100644 --- a/index.html +++ b/index.html @@ -238,17 +238,13 @@

    Provenance Metadata

      Interlaced Video

      -

      Interlaced video is a method of encoding motion by splitting each frame into two fields: one containing the odd-numbered horizontal lines and the other containing the even-numbered lines. The perceived motion smoothness is increased without increasing bandwidth since the fields are recorded at various times. Many analog media, such as broadcast television, VHS, Betamax, Digital8, and LaserDisc, used interlacing as standard,and it still appears in some digital sources.

      - +

      Interlaced video is a method of encoding motion by splitting each frame into two fields: one containing the odd-numbered horizontal lines and the other containing the even-numbered lines. Because the fields are captured at different times, motion appears smoother even though the signal uses the same bandwidth. Many analog media, such as broadcast television, VHS, Betamax, Digital8, and LaserDisc, used interlacing as standard, and it still appears in some digital sources.

      Deinterlacing

      Deinterlacing converts interlaced video fields into progressive frames. A deinterlacer buffers the fields and reconstructs missing lines using techniques like blending or motion-adaptive interpolation. Effective deinterlacing reduces artifacts like combing and flicker.

      -

      CRF Quality Level

      Constant Rate Factor (CRF) is the default quality mode for x264 and x265 encoders. It keeps quality constant while allowing bitrate to vary as needed. Values range from 0 to 51: lower = higher quality and bigger files, while higher = more compression and lower quality.

      -

      Dithering

      Dithering adds low-level noise to a signal to make quantization artifacts less noticeable when reducing bit depth. It helps prevent visible or audible patterns, such as color banding in images or distortion in audio. Dithering is used in both digital audio and video workflows and is commonly applied when exporting to lower bit depths.

      -

      Padding

      Padding refers to adding extra pixels to the borders of an image or video frame. Padding is often used to change the frame size, adjust or preserve aspect ratios, create borders, or prepare material for further processing. The added pixels can be set to a constant value or sampled from the existing border.

      Bibliography:

      From c333ec95ce62c54eacda0b59814ae5f57dd500f8 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 11 Dec 2025 23:47:07 -0500 Subject: [PATCH 053/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index b4f0f7e..68f7c72 100644 --- a/index.html +++ b/index.html @@ -238,7 +238,7 @@

      Provenance Metadata

        Interlaced Video

        -

        Interlaced video is a method of encoding motion by splitting each frame into two fields: one containing the odd-numbered horizontal lines and the other containing the even-numbered lines. Because the fields are captured at different times, motion appears smoother even though the signal uses the same bandwidth. Many analog media, such as broadcast television, VHS, Betamax, Digital8, and LaserDisc, used interlacing as standard, and it still appears in some digital sources.

        +

        Interlaced video is a method of encoding motion by splitting each frame into two fields: one containing the odd-numbered horizontal lines and the other containing the even-numbered lines. Because the fields are captured at different times, motion appears smoother even though the signal uses the same bandwidth. Many analog formats, such as broadcast television, VHS, Betamax, Digital8, and LaserDisc, used interlacing as standard, and it still appears in some digital sources.

        Deinterlacing

        Deinterlacing converts interlaced video fields into progressive frames. A deinterlacer buffers the fields and reconstructs missing lines using techniques like blending or motion-adaptive interpolation. Effective deinterlacing reduces artifacts like combing and flicker.

        CRF Quality Level

        From 6fe3b6b0ac0eb5dc1f52c6bb95c7419120c34839 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 11 Dec 2025 23:56:00 -0500 Subject: [PATCH 054/143] Update index.html --- index.html | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/index.html b/index.html index 68f7c72..02162ad 100644 --- a/index.html +++ b/index.html @@ -259,6 +259,10 @@

        Color Matrix

        Color Space

        A color space defines how colors are represented as numeric values, including their gamut and luminance values. It provides a standardized way to interpret and reproduce how colors are captured, processed, and displayed across different devices and workflows.

        NTSC and PAL

        +
      • NTSC:

        +

        An analog television and color encoding standard used for broadcast in North America, Japan, and parts of South America. Many consumer video formats and DVD outputs in these regions follow NTSC parameters.

        +
      • +
      • PAL:

    From b68cc71f05dbb9c254a439cd466fdb5123acc5cd Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Fri, 12 Dec 2025 01:49:31 -0500 Subject: [PATCH 055/143] Update index.html --- index.html | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/index.html b/index.html index 02162ad..4b1575b 100644 --- a/index.html +++ b/index.html @@ -258,11 +258,16 @@

    Color Matrix

    A color matrix is a set of coefficients used to convert pixel values between color spaces, such as RGB and YUV, or between different YUV standards like BT.601, BT.709, and BT.2020. Using the correct matrix ensures accurate color reproduction when encoding, decoding, or transforming video.

    Color Space

    A color space defines how colors are represented as numeric values, including their gamut and luminance values. It provides a standardized way to interpret and reproduce how colors are captured, processed, and displayed across different devices and workflows.

    -

    NTSC and PAL

    -
  • NTSC:

    -

    An analog television and color encoding standard used for broadcast in North America, Japan, and parts of South America. Many consumer video formats and DVD outputs in these regions follow NTSC parameters.

    -
  • -
  • PAL:

    +

    NTSC

    +

    NTSC is an analog television and color encoding standard used for broadcast in North America, Japan, and parts of South America. Many consumer video formats and DVD outputs in these regions follow NTSC parameters.

    +

    PAL

    +

    PAL is an analog television and color encoding standard used across Europe, Asia, Oceania, Africa, and parts of South America. It was designed to correct NTSC’s color phase-shift issues by alternating the chroma phase each line.

    +

    Audio Phase

    +

    Phase describes the position of a waveform within its cycle. The timing offset between two similar waveforms is their phase difference, which strongly affects how the signals combine in audio production.

    +

    EQ Curve

    +

    An EQ curve provides a representation of gain adjustments across the audio frequency spectrum. They are used to boost, cut, or correct frequencies during recording, mixing, or playback.

    +

    Image Normalization

    +

    Image normalization adjusts the range of pixel intensity values in an image. This process improves contrast, standardizes brightness, and prepares images for consistent processing, display, or analysis.

  • From 5e500b1546829777f1457b572db1868dfa245c9d Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Fri, 12 Dec 2025 01:53:41 -0500 Subject: [PATCH 056/143] Update index.html --- index.html | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/index.html b/index.html index 4b1575b..5224c3f 100644 --- a/index.html +++ b/index.html @@ -235,8 +235,6 @@

    Container

    Provenance Metadata

    Provenance metadata refers to the information that is recorded about the history and the origin of data, including its creation and the history of modification.

    - -

      Interlaced Video

      Interlaced video is a method of encoding motion by splitting each frame into two fields: one containing the odd-numbered horizontal lines and the other containing the even-numbered lines. Because the fields are captured at different times, motion appears smoother even though the signal uses the same bandwidth. Many analog formats, such as broadcast television, VHS, Betamax, Digital8, and LaserDisc, used interlacing as standard, and it still appears in some digital sources.

      Deinterlacing

      @@ -268,7 +266,8 @@

      EQ Curve

      An EQ curve provides a representation of gain adjustments across the audio frequency spectrum. They are used to boost, cut, or correct frequencies during recording, mixing, or playback.

      Image Normalization

      Image normalization adjusts the range of pixel intensity values in an image. This process improves contrast, standardizes brightness, and prepares images for consistent processing, display, or analysis.

      - +

      Frame Rate

      +

    From 29d7a7a4b487dbff00c0deb4e874d90cdef716df Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Fri, 12 Dec 2025 02:22:12 -0500 Subject: [PATCH 057/143] Update index.html --- index.html | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 5224c3f..4f1b6d4 100644 --- a/index.html +++ b/index.html @@ -267,7 +267,20 @@

    EQ Curve

    Image Normalization

    Image normalization adjusts the range of pixel intensity values in an image. This process improves contrast, standardizes brightness, and prepares images for consistent processing, display, or analysis.

    Frame Rate

    -

    +

    Frame rate refers to the frequency at which consecutive frames are captured or displayed, measured in frames per second (FPS). Typical frame rates include 24, 25, 30, and 60 FPS, depending on the source material and delivery standard.

    +

    Chroma Subsampling

    +

    Chroma subsampling is a compression technique that reduces the resolution of color (chroma) information relative to brightness (luma) in a video signal. This lowers bandwidth or file size without noticeably affecting perceived image quality.

    +

    Types of Chroma Subsampling

    +
      +
    • 4:2:0:

      +

      A chroma subsampling format that stores color at half the horizontal and half the vertical resolution of luma. Each 2×2 block of luma samples shares a single pair of chroma samples, reducing color data to one-quarter of the luma data while maintaining most of the perceived image detail.

      +
    • +
    • 4:2:2:

      +

      A chroma subsampling format where luma is sampled at full resolution, but chroma is sampled at half the horizontal resolution and full vertical resolution. 4:2:2 reduces chroma data compared with 4:4:4 while preserving vertical color detail.

      +
    • +
    • 4:4:4:

      +

      A chroma subsampling format in which luma and chroma are stored at full resolution. Unlike 4:2:2 or 4:2:0, 4:4:4 preserves all color information for each pixel.

      +
    From 3b0c4ce336c12bd993aa41d6b5be01f99a61e0a7 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Fri, 12 Dec 2025 02:25:17 -0500 Subject: [PATCH 058/143] Update index.html --- index.html | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 4f1b6d4..88d9808 100644 --- a/index.html +++ b/index.html @@ -280,7 +280,11 @@

    Chroma Subsampling

  • 4:4:4:

    A chroma subsampling format in which luma and chroma are stored at full resolution. Unlike 4:2:2 or 4:2:0, 4:4:4 preserves all color information for each pixel.

    -
  • +

    Bibliography:

    + +
    From 1ded1c92db671e5a5db5f48fdffe2184ba63922a Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Fri, 12 Dec 2025 02:26:48 -0500 Subject: [PATCH 059/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 88d9808..b994616 100644 --- a/index.html +++ b/index.html @@ -279,7 +279,7 @@

    Chroma Subsampling

    A chroma subsampling format where luma is sampled at full resolution, but chroma is sampled at half the horizontal resolution and full vertical resolution. 4:2:2 reduces chroma data compared with 4:4:4 while preserving vertical color detail.

  • 4:4:4:

    -

    A chroma subsampling format in which luma and chroma are stored at full resolution. Unlike 4:2:2 or 4:2:0, 4:4:4 preserves all color information for each pixel.

    +

    A chroma subsampling format in which luma and chroma are stored at full resolution. Unlike 4:2:2 or 4:2:0, 4:4:4 retains all color information for each pixel.

    Bibliography:

      Guide to Chroma Subsampling

      From a1a9f7dda59d1af5f77b1c54f2a46d4ad678dc5d Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Fri, 12 Dec 2025 02:42:10 -0500 Subject: [PATCH 060/143] Update index.html --- index.html | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index b994616..0592ffd 100644 --- a/index.html +++ b/index.html @@ -284,7 +284,9 @@

      Chroma Subsampling

      - + +

      Vectorscope

      +

  • From 9c1e183fb92d6aee532de7197b0931df37b008e1 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Fri, 12 Dec 2025 16:03:15 -0500 Subject: [PATCH 061/143] Update index.html --- index.html | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 0592ffd..c26824f 100644 --- a/index.html +++ b/index.html @@ -286,7 +286,17 @@

    Chroma Subsampling

    Vectorscope

    -

    +

    In digital video, a vectorscope graphs the Cb and Cr chrominance channels to display hue and saturation.

    +

    Fixity

    +

    Fixity means that a digital file has remained unchanged over time. Fixity checks use checksums or hashes to confirm that the file’s bitstream has not been altered or corrupted.

    +

    Checksum

    +

    A checksum is a small-sized block of data computed from a digital file that can be used to detect unintended changes during storage or transfer. Checksums verify integrity but do not establish authenticity.

    +

    Hashcode

    +

    A hashcode is an integer derived from an object’s contents in Java, used primarily for efficient storage and retrieval in hash-based data structures. Every Java object has a hashcode, but different objects can share the same value.

    +

    Sine Wave

    +

    A sine wave is a smooth, periodic waveform representing a single-frequency tone without harmonics or overtones. Sine waves are used in audio signal analysis, calibration, and synthesis, characterized by frequency, amplitude, and phase.

    +

    ISO File

    +

    An ISO file is a disk image that contains a sector-by-sector copy of an optical disc, including its file system. ISO images are commonly used to distribute software or media and are accessed by mounting or burning to a disc.

    From dfcfc5f125dba172cde9ae4a9111a25169cedada Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Fri, 12 Dec 2025 16:05:15 -0500 Subject: [PATCH 062/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index c26824f..97833bf 100644 --- a/index.html +++ b/index.html @@ -294,7 +294,7 @@

    Checksum

    Hashcode

    A hashcode is an integer derived from an object’s contents in Java, used primarily for efficient storage and retrieval in hash-based data structures. Every Java object has a hashcode, but different objects can share the same value.

    Sine Wave

    -

    A sine wave is a smooth, periodic waveform representing a single-frequency tone without harmonics or overtones. Sine waves are used in audio signal analysis, calibration, and synthesis, characterized by frequency, amplitude, and phase.

    +

    A sine wave is a smooth, periodic waveform representing a single-frequency tone without harmonics or overtones. Sine waves are used in audio signal analysis, calibration, and synthesis, and they are characterized by frequency, amplitude, and phase.

    ISO File

    An ISO file is a disk image that contains a sector-by-sector copy of an optical disc, including its file system. ISO images are commonly used to distribute software or media and are accessed by mounting or burning to a disc.

    From a38f423fe4590875f8ff2f78baf9cf26b5ce604b Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Fri, 12 Dec 2025 16:06:36 -0500 Subject: [PATCH 063/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 97833bf..5c26043 100644 --- a/index.html +++ b/index.html @@ -149,7 +149,7 @@
    Streams
    - +

    Codec

    From b732db10e2bb681058d8a6405833a0a30c82406f Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Fri, 12 Dec 2025 16:11:53 -0500 Subject: [PATCH 064/143] Update index.html --- index.html | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 5c26043..e485c8d 100644 --- a/index.html +++ b/index.html @@ -3143,10 +3143,11 @@

    Create an H.264 access file from the preservation file

    -

    Shutter Encoder can create an thumbnail of a video file while the interface displays the video. One can manually toggle the timeline and select the exact time in the video for the thumbnail image. Select specifications under Image Creation in functions, which support JPEG, JPEG XL, and Image, and choose the 100% for the full image. Click start function.

    -

    Caution

    +

    Caution

    +

    While Shutter Encoder keeps a vibrant GitHub Repository for flagging issues and new versions are released frequently. One should exercise caution when using Shutter Encoder as issues such as inaccurate metadata retention and inaccurate remaining time calculation. Always check the output file and playback to ensure integrity.

    +

    Shutter Encoder can create an thumbnail of a video file while the interface displays the video. One can manually toggle the timeline and select the exact time in the video for the thumbnail image. Select specifications under Image Creation in functions, which support JPEG, JPEG XL, and Image, and choose the 100% for the full image. Click start function.

    From 82946f7106ff40b0ad1c40189177990c91fe5ede Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Fri, 12 Dec 2025 16:15:18 -0500 Subject: [PATCH 065/143] Update index.html --- index.html | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index e485c8d..89e1ce4 100644 --- a/index.html +++ b/index.html @@ -3143,8 +3143,10 @@

    Create an H.264 access file from the preservation file

    -

    Caution

    - +

    + + Caution +

    While Shutter Encoder keeps a vibrant GitHub Repository for flagging issues and new versions are released frequently. One should exercise caution when using Shutter Encoder as issues such as inaccurate metadata retention and inaccurate remaining time calculation. Always check the output file and playback to ensure integrity.

    Shutter Encoder can create an thumbnail of a video file while the interface displays the video. One can manually toggle the timeline and select the exact time in the video for the thumbnail image. Select specifications under Image Creation in functions, which support JPEG, JPEG XL, and Image, and choose the 100% for the full image. Click start function.

    From a5bfdc67b8159923b5bd8bbdd148bebe935479d8 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Fri, 12 Dec 2025 16:16:37 -0500 Subject: [PATCH 066/143] Update index.html --- index.html | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/index.html b/index.html index 89e1ce4..e871d52 100644 --- a/index.html +++ b/index.html @@ -3143,9 +3143,8 @@

    Create an H.264 access file from the preservation file

    -

    +

    Caution - Caution

    While Shutter Encoder keeps a vibrant GitHub Repository for flagging issues and new versions are released frequently. One should exercise caution when using Shutter Encoder as issues such as inaccurate metadata retention and inaccurate remaining time calculation. Always check the output file and playback to ensure integrity.

    From 8f04286ebd106410c1143b393bfaa381a9038fe7 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Sat, 13 Dec 2025 21:19:28 -0500 Subject: [PATCH 067/143] Move caution section from Shutter Encoder description Removed caution section about Shutter Encoder usage. --- index.html | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/index.html b/index.html index e871d52..f1b9888 100644 --- a/index.html +++ b/index.html @@ -3132,6 +3132,10 @@

    Shutter Encoder

    About Shutter Encoder

    Shutter Encoder is a free and open-source tool created by Paul Pacifico that provides a suite of functionalities designed for effectively managing and manipulating image, audio, and video content. Using multiple open-source programs including 7-Zip, VLC, dcraw, FFmpeg, ExifTool, tsMuxeR, mkvmerge, MediaInfo, dvdauthor, youtube-dl, XpdfReader, and bmxtranswrap, Shutter Encoder can perform many preservation tasks and it boasts a rather easy-to-use GUI interface. See here for documentation

    +

    Caution + +

    +

    While Shutter Encoder keeps a vibrant GitHub Repository for flagging issues and new versions are released frequently. One should exercise caution when using Shutter Encoder as issues such as inaccurate metadata retention and inaccurate remaining time calculation. Always check the output file and playback to ensure integrity.

    Create an H.264 access file from the preservation file

    Shutter Encoder has been recommended by University of British Columbia's Indigitization Toolkit to create Video Primary Access file with H.264 codec wrapped in MP4 for its built-in and user-friendly interface.

    Simply choose H.264 as the output codecs in the function, and specify the destination for the output file by choosing "open destination at end" for storage in the same directory as the source file, or choose change to specify the directory you want the output file to be.Then hit "start function."

    @@ -3143,12 +3147,8 @@

    Create an H.264 access file from the preservation file

    -

    Caution - -

    -

    While Shutter Encoder keeps a vibrant GitHub Repository for flagging issues and new versions are released frequently. One should exercise caution when using Shutter Encoder as issues such as inaccurate metadata retention and inaccurate remaining time calculation. Always check the output file and playback to ensure integrity.

    -

    Shutter Encoder can create an thumbnail of a video file while the interface displays the video. One can manually toggle the timeline and select the exact time in the video for the thumbnail image. Select specifications under Image Creation in functions, which support JPEG, JPEG XL, and Image, and choose the 100% for the full image. Click start function.

    +
    From c6c85ec75f450c0c0954850aa84553b5baddbf34 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Sat, 13 Dec 2025 23:08:44 -0500 Subject: [PATCH 068/143] Test adding case study on FFprobe usage Added a case study section detailing the use of FFprobe by the Smithsonian Institution Archives, including context, solution, and outcome. --- index.html | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/index.html b/index.html index f1b9888..134db2f 100644 --- a/index.html +++ b/index.html @@ -2117,6 +2117,19 @@
    Pull specs from video file
    -print_format
    Set the output printing format (in this example “xml”; other formats include “json” and “flat”)

    See also the FFmpeg documentation on ffprobe for a full list of flags, commands, and options.

    +
    +
    + 📋 Real-World Example +
    +
    Institution:Smithsonian Institution Archives
    +

    Context: Needed to access information about file formats that may have become obsolete as both the codec and container information are needed for playback.

    +

    Solution: Used FFprobe, which uses libraries of various codecs and containers to extract technical metadata to determine the codec and container.

    +

    Outcome: The output of FFprobe includes format name, format_long_name, and other metadata information such as start time, duration, and bitrate.

    +

    Check out the blog post for more information

    +
    +
    +
    +
    From 752b298d8b902b7323320ce9bef84025ab77a01b Mon Sep 17 00:00:00 2001 From: Beibei He Date: Sat, 13 Dec 2025 23:19:02 -0500 Subject: [PATCH 069/143] Refactor details section styling in index.html --- index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 134db2f..f56caa5 100644 --- a/index.html +++ b/index.html @@ -2117,8 +2117,8 @@
    Pull specs from video file
    -print_format
    Set the output printing format (in this example “xml”; other formats include “json” and “flat”)

    See also the FFmpeg documentation on ffprobe for a full list of flags, commands, and options.

    -
    -
    +
    +
    📋 Real-World Example
    Institution:Smithsonian Institution Archives
    From cf5a5f0a88280a893902f970ff033d2656e0d6eb Mon Sep 17 00:00:00 2001 From: Beibei He Date: Sat, 13 Dec 2025 23:24:44 -0500 Subject: [PATCH 070/143] Refactor Real-World Example section in index.html Updated the Real-World Example section with new formatting and structure. --- index.html | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/index.html b/index.html index f56caa5..d4b68f5 100644 --- a/index.html +++ b/index.html @@ -2117,10 +2117,9 @@
    Pull specs from video file
    -print_format
    Set the output printing format (in this example “xml”; other formats include “json” and “flat”)

    See also the FFmpeg documentation on ffprobe for a full list of flags, commands, and options.

    -
    -
    - 📋 Real-World Example -
    +
    📋 Real-World Example
    +
    +
    Institution:Smithsonian Institution Archives

    Context: Needed to access information about file formats that may have become obsolete as both the codec and container information are needed for playback.

    Solution: Used FFprobe, which uses libraries of various codecs and containers to extract technical metadata to determine the codec and container.

    @@ -2128,7 +2127,7 @@
    Institution:Smithsonian Institution Archives

    Check out the blog post for more information

    -
    +
    From d995e7a43f93b514aa420f4d275d082f1b825491 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Sat, 13 Dec 2025 23:32:25 -0500 Subject: [PATCH 071/143] Change text color in real-world example section --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index d4b68f5..c53673c 100644 --- a/index.html +++ b/index.html @@ -2118,7 +2118,7 @@
    Pull specs from video file

    See also the FFmpeg documentation on ffprobe for a full list of flags, commands, and options.

    📋 Real-World Example
    -
    +
    Institution:Smithsonian Institution Archives

    Context: Needed to access information about file formats that may have become obsolete as both the codec and container information are needed for playback.

    From 1f33a5426cc6b5c9f2ed6e6fe543759bfd6c279c Mon Sep 17 00:00:00 2001 From: Beibei He Date: Sat, 13 Dec 2025 23:37:02 -0500 Subject: [PATCH 072/143] Fix HTML formatting for blog link --- index.html | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/index.html b/index.html index c53673c..a504968 100644 --- a/index.html +++ b/index.html @@ -2118,13 +2118,12 @@
    Pull specs from video file

    See also the FFmpeg documentation on ffprobe for a full list of flags, commands, and options.

    📋 Real-World Example
    -
    Institution:Smithsonian Institution Archives

    Context: Needed to access information about file formats that may have become obsolete as both the codec and container information are needed for playback.

    Solution: Used FFprobe, which uses libraries of various codecs and containers to extract technical metadata to determine the codec and container.

    Outcome: The output of FFprobe includes format name, format_long_name, and other metadata information such as start time, duration, and bitrate.

    -

    Check out the blog post for more information

    +

    Check out the blogpost for more information

    From 68e7313b90b3fa7e0740306137373ad9c9029c7f Mon Sep 17 00:00:00 2001 From: Beibei He Date: Sat, 13 Dec 2025 23:40:17 -0500 Subject: [PATCH 073/143] Fix HTML formatting for blog link paragraph --- index.html | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/index.html b/index.html index a504968..7ce2b65 100644 --- a/index.html +++ b/index.html @@ -2123,11 +2123,8 @@
    Institution:Smithsonian Institution Archives

    Context: Needed to access information about file formats that may have become obsolete as both the codec and container information are needed for playback.

    Solution: Used FFprobe, which uses libraries of various codecs and containers to extract technical metadata to determine the codec and container.

    Outcome: The output of FFprobe includes format name, format_long_name, and other metadata information such as start time, duration, and bitrate.

    -

    Check out the blogpost for more information

    -
    -
    - - +

    Check out the blog post for more information

    +
    From 8f23f1e53bbad94641e257d87d0b2d01366ad53e Mon Sep 17 00:00:00 2001 From: Beibei He Date: Sun, 14 Dec 2025 19:20:25 -0500 Subject: [PATCH 074/143] Add real-world example for Apple ProRes usage Added a real-world example for using Apple ProRes codec with FFmpeg. --- index.html | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/index.html b/index.html index 7ce2b65..5e40584 100644 --- a/index.html +++ b/index.html @@ -508,6 +508,12 @@
    Transcode into a deinterlaced Apple ProRes LT
  • prores is much faster, can be used for progressive video only, and seems to be better for video according to Rec. 601 (Recommendation ITU-R BT.601).
  • prores_ks generates a better file, can also be used for interlaced video, allows also encoding of ProRes 4444 (-c:v prores_ks -profile:v 4) and ProRes 4444 XQ (-c:v prores_ks -profile:v 5), and seems to be better for video according to Rec. 709 (Recommendation ITU-R BT.709).
  • +
    📋 Real-World Example
    +
    +
    Institution:University Libraries
    +

    Context: The standard for the intermediary file at the library is Apple ProRes 422 codec 10-bit wrapped in a MOV container. The input file is wrapped in an MKV container.

    +

    Solution: Used FFmpeg command, ffmpeg -i input.mkv -c:v prores_ks -profile:v hq output.mov to create intermediary file. The flag prores_ks specifies that the video would only encode to 10-bit.

    +
    From 8cde2fc586fbb2fe3eba4075c2eb0330a087cb08 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Sun, 14 Dec 2025 19:24:01 -0500 Subject: [PATCH 075/143] Format FFmpeg command as code in solution paragraph --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 5e40584..769848d 100644 --- a/index.html +++ b/index.html @@ -512,7 +512,7 @@
    📋 Real-World Example
    Institution:University Libraries

    Context: The standard for the intermediary file at the library is Apple ProRes 422 codec 10-bit wrapped in a MOV container. The input file is wrapped in an MKV container.

    -

    Solution: Used FFmpeg command, ffmpeg -i input.mkv -c:v prores_ks -profile:v hq output.mov to create intermediary file. The flag prores_ks specifies that the video would only encode to 10-bit.

    +

    Solution: Used FFmpeg command, -i input.mkv -c:v prores_ks -profile:v hq output.mov to create intermediary file. The flag prores_ks specifies that the video would only encode to 10-bit.

    From 7e814bc2ba4234c73d395732c3a8b076066f6897 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Mon, 15 Dec 2025 11:28:29 -0500 Subject: [PATCH 076/143] Add XLD tool information and ripping instructions Added X Lossless Decoder (XLD) section with details on finding drive offset and ripping CDDA. --- index.html | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 769848d..fe1ce50 100644 --- a/index.html +++ b/index.html @@ -43,6 +43,7 @@

    Table of Contents

    ImageMagick
    flac tool
    Shutter Encoder
    +
    XLD
    @@ -3169,7 +3170,35 @@

    Create an H.264 access file from the preservation file

    -
    +
    +

    X Loseless Decoder

    + + + + + +
    +
    About XLD
    +

    X Lossless Decoder(XLD) is a tool for Mac OS X that is able to decode/convert/play various 'lossless' audio files. The supported audio files can be split into some tracks with cue sheet when decoding. It works on Mac OS X 10.4 and later.

    +

    Find Drive Offset for Exact CD Ripping

    +

    Open Preferences on XLD and go to the tab CD Rip. In the column “Read samples offset correction value,” there is a number value that tells the correction offset, and when you hover over the value, you will see the CD drive specification.

    +
    + + + + + +
    +

    Ripping CDDA

    +

    Important Setup:to configure XLD properly before ripping your first CD, you should set Character encoding of cuesheet to Unicode (UTF-8), check the Automatically check for updates box, and set Maximum #Threads according to your processor cores if not automatically detected.For the output format, select FLAC, and click the option button to set compression level to none for lossless compression. Uncheck “Allow to embed cue sheet”.In the CD Rip Tab: Set Ripper Mode to “XLD Secure Ripper” and check “Use C2 Error Pointers” if your drive supports them.

    +

    The Ripping Process: Once you load the CD, if not automatically loaded, open to file and open Audio CD to find your CD. XLD will begin to detect the pre-gaps. At the top of the window of Pre-gap settings, choose “Include pre-gap except for HTOA” and choose your output directory. You can also click “Get Metadata” and save cue sheet to store CD tags and other related metadata. To start the ripping process, click the extract and wait for the process to complete.

    +

    After the ripping process is completed, Check any error messages to verify the rip.

    +
    + + + + +
    From ded8ba6a7b786dc5251266f66e0cc1b09bf55887 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Mon, 15 Dec 2025 11:33:53 -0500 Subject: [PATCH 077/143] Refactor CDDA ripping instructions for clarity --- index.html | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index fe1ce50..776e1c6 100644 --- a/index.html +++ b/index.html @@ -3190,8 +3190,10 @@

    Find Drive Offset for Exact CD Ripping

    Ripping CDDA

    -

    Important Setup:to configure XLD properly before ripping your first CD, you should set Character encoding of cuesheet to Unicode (UTF-8), check the Automatically check for updates box, and set Maximum #Threads according to your processor cores if not automatically detected.For the output format, select FLAC, and click the option button to set compression level to none for lossless compression. Uncheck “Allow to embed cue sheet”.In the CD Rip Tab: Set Ripper Mode to “XLD Secure Ripper” and check “Use C2 Error Pointers” if your drive supports them.

    -

    The Ripping Process: Once you load the CD, if not automatically loaded, open to file and open Audio CD to find your CD. XLD will begin to detect the pre-gaps. At the top of the window of Pre-gap settings, choose “Include pre-gap except for HTOA” and choose your output directory. You can also click “Get Metadata” and save cue sheet to store CD tags and other related metadata. To start the ripping process, click the extract and wait for the process to complete.

    +

    Important Setup: + 🔧 + to configure XLD properly before ripping your first CD, you should set Character encoding of cuesheet to Unicode (UTF-8), check the Automatically check for updates box, and set Maximum #Threads according to your processor cores if not automatically detected.For the output format, select FLAC, and click the option button to set compression level to none for lossless compression. Uncheck “Allow to embed cue sheet”.In the CD Rip Tab: Set Ripper Mode to “XLD Secure Ripper” and check “Use C2 Error Pointers” if your drive supports them.

    +

    The Ripping Process: Once you load the CD, if not automatically loaded, open to file and open Audio CD to find your CD. XLD will begin to detect the pre-gaps. At the top of the window of Pre-gap settings, choose “Include pre-gap except for HTOA” and choose your output directory. You can also click “Get Metadata” and save cue sheet to store CD tags and other related metadata. To start the ripping process, click the extract and wait for the process to complete.

    After the ripping process is completed, Check any error messages to verify the rip.

    From 63dcefbbee2b514d6eebd73226f3b61cbf5158cb Mon Sep 17 00:00:00 2001 From: Beibei He Date: Mon, 15 Dec 2025 11:39:23 -0500 Subject: [PATCH 078/143] Fix punctuation and formatting in CD ripping instructions --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 776e1c6..7c4ec3b 100644 --- a/index.html +++ b/index.html @@ -3192,7 +3192,7 @@

    Find Drive Offset for Exact CD Ripping

    Ripping CDDA

    Important Setup: 🔧 - to configure XLD properly before ripping your first CD, you should set Character encoding of cuesheet to Unicode (UTF-8), check the Automatically check for updates box, and set Maximum #Threads according to your processor cores if not automatically detected.For the output format, select FLAC, and click the option button to set compression level to none for lossless compression. Uncheck “Allow to embed cue sheet”.In the CD Rip Tab: Set Ripper Mode to “XLD Secure Ripper” and check “Use C2 Error Pointers” if your drive supports them.

    + to configure XLD properly before ripping your first CD, you should set Character encoding of cuesheet to Unicode (UTF-8), check the Automatically check for updates box, and set Maximum #Threads according to your processor cores if not automatically detected.For the output format, select FLAC, and click the option button to set compression level to none for lossless compression. Uncheck “Allow to embed cue sheet.” In the CD Rip Tab: Set Ripper Mode to “XLD Secure Ripper” and check “Use C2 Error Pointers” if your drive supports them.

    The Ripping Process: Once you load the CD, if not automatically loaded, open to file and open Audio CD to find your CD. XLD will begin to detect the pre-gaps. At the top of the window of Pre-gap settings, choose “Include pre-gap except for HTOA” and choose your output directory. You can also click “Get Metadata” and save cue sheet to store CD tags and other related metadata. To start the ripping process, click the extract and wait for the process to complete.

    After the ripping process is completed, Check any error messages to verify the rip.

    From 5cef1840a1f186a6aa0e50b6a23ea253bbd1e060 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Mon, 15 Dec 2025 15:05:50 -0500 Subject: [PATCH 079/143] Add real-world example for FFmpeg transcoding to H. 264 Added a real-world example of transcoding video using FFmpeg. --- index.html | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/index.html b/index.html index 7c4ec3b..b588781 100644 --- a/index.html +++ b/index.html @@ -550,6 +550,14 @@
    Transcode to H.264

    By default, this recipe will include one track of each type (e.g. audio, video) in the output file. If you wish to include more tracks, consult the entry on stream mapping.

    For more information, see the FFmpeg and H.264 Encoding Guide on the FFmpeg wiki.

    +
    📋 Real-World Example
    +
    +
    Institution:University of North Carolina at Chapel Hill
    +

    Context: The University Archives and Records Management Services department acquired a non-professional, unedited footage of a graduation ceremony. The file was 112 gigabytes and encoded using the Apple ProRes codec. They tried to transcode the file into FFVI to decrease the size, but it doubled in size.

    +

    Solution: The curator agreed to compression since it was not the only footage of the ceremony, and they decided on the h. 264 codec.Used the FFmpeg command -i -c:v libx264 -pix_fmt yuv420p -crf 12 -c:a copy [destination]

    +

    Outcome:After transcoding, the resulting file was 53 gigabytes, reducing almost half of the size of the original.

    +

    Check out the blog to read more about the case study.

    +
    From 1ce32bcac3728d3142c13d410c1c61f7b4700258 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Mon, 15 Dec 2025 15:16:24 -0500 Subject: [PATCH 080/143] Add real-world example of FFmpeg usage by WGBH Added a real-world example of WGBH's use of FFmpeg for audio transcoding, including context, solution, and outcome. --- index.html | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/index.html b/index.html index b588781..936c50a 100644 --- a/index.html +++ b/index.html @@ -753,6 +753,23 @@
    WAV to MP3
  • About ID3v2.3 tag: ID3v2.3 is better supported than ID3v2.4, FFmpeg's default ID3v2 setting.
  • About dither methods: FFmpeg comes with a variety of dither algorithms, outlined in the official docs, though some may lead to unintended, drastic digital clipping on some systems.
  • +
    📋 Real-World Example
    +
    +
    Institution:WGBH
    +

    Context: After WGBH ingested a sample 2TB production hard drive that included MP3 files from audio-only interviews, they created .mp3 proxies for all audio. While it might not have been necessary for the audio interviews that are already in .mp3 format, but it is easier to run a batch script on the whole drive for some of the stock footage rather than figuring out which one needs transcoding.

    +

    Solution: They run a FFmpeg command with a batch script for the hard drive, relevant command is listed here + for i in `find . -type f | grep -i '\(mp3\|m4a\|wmv\|aif\|aac\|aiff\|wma\|wav\)$'` ; + do + newDir=`dirname "$i"`; + mkdir -p "$outDir/$newDir"; + + ffmpeg -i "$i" -acodec libmp3lame -qscale:a 9 "$outDir/$newDir/$(basename $i)".mp3; + done ; + + click here for full documentation.

    +

    Outcome: The proxies can be viewed by internal producers in their local FileMaker database to help them better determine what they might want to use in a production.

    +

    Check the blog for more information on the case study.

    +
    From 78f2d773925c36e6f5f925b795d573959e7c579d Mon Sep 17 00:00:00 2001 From: Beibei He Date: Mon, 15 Dec 2025 15:21:00 -0500 Subject: [PATCH 081/143] Fix formatting of FFmpeg command in documentation --- index.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/index.html b/index.html index 936c50a..b766920 100644 --- a/index.html +++ b/index.html @@ -758,15 +758,15 @@
    📋 Real-World Example
    Institution:WGBH

    Context: After WGBH ingested a sample 2TB production hard drive that included MP3 files from audio-only interviews, they created .mp3 proxies for all audio. While it might not have been necessary for the audio interviews that are already in .mp3 format, but it is easier to run a batch script on the whole drive for some of the stock footage rather than figuring out which one needs transcoding.

    Solution: They run a FFmpeg command with a batch script for the hard drive, relevant command is listed here - for i in `find . -type f | grep -i '\(mp3\|m4a\|wmv\|aif\|aac\|aiff\|wma\|wav\)$'` ; +

    for i in `find . -type f | grep -i '\(mp3\|m4a\|wmv\|aif\|aac\|aiff\|wma\|wav\)$'` ;
         do 
     	    newDir=`dirname "$i"`;
     	    mkdir -p "$outDir/$newDir";
     
     	    ffmpeg -i "$i" -acodec libmp3lame -qscale:a 9 "$outDir/$newDir/$(basename $i)".mp3;
         done ;
    -     
    -    click here for full documentation.

    +
    +

    click here for full documentation.

    Outcome: The proxies can be viewed by internal producers in their local FileMaker database to help them better determine what they might want to use in a production.

    Check the blog for more information on the case study.

    From 5947413273694e5a78f2778f31c7f217362dbc55 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Mon, 15 Dec 2025 15:26:41 -0500 Subject: [PATCH 082/143] Fix formatting of FFmpeg command in index.html --- index.html | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/index.html b/index.html index b766920..e159544 100644 --- a/index.html +++ b/index.html @@ -758,14 +758,15 @@
    📋 Real-World Example
    Institution:WGBH

    Context: After WGBH ingested a sample 2TB production hard drive that included MP3 files from audio-only interviews, they created .mp3 proxies for all audio. While it might not have been necessary for the audio interviews that are already in .mp3 format, but it is easier to run a batch script on the whole drive for some of the stock footage rather than figuring out which one needs transcoding.

    Solution: They run a FFmpeg command with a batch script for the hard drive, relevant command is listed here -

    for i in `find . -type f | grep -i '\(mp3\|m4a\|wmv\|aif\|aac\|aiff\|wma\|wav\)$'` ;
    -    do 
    -	    newDir=`dirname "$i"`;
    -	    mkdir -p "$outDir/$newDir";
    -
    -	    ffmpeg -i "$i" -acodec libmp3lame -qscale:a 9 "$outDir/$newDir/$(basename $i)".mp3;
    -    done ;
    -    
    +
    
    +		for i in `find . -type f | grep -i '\(mp3\|m4a\|wmv\|aif\|aac\|aiff\|wma\|wav\)$'`;
    +    	do 
    +	    		newDir=`dirname "$i"`;
    +	    		mkdir -p "$outDir/$newDir";
    +
    +	    		ffmpeg -i "$i" -acodec libmp3lame -qscale:a 9 "$outDir/$newDir/$(basename $i)".mp3;
    +        done ;
    +      

    click here for full documentation.

    Outcome: The proxies can be viewed by internal producers in their local FileMaker database to help them better determine what they might want to use in a production.

    Check the blog for more information on the case study.

    From 6af59c9384fa5f5194b6395e7d01c2a48e2f49f1 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Mon, 15 Dec 2025 15:36:52 -0500 Subject: [PATCH 083/143] Add real-world application section for test patterns Added a section on the importance of using a test pattern video, including links to guidelines and documentation. --- index.html | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/index.html b/index.html index e159544..5e2a294 100644 --- a/index.html +++ b/index.html @@ -2529,6 +2529,11 @@
    Make a test pattern video
    -t 10
    specifies recording time of 10 seconds
    output_file
    path, name and extension of the output file. Try different file extensions such as mkv, mov, mp4, or avi.
    +
    📋 Real-World Application
    +
    +

    The Importance of Using a Test Pattern Video: As outlined in IASA’s Guidelines for the Preservation of Video Recordings, using an alignment and calibration test tape in transfer situations can help technical staff in assessing the day-to-day performance of a machine and double-checking when a playback problem arises with a collection item. Digital-file-based test patterns may cover several features, including video levels, chroma phase, colour space, audio mapping, audio levels, timecode reproduction, aspect ratio, scaling, cropping, and much more.

    +

    NYPL has detailed documentation of generating different test patterns, including 2K 10-bit with a silent audio track and a DPX test file.

    +
    From 7d127cfa4fa6f1025aed7edc7ed540ba7732d196 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Mon, 15 Dec 2025 15:52:43 -0500 Subject: [PATCH 084/143] Add real-world example for video excerpting --- index.html | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 5e2a294..15d085b 100644 --- a/index.html +++ b/index.html @@ -1471,7 +1471,14 @@
    Trim a video without re-encoding
    -ss 00:05:00 -t 10
    Beginning five minutes into the original video, this command will create a 10-second-long excerpt.

    Note: In order to keep the original timestamps, without trying to sanitize them, you may add the -copyts option.

    - +
    📋 Real-World Example
    +
    +
    Institution:Art Museum
    +

    Context: An art museum wants to make a 10 or 15-second excerpt of an interview with an artist to display on social media or in the exhibition hall as a compliment to the artwork.

    +

    Solution: Run an ffmpeg command with the exact timestamp where the museum wants the excerpt.

    +

    Possible Complication: Sometimes, in addition to trimming the original file, the institution might also want to transcode to other codecs and upscale the video from SD to HD with pillarbox for widescreen display. Check NYPL’s documentation for further details.

    +
    + From 044b3ac35920496c7a6cdaa3d2d72bd0d3221be5 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Mon, 15 Dec 2025 16:06:30 -0500 Subject: [PATCH 085/143] Enhance BWF description and add bibliography section Expanded the description of the Broadcast Wave Format and added a bibliography section with a reference link. --- index.html | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 15d085b..5b683ff 100644 --- a/index.html +++ b/index.html @@ -219,9 +219,13 @@

    Container

    Waveform Audio File Format, or WAVE, is the main format used on Microsoft Windows systems for uncompressed audio. WAV is an application of the Resource Interchange File Format (RIFF) bitstream format for storing data in chunks. WAV files can contain compressed audio, but the most common WAV audio format is uncompressed audio in the linear pulse-code modulation format.

  • BWF:

    -

    Broadcast Wave Format is a subset of the WAV file format. It is the recording format of most file-based non-linear digital recorders used for motion picture, radio, and television production. It is recommended for archival use. The purpose of this format is the addition of metadata to facilitate the exchange of sound data between different computer platforms and applications.

    +

    The Broadcast Wave Format audio standard was developed by the European Broadcast Union and is an expansion of the popular WAV format. It is the recording format of most file-based non-linear digital recorders used for motion picture, radio, and television production. It is recommended for archival use. The purpose of this format is the addition of metadata and checksum embedding to facilitate the exchange of sound data between different computer platforms and applications, while maintaining file-integrity and intellectual property.

  • - +

    Bibliography:

    + +

    Video Container

    • Matroska:

      From befc81060e90ff85ecaef0209d487cd9e31e3779 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Mon, 15 Dec 2025 16:24:07 -0500 Subject: [PATCH 086/143] Add bibliography for provenance metadata Added bibliography section with references to provenance metadata. --- index.html | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/index.html b/index.html index 5b683ff..676def3 100644 --- a/index.html +++ b/index.html @@ -240,6 +240,11 @@

      Container

    Provenance Metadata

    Provenance metadata refers to the information that is recorded about the history and the origin of data, including its creation and the history of modification.

    +

    Bibliography:

    +

    Interlaced Video

    Interlaced video is a method of encoding motion by splitting each frame into two fields: one containing the odd-numbered horizontal lines and the other containing the even-numbered lines. Because the fields are captured at different times, motion appears smoother even though the signal uses the same bandwidth. Many analog formats, such as broadcast television, VHS, Betamax, Digital8, and LaserDisc, used interlacing as standard, and it still appears in some digital sources.

    Deinterlacing

    From 06ae064d69ca08993ca54ac5635f63bcf162aede Mon Sep 17 00:00:00 2001 From: Beibei He Date: Mon, 15 Dec 2025 16:30:47 -0500 Subject: [PATCH 087/143] Refactor bibliography for clarity and structure Updated the bibliography section to separate the PREMIS Data Dictionary link and its description into distinct paragraphs. --- index.html | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 676def3..c34afef 100644 --- a/index.html +++ b/index.html @@ -243,7 +243,8 @@

    Provenance Metadata

    Bibliography:

      A Q&A with Glen McAninch on the Importance of Provenance Metadata in Preserving Digital Archival Records

      -

      PREMIS Data Dictionary Version 3.0includes definition of Digital Provenance: Documentation of processes in a Digital Object’s life cycle. Digital Provenance typically describes Agents responsible for the custody and stewardship of Digital Objects, key Events that occur over the course of the Digital Object’s life cycle, and other information associated with the Digital Object’s creation, management, and preservation.

      +

      PREMIS Data Dictionary Version 3.0

      +

      It includes definition of Digital Provenance: Documentation of processes in a Digital Object’s life cycle. Digital Provenance typically describes Agents responsible for the custody and stewardship of Digital Objects, key Events that occur over the course of the Digital Object’s life cycle, and other information associated with the Digital Object’s creation, management, and preservation.

    Interlaced Video

    Interlaced video is a method of encoding motion by splitting each frame into two fields: one containing the odd-numbered horizontal lines and the other containing the even-numbered lines. Because the fields are captured at different times, motion appears smoother even though the signal uses the same bandwidth. Many analog formats, such as broadcast television, VHS, Betamax, Digital8, and LaserDisc, used interlacing as standard, and it still appears in some digital sources.

    From f4d8404a0080a2bc90b7dad56d2a86f7d1ee714d Mon Sep 17 00:00:00 2001 From: Beibei He Date: Tue, 16 Dec 2025 15:58:42 -0500 Subject: [PATCH 088/143] Enhance DV codecs section with additional details Updated the description of DV codecs and added a link to Adam Wilt's explanation. --- index.html | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index c34afef..09a3843 100644 --- a/index.html +++ b/index.html @@ -167,13 +167,17 @@

    Codec

    Official Website

    Dave Rice's article on FLAC in the Archives

    GitHub Repository

    +

    Library of Congress Format Description

    Video Codec

    • DV Codecs:

      -

      DV is a family of codecs used for storing digital video. DV uses lossy compression of video while audio is stored uncompressed. It utilizes intraframe and interframe compression techniques to achieve efficient storage and playback of video content. DV files also include metadata such as timestamps, camera information, and other technical details.

      +

      DV is a family of codecs used for storing digital video. DV uses lossy compression of video while audio is stored uncompressed. It utilizes intraframe and interframe compression techniques to achieve efficient storage and playback of video content. DV does not use frame-to-frame temporal encoding which is employed by MPEG-2 and other MPEG formats. DV files also include metadata such as timestamps, camera information, and other technical details.

      +
        +

        Adam Wilt's explanation of DV format

        +
    • H.264:

      Also referred to as Advanced Video Coding, it is created to provide high efficiency in compression at substantially lower bit rates than previous standards. It can be used for both lossless and lossy compression. It was first launched in 2003 as the successor of MPEG-2. H.264 codec is powerful in greatly reducing file size while preserving image clarity, optimizing network bandwidth, and allowing playback on different devices.

      From ca17bbb8b4acc538f884d80c38f03c403696e902 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Tue, 16 Dec 2025 16:02:11 -0500 Subject: [PATCH 089/143] Fix link formatting for DV format explanation --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 09a3843..ce84c79 100644 --- a/index.html +++ b/index.html @@ -176,7 +176,7 @@

      Codec

    • DV Codecs:

      DV is a family of codecs used for storing digital video. DV uses lossy compression of video while audio is stored uncompressed. It utilizes intraframe and interframe compression techniques to achieve efficient storage and playback of video content. DV does not use frame-to-frame temporal encoding which is employed by MPEG-2 and other MPEG formats. DV files also include metadata such as timestamps, camera information, and other technical details.

    • H.264:

      From 29e2520aae46fadde4cd39999555b7aaba2a80cb Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 02:48:27 -0500 Subject: [PATCH 090/143] Update index.html --- index.html | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index ce84c79..fa7282a 100644 --- a/index.html +++ b/index.html @@ -3188,13 +3188,24 @@

      Transcode from FLAC

      + +
      +

      HandBrake

      + + + + + +
      +
      About HandBrake
      +

      Shutter Encoder

      - +
      About Shutter Encoder
      From 79c3b1c09f910989c4a8b922247ce3a4d6ea78e6 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 03:05:41 -0500 Subject: [PATCH 091/143] Update index.html --- index.html | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index fa7282a..3ae6830 100644 --- a/index.html +++ b/index.html @@ -3198,7 +3198,10 @@

      HandBrake

      About HandBrake
      -

      +

      HandBrake is a free, open-source transcoding tool that allows users to convert video files between formats. It supports a wide range of input formats and codecs and is commonly used to create compressed access files from large preservation masters. Unlike command-line tools such as FFmpeg, HandBrake offers a graphical user interface (GUI), which makes it more user-friendly for beginners while still providing advanced options for experienced users. It runs on Windows, macOS, and Linux, includes built-in presets for common output types, supports batch processing, and can handle nearly any video, performing tasks like cropping, resizing, and deinterlacing to prepare files for viewing or sharing. See here for documentation

      + +
      +

      Shutter Encoder

      From aae08bbfd99cef62de473c09bcfc30a41dfdbc3d Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 03:07:40 -0500 Subject: [PATCH 092/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 3ae6830..8522bad 100644 --- a/index.html +++ b/index.html @@ -3195,7 +3195,7 @@

      HandBrake

      - +
      About HandBrake

      HandBrake is a free, open-source transcoding tool that allows users to convert video files between formats. It supports a wide range of input formats and codecs and is commonly used to create compressed access files from large preservation masters. Unlike command-line tools such as FFmpeg, HandBrake offers a graphical user interface (GUI), which makes it more user-friendly for beginners while still providing advanced options for experienced users. It runs on Windows, macOS, and Linux, includes built-in presets for common output types, supports batch processing, and can handle nearly any video, performing tasks like cropping, resizing, and deinterlacing to prepare files for viewing or sharing. See here for documentation

      From 06b3079c48b6af8a3d6e7ad7993983beca6e6b99 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 03:12:22 -0500 Subject: [PATCH 093/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 8522bad..0ed424e 100644 --- a/index.html +++ b/index.html @@ -3216,7 +3216,7 @@
      About Shutter Encoder

      Caution

      -

      While Shutter Encoder keeps a vibrant GitHub Repository for flagging issues and new versions are released frequently. One should exercise caution when using Shutter Encoder as issues such as inaccurate metadata retention and inaccurate remaining time calculation. Always check the output file and playback to ensure integrity.

      +

      While Shutter Encoder keeps a vibrant GitHub Repository for flagging issues and new versions are released frequently, users should exercise caution. Some known issues include inaccurate metadata retention and inaccurate remaining time calculations. Always check the output file and playback to ensure the integrity of your work.

      Create an H.264 access file from the preservation file

      Shutter Encoder has been recommended by University of British Columbia's Indigitization Toolkit to create Video Primary Access file with H.264 codec wrapped in MP4 for its built-in and user-friendly interface.

      Simply choose H.264 as the output codecs in the function, and specify the destination for the output file by choosing "open destination at end" for storage in the same directory as the source file, or choose change to specify the directory you want the output file to be.Then hit "start function."

      From fa1a2d9a102ae170051d30cd00e8a0781452f352 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 03:13:15 -0500 Subject: [PATCH 094/143] Update index.html --- index.html | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 0ed424e..c5c0b6e 100644 --- a/index.html +++ b/index.html @@ -3199,7 +3199,10 @@

      HandBrake

      About HandBrake

      HandBrake is a free, open-source transcoding tool that allows users to convert video files between formats. It supports a wide range of input formats and codecs and is commonly used to create compressed access files from large preservation masters. Unlike command-line tools such as FFmpeg, HandBrake offers a graphical user interface (GUI), which makes it more user-friendly for beginners while still providing advanced options for experienced users. It runs on Windows, macOS, and Linux, includes built-in presets for common output types, supports batch processing, and can handle nearly any video, performing tasks like cropping, resizing, and deinterlacing to prepare files for viewing or sharing. See here for documentation

      - +

      Caution + +

      +
      From 9d8ceea2dcceaec132ab9dbe5906c3f00ad17427 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 03:15:01 -0500 Subject: [PATCH 095/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index c5c0b6e..14526d4 100644 --- a/index.html +++ b/index.html @@ -3219,7 +3219,7 @@
      About Shutter Encoder

      Caution

      -

      While Shutter Encoder keeps a vibrant GitHub Repository for flagging issues and new versions are released frequently, users should exercise caution. Some known issues include inaccurate metadata retention and inaccurate remaining time calculations. Always check the output file and playback to ensure the integrity of your work.

      +

      While Shutter Encoder keeps a vibrant GitHub Repository for flagging issues and releases new versions frequently, users should exercise caution. Some known issues include inaccurate metadata retention and inaccurate remaining time calculations. Always check the output file and playback to ensure the integrity of your work.

      Create an H.264 access file from the preservation file

      Shutter Encoder has been recommended by University of British Columbia's Indigitization Toolkit to create Video Primary Access file with H.264 codec wrapped in MP4 for its built-in and user-friendly interface.

      Simply choose H.264 as the output codecs in the function, and specify the destination for the output file by choosing "open destination at end" for storage in the same directory as the source file, or choose change to specify the directory you want the output file to be.Then hit "start function."

      From 67909c50c283ef34e89de89331ee78524b0d552f Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 03:21:40 -0500 Subject: [PATCH 096/143] Update index.html --- index.html | 2 ++ 1 file changed, 2 insertions(+) diff --git a/index.html b/index.html index 14526d4..05fb409 100644 --- a/index.html +++ b/index.html @@ -3202,6 +3202,8 @@
      About HandBrake

      Caution

      +

      HandBrake is not designed for combining multiple clips or passing through video without conversion (video is always re-encoded). Instead, its primary purpose is for creating access files. It does not operate with files protected by Digital Rights Management (DRM), such as content from iTunes, Amazon Video, Netflix, or many commercial DVDs and Blu-rays, and it is unable to create Blue-ray, AVCHD, or DVD discs. Always ensure you have the legal right to copy or convert any media you work with.

      +

      Create an H.264 access file from the preservation file

      From 7d02a19d8e66a3a0c770bd12681bd522b0126fd5 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 03:22:57 -0500 Subject: [PATCH 097/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 05fb409..76a55e5 100644 --- a/index.html +++ b/index.html @@ -3221,7 +3221,7 @@
      About Shutter Encoder

      Caution

      -

      While Shutter Encoder keeps a vibrant GitHub Repository for flagging issues and releases new versions frequently, users should exercise caution. Some known issues include inaccurate metadata retention and inaccurate remaining time calculations. Always check the output file and playback to ensure the integrity of your work.

      +

      While Shutter Encoder keeps a vibrant GitHub Repository for flagging issues and releases new versions frequently, users should exercise caution. Some known issues include inaccurate metadata retention and remaining time calculations. Always check the output file and playback to ensure the integrity of your work.

      Create an H.264 access file from the preservation file

      Shutter Encoder has been recommended by University of British Columbia's Indigitization Toolkit to create Video Primary Access file with H.264 codec wrapped in MP4 for its built-in and user-friendly interface.

      Simply choose H.264 as the output codecs in the function, and specify the destination for the output file by choosing "open destination at end" for storage in the same directory as the source file, or choose change to specify the directory you want the output file to be.Then hit "start function."

      From 9f612aac888f5ae0c71806269995edc34b746578 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 03:33:18 -0500 Subject: [PATCH 098/143] Update index.html --- index.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/index.html b/index.html index 76a55e5..3edf4d1 100644 --- a/index.html +++ b/index.html @@ -3223,9 +3223,9 @@

      Caution

      While Shutter Encoder keeps a vibrant GitHub Repository for flagging issues and releases new versions frequently, users should exercise caution. Some known issues include inaccurate metadata retention and remaining time calculations. Always check the output file and playback to ensure the integrity of your work.

      Create an H.264 access file from the preservation file

      -

      Shutter Encoder has been recommended by University of British Columbia's Indigitization Toolkit to create Video Primary Access file with H.264 codec wrapped in MP4 for its built-in and user-friendly interface.

      -

      Simply choose H.264 as the output codecs in the function, and specify the destination for the output file by choosing "open destination at end" for storage in the same directory as the source file, or choose change to specify the directory you want the output file to be.Then hit "start function."

      -

      Shutter Encoder also supports batch processing with the same specification. Drag and drop the files under the dropbox of choose files.

      +

      Shutter Encoder has been recommended by University of British Columbia's Indigitization Toolkit for creating Video Primary Access files using the H.264 codec wrapped in MP4, thanks to its built-in, user-friendly interface.

      +

      To create an H.264 access file, simply select H.264 as the output codec and choose a destination for the output file. You can select Open destination at end to save it in the same directory as the source file, or click Change to specify a different folder. Once your settings are configured, click Start function to begin encoding.

      +

      Shutter Encoder also supports batch processing. Drag and drop multiple files into the Choose files area, set your desired output specifications, and start encoding.

      From 718e84e85d109a9c9af7edef36a85c14221fc87a Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 16:58:19 -0500 Subject: [PATCH 099/143] Update index.html --- index.html | 2 ++ 1 file changed, 2 insertions(+) diff --git a/index.html b/index.html index 3edf4d1..bc969f7 100644 --- a/index.html +++ b/index.html @@ -3204,6 +3204,8 @@

      Caution

      HandBrake is not designed for combining multiple clips or passing through video without conversion (video is always re-encoded). Instead, its primary purpose is for creating access files. It does not operate with files protected by Digital Rights Management (DRM), such as content from iTunes, Amazon Video, Netflix, or many commercial DVDs and Blu-rays, and it is unable to create Blue-ray, AVCHD, or DVD discs. Always ensure you have the legal right to copy or convert any media you work with.

      Create an H.264 access file from the preservation file

      +

      Begin by opening HandBrake and selecting Open Source to load your preservation file (e.g., an uncompressed QuickTime or FFV1 file). Under the Summary tab, choose MP4 as the container format. In the Video tab, set the Video Encoder to H.264 (x264). Selct an appropriate quality setting for access files, such as using the Constant Quality slider to balance file size and visual quality. Review the Dimensions, Audio, and Subtitles tabs and adjust settings as needed for access and playback. Next, choose a destination folder and filename for the output file. Click Start at the top of the window to begin encoding.

      +

      For future reference, these settings can be saved as a preset, allowing them to be reused or applied to multiple files during batch processing.

      From 038f004212ab80cbc598a6aad2cb3af83e7d71d9 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 17:06:08 -0500 Subject: [PATCH 100/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index bc969f7..60fdd4e 100644 --- a/index.html +++ b/index.html @@ -3204,7 +3204,7 @@

      Caution

      HandBrake is not designed for combining multiple clips or passing through video without conversion (video is always re-encoded). Instead, its primary purpose is for creating access files. It does not operate with files protected by Digital Rights Management (DRM), such as content from iTunes, Amazon Video, Netflix, or many commercial DVDs and Blu-rays, and it is unable to create Blue-ray, AVCHD, or DVD discs. Always ensure you have the legal right to copy or convert any media you work with.

      Create an H.264 access file from the preservation file

      -

      Begin by opening HandBrake and selecting Open Source to load your preservation file (e.g., an uncompressed QuickTime or FFV1 file). Under the Summary tab, choose MP4 as the container format. In the Video tab, set the Video Encoder to H.264 (x264). Selct an appropriate quality setting for access files, such as using the Constant Quality slider to balance file size and visual quality. Review the Dimensions, Audio, and Subtitles tabs and adjust settings as needed for access and playback. Next, choose a destination folder and filename for the output file. Click Start at the top of the window to begin encoding.

      +

      Begin by opening HandBrake and selecting Open Source to load your preservation file (e.g., an uncompressed QuickTime or FFV1 file). Under the Summary tab, choose MP4 as the container format. In the Video tab, set the Video Encoder to H.264 (x264). Select an appropriate quality setting for access files, such as using the Constant Quality slider to balance file size and visual quality. Review the Dimensions, Audio, and Subtitles tabs and adjust settings as needed for access and playback. Next, choose a destination folder and filename for the output file. Click Start at the top of the window to begin encoding.

      For future reference, these settings can be saved as a preset, allowing them to be reused or applied to multiple files during batch processing.

      From acb610fec2c8cbebe625e52487bc3664b906d491 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 17:30:10 -0500 Subject: [PATCH 101/143] Update index.html --- index.html | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/index.html b/index.html index 60fdd4e..130776a 100644 --- a/index.html +++ b/index.html @@ -3206,10 +3206,17 @@

      Caution

      Create an H.264 access file from the preservation file

      Begin by opening HandBrake and selecting Open Source to load your preservation file (e.g., an uncompressed QuickTime or FFV1 file). Under the Summary tab, choose MP4 as the container format. In the Video tab, set the Video Encoder to H.264 (x264). Select an appropriate quality setting for access files, such as using the Constant Quality slider to balance file size and visual quality. Review the Dimensions, Audio, and Subtitles tabs and adjust settings as needed for access and playback. Next, choose a destination folder and filename for the output file. Click Start at the top of the window to begin encoding.

      For future reference, these settings can be saved as a preset, allowing them to be reused or applied to multiple files during batch processing.

      - +
      - + + + + +
      + + +

      Shutter Encoder

      @@ -3235,7 +3242,7 @@

      Create an H.264 access file from the preservation file

      -

      Shutter Encoder can create an thumbnail of a video file while the interface displays the video. One can manually toggle the timeline and select the exact time in the video for the thumbnail image. Select specifications under Image Creation in functions, which support JPEG, JPEG XL, and Image, and choose the 100% for the full image. Click start function.

      +

      Shutter Encoder can create an thumbnail of a video file while the interface displays the video. One can manually toggle the timeline and select the exact time in the video for the thumbnail image. Select specifications under Image Creation in functions, which support JPEG, JPEG XL, and Image, and choose the 100% for the full image. Click Start Function.

      From a29370b3eebb92254a612ef064260ad85c280b52 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 17:39:18 -0500 Subject: [PATCH 102/143] Update index.html --- index.html | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 130776a..0b277e7 100644 --- a/index.html +++ b/index.html @@ -3214,8 +3214,13 @@

      Create an H.264 access file from the preservation file

      - - +

      Caution + +

      +

      While HandBrake can export single frames via the Preview window, it does not have a built-in function for automatically generating thumbnails from video files. For batch thumbnail creation, tools like FFmpeg are a better option.

      + +
      +

      Shutter Encoder

      From 44e7e734302847a1132bf48504e37caa794bb3f4 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 18:21:17 -0500 Subject: [PATCH 103/143] Update index.html --- index.html | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/index.html b/index.html index 0b277e7..dde5e3a 100644 --- a/index.html +++ b/index.html @@ -3210,17 +3210,15 @@

      Create an H.264 access file from the preservation file

      - - - + + +
      -

      Caution - -

      -

      While HandBrake can export single frames via the Preview window, it does not have a built-in function for automatically generating thumbnails from video files. For batch thumbnail creation, tools like FFmpeg are a better option.

      - +

      Begin by opening HandBrake and selecting Open Source to load your video file. Choose a destination folder and filename for the deinterlaced output file. In the Video tab, choose H.264 (x264) as the Video Encoder. Navigate to the Filters tab, and under Deinterlace, select Decomb.

      +

      Optional: Select Bob, EED12, or EED12 Bob presets for different levels of motion smoothing and quality. Decomb is sufficient for most archival and access purposes because it preserves detail in partially interlaced footage.

      +

      Tip: YADIF is a simply, fast option for fully interlaced video but it processes every frame, which can sometimes slightly affect the frame rate or motion.

      - +

      Shutter Encoder

      From 906f7e88b4dddbd980754e80a888a13a9bd5eaab Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 18:24:00 -0500 Subject: [PATCH 104/143] Update index.html --- index.html | 1 + 1 file changed, 1 insertion(+) diff --git a/index.html b/index.html index dde5e3a..51bb469 100644 --- a/index.html +++ b/index.html @@ -3217,6 +3217,7 @@

      Create an H.264 access file from the preservation file

      Begin by opening HandBrake and selecting Open Source to load your video file. Choose a destination folder and filename for the deinterlaced output file. In the Video tab, choose H.264 (x264) as the Video Encoder. Navigate to the Filters tab, and under Deinterlace, select Decomb.

      Optional: Select Bob, EED12, or EED12 Bob presets for different levels of motion smoothing and quality. Decomb is sufficient for most archival and access purposes because it preserves detail in partially interlaced footage.

      Tip: YADIF is a simply, fast option for fully interlaced video but it processes every frame, which can sometimes slightly affect the frame rate or motion.

      +

      See here for documentation

      From 6381c4e379a921740ca4aecdfe07c6929ff76984 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 18:25:02 -0500 Subject: [PATCH 105/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 51bb469..c82fa77 100644 --- a/index.html +++ b/index.html @@ -3216,7 +3216,7 @@

      Create an H.264 access file from the preservation file

      Begin by opening HandBrake and selecting Open Source to load your video file. Choose a destination folder and filename for the deinterlaced output file. In the Video tab, choose H.264 (x264) as the Video Encoder. Navigate to the Filters tab, and under Deinterlace, select Decomb.

      Optional: Select Bob, EED12, or EED12 Bob presets for different levels of motion smoothing and quality. Decomb is sufficient for most archival and access purposes because it preserves detail in partially interlaced footage.

      -

      Tip: YADIF is a simply, fast option for fully interlaced video but it processes every frame, which can sometimes slightly affect the frame rate or motion.

      +

      Tip: YADIF is a simple, fast option for fully interlaced video but it processes every frame, which can sometimes slightly affect the frame rate or motion.

      See here for documentation

      From 5342c3f0d254aaf608c980e2918c528cd8ea3385 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 18:27:54 -0500 Subject: [PATCH 106/143] Update index.html --- index.html | 1 + 1 file changed, 1 insertion(+) diff --git a/index.html b/index.html index c82fa77..0b58499 100644 --- a/index.html +++ b/index.html @@ -3217,6 +3217,7 @@

      Create an H.264 access file from the preservation file

      Begin by opening HandBrake and selecting Open Source to load your video file. Choose a destination folder and filename for the deinterlaced output file. In the Video tab, choose H.264 (x264) as the Video Encoder. Navigate to the Filters tab, and under Deinterlace, select Decomb.

      Optional: Select Bob, EED12, or EED12 Bob presets for different levels of motion smoothing and quality. Decomb is sufficient for most archival and access purposes because it preserves detail in partially interlaced footage.

      Tip: YADIF is a simple, fast option for fully interlaced video but it processes every frame, which can sometimes slightly affect the frame rate or motion.

      +

      Always check the output file after encoding, since deinterlacing can sometimes introduce artifacts.

      See here for documentation

      From 021a34acc0242b9c2f979a4efdbffb763e500796 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 18:30:56 -0500 Subject: [PATCH 107/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 0b58499..1ecba1c 100644 --- a/index.html +++ b/index.html @@ -3215,7 +3215,7 @@

      Create an H.264 access file from the preservation file

      Begin by opening HandBrake and selecting Open Source to load your video file. Choose a destination folder and filename for the deinterlaced output file. In the Video tab, choose H.264 (x264) as the Video Encoder. Navigate to the Filters tab, and under Deinterlace, select Decomb.

      -

      Optional: Select Bob, EED12, or EED12 Bob presets for different levels of motion smoothing and quality. Decomb is sufficient for most archival and access purposes because it preserves detail in partially interlaced footage.

      +

      Optional: Select Bob, EEDI2, or EEDI2 Bob presets for different levels of motion smoothing and quality. Decomb is sufficient for most archival and access purposes because it preserves detail in partially interlaced footage.

      Tip: YADIF is a simple, fast option for fully interlaced video but it processes every frame, which can sometimes slightly affect the frame rate or motion.

      Always check the output file after encoding, since deinterlacing can sometimes introduce artifacts.

      See here for documentation

      From 5fc4a17c4bf9ee66c23c86364a88acc015d2917d Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 18:58:54 -0500 Subject: [PATCH 108/143] Update index.html --- index.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/index.html b/index.html index 1ecba1c..0e60042 100644 --- a/index.html +++ b/index.html @@ -3211,9 +3211,9 @@

      Create an H.264 access file from the preservation file

      - - -
      + + +

      Begin by opening HandBrake and selecting Open Source to load your video file. Choose a destination folder and filename for the deinterlaced output file. In the Video tab, choose H.264 (x264) as the Video Encoder. Navigate to the Filters tab, and under Deinterlace, select Decomb.

      Optional: Select Bob, EEDI2, or EEDI2 Bob presets for different levels of motion smoothing and quality. Decomb is sufficient for most archival and access purposes because it preserves detail in partially interlaced footage.

      Tip: YADIF is a simple, fast option for fully interlaced video but it processes every frame, which can sometimes slightly affect the frame rate or motion.

      From 33e19984d656cae8c508b592b6fbf5ec76bb11b0 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 19:02:53 -0500 Subject: [PATCH 109/143] Update index.html --- index.html | 1 + 1 file changed, 1 insertion(+) diff --git a/index.html b/index.html index 0e60042..b856dcd 100644 --- a/index.html +++ b/index.html @@ -3221,6 +3221,7 @@

      Create an H.264 access file from the preservation file

      See here for documentation

      +

      Shutter Encoder

      From 1687da7f6efa3ad55b8927769dff46db7522340a Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 19:08:45 -0500 Subject: [PATCH 110/143] Update index.html --- index.html | 1 + 1 file changed, 1 insertion(+) diff --git a/index.html b/index.html index b856dcd..b8a5512 100644 --- a/index.html +++ b/index.html @@ -42,6 +42,7 @@

      Table of Contents

      CDDA (Audio CD) Ripping Tools
      ImageMagick
      flac tool
      +
      HandBrake
      Shutter Encoder
      XLD
      From 4effebf04753a682e1fb1dc1e517e8c8ee1356c0 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 19:16:51 -0500 Subject: [PATCH 111/143] Update index.html --- index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index b8a5512..629e09c 100644 --- a/index.html +++ b/index.html @@ -298,9 +298,9 @@

      Chroma Subsampling

      A chroma subsampling format in which luma and chroma are stored at full resolution. Unlike 4:2:2 or 4:2:0, 4:4:4 retains all color information for each pixel.

      Bibliography:

      -
    • +

      Vectorscope

      In digital video, a vectorscope graphs the Cb and Cr chrominance channels to display hue and saturation.

      Fixity

      From 7f0dc449858ff67623aab6888dc49cbed8dc276f Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 19:18:22 -0500 Subject: [PATCH 112/143] Update index.html --- index.html | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 629e09c..1f806f4 100644 --- a/index.html +++ b/index.html @@ -298,9 +298,10 @@

      Chroma Subsampling

      A chroma subsampling format in which luma and chroma are stored at full resolution. Unlike 4:2:2 or 4:2:0, 4:4:4 retains all color information for each pixel.

      Bibliography:

      +

    Vectorscope

    In digital video, a vectorscope graphs the Cb and Cr chrominance channels to display hue and saturation.

    Fixity

    From 7d19517ec517ca71bc46ff5aea2e742ef1bf6216 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Wed, 17 Dec 2025 19:20:17 -0500 Subject: [PATCH 113/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 1f806f4..081b3ff 100644 --- a/index.html +++ b/index.html @@ -318,7 +318,7 @@

    ISO File

    - +

    Learn about more advanced FFmpeg concepts

    From 6b88a1f9fde260a2f81386dc29c2f285d6d91f39 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 00:50:24 -0500 Subject: [PATCH 114/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 081b3ff..292e01a 100644 --- a/index.html +++ b/index.html @@ -2082,7 +2082,7 @@

    Example of filter output

    -
    Plays vectorscope of video
    +
    Plays vectorscope of video

    ffplay input_file -vf "split=2[m][v], [v]vectorscope=b=0.7:m=color3:g=green[v], [m][v]overlay=x=W-w:y=H-h"

    ffplay
    starts the command
    From 8804da9e064b1c9e0a32eac58437afc708c78652 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 00:54:28 -0500 Subject: [PATCH 115/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 292e01a..081b3ff 100644 --- a/index.html +++ b/index.html @@ -2082,7 +2082,7 @@

    Example of filter output

    -
    Plays vectorscope of video
    +
    Plays vectorscope of video

    ffplay input_file -vf "split=2[m][v], [v]vectorscope=b=0.7:m=color3:g=green[v], [m][v]overlay=x=W-w:y=H-h"

    ffplay
    starts the command
    From c18e3aa41b100e313e9f5833ed9a1ad341199eb3 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 01:01:31 -0500 Subject: [PATCH 116/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 081b3ff..ca6b3eb 100644 --- a/index.html +++ b/index.html @@ -192,7 +192,7 @@

    Codec

  • Apple ProRes 422:

    -

    Apple ProRes 422 is a proprietary video codec developed by Apple for editing and post-production purposes. It supports resolutions up to 8K and uses compression algorithms based on the discrete cosine transform. All ProRes variants use chroma sampling of 4:2:2 at 10-bit color depth.

    +

    Apple ProRes 422 is a proprietary video codec developed by Apple for editing and post-production purposes. It supports resolutions up to 8K and uses compression algorithms based on the discrete cosine transform. All ProRes variants use chroma sampling of 4:2:2 at 10-bit color depth.

    Bibliography:

      Apple White Paper, April 2022

      From 897a5a8519b2f3e8d690ca31d54de7bde6587639 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 01:02:57 -0500 Subject: [PATCH 117/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index ca6b3eb..69573d1 100644 --- a/index.html +++ b/index.html @@ -541,7 +541,7 @@
      Institution:University Libraries
      Transcode to H.264

      ffmpeg -i input_file -c:v libx264 -pix_fmt yuv420p -c:a aac output_file

      -

      This command takes an input file and transcodes it to H.264 with an .mp4 wrapper, audio is transcoded to AAC. The libx264 codec defaults to a “medium” preset for compression quality and a CRF of 23. CRF stands for constant rate factor and determines the quality and file size of the resulting H.264 video. A low CRF means high quality and large file size; a high CRF means the opposite.

      +

      This command takes an input file and transcodes it to H.264 with an .mp4 wrapper, audio is transcoded to AAC. The libx264 codec defaults to a “medium” preset for compression quality and a CRF of 23. CRF stands for constant rate factor and determines the quality and file size of the resulting H.264 video. A low CRF means high quality and large file size; a high CRF means the opposite.

      ffmpeg
      starts the command
      -i input_file
      path, name and extension of the input file
      From 92f31d203495a1a9154e5957967f58f6cb1b6fcb Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 01:12:01 -0500 Subject: [PATCH 118/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 69573d1..e366a3c 100644 --- a/index.html +++ b/index.html @@ -541,7 +541,7 @@
      Institution:University Libraries
      Transcode to H.264

      ffmpeg -i input_file -c:v libx264 -pix_fmt yuv420p -c:a aac output_file

      -

      This command takes an input file and transcodes it to H.264 with an .mp4 wrapper, audio is transcoded to AAC. The libx264 codec defaults to a “medium” preset for compression quality and a CRF of 23. CRF stands for constant rate factor and determines the quality and file size of the resulting H.264 video. A low CRF means high quality and large file size; a high CRF means the opposite.

      +

      This command takes an input file and transcodes it to H.264 with an .mp4 wrapper, audio is transcoded to AAC. The libx264 codec defaults to a “medium” preset for compression quality and a CRF of 23. CRF stands for constant rate factor and determines the quality and file size of the resulting H.264 video. A low CRF means high quality and large file size; a high CRF means the opposite.

      ffmpeg
      starts the command
      -i input_file
      path, name and extension of the input file
      From cd037fbf38da0207c9234561b298009792bf9330 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 01:18:05 -0500 Subject: [PATCH 119/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index e366a3c..d8acc55 100644 --- a/index.html +++ b/index.html @@ -767,7 +767,7 @@
      WAV to MP3

      A couple notes

      • About ID3v2.3 tag: ID3v2.3 is better supported than ID3v2.4, FFmpeg's default ID3v2 setting.
      • -
      • About dither methods: FFmpeg comes with a variety of dither algorithms, outlined in the official docs, though some may lead to unintended, drastic digital clipping on some systems.
      • +
      • About dither methods: FFmpeg comes with a variety of dither algorithms, outlined in the official docs, though some may lead to unintended, drastic digital clipping on some systems.
      📋 Real-World Example
      From a6496fa245399fd0940e231cd5365bbed6a9ed49 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 01:28:18 -0500 Subject: [PATCH 120/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index d8acc55..681d469 100644 --- a/index.html +++ b/index.html @@ -833,7 +833,7 @@
      WAV to AAC/MP4
      -ar 44100
      sets the audio sampling frequency to 44100 Hz, or 44.1 kHz, or “CD quality”
      output_file
      path and name of the output file
      -

      A note about dither methods. FFmpeg comes with a variety of dither algorithms, outlined in the official docs, though some may lead to unintended, not-subtle digital clipping on some systems.

      +

      A note about dither methods. FFmpeg comes with a variety of dither algorithms, outlined in the official docs, though some may lead to unintended, not-subtle digital clipping on some systems.

      From 80d33520fca8bba3e9af6ac89f39aa1742995aa6 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 01:30:53 -0500 Subject: [PATCH 121/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 681d469..0b2ebe9 100644 --- a/index.html +++ b/index.html @@ -872,7 +872,7 @@
      Transform 16:9 aspect ratio video into 4:3 with letterbox
      ffmpeg
      starts the command
      -i input_file
      path, name and extension of the input file
      -filter:v "pad=iw:iw*3/4:(ow-iw)/2:(oh-ih)/2"
      video padding
      - This resolution independent formula is actually padding any aspect ratio into 4:3 by letterboxing, because the video filter uses relative values for input width (iw), input height (ih), output width (ow) and output height (oh).
      + This resolution independent formula is actually padding any aspect ratio into 4:3 by letterboxing, because the video filter uses relative values for input width (iw), input height (ih), output width (ow) and output height (oh).
      -c:a copy
      re-encodes using the same audio codec
      For silent videos you can replace -c:a copy by -an.
      output_file
      path, name and extension of the output file
      From 90bbd6a5cc93f7d9d9a629d74c411205055129ed Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 01:37:15 -0500 Subject: [PATCH 122/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 0b2ebe9..44ef576 100644 --- a/index.html +++ b/index.html @@ -911,7 +911,7 @@
      Transform SD into HD with pillarbox
      -i input_file
      path, name and extension of the input file
      -filter:v "colormatrix=bt601:bt709, scale=1440:1080:flags=lanczos, pad=1920:1080:240:0"
      set colour matrix, video scaling and padding
      Three filters are applied:
        -
      1. The luma coefficients are modified from SD video (according to Rec. 601) to HD video (according to Rec. 709) by a color matrix. Note that today Rec. 709 is often used also for SD and therefore you may cancel this parameter.
      2. +
      3. The luma coefficients are modified from SD video (according to Rec. 601) to HD video (according to Rec. 709) by a color matrix. Note that today Rec. 709 is often used also for SD and therefore you may cancel this parameter.
      4. The scaling filter (scale=1440:1080) works for both upscaling and downscaling. We use the Lanczos scaling algorithm (flags=lanczos), which is slower but gives better results than the default bilinear algorithm.
      5. The padding filter (pad=1920:1080:240:0) completes the transformation from SD to HD.
      From a3af17a3c7b58d9a686202db9661eb49621158e2 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 01:41:50 -0500 Subject: [PATCH 123/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 44ef576..26c02ef 100644 --- a/index.html +++ b/index.html @@ -362,7 +362,7 @@
      Filtergraphs

      Many FFmpeg commands use filters that manipulate the video or audio stream in some way: for example, hflip to horizontally flip a video, or amerge to merge two or more audio tracks into a single stream.

      The use of a filter is signaled by the flag -vf (video filter) or -af (audio filter), followed by the name and options of the filter itself. For example, take the convert colorspace command:

      ffmpeg -i input_file -c:v libx264 -vf colormatrix=src:dst output_file -

      Here, colormatrix is the filter used, with src and dst representing the source and destination colorspaces. This part following the -vf is a filtergraph.

      +

      Here, colormatrix is the filter used, with src and dst representing the source and destination colorspaces. This part following the -vf is a filtergraph.

      It is also possible to apply multiple filters to an input, which are sequenced together in the filtergraph. A chained set of filters is called a filter chain, and a filtergraph may include multiple filter chains. Filters in a filterchain are separated from each other by commas (,), and filterchains are separated from each other by semicolons (;). For example, take the inverse telecine command:

      ffmpeg -i input_file -c:v libx264 -vf "fieldmatch,yadif,decimate" output_file

      Here we have a filtergraph including one filter chain, which is made up of three video filters.

      From d75aa59d05cc84212acc74dd55d9250ea24d1cd3 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 01:44:43 -0500 Subject: [PATCH 124/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 26c02ef..bdb8ad5 100644 --- a/index.html +++ b/index.html @@ -2382,7 +2382,7 @@
      Create stream MD5s
      Get checksum for video/audio stream

      ffmpeg -loglevel error -i input_file -map 0:v:0 -f hash -hash md5 -

      -

      This script will perform a fixity check on a specified audio or video stream of the file, useful for checking that the content within a video has not changed even if the container format has changed.

      +

      This script will perform a fixity check on a specified audio or video stream of the file, useful for checking that the content within a video has not changed even if the container format has changed.

      ffmpeg
      starts the command
      -loglevel error
      sets the verbosity of logging to show all errors
      From 68e96121c2b7cb012b08d0208282ea11ecadb4ba Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 01:45:45 -0500 Subject: [PATCH 125/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index bdb8ad5..2f4c9f0 100644 --- a/index.html +++ b/index.html @@ -656,7 +656,7 @@
      Create FFV1 Version 3 video in a Matroska container wit
      -slices 16
      Each frame is split into 16 slices. 16 is a good trade-off between filesize and encoding time.
      -c:a copy
      copies all mapped audio streams.
      output_file.mkv
      path and name of the output file. Use the .mkv extension to save your file in a Matroska container.
      -
      -f framemd5
      Decodes video with the framemd5 muxer in order to generate MD5 checksums for every frame of your input file. This allows you to verify losslessness when compared against the framemd5s of the output file.
      +
      -f framemd5
      Decodes video with the framemd5 muxer in order to generate MD5 checksums for every frame of your input file. This allows you to verify losslessness when compared against the framemd5s of the output file.
      -an
      ignores the audio stream when creating framemd5 (audio no)
      framemd5_output_file
      path, name and extension of the framemd5 file.
      From 008bf023412c085e7240a28c378fc3096d654506 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 01:46:42 -0500 Subject: [PATCH 126/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 2f4c9f0..b45bebf 100644 --- a/index.html +++ b/index.html @@ -2402,7 +2402,7 @@
      Get checksum for video/audio stream
      Get individual checksums for all video/audio streams ("Streamhash")

      ffmpeg -i input_file -map 0 -f streamhash -hash md5 - -v quiet

      The outcome is very similar to that of "-f hash", except you get one hash per-stream, instead of one (summary) hash. Another benefit is that you don't have to know which streams, or how many to expect in the source file. This is very handy for hashing mixed born-digital material.

      -

      This script will perform a fixity check on all audio and video streams in the file and return one hashcode for each one. This is useful for e.g. being able to change to container/codec format later on and validate it matches the original source.

      +

      This script will perform a fixity check on all audio and video streams in the file and return one hashcode for each one. This is useful for e.g. being able to change to container/codec format later on and validate it matches the original source.

      The output is formatted for easily processing it further in any kind of programming/scripting language.

      ffmpeg
      starts the command
      From 03208d84194bf0357daeeb57272b9fca9a78c222 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 01:48:24 -0500 Subject: [PATCH 127/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index b45bebf..f7b2245 100644 --- a/index.html +++ b/index.html @@ -2833,7 +2833,7 @@

      Variation:

      Create ISO files for DVD access
      -

      Create an ISO file that can be used to burn a DVD. Please note, you will have to install dvdauthor. To install dvd author using Homebrew run: brew install dvdauthor

      +

      Create an ISO file that can be used to burn a DVD. Please note, you will have to install dvdauthor. To install dvd author using Homebrew run: brew install dvdauthor

      ffmpeg -i input_file -aspect 4:3 -target ntsc-dvd output_file.mpg

      This command will take any file and create an MPEG file that dvdauthor can use to create an ISO.

      From b7f16802b6d8a6758e1ec845c0aa0d2433872f84 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 01:50:01 -0500 Subject: [PATCH 128/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index f7b2245..42a53d6 100644 --- a/index.html +++ b/index.html @@ -2616,7 +2616,7 @@
      Sine wave
      SMPTE bars + Sine wave audio
      -

      Generate a SMPTE bars test video + a 1kHz sine wave as audio testsignal.

      +

      Generate a SMPTE bars test video + a 1kHz sine wave as audio testsignal.

      ffmpeg -f lavfi -i "smptebars=size=720x576:rate=25" -f lavfi -i "sine=frequency=1000:sample_rate=48000" -c:a pcm_s16le -t 10 -c:v ffv1 output_file

      ffmpeg
      starts the command
      From f282a8ab766bdd9bd6db700029ba5affe3b9c267 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 01:53:54 -0500 Subject: [PATCH 129/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 42a53d6..d852f34 100644 --- a/index.html +++ b/index.html @@ -503,7 +503,7 @@

      Change codec (transcode)

      Transcode into a deinterlaced Apple ProRes LT

      ffmpeg -i input_file -c:v prores -profile:v 1 -vf yadif -c:a pcm_s16le output_file

      -

      This command transcodes an input file into a deinterlaced Apple ProRes 422 LT file with 16-bit linear PCM encoded audio. The file is deinterlaced using the yadif filter (Yet Another De-Interlacing Filter).

      +

      This command transcodes an input file into a deinterlaced Apple ProRes 422 LT file with 16-bit linear PCM encoded audio. The file is deinterlaced using the yadif filter (Yet Another De-Interlacing Filter).

      ffmpeg
      starts the command
      -i input_file
      path, name and extension of the input file
      From e438d6860f061630180b95708e4d4dc868387912 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 01:55:31 -0500 Subject: [PATCH 130/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index d852f34..ef2126f 100644 --- a/index.html +++ b/index.html @@ -373,7 +373,7 @@
      Filtergraphs
    • -vf "fieldmatch, yadif, decimate"

    but -vf fieldmatch, yadif, decimate is not valid.

    -

    The ordering of the filters is significant. Video filters are applied in the order given, with the output of one filter being passed along as the input to the next filter in the chain. In the example above, fieldmatch reconstructs the original frames from the inverse telecined video, yadif deinterlaces (this is a failsafe in case any combed frames remain, for example if the source mixes telecined and real interlaced content), and decimate deletes duplicated frames. Clearly, it is not possible to delete duplicated frames before those frames are reconstructed.

    +

    The ordering of the filters is significant. Video filters are applied in the order given, with the output of one filter being passed along as the input to the next filter in the chain. In the example above, fieldmatch reconstructs the original frames from the inverse telecined video, yadif deinterlaces (this is a failsafe in case any combed frames remain, for example if the source mixes telecined and real interlaced content), and decimate deletes duplicated frames. Clearly, it is not possible to delete duplicated frames before those frames are reconstructed.

    Notes

    • -vf is an alias for -filter:v
    • From 01763b79ba6344976656f4ee964141eef0c5d7b9 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 02:03:03 -0500 Subject: [PATCH 131/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index ef2126f..2ed5b7c 100644 --- a/index.html +++ b/index.html @@ -507,7 +507,7 @@
      Transcode into a deinterlaced Apple ProRes LT
      ffmpeg
      starts the command
      -i input_file
      path, name and extension of the input file
      -
      -c:v prores
      tells FFmpeg to transcodethe video stream into Apple ProRes 422
      +
      -c:v prores
      tells FFmpeg to transcode the video stream into Apple ProRes 422
      -profile:v 1
      Declares profile of ProRes you want to use. The profiles are explained below:
      • 0 = ProRes 422 (Proxy)
      • From 986e6dc22dda576ed8a8516a60acee97ad2768ee Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 18 Dec 2025 10:55:53 -0500 Subject: [PATCH 132/143] Add real-world example for interlace detection using FFmpeg --- index.html | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 2ed5b7c..9f5321c 100644 --- a/index.html +++ b/index.html @@ -1761,6 +1761,13 @@
        Check video file interlacement patterns
        -f null
        Video is decoded with the null muxer. This allows video decoding without creating an output file.
        -
        The FFmpeg syntax requires a specified output, and - prints the output to the screen (STDOUT), rather than creating a file.
      +
      📋 Real-World Example
      +
      +
      Institution:Pacific Film Archive (PFA) at UC Berkeley
      +

      Context: PFA’s media archivist needs to determine which born-digital files are interlaced before creating access copies for screenings and online research access. The metadata does not clearly show whether the videos were captured as interlaced or progressive, and assuming all files are interlaced could lead to extra and unnecessary work. Missing interlaced files could cause artifacts in the final access copies.

      +

      Solution: Using FFmpeg’s interlace detection filter -i filename.mp4 -vf idet -frames:v 500 -an -f rawvideo -y /dev/null to see whether each video is interlaced or progressive.

      +

      Outcome:Videos that show a high number of TFF or BFF frames are flagged as interlaced, and the archivist decides on the best way to deinterlace them before creating H.264 access copies, ensuring smooth playback on modern progressive displays. Videos that appear mostly progressive are left as-is, saving time and preserving their quality. This approach allows PFA to quickly determine which files need extra processing and which are ready to use.

      +
  • @@ -3280,7 +3287,7 @@

    Find Drive Offset for Exact CD Ripping

    Ripping CDDA

    Important Setup: 🔧 - to configure XLD properly before ripping your first CD, you should set Character encoding of cuesheet to Unicode (UTF-8), check the Automatically check for updates box, and set Maximum #Threads according to your processor cores if not automatically detected.For the output format, select FLAC, and click the option button to set compression level to none for lossless compression. Uncheck “Allow to embed cue sheet.” In the CD Rip Tab: Set Ripper Mode to “XLD Secure Ripper” and check “Use C2 Error Pointers” if your drive supports them.

    + to configure XLD properly before ripping your first CD, you should set Character encoding of cuesheet to Unicode (UTF-8), check the Automatically check for updates box, and set Maximum #Threads according to your processor cores if not automatically detected. For the output format, select FLAC, and click the option button to set compression level to none for lossless compression. Uncheck “Allow to embed cue sheet.” In the CD Rip Tab: Set Ripper Mode to “XLD Secure Ripper” and check “Use C2 Error Pointers” if your drive supports them.

    The Ripping Process: Once you load the CD, if not automatically loaded, open to file and open Audio CD to find your CD. XLD will begin to detect the pre-gaps. At the top of the window of Pre-gap settings, choose “Include pre-gap except for HTOA” and choose your output directory. You can also click “Get Metadata” and save cue sheet to store CD tags and other related metadata. To start the ripping process, click the extract and wait for the process to complete.

    After the ripping process is completed, Check any error messages to verify the rip.

    From 3c130ee31b3ac163fbd75860430308ec1afccc98 Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 18 Dec 2025 11:03:26 -0500 Subject: [PATCH 133/143] Fix HTML formatting for ProRes transcoding command --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 9f5321c..e6dca99 100644 --- a/index.html +++ b/index.html @@ -503,7 +503,7 @@

    Change codec (transcode)

    Transcode into a deinterlaced Apple ProRes LT

    ffmpeg -i input_file -c:v prores -profile:v 1 -vf yadif -c:a pcm_s16le output_file

    -

    This command transcodes an input file into a deinterlaced Apple ProRes 422 LT file with 16-bit linear PCM encoded audio. The file is deinterlaced using the yadif filter (Yet Another De-Interlacing Filter).

    +

    This command transcodes an input file into a deinterlaced Apple ProRes 422 LT file with 16-bit linear PCM encoded audio. The file is deinterlaced using the yadif filter (Yet Another De-Interlacing Filter).

    ffmpeg
    starts the command
    -i input_file
    path, name and extension of the input file
    From 186126805b8530f1910caab318b95e2f1a783404 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 11:07:13 -0500 Subject: [PATCH 134/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index e6dca99..27560a5 100644 --- a/index.html +++ b/index.html @@ -2182,7 +2182,7 @@
    Pull specs from video file

    See also the FFmpeg documentation on ffprobe for a full list of flags, commands, and options.

    📋 Real-World Example
    -
    Institution:Smithsonian Institution Archives
    +
    Institution: Smithsonian Institution Archives

    Context: Needed to access information about file formats that may have become obsolete as both the codec and container information are needed for playback.

    Solution: Used FFprobe, which uses libraries of various codecs and containers to extract technical metadata to determine the codec and container.

    Outcome: The output of FFprobe includes format name, format_long_name, and other metadata information such as start time, duration, and bitrate.

    From 2bbbe6b3196389db860145043862feb87563eac7 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 11:10:33 -0500 Subject: [PATCH 135/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 27560a5..b485c78 100644 --- a/index.html +++ b/index.html @@ -1763,7 +1763,7 @@
    Check video file interlacement patterns
    📋 Real-World Example
    -
    Institution:Pacific Film Archive (PFA) at UC Berkeley
    +
    Institution: Pacific Film Archive (PFA) at UC Berkeley

    Context: PFA’s media archivist needs to determine which born-digital files are interlaced before creating access copies for screenings and online research access. The metadata does not clearly show whether the videos were captured as interlaced or progressive, and assuming all files are interlaced could lead to extra and unnecessary work. Missing interlaced files could cause artifacts in the final access copies.

    Solution: Using FFmpeg’s interlace detection filter -i filename.mp4 -vf idet -frames:v 500 -an -f rawvideo -y /dev/null to see whether each video is interlaced or progressive.

    Outcome:Videos that show a high number of TFF or BFF frames are flagged as interlaced, and the archivist decides on the best way to deinterlace them before creating H.264 access copies, ensuring smooth playback on modern progressive displays. Videos that appear mostly progressive are left as-is, saving time and preserving their quality. This approach allows PFA to quickly determine which files need extra processing and which are ready to use.

    From bc15c9a1e286b040924455fd414323864e1d22fe Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 18 Dec 2025 11:10:57 -0500 Subject: [PATCH 136/143] Remove redundant checkbox toggle logic --- js/js.js | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/js/js.js b/js/js.js index aa56f4f..814b535 100644 --- a/js/js.js +++ b/js/js.js @@ -101,13 +101,6 @@ document.addEventListener("DOMContentLoaded", () => { const target = document.querySelector(link.getAttribute("href")); if (!target) return; - // Find if the target is inside .hiding - const hidden = target.closest(".hiding"); - if (hidden) { - // Open the checkbox toggle - const checkbox = document.querySelector("#Glossary"); - if (checkbox) checkbox.checked = true; - // Find if the target is inside .hiding const hidden = target.closest(".hiding"); if (hidden) { @@ -120,9 +113,3 @@ document.addEventListener("DOMContentLoaded", () => { }); }); }); - } - }); - }); -}); - - From 5a62aeaf4d53189ff01794423e26ec51ac7e2cdb Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 11:11:28 -0500 Subject: [PATCH 137/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index b485c78..256c463 100644 --- a/index.html +++ b/index.html @@ -1489,7 +1489,7 @@
    Trim a video without re-encoding

    Note: In order to keep the original timestamps, without trying to sanitize them, you may add the -copyts option.

    📋 Real-World Example
    -
    Institution:Art Museum
    +
    Institution: Art Museum

    Context: An art museum wants to make a 10 or 15-second excerpt of an interview with an artist to display on social media or in the exhibition hall as a compliment to the artwork.

    Solution: Run an ffmpeg command with the exact timestamp where the museum wants the excerpt.

    Possible Complication: Sometimes, in addition to trimming the original file, the institution might also want to transcode to other codecs and upscale the video from SD to HD with pillarbox for widescreen display. Check NYPL’s documentation for further details.

    From cd9469a4aa316af59da8df38fcd0c1d41adea505 Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 11:13:10 -0500 Subject: [PATCH 138/143] Update index.html --- index.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/index.html b/index.html index 256c463..683a557 100644 --- a/index.html +++ b/index.html @@ -527,7 +527,7 @@
    Transcode into a deinterlaced Apple ProRes LT
    📋 Real-World Example
    -
    Institution:University Libraries
    +
    Institution: University Libraries

    Context: The standard for the intermediary file at the library is Apple ProRes 422 codec 10-bit wrapped in a MOV container. The input file is wrapped in an MKV container.

    Solution: Used FFmpeg command, -i input.mkv -c:v prores_ks -profile:v hq output.mov to create intermediary file. The flag prores_ks specifies that the video would only encode to 10-bit.

    @@ -568,7 +568,7 @@
    Transcode to H.264

    For more information, see the FFmpeg and H.264 Encoding Guide on the FFmpeg wiki.

    📋 Real-World Example
    -
    Institution:University of North Carolina at Chapel Hill
    +
    Institution: University of North Carolina at Chapel Hill

    Context: The University Archives and Records Management Services department acquired a non-professional, unedited footage of a graduation ceremony. The file was 112 gigabytes and encoded using the Apple ProRes codec. They tried to transcode the file into FFVI to decrease the size, but it doubled in size.

    Solution: The curator agreed to compression since it was not the only footage of the ceremony, and they decided on the h. 264 codec.Used the FFmpeg command -i -c:v libx264 -pix_fmt yuv420p -crf 12 -c:a copy [destination]

    Outcome:After transcoding, the resulting file was 53 gigabytes, reducing almost half of the size of the original.

    @@ -771,7 +771,7 @@
    WAV to MP3
    📋 Real-World Example
    -
    Institution:WGBH
    +
    Institution: WGBH

    Context: After WGBH ingested a sample 2TB production hard drive that included MP3 files from audio-only interviews, they created .mp3 proxies for all audio. While it might not have been necessary for the audio interviews that are already in .mp3 format, but it is easier to run a batch script on the whole drive for some of the stock footage rather than figuring out which one needs transcoding.

    Solution: They run a FFmpeg command with a batch script for the hard drive, relevant command is listed here

    
    
    From 8e42e48953e66ec8002672594bacc360b53f8549 Mon Sep 17 00:00:00 2001
    From: Beibei He 
    Date: Thu, 18 Dec 2025 11:13:18 -0500
    Subject: [PATCH 139/143] Fix missing newline at end of js.js
    
    
    From 19948077d4a22b270545c75350d5dc7f1336e20f Mon Sep 17 00:00:00 2001
    From: Beibei He 
    Date: Thu, 18 Dec 2025 11:32:14 -0500
    Subject: [PATCH 140/143] Update HTML links to use fragment identifiers
    
    ---
     index.html | 18 +++++++++---------
     1 file changed, 9 insertions(+), 9 deletions(-)
    
    diff --git a/index.html b/index.html
    index 683a557..8abde41 100644
    --- a/index.html
    +++ b/index.html
    @@ -373,7 +373,7 @@ 
    Filtergraphs
  • -vf "fieldmatch, yadif, decimate"
  • but -vf fieldmatch, yadif, decimate is not valid.

    -

    The ordering of the filters is significant. Video filters are applied in the order given, with the output of one filter being passed along as the input to the next filter in the chain. In the example above, fieldmatch reconstructs the original frames from the inverse telecined video, yadif deinterlaces (this is a failsafe in case any combed frames remain, for example if the source mixes telecined and real interlaced content), and decimate deletes duplicated frames. Clearly, it is not possible to delete duplicated frames before those frames are reconstructed.

    +

    The ordering of the filters is significant. Video filters are applied in the order given, with the output of one filter being passed along as the input to the next filter in the chain. In the example above, fieldmatch reconstructs the original frames from the inverse telecined video, yadif deinterlaces (this is a failsafe in case any combed frames remain, for example if the source mixes telecined and real interlaced content), and decimate deletes duplicated frames. Clearly, it is not possible to delete duplicated frames before those frames are reconstructed.

    Notes

    • -vf is an alias for -filter:v
    • @@ -656,7 +656,7 @@
      Create FFV1 Version 3 video in a Matroska container wit
      -slices 16
      Each frame is split into 16 slices. 16 is a good trade-off between filesize and encoding time.
      -c:a copy
      copies all mapped audio streams.
      output_file.mkv
      path and name of the output file. Use the .mkv extension to save your file in a Matroska container.
      -
      -f framemd5
      Decodes video with the framemd5 muxer in order to generate MD5 checksums for every frame of your input file. This allows you to verify losslessness when compared against the framemd5s of the output file.
      +
      -f framemd5
      Decodes video with the framemd5 muxer in order to generate MD5 checksums for every frame of your input file. This allows you to verify losslessness when compared against the framemd5s of the output file.
      -an
      ignores the audio stream when creating framemd5 (audio no)
      framemd5_output_file
      path, name and extension of the framemd5 file.
      @@ -767,7 +767,7 @@
      WAV to MP3

      A couple notes

      • About ID3v2.3 tag: ID3v2.3 is better supported than ID3v2.4, FFmpeg's default ID3v2 setting.
      • -
      • About dither methods: FFmpeg comes with a variety of dither algorithms, outlined in the official docs, though some may lead to unintended, drastic digital clipping on some systems.
      • +
      • About dither methods: FFmpeg comes with a variety of dither algorithms, outlined in the official docs, though some may lead to unintended, drastic digital clipping on some systems.
      📋 Real-World Example
      @@ -872,7 +872,7 @@
      Transform 16:9 aspect ratio video into 4:3 with letterbox
      ffmpeg
      starts the command
      -i input_file
      path, name and extension of the input file
      -filter:v "pad=iw:iw*3/4:(ow-iw)/2:(oh-ih)/2"
      video padding
      - This resolution independent formula is actually padding any aspect ratio into 4:3 by letterboxing, because the video filter uses relative values for input width (iw), input height (ih), output width (ow) and output height (oh).
      + This resolution independent formula is actually padding any aspect ratio into 4:3 by letterboxing, because the video filter uses relative values for input width (iw), input height (ih), output width (ow) and output height (oh).
      -c:a copy
      re-encodes using the same audio codec
      For silent videos you can replace -c:a copy by -an.
      output_file
      path, name and extension of the output file
      @@ -911,7 +911,7 @@
      Transform SD into HD with pillarbox
      -i input_file
      path, name and extension of the input file
      -filter:v "colormatrix=bt601:bt709, scale=1440:1080:flags=lanczos, pad=1920:1080:240:0"
      set colour matrix, video scaling and padding
      Three filters are applied:
        -
      1. The luma coefficients are modified from SD video (according to Rec. 601) to HD video (according to Rec. 709) by a color matrix. Note that today Rec. 709 is often used also for SD and therefore you may cancel this parameter.
      2. +
      3. The luma coefficients are modified from SD video (according to Rec. 601) to HD video (according to Rec. 709) by a color matrix. Note that today Rec. 709 is often used also for SD and therefore you may cancel this parameter.
      4. The scaling filter (scale=1440:1080) works for both upscaling and downscaling. We use the Lanczos scaling algorithm (flags=lanczos), which is slower but gives better results than the default bilinear algorithm.
      5. The padding filter (pad=1920:1080:240:0) completes the transformation from SD to HD.
      @@ -2389,7 +2389,7 @@
      Create stream MD5s
      Get checksum for video/audio stream

      ffmpeg -loglevel error -i input_file -map 0:v:0 -f hash -hash md5 -

      -

      This script will perform a fixity check on a specified audio or video stream of the file, useful for checking that the content within a video has not changed even if the container format has changed.

      +

      This script will perform a fixity check on a specified audio or video stream of the file, useful for checking that the content within a video has not changed even if the container format has changed.

      ffmpeg
      starts the command
      -loglevel error
      sets the verbosity of logging to show all errors
      @@ -2409,7 +2409,7 @@
      Get checksum for video/audio stream
      Get individual checksums for all video/audio streams ("Streamhash")

      ffmpeg -i input_file -map 0 -f streamhash -hash md5 - -v quiet

      The outcome is very similar to that of "-f hash", except you get one hash per-stream, instead of one (summary) hash. Another benefit is that you don't have to know which streams, or how many to expect in the source file. This is very handy for hashing mixed born-digital material.

      -

      This script will perform a fixity check on all audio and video streams in the file and return one hashcode for each one. This is useful for e.g. being able to change to container/codec format later on and validate it matches the original source.

      +

      This script will perform a fixity check on all audio and video streams in the file and return one hashcode for each one. This is useful for e.g. being able to change to container/codec format later on and validate it matches the original source.

      The output is formatted for easily processing it further in any kind of programming/scripting language.

      ffmpeg
      starts the command
      @@ -2623,7 +2623,7 @@
      Sine wave
      SMPTE bars + Sine wave audio
      -

      Generate a SMPTE bars test video + a 1kHz sine wave as audio testsignal.

      +

      Generate a SMPTE bars test video + a 1kHz sine wave as audio testsignal.

      ffmpeg -f lavfi -i "smptebars=size=720x576:rate=25" -f lavfi -i "sine=frequency=1000:sample_rate=48000" -c:a pcm_s16le -t 10 -c:v ffv1 output_file

      ffmpeg
      starts the command
      @@ -2840,7 +2840,7 @@

      Variation:

      Create ISO files for DVD access
      -

      Create an ISO file that can be used to burn a DVD. Please note, you will have to install dvdauthor. To install dvd author using Homebrew run: brew install dvdauthor

      +

      Create an ISO file that can be used to burn a DVD. Please note, you will have to install dvdauthor. To install dvd author using Homebrew run: brew install dvdauthor

      ffmpeg -i input_file -aspect 4:3 -target ntsc-dvd output_file.mpg

      This command will take any file and create an MPEG file that dvdauthor can use to create an ISO.

      From f9fde4d11d5d37869b267d53b6ff415dec7325dc Mon Sep 17 00:00:00 2001 From: Gina Dea Date: Thu, 18 Dec 2025 11:47:40 -0500 Subject: [PATCH 141/143] Update index.html --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 8abde41..59b1aa3 100644 --- a/index.html +++ b/index.html @@ -833,7 +833,7 @@
      WAV to AAC/MP4
      -ar 44100
      sets the audio sampling frequency to 44100 Hz, or 44.1 kHz, or “CD quality”
      output_file
      path and name of the output file
      -

      A note about dither methods. FFmpeg comes with a variety of dither algorithms, outlined in the official docs, though some may lead to unintended, not-subtle digital clipping on some systems.

      +

      A note about dither methods. FFmpeg comes with a variety of dither algorithms, outlined in the official docs, though some may lead to unintended, not-subtle digital clipping on some systems.

      From 5bf6da7ede3a76e7da1f826a73d12e83fa37ab7d Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 18 Dec 2025 11:56:45 -0500 Subject: [PATCH 142/143] Fix formatting of FFmpeg command in index.html --- index.html | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/index.html b/index.html index 59b1aa3..bfabc28 100644 --- a/index.html +++ b/index.html @@ -774,15 +774,14 @@
      📋 Real-World Example
      Institution: WGBH

      Context: After WGBH ingested a sample 2TB production hard drive that included MP3 files from audio-only interviews, they created .mp3 proxies for all audio. While it might not have been necessary for the audio interviews that are already in .mp3 format, but it is easier to run a batch script on the whole drive for some of the stock footage rather than figuring out which one needs transcoding.

      Solution: They run a FFmpeg command with a batch script for the hard drive, relevant command is listed here -

      
      -		for i in `find . -type f | grep -i '\(mp3\|m4a\|wmv\|aif\|aac\|aiff\|wma\|wav\)$'`;
      -    	do 
      -	    		newDir=`dirname "$i"`;
      -	    		mkdir -p "$outDir/$newDir";
      -
      -	    		ffmpeg -i "$i" -acodec libmp3lame -qscale:a 9 "$outDir/$newDir/$(basename $i)".mp3;
      -        done ;
      -      
      +
      for i in `find . -type f | grep -i '\(mp3\|m4a\|wmv\|aif\|aac\|aiff\|wma\|wav\)$'`;
      +	  do 
      +    	  newDir=`dirname "$i"`;
      +   	      mkdir -p "$outDir/$newDir";
      +    
      +          ffmpeg -i "$i" -acodec libmp3lame -qscale:a 9 "$outDir/$newDir/$(basename $i)".mp3;
      +      done;
      +	  

      click here for full documentation.

      Outcome: The proxies can be viewed by internal producers in their local FileMaker database to help them better determine what they might want to use in a production.

      Check the blog for more information on the case study.

      From 86d1fe88be938a0c19527d66318f74166e26439f Mon Sep 17 00:00:00 2001 From: Beibei He Date: Thu, 18 Dec 2025 11:59:37 -0500 Subject: [PATCH 143/143] Fix formatting of FFmpeg command in HTML --- index.html | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/index.html b/index.html index bfabc28..92ba01a 100644 --- a/index.html +++ b/index.html @@ -774,14 +774,14 @@
      📋 Real-World Example
      Institution: WGBH

      Context: After WGBH ingested a sample 2TB production hard drive that included MP3 files from audio-only interviews, they created .mp3 proxies for all audio. While it might not have been necessary for the audio interviews that are already in .mp3 format, but it is easier to run a batch script on the whole drive for some of the stock footage rather than figuring out which one needs transcoding.

      Solution: They run a FFmpeg command with a batch script for the hard drive, relevant command is listed here -

      for i in `find . -type f | grep -i '\(mp3\|m4a\|wmv\|aif\|aac\|aiff\|wma\|wav\)$'`;
      -	  do 
      -    	  newDir=`dirname "$i"`;
      -   	      mkdir -p "$outDir/$newDir";
      +
      for i in `find . -type f | grep -i '\(mp3\|m4a\|wmv\|aif\|aac\|aiff\|wma\|wav\)$'`;
      +do 
      +    newDir=`dirname "$i"`;
      +    mkdir -p "$outDir/$newDir";
           
      -          ffmpeg -i "$i" -acodec libmp3lame -qscale:a 9 "$outDir/$newDir/$(basename $i)".mp3;
      -      done;
      -	  
      + ffmpeg -i "$i" -acodec libmp3lame -qscale:a 9 "$outDir/$newDir/$(basename $i)".mp3; +done; +

      click here for full documentation.

      Outcome: The proxies can be viewed by internal producers in their local FileMaker database to help them better determine what they might want to use in a production.

      Check the blog for more information on the case study.