Projects
home:enzokiel:branches:home:enzokiel
avidemux3
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Difference Between Revision 4 and
home:enzokiel
/
avidemux3
View file
avidemux3.spec
Changed
@@ -19,7 +19,7 @@ Name: avidemux3 Summary: Graphical video editing and transcoding tool License: GPL-2.0-only -Version: 2.8.2.git20260407 +Version: 2.8.2.git20260411 Release: 0 URL: https://github.com/mean00/avidemux2 ExclusiveArch: %ix86 x86_64
View file
avidemux2-2.8.2.git20260411.tar.xz/.devcontainer_bullseye
Added
+(directory)
View file
avidemux2-2.8.2.git20260411.tar.xz/.devcontainer_bullseye/Dockerfile
Added
@@ -0,0 +1,145 @@ +FROM debian:bullseye + +ARG DEBIAN_FRONTEND=noninteractive +ARG USER_UID=1000 +ARG USER_GID=1000 +ARG USERNAME=bullseye + +#RUN echo 'Acquire::http::Proxy "http://192.168.0.9:3142";' > /etc/apt/apt.conf.d/01proxy +RUN sed -i 's/ main / main contrib non-free non-free-firmware/' /etc/apt/sources.list +RUN echo "deb http://archive.debian.org/debian bullseye-backports main contrib non-free" > /etc/apt/sources.list.d/bullseye-backports.list +RUN apt-get update +RUN apt-get install -y \ + apt-utils \ + bison \ + build-essential \ + bzip2 \ + ca-certificates \ + ccache \ + check \ + curl \ + cmake-latest \ + flex \ + git \ + git-lfs \ + gperf \ + lcov \ + libbsd-dev \ + libffi-dev \ + libglib2.0-0 \ + libncurses-dev \ + libpixman-1-0 \ + libsdl2-2.0-0 \ + libslirp0 \ + libusb-1.0-0-dev \ + make \ + ninja-build \ + python3 \ + python3-venv \ + python3-crcmod \ + ruby \ + sudo \ + unzip \ + usbutils \ + wget \ + xz-utils \ + zip \ + build-essential pkg-config yasm \ + libsqlite3-dev \ + libxv-dev libvdpau-dev libva-dev libglu1-mesa-dev \ + libasound2-dev libpulse-dev \ + libx264-dev libxvidcore-dev \ + libmp3lame-dev libtwolame-dev libopus-dev libvorbis-dev libogg-dev \ + libpng-dev libass-dev \ + file \ + squashfs-tools + # app image + RUN apt-get install -y desktop-file-utils fakeroot fuse patchelf python3-pip python3-setuptools squashfs-tools strace util-linux zsync + RUN apt-get install -y zsh neovim + + RUN update-alternatives --install /usr/bin/python python /usr/bin/python3 10 \ + && : + #libaften-dev \ + +# App image +RUN wget --no-proxy https://github.com/AppImageCrafters/appimage-builder/releases/download/v1.1.0/appimage-builder-1.1.0-x86_64.AppImage && \ +chmod +x appimage-builder-1.1.0-x86_64.AppImage && \ + mv appimage-builder-1.1.0-x86_64.AppImage /usr/local/bin/appimage-builder + +RUN wget --no-proxy https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage -O /usr/local/bin/linuxdeploy && \ + chmod +x /usr/local/bin/linuxdeploy + +RUN wget --no-proxy https://github.com/linuxdeploy/linuxdeploy-plugin-appimage/releases/download/continuous/linuxdeploy-plugin-appimage-x86_64.AppImage \ + -O /usr/local/bin/linuxdeploy-plugin-appimage && \ + wget --no-proxy https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-x86_64.AppImage \ + -O /usr/local/bin/linuxdeploy-plugin-qt && \ + wget --no-proxy https://github.com/AppImage/type2-runtime/releases/download/continuous/runtime-x86_64 \ + -O /usr/local/bin/runtime-x86_64 && \ + wget --no-proxy https://github.com/AppImage/appimagetool/releases/download/1.9.0/appimagetool-x86_64.AppImage \ + -O /usr/local/bin/appimagetool1 && \ + chmod +x /usr/local/bin/* +RUN useradd -m bullseye && usermod --shell /usr/bin/zsh bullseye +RUN chmod a+rwx /opt /usr/local/bin +# +# + +# +# +# +# Extra packages +# +# +# +RUN apt-get install -y \ + libx264-dev \ + libx265-dev \ + libvpx-dev \ + libaom-dev \ + libfuse-dev \ + libfaad-dev \ + libopencore-amrnb-dev \ + libopencore-amrwb-dev + +RUN apt-get install -y \ + qt6-base-dev qt6-l10n-tools qt6-wayland + + #libfaac-dev \ + #libfdk-aac-dev \ +#libfuse2t64 + +# +CMD "/bin/bash" + + +RUN cd /tmp && git clone https://github.com/FFmpeg/nv-codec-headers.git && cd nv-codec-headers && make install + +################################### +# Setup user env +################################### +USER ${USERNAME} +# +RUN cd /tmp && /usr/local/bin/appimagetool1 --appimage-extract && mv squashfs-root /opt/appimagetool-extracted +# +RUN cat <<EOF > /home/bullseye/.zshrc +# History Settings +HISTFILE=~/.zsh_history +HISTSIZE=10000 +SAVEHIST=10000 +setopt appendhistory +setopt sharehistory + +# Completion System +autoload -Uz compinit && compinit + +# Prompt +PROMPT='%F{cyan}%n@docker%f %F{blue}%~%f %# ' + +# Aliases +alias ls='ls --color=auto' +alias ll='ls -lah' +EOF +# give access to image tool +ENV PATH="/opt/appimagetool-extracted/usr/bin/:$PATH" + + +
View file
avidemux2-2.8.2.git20260411.tar.xz/.devcontainer_bullseye/devcontainer.json
Added
@@ -0,0 +1,36 @@ +{ + /* A name for the dev container displayed in the UI */ + "name": "Avidemux", + /* container name when creating container */ + "image": "avidemux/avidemux_bullseye:latest", + /* mount the local folder to /workspaces folder of Docker image */ + "workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/avidemux,type=bind", + /* the path of workspace folder, which means that this folder will be opened after container is running + */ + "workspaceFolder": "/workspaces/avidemux", + /* mount the VS Code extensions to the target path, and then they don't need to be installed again when rebuilding the container + */ + "mounts": + "source=extensionCache,target=/root/.vscode-server/extensions,type=volume", + "source=/run/udev,target=/run/udev,type=bind,consistency=delegated" + , + /* follow the commands of Dockerfile to create the container + */ + "build": { + "dockerfile": "Dockerfile" + }, + /* Machine specific settings that should be copied into the container + */ + "settings": { + "terminal.integrated.defaultProfile.linux": "bash", + "idf.gitPath": "/usr/bin/git" + }, + /* An array of extensions that should be installed into the container. */ + "extensions": , + /* start the container with privileged mode, otherwise the devices cannot be accessed on the Docker image. + */ + "runArgs": "--privileged", + /* --device=/dev/alpha:/dev/beta + */ + "remoteUser": "bullseye" +}
View file
avidemux2-2.8.2.git20260407.tar.xz/.devcontainer_fedora/Dockerfile -> avidemux2-2.8.2.git20260411.tar.xz/.devcontainer_fedora/Dockerfile
Changed
@@ -41,6 +41,9 @@ RUN dnf -y install qt6-*{devel,doc}* RUN dnf -y clean all +RUN cd /tmp && git clone https://github.com/FFmpeg/nv-codec-headers.git && cd nv-codec-headers && make install + + WORKDIR /home/fedora/workspace RUN chown fedora:fedora /home/fedora/workspace
View file
avidemux2-2.8.2.git20260407.tar.xz/.devcontainer_mxe64/Dockerfile -> avidemux2-2.8.2.git20260411.tar.xz/.devcontainer_mxe64/Dockerfile
Changed
@@ -66,7 +66,7 @@ fuse patchelf python3-pip python3-setuptools squashfs-tools strace \ util-linux zsync libfuse2t64 \ zsh neovim \ - autoconf \ + autoconf \ automake \ autopoint \ bash \ @@ -102,7 +102,7 @@ nsis-doc \ nsis-pluginapi - RUN update-alternatives --install /usr/bin/python python /usr/bin/python3 10 \ +RUN update-alternatives --install /usr/bin/python python /usr/bin/python3 10 \ && : #libaften-dev \ @@ -149,6 +149,7 @@ echo "MXE_TARGETS := x86_64-w64-mingw32.shared" > settings.mk \ && echo "JOBS := 4" >> settings.mk && make qt6-qtbase RUN cd /opt/mxe && make qt6 +RUN cd /opt/mxe && make opencore-amr && make fdk-aac && make sdl3 RUN echo Done ENV PATH="/opt/mxe/usr/bin:/usr/local/bin:/opt/mxe/bin:/opt/mxe/usr/x86_64-pc-linux-gnu/qt6/bin/:${PATH}" # --- install libaom
View file
avidemux2-2.8.2.git20260407.tar.xz/.devcontainer_trixie/Dockerfile -> avidemux2-2.8.2.git20260411.tar.xz/.devcontainer_trixie/Dockerfile
Changed
@@ -69,6 +69,7 @@ libx264-dev libxvidcore-dev \ libmp3lame-dev libtwolame-dev libopus-dev libvorbis-dev libogg-dev \ libpng-dev libass-dev + RUN apt-get install -y \ libfaac-dev \ libfdk-aac-dev \ @@ -84,6 +85,14 @@ RUN update-alternatives --install /usr/bin/python python /usr/bin/python3 10 \ && : #libaften-dev \ +# Missing packages + RUN apt-get install -y \ + libopencore-amrnb-dev \ + libopencore-amrwb-dev \ + libdca-dev \ + libfaad-dev + + #libaften-dev # App image RUN wget --no-proxy https://github.com/AppImageCrafters/appimage-builder/releases/download/v1.1.0/appimage-builder-1.1.0-x86_64.AppImage && \ @@ -104,6 +113,9 @@ chmod +x /usr/local/bin/* RUN useradd -m trixie && usermod --shell /usr/bin/zsh trixie # +RUN cd /tmp && git clone https://github.com/FFmpeg/nv-codec-headers.git && cd nv-codec-headers && make install +# Cleanup +#RUN apt autoclean && apt autoremove # CMD "/bin/bash"
View file
avidemux2-2.8.2.git20260407.tar.xz/.devcontainer_ubuntu2510/Dockerfile -> avidemux2-2.8.2.git20260411.tar.xz/.devcontainer_ubuntu2510/Dockerfile
Changed
@@ -63,6 +63,9 @@ && update-alternatives --install /usr/bin/python python /usr/bin/python3 10 \ && : +RUN cd /tmp && git clone https://github.com/FFmpeg/nv-codec-headers.git && cd nv-codec-headers && make install + + RUN rm -f /etc/apt/apt.conf.d/01proxy # # Reuse Arm & Riscv toolchains
View file
avidemux2-2.8.2.git20260407.tar.xz/appImage/checkDeps.py -> avidemux2-2.8.2.git20260411.tar.xz/appImage/checkDeps.py
Changed
@@ -46,7 +46,7 @@ for root, _, files in os.walk(appdir_path): for f in files: # Check for shared objects or files in bin folders - if f.endswith(".so") or ".so." in f or "/bin/" in root: + if f.endswith(".so") or ".so." in f or "/bin/" in root or root.endswith("/bin"): all_targets.append(os.path.join(root, f)) # 2. Check each target for host leaks
View file
avidemux2-2.8.2.git20260407.tar.xz/avidemux/qt4/ADM_commonUI/DIA_prefs.cpp -> avidemux2-2.8.2.git20260411.tar.xz/avidemux/qt4/ADM_commonUI/DIA_prefs.cpp
Changed
@@ -14,8 +14,6 @@ #include "ADM_default.h" #include "config.h" -#include "prefs.h" -#include "ADM_Video.h" #include "ADM_pp.h" #include "ADM_qtx.h" @@ -30,6 +28,9 @@ #include "GUI_sdlRender.h" #endif +#include "prefs.h" +#include "ADM_indexingFlags.h" + extern const char *getNativeRendererDesc(int type); #ifdef USE_VDPAU @@ -212,8 +213,8 @@ { indexingFlags = ADM_IDX_FLAGS_DEFAULT; } -#if 0 uint32_t idxPsFiles = flagsToIdxSettings(indexingFlags, ADM_IDX_FLAGS_OFFSET_MPEGPS); +#if 0 uint32_t idxTsFiles = flagsToIdxSettings(indexingFlags, ADM_IDX_FLAGS_OFFSET_MPEGTS); #endif uint32_t idxMkvFiles = flagsToIdxSettings(indexingFlags, ADM_IDX_FLAGS_OFFSET_MATROSKA); @@ -497,15 +498,16 @@ {IDX_USE_SAVED, QT_TRANSLATE_NOOP("adm","Read-only"), NULL }, {IDX_WRITE_TO_DISK, QT_TRANSLATE_NOOP("adm","Enabled"), NULL } }; -#if 0 + diaElemMenu menuIndexingPs(&idxPsFiles, QT_TRANSLATE_NOOP("adm","MPEG-PS files:"), NB_ITEMS(indexingEntries), indexingEntries); +#if 0 diaElemMenu menuIndexingTs(&idxTsFiles, QT_TRANSLATE_NOOP("adm","MPEG-TS files:"), NB_ITEMS(indexingEntries), indexingEntries); #endif diaElemMenu menuIndexingMkv(&idxMkvFiles, QT_TRANSLATE_NOOP("adm","Matroska files:"), NB_ITEMS(indexingEntries), indexingEntries); diaElemMenu menuIndexingMp4(&idxMp4Files, QT_TRANSLATE_NOOP("adm","MP4 files:"), NB_ITEMS(indexingEntries), indexingEntries); -#if 0 frameIndexing.swallow(&menuIndexingPs); +#if 0 frameIndexing.swallow(&menuIndexingTs); #endif frameIndexing.swallow(&menuIndexingMkv); @@ -1003,8 +1005,8 @@ // Indexing indexingFlags = 0; -#if 0 indexingFlags += idxSettingsToFlags(idxPsFiles, ADM_IDX_FLAGS_OFFSET_MPEGPS); +#if 0 indexingFlags += idxSettingsToFlags(idxTsFiles, ADM_IDX_FLAGS_OFFSET_MPEGTS); #endif indexingFlags += idxSettingsToFlags(idxMkvFiles, ADM_IDX_FLAGS_OFFSET_MATROSKA);
View file
avidemux2-2.8.2.git20260407.tar.xz/avidemux_core/ADM_coreDemuxer/include/ADM_Video.h -> avidemux2-2.8.2.git20260411.tar.xz/avidemux_core/ADM_coreDemuxer/include/ADM_Video.h
Changed
@@ -38,20 +38,6 @@ #define ADM_COL_FLAG_MATRIX_COEFF_SET (1<<3) #define ADM_COL_FLAG_HDR_INFO_SET (1<<4) -#define ADM_IDX_FLAG_WRITE_INDEX_FILE 1 -#define ADM_IDX_FLAG_IGNORE_INDEX_FILE (1<<1) - -#define ADM_IDX_FLAGS_OFFSET_MPEGPS 0 -#define ADM_IDX_FLAGS_OFFSET_MPEGTS 4 -#define ADM_IDX_FLAGS_OFFSET_MATROSKA 8 -#define ADM_IDX_FLAGS_OFFSET_MP4 12 - -#define ADM_IDX_FLAGS_DEFAULT \ -((ADM_IDX_FLAG_WRITE_INDEX_FILE << ADM_IDX_FLAGS_OFFSET_MPEGPS) + \ - (ADM_IDX_FLAG_WRITE_INDEX_FILE << ADM_IDX_FLAGS_OFFSET_MPEGTS) + \ - (ADM_IDX_FLAG_WRITE_INDEX_FILE << ADM_IDX_FLAGS_OFFSET_MATROSKA) + \ - (ADM_IDX_FLAG_WRITE_INDEX_FILE << ADM_IDX_FLAGS_OFFSET_MP4)) - typedef struct { uint32_t encoding; // Same as in wavheader
View file
avidemux2-2.8.2.git20260411.tar.xz/avidemux_core/ADM_coreDemuxer/include/ADM_indexingFlags.h
Added
@@ -0,0 +1,37 @@ +/*************************************************************************** + * Definitions used to store indexing settings for various demuxers * + * in a single uint32_t value * + * Copyright (C) 2026 eumagga0x2a * + ***************************************************************************/ + +/*************************************************************************** + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + ***************************************************************************/ +#ifndef ADM_IDX_FLAGS_H +#define ADM_IDX_FLAGS_H + +// Allow a particular demuxer to create index files on disk. +// If unset, use existing ones if possible, else create index in-memory. +#define ADM_IDX_FLAG_WRITE_INDEX_FILE 1 +// Create index in-memory, even if a matching valid index file on disk exists. +#define ADM_IDX_FLAG_IGNORE_INDEX_FILE (1<<1) + +// Each demuxer has 4 bits in a single uint32_t preference. +#define ADM_IDX_FLAGS_OFFSET_MPEGPS 0 +#define ADM_IDX_FLAGS_OFFSET_MPEGTS 4 +#define ADM_IDX_FLAGS_OFFSET_MATROSKA 8 +#define ADM_IDX_FLAGS_OFFSET_MP4 12 + +// By default, create index files on disk. +#define ADM_IDX_FLAGS_DEFAULT \ +((ADM_IDX_FLAG_WRITE_INDEX_FILE << ADM_IDX_FLAGS_OFFSET_MPEGPS) + \ + (ADM_IDX_FLAG_WRITE_INDEX_FILE << ADM_IDX_FLAGS_OFFSET_MPEGTS) + \ + (ADM_IDX_FLAG_WRITE_INDEX_FILE << ADM_IDX_FLAGS_OFFSET_MATROSKA) + \ + (ADM_IDX_FLAG_WRITE_INDEX_FILE << ADM_IDX_FLAGS_OFFSET_MP4)) + +#endif
View file
avidemux2-2.8.2.git20260407.tar.xz/avidemux_core/ADM_coreDemuxerMpeg/include/ADM_indexFile.h -> avidemux2-2.8.2.git20260411.tar.xz/avidemux_core/ADM_coreDemuxerMpeg/include/ADM_indexFile.h
Changed
@@ -66,7 +66,7 @@ indexFile(); ~indexFile(); - bool open(const char *name); + bool open(const char *name, bool memOnly = false); bool close(void); bool goToSection(const char *section); bool readSection(const char *section);
View file
avidemux2-2.8.2.git20260407.tar.xz/avidemux_core/ADM_coreDemuxerMpeg/src/ADM_indexFile.cpp -> avidemux2-2.8.2.git20260411.tar.xz/avidemux_core/ADM_coreDemuxerMpeg/src/ADM_indexFile.cpp
Changed
@@ -118,9 +118,10 @@ */ -bool indexFile::open(const char *name) +bool indexFile::open(const char *name, bool memOnly) { - file=ADM_fopen(name,"rt"); + if(!memOnly) + file = ADM_fopen(name,"rt"); if(!file) { mFile = mfopen(name,"rt");
View file
avidemux2-2.8.2.git20260407.tar.xz/avidemux_plugins/ADM_demuxers/Matroska/ADM_mkvIndexer.cpp -> avidemux2-2.8.2.git20260411.tar.xz/avidemux_plugins/ADM_demuxers/Matroska/ADM_mkvIndexer.cpp
Changed
@@ -26,6 +26,7 @@ #include "ADM_videoInfoExtractor.h" #include "ADM_vidMisc.h" #include "ADM_metaToFile.h" +#include "ADM_indexingFlags.h" #include "prefs.h" #define VIDEO _tracks0
View file
avidemux2-2.8.2.git20260407.tar.xz/avidemux_plugins/ADM_demuxers/Mp4/ADM_mp4.cpp -> avidemux2-2.8.2.git20260411.tar.xz/avidemux_plugins/ADM_demuxers/Mp4/ADM_mp4.cpp
Changed
@@ -73,7 +73,7 @@ #include "ADM_mp3info.h" #include "ADM_dcainfo.h" #include "ADM_audioXiphUtils.h" - +#include "ADM_indexingFlags.h" #include "prefs.h" #if 1
View file
avidemux2-2.8.2.git20260407.tar.xz/avidemux_plugins/ADM_demuxers/MpegPS/ADM_ps.cpp -> avidemux2-2.8.2.git20260411.tar.xz/avidemux_plugins/ADM_demuxers/MpegPS/ADM_ps.cpp
Changed
@@ -18,14 +18,16 @@ #include "fourcc.h" #include "DIA_coreToolkit.h" #include "ADM_indexFile.h" +#include "ADM_indexingFlags.h" #include "ADM_ps.h" +#include "prefs.h" #include <math.h> #define MY_CLASS psHeader #include "ADM_coreDemuxerMpegTemplate.cpp.h" uint32_t ADM_UsecFromFps1000(uint32_t fps1000); -uint8_t psIndexer(const char *file); +uint8_t psIndexer(const char *file, bool memOnly); /** \fn open @@ -36,11 +38,29 @@ { char *idxName=(char *)malloc(strlen(name)+6); uint8_t r=1; + bool createIndexOnDisk = true; + bool memOnly = false; + + uint32_t indexingFlags = ADM_IDX_FLAGS_DEFAULT; + if (prefs->get(INDEXING_INDEXING_FLAGS, &indexingFlags)) + { + indexingFlags >>= ADM_IDX_FLAGS_OFFSET_MPEGPS; + if (!(indexingFlags & ADM_IDX_FLAG_WRITE_INDEX_FILE)) + { + createIndexOnDisk = false; + } + if (indexingFlags & ADM_IDX_FLAG_IGNORE_INDEX_FILE) + { + createIndexOnDisk = false; + memOnly = true; + ADM_info("Mem-only indexing.\n"); + } + } sprintf(idxName,"%s.idx2",name); ListOfIndexFiles.push_back(idxName); - if(!ADM_fileExist(idxName)) - r=psIndexer(name); + if(memOnly || !ADM_fileExist(idxName)) + r=psIndexer(name, !createIndexOnDisk); if(r!=ADM_OK) { if(r==ADM_IGN) @@ -61,9 +81,9 @@ indexFile index; r=0; - if(!index.open(idxName)) + if(!index.open(idxName, memOnly)) { - printf("psDemux Cannot open index file %s\n",idxName); + printf("psDemux Cannot open %s file %s\n", memOnly ? "in-memory index" : "index", idxName); free(idxName); return false; } @@ -202,14 +222,18 @@ } abt: index.close(); - if(reindex) + if(reindex && !memOnly && !loopBreaker) { uint8_t success=ADM_eraseFile(idxName); free(idxName); if(success) + { + loopBreaker = true; r=open(name); - else + }else + { ADM_error("Can't delete old index file.\n"); + } }else { free(idxName); @@ -275,6 +299,7 @@ { #define PS_INVALID 0xFFFFFFFF fieldEncoded=false; + loopBreaker = false; lastFrame = PS_INVALID; videoTrackSize=0; videoDuration = ADM_NO_PTS;
View file
avidemux2-2.8.2.git20260407.tar.xz/avidemux_plugins/ADM_demuxers/MpegPS/ADM_ps.h -> avidemux2-2.8.2.git20260411.tar.xz/avidemux_plugins/ADM_demuxers/MpegPS/ADM_ps.h
Changed
@@ -116,6 +116,7 @@ { protected: bool fieldEncoded; + bool loopBreaker; uint32_t lastFrame; uint64_t videoTrackSize; uint64_t videoDuration;
View file
avidemux2-2.8.2.git20260407.tar.xz/avidemux_plugins/ADM_demuxers/MpegPS/ADM_psComputeTimeStamp.cpp -> avidemux2-2.8.2.git20260411.tar.xz/avidemux_plugins/ADM_demuxers/MpegPS/ADM_psComputeTimeStamp.cpp
Changed
@@ -7,7 +7,6 @@ #include "ADM_default.h" #include "fourcc.h" #include "DIA_coreToolkit.h" -#include "ADM_indexFile.h" #include "ADM_ps.h" #include <math.h>
View file
avidemux2-2.8.2.git20260407.tar.xz/avidemux_plugins/ADM_demuxers/MpegPS/ADM_psIndex.cpp -> avidemux2-2.8.2.git20260411.tar.xz/avidemux_plugins/ADM_demuxers/MpegPS/ADM_psIndex.cpp
Changed
@@ -121,7 +121,7 @@ public: PsIndexer(void); ~PsIndexer(); - uint8_t run(const char *file); + uint8_t run(const char *file, bool mem); bool writeVideo(PSVideo *video); bool writeAudio(void); bool writeSystem(const char *filename,bool append); @@ -140,11 +140,11 @@ \fn psIndexer \brief main indexing loop for mpeg2 payload */ -uint8_t psIndexer(const char *file) +uint8_t psIndexer(const char *file, bool memOnly) { uint8_t r; PsIndexer *dx=new PsIndexer; - r=dx->run(file); + r=dx->run(file,memOnly); delete dx; return r; } @@ -177,7 +177,7 @@ /** \fn run */ -uint8_t PsIndexer::run(const char *file) +uint8_t PsIndexer::run(const char *file, bool mem) { uint32_t temporal_ref,val; uint64_t fullSize; @@ -197,14 +197,20 @@ char *indexName=(char *)malloc(strlen(file)+6); sprintf(indexName,"%s.idx2",file); - index=qfopen(indexName,"wt",true); + index = mem ? NULL : qfopen(indexName,"wt",true); if(!index) { - printf("PsIndex Cannot create %s\n",indexName); + if (mem) + ADM_info("Forcing in-memory indexing.\n"); + else + ADM_warning("Cannot create index file \"%s\"\n", indexName); mFile = mfopen(indexName,"wt"); if (!mFile) { - printf("PsIndex Cannot create memFile either\n"); + if (mem) + ADM_error("Cannot create memFile!\n"); + else + ADM_error("Cannot create memFile either.\n"); free(indexName); return 0; }
View file
avidemux2-2.8.2.git20260411.tar.xz/devpod_debianbullseye.bash
Added
@@ -0,0 +1,1 @@ +devpod up . --ide none --id adm-bullseye --devcontainer-path .devcontainer_bullseye/devcontainer.json
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.