VideoHelp Forum
+ Reply to Thread
Page 1 of 2
1 2 LastLast
Results 1 to 30 of 39
Thread
  1. This guide will only work with DISTRO (distribution) that is running LATEST version.

    If you have set-up Debian in VM/VPS, here are some steps to get you going:
    (This guide is based on KVM install of Debian 12)


    a] Easy way to add NEW user to you system from ROOT:
    Code:
    apt install -y sudo mc htop
    #Create "user" account
    Code:
    useradd -m -s /bin/bash user
    #Set password for user "user"
    Code:
    passwd user
    #Add to SUDO users:
    Code:
    nano +48 /etc/sudoers
    ###########################
    user ALL=(ALL:ALL) ALL

    #OR NO PASSWORD REQUESTS
    user ALL=(ALL:ALL) NOPASSWD:ALL
    ###########################
    ALL= host
    (ALL: = all users
    ALL) = all groups
    NOPASSWD:ALL = all commands


    b] Amend your "SOURCES" file:

    #To install fron CONTRIB | NON-FREE you need to add "contrib non-free"
    Code:
    nano +3 /etc/apt/sources.list
    Code:
    #From
    deb http://deb.debian.org/debian/ bookworm main non-free-firmware 
    
    #To
    deb http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware

    #Or perhaps if you decided to install a local QEMU virtual machine, in qcow2:
    Code:
    nano /etc/apt/sources.list.d/debian.sources
    Code:
    #From
    Types: deb deb-src
    URIs: mirror+file:///etc/apt/mirrors/debian.list
    Suites: bookworm bookworm-updates bookworm-backports
    Components: main
    Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
    
    #To
    Types: deb deb-src
    URIs: mirror+file:///etc/apt/mirrors/debian.list
    Suites: bookworm bookworm-updates bookworm-backports
    Components: main contrib non-free non-free-firmware
    Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg



    Following the "Video guide to get your Win system set-up for ....."
    comes basic CLI "Guide" to get your Linux (Debian based)
    system set-up to use with the projects in this forum
    and install the following APPlications/BINaries:


    If you are new to Linux/Debian, please consult the manual:
    https://debian-handbook.info/browse/stable/


    * Python 3.11.x [and PIP] (https://www.python.org/downloads/)
    * FFmpeg [and ffprobe] for repacking/remuxing streams on specific services, and evaluating stream data. (https://github.com/FFmpeg/FFmpeg/)
    * MKVToolNix v54+ [and MKVMerge] for muxing individual streams to an .mkv file. (https://mkvtoolnix.download/downloads.html)
    * aria2[(c] to use as a downloader (https://aria2.github.io/)
    * cURL to use as a downloader (https://curl.se/)
    * VLC free and open source cross-platform multimedia player and framework (https://www.videolan.org/vlc/)
    * MPV a free, open source, and cross-platform media player (https://mpv.io/)
    * Git a free and open source distributed version control system (https://www.git-scm.com/)
    * Nano Text Editor (https://www.nano-editor.org/)
    * MediaInfo a convenient unified display of the most relevant technical and tag data for video and audio files. (https://mediaarea.net/en/MediaInfo/)
    * Asciinema Record and share your terminal sessions, the simple way. (https://asciinema.org/)


    I download packages to ~/Downloads DIRectory
    Clone GIT Repos to ~/git DIRectory
    Keep Python scripts in ~/py DIRectory


    #If you skip this step some/rest of the commands will FAIL
    (you will have to amend/delete the paths in ALL the commands below......)
    Code:
    mkdir ~/Downloads
    mkdir ~/git
    mkdir ~/wvd
    mkdir ~/py

    Update/upgrade the above via APT:
    Code:
    sudo apt update; sudo apt list --upgradable -a; \
    sudo apt -V upgrade -y; sudo apt full-upgrade

    Code:
    sudo apt install python3 python3-pip python3-setuptools python-is-python3 \
    python3.11-venv unrar zip unzip ffmpeg mkvtoolnix aria2 curl vlc mpv git nano \
    mediainfo asciinema

    [OPTIONAL] GUI Commands:
    Code:
    sudo apt install mkvtoolnix-gui mediainfo-gui

    Check all installed and in PATH:
    Code:
    python -V;
    python -m pip -V;
    #
    python3 -V;
    python3 -m pip -V;
    #
    ffmpeg -version;
    ffprobe -version;
    mkvmerge --version;
    aria2c -v;
    curl -V;
    vlc --version;
    mpv --version;
    git --version;
    nano --version;
    mediainfo --version



    ----------------------------------
    #Install BINary APPS
    ----------------------------------
    * Hola Proxy Standalone Hola proxy client (https://github.com/Snawoot/hola-proxy/)
    * Windscribe Proxy Standalone client for proxies of Windscribe browser extension (https://github.com/Snawoot/windscribe-proxy/)
    * Shaka Packager for decrypting CENC-CTR and CENC-CBCS video and audio streams (https://github.com/shaka-project/shaka-packager/)
    * get_iPlayer A utility for downloading TV and radio programmes from BBC iPlayer and BBC Sounds (https://github.com/get-iplayer/get_iplayer/)
    * YT-DLP A feature-rich command-line audio/video downloader (https://github.com/yt-dlp/yt-dlp/wiki/Installation/)
    * GPAC Ultramedia OSS for Video Streaming & Next-Gen Multimedia Transcoding, Packaging & Delivery (https://github.com/gpac/gpac/wiki/GPAC-Build-Guide-for-Linux/)
    * CCExtractor for extracting Closed Caption data like EIA-608 from video streams and converting as SRT. (https://github.com/CCExtractor/ccextractor/blob/master/docs/COMPILATION.MD)
    * Bento4 [and mp4decrypt] A fast, modern, open source C++ toolkit for all your MP4 and DASH/HLS/CMAF media format needs. (https://github.com/axiomatic-systems/Bento4/)
    * N-m3u8DL-RE Cross-Platform, modern and powerful stream downloader for MPD/M3U8/ISM. (https://github.com/nilaoda/N_m3u8DL-RE/)
    * VisualStudioCode | VSCode | Code editor redefined and optimized for building and debugging modern web and cloud applications (https://wiki.debian.org/VisualStudioCode/)

    ###############
    # LATEST hola-proxy
    Code:
    sudo curl -kL https://github.com/Snawoot/hola-proxy/releases/latest/download/hola-proxy.linux-amd64 -o /usr/local/bin/hola-proxy
    sudo chmod a+rx /usr/local/bin/hola-proxy
    hola-proxy -version
    #LATEST windscribe-proxy
    Code:
    sudo curl -kL https://github.com/Snawoot/windscribe-proxy/releases/latest/download/windscribe-proxy.linux-amd64 -o /usr/local/bin/windscribe-proxy
    sudo chmod a+rx /usr/local/bin/windscribe-proxy
    windscribe-proxy -version
    #LATEST shaka-packager
    Code:
    sudo curl -kL https://github.com/shaka-project/shaka-packager/releases/latest/download/packager-linux-x64 -o /usr/local/bin/shaka-packager
    sudo chmod a+rx /usr/local/bin/shaka-packager
    shaka-packager --version
    #[OPTIONAL] #LATEST mpd_generator
    Code:
    sudo curl -kL https://github.com/shaka-project/shaka-packager/releases/latest/download/mpd_generator-linux-x64 -o /usr/local/bin/mpd
    sudo chmod a+rx /usr/local/bin/mpd
    mpd --version
    #[OPTIONAL] #LATEST PSSH Box
    Code:
    mkdir -p ~/py/pssh-box
    curl -kL https://github.com/shaka-project/shaka-packager/releases/latest/download/pssh-box.py.tar.gz -o ~/Downloads/pssh-box.py.tar.gz
    tar zxvf ~/Downloads/pssh-box.py.tar.gz -C ~/py/pssh-box
    cd ~/py/pssh-box
    python3 -m venv .venv
    source .venv/bin/activate
    pip3 install google google-api-python-client
    python3 pssh-box.py -h
    #To EXIT
    deactivate
    #LATEST get_iplayer

    Code:
    sudo apt install -y libwww-perl libcgi-pm-perl libxml-simple-perl libxml-libxml-perl \
    liblwp-protocol-https-perl atomicparsley libmojolicious-perl libass-dev
    Code:
    cd ~/Downloads
    curl -kLO https://raw.github.com/get-iplayer/get_iplayer/master/get_iplayer
    sudo install -m 755 ./get_iplayer /usr/local/bin
    sudo chmod 755 ./get_iplayer
    get_iplayer -V
    #Optional - Please read the manual.
    Code:
    get_iplayer --prefs-add --release-check --subtitles --subsraw --subs-embed --metadata=generic --thumb --thumbnail-size=1920 --long --file-prefix="<nameshort>_<00seriesnum>-<00episodenum>_<episode>_<pid>_<mode>"
    get_iplayer --prefs-show

    #LATEST YT-DLP
    Code:
    sudo curl -kL https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -o /usr/local/bin/yt-dlp
    sudo chmod a+rx /usr/local/bin/yt-dlp
    yt-dlp --version
    #Upgrade
    Code:
    sudo yt-dlp -U



    ###############
    -------------
    #LATEST GPAC
    -------------
    #Lets install "all" dependencies for GPAC and CCExtractor
    tesseract-ocr package will only install English language support

    Code:
    sudo apt install -y libglew-dev libglfw3-dev cmake gcc libcurl4-gnutls-dev tesseract-ocr \
    libtesseract-dev libleptonica-dev clang libclang-dev autoconf build-essential pkg-config \
    g++ git cmake yasm
    Code:
    cd ~/git
    git clone https://github.com/gpac/gpac.git
    cd gpac
    ./configure
    make -j$(nproc)
    sudo make install
    MP4Box -version
    gpac -version
    cd ~
    #Upgrade GPAC to LATEST version (Works only if you already installed it the above step)!
    Code:
    cd ~/git/gpac
    git pull
    make clean
    sudo make uninstall
    make distclean
    ./configure
    make -j$(nproc)
    sudo make install
    MP4Box -version
    gpac -version
    cd ~


    -----------------------------------------------------------
    #LATEST CCExtractor [needs GPAC installed]
    -----------------------------------------------------------
    Code:
    cd ~/git
    git clone https://github.com/CCExtractor/ccextractor.git
    ##Standard linux compilation through Autoconf scripts
    cd ccextractor/linux
    ./autogen.sh
    ./configure --without-rust
    make -j$(nproc)
    ./ccextractor --version
    sudo make install
    ccextractor --version
    cd ~
    ##OR using the build script
    Code:
    cd ccextractor/linux
    ./build -without-rust
    make -j$(nproc)
    ./ccextractor --version
    cd ~


    #Upgrade CCExtractor to LATEST version (Works only if you already installed it the above step)!
    Code:
    cd ~/git/ccextractor/
    git pull
    cd ~/git/ccextractor/linux
    make clean
    sudo make uninstall
    make distclean
    ./autogen.sh
    ./configure --without-rust
    make -j$(nproc)
    ./ccextractor --version
    sudo make install
    ccextractor --version
    cd ~


    -------------------------------
    #LATEST Bento4
    -------------------------------
    Code:
    cd ~/git
    git clone https://github.com/axiomatic-systems/Bento4.git
    cd Bento4
    ##CMake/Make
    mkdir cmakebuild
    cd cmakebuild
    cmake -DCMAKE_BUILD_TYPE=Release ..
    make -j$(nproc)
    ./mp4info
    sudo make install
    mp4info
    cd ~
    #Upgrade Bento4 to LATEST version (Works only if you already installed it the above step)!
    Code:
    cd ~/git/Bento4
    git pull
    cd cmakebuild
    make clean
    sudo make uninstall
    make distclean
    cmake -DCMAKE_BUILD_TYPE=Release ..
    make -j$(nproc)
    ./mp4info
    sudo make install
    mp4info


    ----------------------------------------------------------------
    #LATEST N_m3u8DL-RE - needs .NET installed - 20240630 | 0.2.0+00bce19aea2286aa28b8be56ebfc175b69f2bc39
    ----------------------------------------------------------------
    https://github.com/nilaoda/N_m3u8DL-RE/blob/main/.github/workflows/build_latest.yml

    #DOTNET Linux Install instructions
    https://learn.microsoft.com/en-us/dotnet/core/install/linux


    #Check your Linux version
    Code:
    hostnamectl
    #or
    cat /etc/issue
    #or
    cat /etc/os-release
    Code:
    sudo apt install -y libicu-dev libcurl4-openssl-dev zlib1g-dev libkrb5-dev
    #Debian 12
    Code:
    curl -kL https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb -o ~/Downloads/packages-microsoft-prod.deb
    sudo dpkg -i ~/Downloads/packages-microsoft-prod.deb
    rm ~/Downloads/packages-microsoft-prod.deb
    sudo apt update;
    sudo apt install -y dotnet-sdk-8.0
    #See help for .NET publish
    Code:
    dotnet publish -h


    Code:
    cd ~/git
    git clone https://github.com/nilaoda/N_m3u8DL-RE.git
    cd N_m3u8DL-RE
    #Compile
    Code:
    dotnet publish src/N_m3u8DL-RE -r linux-x64 -c Release -o artifact
    #Check the version
    Code:
    ./artifact/N_m3u8DL-RE --version
    ./artifact/N_m3u8DL-RE --help
    0.2.0+00bce19aea2286aa28b8be56ebfc175b69f2bc39
    N_m3u8DL-RE (Beta version) 20240630


    #Copy/Install to "/usr/local/bin/"
    Code:
    sudo cp ./artifact/N_m3u8DL-RE /usr/local/bin/
    N_m3u8DL-RE --version
    N_m3u8DL-RE --help

    #ZIP
    Code:
    zip -j ~/Downloads/N_m3u8DL-RE_Beta_linux-x64_20240630 ./artifact/N_m3u8DL-RE
    #TAR
    Code:
    cd artifact
    tar -cvf ~/Downloads/N_m3u8DL-RE_Beta_linux-x64_20240630.tar.gz N_m3u8DL-RE

    If you are interested, here is the log:
    N_m3u8DL-RE.log



    #Updating N_m3u8DL-RE (00bce19..508f39b) #422


    Code:
    git -C ~/git/N_m3u8DL-RE pull
    cd ~/git/N_m3u8DL-RE
    dotnet publish src/N_m3u8DL-RE -r linux-x64 -c Release -o artifact
    ./artifact/N_m3u8DL-RE --version
    ./artifact/N_m3u8DL-RE --help
    sudo cp ./artifact/N_m3u8DL-RE /usr/local/bin/
    N_m3u8DL-RE --version
    N_m3u8DL-RE --help

    Code:
    #ZIP
    zip -j ~/Downloads/N_m3u8DL-RE_Beta_linux-x64_20240724 ./artifact/N_m3u8DL-RE
    
    #TAR
    cd artifact
    tar -cvf ~/Downloads/N_m3u8DL-RE_Beta_linux-x64_20240724.tar.gz N_m3u8DL-RE


    Code:
    #Download:
    curl -kL https://forum.videohelp.com/attachments/81273-1722967115/N_m3u8DL-RE_Beta_linux-x64_20240724.zip -o ~/Downloads/N_m3u8DL-RE_Beta_linux-x64_20240630.zip

    Code:
    #UNzip
    sudo unzip ~/Downloads/N_m3u8DL-RE_Beta_linux-x64_20240724.zip -d /usr/local/bin/
    
    #UNtar (VH.com does not accept TAR.GZ files)!! :(
    sudo tar zxvf ~/Downloads/N_m3u8DL-RE_Beta_linux-x64_20240724.tar.gz -C /usr/local/bin/


    ###############
    - Bento4 1.6.0-641
    - N_m3u8DL-RE (Beta version) - 20240630
    - N_m3u8DL-RE (Beta version) - 20231113
    - N_m3u8DL-RE (Beta version) - 20230628

    #Bento4 1.6.0-641 - SEE ABOVE how to compile LATEST Version
    Code:
    cd ~/Downloads
    curl -kL https://www.bok.net/Bento4/binaries/Bento4-SDK-1-6-0-641.x86_64-unknown-linux.zip -o ~/Downloads/Bento4-SDK-1-6-0-641.x86_64-unknown-linux.zip
    sudo unzip -j Bento4-SDK-1-6-0-641.x86_64-unknown-linux.zip 'Bento4-SDK-1-6-0-641.x86_64-unknown-linux/bin/*' -d /usr/local/bin/
    ls -ilha /usr/local/bin/
    mp4decrypt

    #LATEST N_m3u8DL-RE (Beta version) - 20240630 | 0.2.0+00bce19aea2286aa28b8be56ebfc175b69f2bc39
    Code:
    cd ~/Downloads
    curl -kL https://forum.videohelp.com/attachments/80460-1720290308/N_m3u8DL-RE_Beta_linux-x64_20240630.zip -o ~/Downloads/N_m3u8DL-RE_Beta_linux-x64_20240630.zip
    sudo unzip -j N_m3u8DL-RE_Beta_linux-x64_20240630.zip 'N_m3u8DL-RE' -d /usr/local/bin/
    ls -ilha /usr/local/bin/
    N_m3u8DL-RE --version
    N_m3u8DL-RE --help

    #OR Version 20231113 from stabbedbybrick REPO
    #N_m3u8DL-RE (Beta version) 20231113 | 0.2.0+819af27b49b3b66a4a66b69060312376ad53b231 - SEE Above on how to compile LATEST Version
    Code:
    cd ~/Downloads
    curl -kL https://github.com/stabbedbybrick/N_m3u8DL-RE/releases/download/20240304/N_m3u8DL-RE_Beta_linux-x64.zip -o ~/Downloads/N_m3u8DL-RE_Beta_linux-x64.zip
    sudo unzip ~/Downloads/N_m3u8DL-RE_Beta_linux-x64.zip -d /usr/local/bin/
    sudo chmod a+rx /usr/local/bin/N_m3u8DL-RE
    ls -ilha /usr/local/bin/
    N_m3u8DL-RE --version
    N_m3u8DL-RE --help

    #Not so LATEST N_m3u8DL-RE_v0.2.0-beta - 20230628

    Code:
    cd ~/Downloads
    curl -kLO https://github.com/nilaoda/N_m3u8DL-RE/releases/download/v0.2.0-beta/N_m3u8DL-RE_Beta_linux-x64_20230628.tar.gz
    sudo tar zxvf N_m3u8DL-RE_Beta_linux-x64_20230628.tar.gz -C /usr/local/bin/
    sudo chmod a+rx /usr/local/bin/N_m3u8DL-RE
    N_m3u8DL-RE --version
    N_m3u8DL-RE --help




    -------------------------------------
    #Visual Studio Code | VS Code | Code | IDE (Integrated Development Environments)
    -------------------------------------
    You have the option to install TWO versions:
    a] Visual Studio Code "with" M$ branding/telemetry/licensing [https://code.visualstudio.com/download]
    b] VS Code "without" M$ branding/telemetry/licensing [https://github.com/VSCodium/vscodium] [https://vscodium.com/]


    ---
    a] Installing via apt [you also use Install via snap or flatpak not covered here] (https://wiki.debian.org/VisualStudioCode)
    ---

    #Updating the packages index and installing the dependencies:
    Code:
    sudo apt update; sudo apt install gnupg2 software-properties-common apt-transport-https curl
    #Import the Microsoft GPG key
    Code:
    curl -sSL https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
    Add the Visual Studio Code repository to your system:
    Code:
    sudo add-apt-repository "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main"
    #Install the Visual Studio Code package:

    Code:
    sudo apt update; sudo apt install code;
    code --version;

    ---
    b] VS Code "without" M$ branding/telemetry/licensing
    ---

    #Add the GPG key of the repository:
    Code:
    wget -qO - https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg \
        | gpg --dearmor \
        | sudo dd of=/usr/share/keyrings/vscodium-archive-keyring.gpg
    Add the repository:
    Code:
    echo 'deb [ signed-by=/usr/share/keyrings/vscodium-archive-keyring.gpg ] https://download.vscodium.com/debs vscodium main' \
        | sudo tee /etc/apt/sources.list.d/vscodium.list
    Update then install vscodium (if you want vscodium-insiders, then replace codium by codium-insiders):
    Code:
    sudo apt update && sudo apt install codium;
    codium --version;



    ----------------------------------------------------
    #Testing the setup FFMpeg | MPV
    ----------------------------------------------------
    Requires NEWish/LATEST version of FFMpeg with "cenc_decryption_key"



    Code:
    ffmpeg -cenc_decryption_key 166634c675823c235a4a9446fad52e4d -i "https://media.axprod.net/TestVectors/v7-MultiDRM-SingleKey/Manifest_1080p.mpd" -c copy -f flv - | mpv -
    Code:
    ffmpeg -cenc_decryption_key 100b6c20940f779a4589152b57d2dacb -i "https://cdn.bitmovin.com/content/assets/art-of-motion_drm/mpds/11331.mpd" -c copy -f flv - | mpv -




    #Download
    -BitMovin restricts their stream = 429 (Too Many Requests).

    Code:
    mkdir ~/Videos/11331; cd ~/Videos/11331
    N_m3u8DL-RE -mt -sv best -sa all -ss all --save-name 11331 --check-segments-count False \
    https://cdn.bitmovin.com/content/assets/art-of-motion_drm/mpds/11331.mpd

    #Play (MPV)
    Code:
    mpv --demuxer-lavf-o=decryption_key=100b6c20940f779a4589152b57d2dacb 11331.mp4 --audio-file-auto=all --sub-auto=all

    -Tears of Steel

    Code:
    mkdir ~/Videos/mango; cd ~/Videos/mango
    N_m3u8DL-RE -mt -sv best -sa all -ss all --save-name ToS \
    https://media.axprod.net/TestVectors/v7-MultiDRM-SingleKey/Manifest_1080p.mpd
    Code:
    mpv --demuxer-lavf-o=decryption_key=166634c675823c235a4a9446fad52e4d ToS.und.mp4 --audio-file-auto=all --sub-auto=all









    --------------------------------
    # Python Key terms
    --------------------------------
    https://docs.python.org/3/installing/index.html#key-terms
    ---------------------------------------------------------
    # PIP
    - the preferred installer program. (the package installer for Python.)
    Starting with Python 3.4, it is included by default with the Python binary installers.
    https://pypi.org/project/pip/


    # Virtual Environment
    - a semi-isolated Python environment that allows packages to be installed for use by a particular application,
    rather than being installed system wide.

    You are asking, why use Virtual Environment?
    In plain English, if you are installing two python projects and both are using
    same dependency (but with different versions = older and newer etc.)
    that would create a conflict ...... Virtual Environment makes sure you do not to have Python dependency conflicts ;)


    # VENV
    - the standard tool for creating virtual environments,
    and has been part of Python since Python 3.3. Starting with Python 3.4,
    it defaults to installing pip into all created virtual environments.
    #Create
    Code:
    python3 -m venv .venv
    #Activate
    Code:
    source .venv/bin/activate

    # VirtualEnv
    - a third party alternative (and predecessor) to venv.
    It allows virtual environments to be used on versions of Python prior to 3.4,
    which either don’t provide venv at all, or aren’t able to automatically install pip into created environments.


    # PyPI
    - Python Package Index is a public repository of open source licensed packages
    made available for use by other Python users.
    https://pypi.org/


    # PyPA
    - Python Packaging Authority is the group of developers and documentation authors
    responsible for the maintenance and evolution of the standard packaging tools
    and the associated metadata and file format standards.
    https://www.pypa.io/


    # Poetry
    - Alternative to VENV
    Python packaging and dependency management made easy
    https://python-poetry.org/
    https://python-poetry.org/docs/basic-usage/#activating-the-virtual-environment
    https://python-poetry.org/docs/cli/
    https://pypi.org/project/poetry/

    # Using "Multiple Major Versions of Python Package" on Linux is pain in the back .....unless using pyenv

    # Install Poetry ("-3.12" you have Multiple Major Versions of Python Package and want to use version 3.12):
    Code:
    python3 -m pip install poetry
    # Check your version:
    Code:
    python3 -m poetry -V
    # Create the "virtualenv" inside the project’s root directory
    Code:
    python -m poetry config virtualenvs.in-project true
    # Reads the pyproject.toml file from the current project, resolves the dependencies, and installs them.
    Code:
    python3 -m poetry install
    # Spawns a shell within the project’s virtual environment.
    Code:
    python3 -m poetry shell

    # Pipenv
    - a Python virtualenv management tool that supports a multitude of systems and nicely bridges the gaps between pip,
    python (using system python, pyenv or asdf) and virtualenv.
    Linux, macOS, and Windows are all first-class citizens in pipenv.
    https://pipenv.pypa.io/en/latest/
    https://pypi.org/project/pipenv/


    # PyEnv
    - Simple Python version management
    https://github.com/pyenv/pyenv
    https://realpython.com/intro-to-pyenv/#installing-pyenv

    #Dependencies
    Code:
    sudo apt install -y make build-essential libssl-dev zlib1g-dev \
    libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev \
    libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python3-openssl
    #Download/Install
    Code:
    curl https://pyenv.run | bash

    Code:
    nano ~/.bashrc
    ############
    Code:
    #Load pyenv automatically by adding
    #the following to ~/.bashrc:
    
    export PATH="$HOME/.pyenv/bin:$PATH"
    eval "$(pyenv init -)"
    eval "$(pyenv virtualenv-init -)"
    Code:
    . .bashrc
    Code:
    pyenv install --list | grep " 3\.[12]"
    Code:
    pyenv install -v 3.12.4





    -------------------------------------------
    INTERESTING PROJECTS:
    -------------------------------------------
    Beyond-WKS-KEYS
    https://forum.videohelp.com/threads/411862


    FreeVine (discontinued, but still works)
    https://forum.videohelp.com/threads/411643
    #1463 Linux Installation
    https://forum.videohelp.com/threads/411643/page49#post2739976


    Devine
    https://forum.videohelp.com/threads/414154


    UK-FTA | UK-Free-to-Air-Downloader
    https://forum.videohelp.com/threads/411884


    DRM free content downloader WideFrog
    https://forum.videohelp.com/threads/414548


    Widevine-L3-Guesser-Extension
    https://forum.videohelp.com/threads/414140


    [Release] CDRM-Project 2.0
    https://forum.videohelp.com/threads/414973


    KeyDive: Beyond Android SDK 33
    https://forum.videohelp.com/threads/414789


    Vadapav (downloader)
    https://forum.videohelp.com/threads/413280


    All Hell Let Loose!
    https://forum.videohelp.com/threads/415090







    I take no responsibility what so ever if you can not
    copy/paste the commands without deleting or adding extra characters
    to the command during this process ;)




    Improvements/corrections to this guide are welcome.



    #EDIT 7th Jun 2024
    - Small corrections

    #EDIT 8th Jun 2024
    - Small corrections

    #EDIT 13th Jun 2024
    - Small corrections

    #EDIT 14th Jun 2024
    - Added command to update/upgrade via APT
    - Small corrections
    - Corrected PSSH Box routine

    #EDIT 18th Jun 2024
    - Added asciinema to install files
    - Small corrections

    #EDIT 19th Jun 2024
    - Added Freevine Install instruction link

    #EDIT 24 June 2024
    - Added section "Testing your setup"
    - Added links to Debian Handbook
    - Added new "INTERESTING PROJECTS"

    #EDIT 1st Jul 2024
    - Small corrections (tesseract-ocr)
    - Added "Python Key Terms" (Needs correcting the commands - ToDo)

    #EDIT 2nd Jul 2024
    - Amended INTERESTING PROJECTS

    #EDIT 6th Jul 2024
    - Small corrections/improvements
    - Added PyEnv to Python Key terms
    - Latest version N_m3u8DL-RE compilation updated | NEW commits as of Jun 30, 2024
    - Added "N_m3u8DL-RE_Beta_linux-x64_20240630.zip" to FILES and the guide

    #EDIT 7th Jul 2024
    - Small corrections/improvements (that not always save....)
    - Added instructions on how to add "contrib non-free"
    - All of the above have been confirmed to work in my clean KVM Install

    #EDIT 6th Aug 2024
    - Small corrections/improvements (that not always save....)
    - Added more options in section "Testing your setup"
    - Updated N_m3u8DL-RE to 508f39b





    ToDo:
    - Correct Python Key Terms commands
    - Add "asciinema" guide



    DISCLOSURE:
    I'm not affiliated with any of the "release" groups
    that some members vacate these shores and have their own agendas.
    Image Attached Files
    Last edited by pssh; 6th Aug 2024 at 16:22. Reason: #EDIT 6th Aug 2024
    If I was in politics I make sure you drink plenty of beer
    and watch plenty of TV to keep you busy. | Data is the new oil.
    Quote Quote  
  2. Member
    Join Date
    May 2023
    Location
    Argentina
    Search Comp PM
    Thank You!
    Quote Quote  
  3. Please can you commit some of these to the gitbook?
    Repo is here : https://github.com/0xbreezy/Setup-DevGuide

    Would be very useful for a) futureproofing , b) getting things moving with that, c) having a useful guide to point folks to instead of just "find my thread".

    Thanks!
    Quote Quote  
  4. I do not have a GitHub account and do not want one ...

    Please feel free to copy the guide in full,
    the more guides there is the more chance there is
    people will drop using Windows and migrate to a decent OS
    If I was in politics I make sure you drink plenty of beer
    and watch plenty of TV to keep you busy. | Data is the new oil.
    Quote Quote  
  5. This is a useful resource; thanks for the time you took to document all the steps involved in installing the various applications.

    I will point out that after spending a day following these instructions, a new user will then have to (really, ought to) spend a few more hours every month or so updating to new versions.

    Wouldn't it be fantastic if someone were interested and willing to put together a Docker/Podman container image which was regularly updated with new versions of these applications? The instructions would then be (almost identical for Linux, MacOS and Windows):

    - install Podman for your operating system (it's free software, reasonably well documented)
    - run the application you need and enjoy the feeling of being pretty well protected (thanks to container sandboxing) from any attempts to subvert the fairly long list of somewhat obscure software you have avoided installing natively on your precious computer

    Obviously it would be better if I did rather than whaddabout-iffed. I'm already busy developing dash-mpd-cli (which happens to be published as a software container, and seems useful to some people) and other tools, and don't use most of these tools personally, so I'm not the best person to stand up. But I see a huge value per hour invested opportunity here.
    Quote Quote  
  6. Originally Posted by pteque View Post
    This is a useful resource; thanks for the time you took to document all the steps involved in installing the various applications.

    I will point out that after spending a day following these instructions, a new user will then have to (really, ought to) spend a few more hours every month or so updating to new versions.

    Wouldn't it be fantastic if someone were interested and willing to put together a Docker/Podman container image which was regularly updated with new versions of these applications? The instructions would then be (almost identical for Linux, MacOS and Windows):

    - install Podman for your operating system (it's free software, reasonably well documented)
    - run the application you need and enjoy the feeling of being pretty well protected (thanks to container sandboxing) from any attempts to subvert the fairly long list of somewhat obscure software you have avoided installing natively on your precious computer

    Obviously it would be better if I did rather than whaddabout-iffed. I'm already busy developing dash-mpd-cli (which happens to be published as a software container, and seems useful to some people) and other tools, and don't use most of these tools personally, so I'm not the best person to stand up. But I see a huge value per hour invested opportunity here.
    I was considering putting together a docker image that would contain everything, it's just finding the time as of late
    Quote Quote  
  7. To be honest, @pteque, I've never used / looked at Podman before - this looks great and might be an excellent idea!
    Quote Quote  
  8. Member aqzs's Avatar
    Join Date
    Mar 2024
    Location
    Paris
    Search Comp PM
    Originally Posted by keep_it_breezy View Post
    I was considering putting together a docker image that would contain everything, it's just finding the time as of late
    That's a very good idea in my opinion ! If you give up this idea tell me I'll take it
    Quote Quote  
  9. @azqs it seems like I'm going to build out a podman image that will do it - just watching some stuff now to figure it out
    Quote Quote  
  10. Member aqzs's Avatar
    Join Date
    Mar 2024
    Location
    Paris
    Search Comp PM
    Originally Posted by keep_it_breezy View Post
    @azqs it seems like I'm going to build out a podman image that will do it - just watching some stuff now to figure it out
    I never used podman (used docker a lot), I'll take a look too !

    Edit : I take a very very quick look, seems to be based on docker but without root privileges right ?
    Quote Quote  
  11. Originally Posted by aqzs View Post
    Originally Posted by keep_it_breezy View Post
    @azqs it seems like I'm going to build out a podman image that will do it - just watching some stuff now to figure it out
    I never used podman (used docker a lot), I'll take a look too !
    It looks neat from the kinda "user-friendly" perspective - I think it should work just fine
    Quote Quote  
  12. We could probably do the following:

    Build a docker image that has all the necessary tools in it, INCLUDING tools such as devine, and whatever, and the necessary python environment.
    We can then tell people to merely put their devine config file/downloads on their desktop, and use a bind mount to have people mount their downloads, and config file to the container. E.g.:

    Code:
    podman run --rm -v /User/Desktop/devine.yaml:/devine/devine/devine.yaml /User/Desktop/Downloads:/devine/devine/downloads/ videohelp-tools-container
    This could be fairly easily wrapped up to have instructions of:

    1. Download podman + Install
    2. Import the podman image we give you
    3. Run a wrapper script that will allow you to run the commands from anywhere.

    That should be it!
    Quote Quote  
  13. Hmm I say that - but dealing with local filepaths can sometimes be a pain... e.g. running mediainfo <file-stored-on-host-machine.mp4>
    Quote Quote  
  14. Member aqzs's Avatar
    Join Date
    Mar 2024
    Location
    Paris
    Search Comp PM
    Originally Posted by keep_it_breezy View Post
    Hmm I say that - but dealing with local filepaths can sometimes be a pain... e.g. running mediainfo <file-stored-on-host-machine.mp4>
    You can mount a folder, put the file in the folder and it should works !
    Quote Quote  
  15. Indeed, the only slightly tricky aspects of using a Podman/Docker software container are related to mounting a directory into the container:

    - to get the downloaded media files out of the container
    - to get config files into the container

    Some documentation with example recipes for each application would be very useful.

    BTW if you build a multiarch container (for linux/AMD64 and linux/ARM64), it should run without software emulation on both flavours of Mac hardware, and soon on both flavours of Windows hardware.
    Quote Quote  
  16. I'm not against any improvements that will make things better for the users,
    but IMHO getting other tools involved "can" make it more complex, especially
    for new users, and once the person maintaining the project abandons it
    users are left to pick up the pieces.

    I should have also included command to update/upgrade via APT:
    Code:
    sudo apt update; sudo apt list --upgradable -a; sudo apt -V upgrade -y; sudo apt full-upgrade
    Upgrading the "GPAC", " CCExtractor" and "Bento4" can be more complex
    as it involves compiling, but i'ts done when needed ....

    Upgrading other BINaries is a matter of downloading / making executable also when needed ...


    The automation can also have an adverse effect, that NEW versions can/will introduce new bugs .....
    (and if I remember correctly "shaka-packager" did with UK-FTA)

    @pteque:
    I do not believe that the updates to BINary files are so regular and required "few more hours every month" ...

    Yes, keep your system Up-To-Date, but it has litterally taken me cca. 20min to update all .....



    Would Update "script" not be a better option?
    Last edited by pssh; 14th Jun 2024 at 03:32.
    If I was in politics I make sure you drink plenty of beer
    and watch plenty of TV to keep you busy. | Data is the new oil.
    Quote Quote  
  17. Originally Posted by pssh View Post
    Would Update "script" not be a better option?
    I think more choice is generally better, and an update script might be useful to some people. But it has several disadvantages wrt a prebuilt Podman/Docker software container:

    - doesn't help users on MacOS or Windows or more obscure operating systems (separate scripts could in theory be published for those platforms, but that's more work and it's generally much more difficult to build software there)
    - doesn't provide any of the security sandboxing goodness
    - more fragile (look for example at all the problems people on this forum have using different versions of system-installed Python)
    Quote Quote  
  18. Member aqzs's Avatar
    Join Date
    Mar 2024
    Location
    Paris
    Search Comp PM
    Originally Posted by pteque View Post
    Originally Posted by pssh View Post
    Would Update "script" not be a better option?
    I think more choice is generally better, and an update script might be useful to some people. But it has several disadvantages wrt a prebuilt Podman/Docker software container:

    - doesn't help users on MacOS or Windows or more obscure operating systems (separate scripts could in theory be published for those platforms, but that's more work and it's generally much more difficult to build software there)
    - doesn't provide any of the security sandboxing goodness
    - more fragile (look for example at all the problems people on this forum have using different versions of system-installed Python)
    Installing docker/podman on macos is really easy with Docker Desktop. I tried on windows long time ago, it's painful because of WSL..
    This ins't more fragile since python is installed in the container, no python version issue.
    Quote Quote  
  19. This might sound silly - but with VMWare player and VMWare fusion now being free for personal use - wouldn't it just be better for me to build a linux machine with everything pre-installed so that people do not need to bother with any folder binding stuff? That way we can write instructions solely for Linux, and say to folks "if you cannot install this stuff yourself, use the machine"? It would be a pretty big file but would solve a ton of headaches...

    I am aware this isn't the most elegant in terms of system resource usage / space, but if everything is pre-installed and I make sure it works perfectly... there can be no complaints...
    Last edited by keep_it_breezy; 15th Jun 2024 at 08:20. Reason: Added context
    Quote Quote  
  20. I actually think that's a good idea. Can build an importable vmware file that runs a fairly simple/"familiar" operating system (say, ubuntu), install ALL the tools we need, including git and stuff, and then people can just work from that. That way we wouldn't get monumental walls of text etc for simple issues.

    I'd even install virtualenvwrapper so that people don't have to use standard pyenv syntax, it's simply a case of (for more complex tooling where you don't want to use system environment installed packages) "workon freevine" to start the freevine venv etc.
    Quote Quote  
  21. Does anyone want to collaborate on this,

    I'm going to have to do 2 versions, x86 and ARM

    Shouldn't take too long but if anyone has any ideas I'm all ears.
    Quote Quote  
  22. Here are the disadvantages that I see of a VM image rather than a Podman/Docker image:

    - Less protection from malware in any code you might install, because the VM image is going to be persisted to the next startup.
    - Less convenient for updates, because a new image requires a full new download.
    - Less tooling available AFAIK to build VM images in an automated way

    I don't see it as being much easier to handle the folder binding; you'll still need to mount a folder to your host with a VM in order to access the downloaded media. Nonetheless, I expect a Linux VM might be useful to some people!
    Quote Quote  
  23. Originally Posted by pteque View Post
    Here are the disadvantages that I see of a VM image rather than a Podman/Docker image:

    - Less protection from malware in any code you might install, because the VM image is going to be persisted to the next startup.
    - Less convenient for updates, because a new image requires a full new download.
    - Less tooling available AFAIK to build VM images in an automated way

    I don't see it as being much easier to handle the folder binding; you'll still need to mount a folder to your host with a VM in order to access the downloaded media. Nonetheless, I expect a Linux VM might be useful to some people!

    Hmmm I disagree on the Malware point - VMs are extremely useful for host:vm separation - there's no concern about malware "escaping" to the host (unless people deliberately drag and drop it) - , and similar could happen with folder binding anyway.

    Agreed on the less convenient updates - though the way I have been building it has been very dependent on git, so if a tool should need updating before I can build a new image, I don't think there's anything wrong with saying to people "head to the folder and run git pull". Though I do get the point to an extent.

    I was going to have it build entirely with Ansible eventually. I might put up a repo with my base playbooks I've got so far. That way the actual rebuilding of machine images to share (which should hopefully be fairly irregularly, really) will be just a case of running the playbook at an empty machine.

    Folder binding is fairly specific to a certain folder (as far as I'm aware) - so for example, you'd have to move files locally to the binded host folder, and then run your tooling on it - as opposed to in a vm where you can just run a command anywhere (say, you have a local mpd) and drag and drop the file into the terminal window, and the terminal will deal with path related stuff for you. I think, especially looking at average technical skill in here, providing a vm where folks can just drag and drop stuff as they need is probably a slightly "more appropriate" solution. Not necessarily better, but probably likely to produce more positive results
    Last edited by keep_it_breezy; 15th Jun 2024 at 15:54. Reason: Spelling
    Quote Quote  
  24. Anyone know how to get ccextractor to compile in Fedora please ive done all the rest of the required apps but cant get this to compile and cant find anything on the web about it


    Code:
    root@fedora:/tmp/temp/ccextractor/linux# ./build -without-rust
    find: ‘/usr/include/gpac/’: No such file or directory
    Running pre-build script...
    Obtaining Git commit
    Storing variables in file
    Commit: d6ccf1bfcba606c633b40349dcab07dfc77f73a5
    Date: 2024-06-26
    Stored all in compile_info_real.h
    Done.
    Trying to compile...
    Building without rust files...
    Building ccextractor
    Error: please install tesseract development library (libtesseract-dev for Debian/Ubuntu)
    root@fedora:/tmp/temp/ccextractor/linux# make -j$(nproc)
    Quote Quote  
  25. Originally Posted by PSXman_uk View Post
    Anyone know how to get ccextractor to compile in Fedora please ive done all the rest of the required apps but cant get this to compile and cant find anything on the web about it


    Code:
    root@fedora:/tmp/temp/ccextractor/linux# ./build -without-rust
    find: ‘/usr/include/gpac/’: No such file or directory
    Running pre-build script...
    Obtaining Git commit
    Storing variables in file
    Commit: d6ccf1bfcba606c633b40349dcab07dfc77f73a5
    Date: 2024-06-26
    Stored all in compile_info_real.h
    Done.
    Trying to compile...
    Building without rust files...
    Building ccextractor
    Error: please install tesseract development library (libtesseract-dev for Debian/Ubuntu)
    root@fedora:/tmp/temp/ccextractor/linux# make -j$(nproc)
    It tells you? You need to compile tesseract development library - https://github.com/ropensci/tesseract/blob/master/README.md
    Quote Quote  
  26. Originally Posted by PSXman_uk View Post
    Anyone know how to get ccextractor to compile in Fedora please ive done all the rest of the required apps but cant get this to compile and cant find anything on the web about it


    Code:
    root@fedora:/tmp/temp/ccextractor/linux# ./build -without-rust
    find: ‘/usr/include/gpac/’: No such file or directory
    Running pre-build script...
    Obtaining Git commit
    Storing variables in file
    Commit: d6ccf1bfcba606c633b40349dcab07dfc77f73a5
    Date: 2024-06-26
    Stored all in compile_info_real.h
    Done.
    Trying to compile...
    Building without rust files...
    Building ccextractor
    Error: please install tesseract development library (libtesseract-dev for Debian/Ubuntu)
    root@fedora:/tmp/temp/ccextractor/linux# make -j$(nproc)

    There are TWO pieces if information that can give you the clue why it is not compiling

    Code:
    find: ‘/usr/include/gpac/’: No such file or directory
    and as "@keep_it_breezy" pointed out:

    Code:
    Error: please install tesseract development library (libtesseract-dev for Debian/Ubuntu)
    Maybe installing this will help, without having to compile the whole thing:
    Code:
    sudo yum install tesseract-devel leptonica-devel
    In order to be able to "successfully" compile the "ccextractor" you need to have GPAC installed
    as well




    Please maybe let other users know what exactly worked for you to get it installed on your Fedora Distro.
    Thank you.
    Last edited by pssh; 1st Jul 2024 at 15:22.
    If I was in politics I make sure you drink plenty of beer
    and watch plenty of TV to keep you busy. | Data is the new oil.
    Quote Quote  
  27. N_m3u8DL-RE has had "recently" few commits
    - 20240630 | 0.2.0+00bce19aea2286aa28b8be56ebfc175b69f2bc39
    new version for linux-x64 is now linked into the Guide + few corrections.
    If I was in politics I make sure you drink plenty of beer
    and watch plenty of TV to keep you busy. | Data is the new oil.
    Quote Quote  
  28. Hey fellas, thanks for Guide it is very much appreciated. I seem to be running into an issue, when i get to this point
    ----------------------------------------------------
    #Testing the setup FFMpeg | MPV
    ----------------------------------------------------
    Code:
    ffmpeg -cenc_decryption_key 166634c675823c235a4a9446fad52e4d -i "https://media.axprod.net/TestVectors/v7-MultiDRM-SingleKey/Manifest_1080p.mpd" -c copy -f flv - | mpv -


    Code:

    ffmpeg -cenc_decryption_key 100b6c20940f779a4589152b57d2dacb -i "https://cdn.bitmovin.com/content/assets/art-of-motion_drm/mpds/11331.mpd" -c copy -f flv - | mpv -

    I am receiving an error from each command

    ffmpeg -cenc_decryption_key 166634c675823c235a4a9446fad52e4d -i "https://media.axprod.net/TestVectors/v7-MultiDRM-SingleKey/Manifest_1080p.mpd" -c copy -f flv - | mpv -

    i get this as an error: Unrecognized option 'cenc_decryption_key'.
    Error splitting the argument list: Option not found
    [file] Reading from stdin...
    Failed to recognize file format.

    and from the 2nd command i get : Unrecognized option 'cenc_decryption_key'.
    Error splitting the argument list: Option not found
    [file] Reading from stdin...
    Failed to recognize file format.

    I've just managed to fall head first into this rabbit hole of info and am kind of tangled up. I've read a bunch of guides threads but i don't yet have the know-how to troubleshoot.

    I might have jumped into this guide prematurely but I will appreciate any help.

    Thanks so much!

    Quote Quote  
  29. Originally Posted by Chancho View Post
    Hey fellas, thanks for Guide it is very much appreciated. I seem to be running into an issue, when i get to this point
    ----------------------------------------------------
    #Testing the setup FFMpeg | MPV
    ----------------------------------------------------
    Code:
    ffmpeg -cenc_decryption_key 166634c675823c235a4a9446fad52e4d -i "https://media.axprod.net/TestVectors/v7-MultiDRM-SingleKey/Manifest_1080p.mpd" -c copy -f flv - | mpv -


    Code:

    ffmpeg -cenc_decryption_key 100b6c20940f779a4589152b57d2dacb -i "https://cdn.bitmovin.com/content/assets/art-of-motion_drm/mpds/11331.mpd" -c copy -f flv - | mpv -

    I am receiving an error from each command

    ffmpeg -cenc_decryption_key 166634c675823c235a4a9446fad52e4d -i "https://media.axprod.net/TestVectors/v7-MultiDRM-SingleKey/Manifest_1080p.mpd" -c copy -f flv - | mpv -

    i get this as an error: Unrecognized option 'cenc_decryption_key'.
    Error splitting the argument list: Option not found
    [file] Reading from stdin...
    Failed to recognize file format.

    and from the 2nd command i get : Unrecognized option 'cenc_decryption_key'.
    Error splitting the argument list: Option not found
    [file] Reading from stdin...
    Failed to recognize file format.

    I've just managed to fall head first into this rabbit hole of info and am kind of tangled up. I've read a bunch of guides threads but i don't yet have the know-how to troubleshoot.

    I might have jumped into this guide prematurely but I will appreciate any help.

    Thanks so much!

    Very weird - will you just run `ffmpeg` and say which version you're using (it will be the first line of output), e.g. :

    Code:
    ❯ ffmpeg
    ffmpeg version 7.0.1 Copyright (c) 2000-2024 the FFmpeg developers
      built with Apple clang version 15.0.0 (clang-1500.3.9.4)
      configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/7.0.1 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags='-Wl,-ld_classic' --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-libdav1d --enable-libharfbuzz --enable-libjxl --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-audiotoolbox --enable-neon
      libavutil      59.  8.100 / 59.  8.100
      libavcodec     61.  3.100 / 61.  3.100
      libavformat    61.  1.100 / 61.  1.100
      libavdevice    61.  1.100 / 61.  1.100
      libavfilter    10.  1.100 / 10.  1.100
      libswscale      8.  1.100 /  8.  1.100
      libswresample   5.  1.100 /  5.  1.100
      libpostproc    58.  1.100 / 58.  1.100
    Universal media converter
    usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...
    
    Use -h to get full help or, even better, run 'man ffmpeg'
    Quote Quote  
  30. Not really weird. ffmpeg really needs to be at version 7.x to understand this option. Looking at the ffmpeg repo you'll find that it was added in May '22 and is not available for the older releases.
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!