1
0
Files
avidemux_shaders/gopro_8:7/preset_gopro_8:7.py
2025-10-09 04:46:19 +02:00

134 lines
4.1 KiB
Python

#PY <- Needed to identify #
# Fisheye removal for GoPro 11+, 8:7 ratio, without hypersmooth
# Copyright (C) 2025 Roz K <roz@rozk.net>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
adm = Avidemux()
adm.videoCodec(
"x264",
"useAdvancedConfiguration=False",
"general.params=CBR=65536",
"general.threads=0",
"general.preset=slow",
"general.tuning=film",
"general.profile=high",
"general.fast_decode=False",
"general.zero_latency=True",
"general.fast_first_pass=False",
"general.blueray_compatibility=False",
"general.fake_interlaced=False",
"level=-1",
"vui.sar_height=1",
"vui.sar_width=1",
"vui.overscan=0",
"vui.vidformat=5",
"vui.fullrange=False",
"vui.colorprim=2",
"vui.transfer=2",
"vui.colmatrix=2",
"vui.chroma_loc=0",
"MaxRefFrames=3",
"MinIdr=25",
"MaxIdr=250",
"i_scenecut_threshold=40",
"intra_refresh=False",
"MaxBFrame=3",
"i_bframe_adaptive=1",
"i_bframe_bias=0",
"i_bframe_pyramid=2",
"b_deblocking_filter=True",
"i_deblocking_filter_alphac0=0",
"i_deblocking_filter_beta=0",
"cabac=True",
"interlaced=False",
"constrained_intra=False",
"tff=True",
"fake_interlaced=False",
"analyze.b_8x8=True",
"analyze.b_i4x4=True",
"analyze.b_i8x8=True",
"analyze.b_p8x8=True",
"analyze.b_p16x16=False",
"analyze.b_b16x16=False",
"analyze.weighted_pred=2",
"analyze.weighted_bipred=True",
"analyze.direct_mv_pred=1",
"analyze.chroma_offset=0",
"analyze.me_method=1",
"analyze.me_range=16",
"analyze.mv_range=-1",
"analyze.mv_range_thread=-1",
"analyze.subpel_refine=7",
"analyze.chroma_me=True",
"analyze.mixed_references=True",
"analyze.trellis=1",
"analyze.psy_rd=1.000000",
"analyze.psy_trellis=0.000000",
"analyze.fast_pskip=True",
"analyze.dct_decimate=True",
"analyze.noise_reduction=0",
"analyze.psy=True",
"analyze.intra_luma=11",
"analyze.inter_luma=21",
"ratecontrol.rc_method=0",
"ratecontrol.qp_constant=0",
"ratecontrol.qp_min=10",
"ratecontrol.qp_max=51",
"ratecontrol.qp_step=4",
"ratecontrol.bitrate=0",
"ratecontrol.rate_tolerance=1.000000",
"ratecontrol.vbv_max_bitrate=0",
"ratecontrol.vbv_buffer_size=0",
"ratecontrol.vbv_buffer_init=1",
"ratecontrol.ip_factor=1.400000",
"ratecontrol.pb_factor=1.300000",
"ratecontrol.aq_mode=1",
"ratecontrol.aq_strength=1.000000",
"ratecontrol.mb_tree=True",
"ratecontrol.lookahead=40")
adm.addVideoFilter(
"shaderLoader", "shaderFile=/opt/rk/avidemux/unfish_gopro_8:7.glsl")
adm.addVideoFilter(
"swscale",
"width=2468",
"height=2160",
"algo=2",
"sourceAR=0",
"targetAR=0",
"lockAR=False",
"roundup=0")
adm.audioClearTracks()
if adm.audioTotalTracksCount() <= 0:
raise("Cannot add audio track 0, total tracks: " + str(adm.audioTotalTracksCount()))
adm.audioAddTrack(0)
adm.audioCodec(0, "LavAAC", "bitrate=192")
adm.audioSetDrc2(0, 1, 1, 0.001, 0.2, 1, 2, -12)
adm.audioSetEq(0, 0, 0, 0, 0, 880, 5000)
adm.audioSetChannelGains(0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
adm.audioSetChannelDelays(0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
adm.audioSetChannelRemap(0, 0, 0, 1, 2, 3, 4, 5, 6, 7, 8)
adm.audioSetShift(0, 0, 0)
adm.audioSetNormalize2(0, 1, 10, -30)
adm.setContainer(
"MP4",
"muxerType=0",
"optimize=1",
"forceAspectRatio=False",
"aspectRatio=1",
"displayWidth=1280",
"rotation=0",
"clockfreq=0")