@@ -1,17 +1,45 @@
1−--- convert/convert_script.lua 2016-03-18 19:30:49.675401969 +0100
1+diff --git "a/Convert Script \342\200\223 README.md" "b/Convert Script \342\200\223 README.md"
2−+++ convert_script.lua 2016-03-19 01:18:00.801897043 +0100
2+index 8e062c1..6e0d798 100644
3−@@ -3,6 +3,10 @@
3+--- "a/Convert Script \342\200\223 README.md"
4++++ "b/Convert Script \342\200\223 README.md"
5+@@ -68,7 +68,7 @@ and set some options in ``mpv/lua-settings/convert_script.conf`` or with ``--scr
6+ If you don’t want to upgrade your yad. Features like appending segments won’t be available.
11+ FPS settings (or any other settings really) for libvpx encoding. Set it to --ofps=24000/1001 for example.
13+-Warning: Some of these options aren’t very robust and setting them to bogus values will break the script.
14+\ No newline at end of file
15++Warning: Some of these options aren’t very robust and setting them to bogus values will break the script.
16+diff --git a/convert_script.lua b/convert_script.lua
17+index 17d3100..90f88ec 100644
18+--- a/convert_script.lua
19++++ b/convert_script.lua
20+@@ -3,6 +3,12 @@ local msg = require 'mp.msg'
4 local opt = require 'mp.options'
21 local opt = require 'mp.options'
5 local utils = require 'mp.utils'
22 local utils = require 'mp.utils'
7−+local NOTIFY_CMD = "notify-send"
24++-- executables
8−+local YAD_CMD = "yad"
25++local mkvpropedit_exe = "mkvpropedit"
9−+local MKVMERGE_CMD = "mkvmerge"
26++local mkvmerge_exe = "mkvmerge"
27++local yad_exe = "yad"
28++local notify_send_exe = "notify-send"
11 -- default options, convert_script.conf is read
30 -- default options, convert_script.conf is read
12 local options = {
31 local options = {
13 bitrate_multiplier = 0.975, -- to make sure the file won’t go over the target file size, set it to 1 if you don’t care
32 bitrate_multiplier = 0.975, -- to make sure the file won’t go over the target file size, set it to 1 if you don’t care
14−@@ -247,12 +247,12 @@
33+@@ -14,7 +20,7 @@ local options = {
34+ libvpx_options = "--ovcopts-add=cpu-used=0,auto-alt-ref=1,lag-in-frames=25,quality=good",
35+ libvpx_vp9_options = "",
36+ legacy_yad = false, -- if you don’t want to upgrade to at least yad 0.18
37+- libvpx_fps = "--oautofps", -- --ofps=24000/1001 for example
38++ libvpx_fps = "", -- --ofps=24000/1001 for example
39+ audio_bitrate = 112, -- mpv default, in kbps
42+@@ -247,12 +253,12 @@ function encode(enc)
15 if string.len(vf) > 0 then
43 if string.len(vf) > 0 then
16 vf = vf .. ","
44 vf = vf .. ","
@@ -26,42 +54,49 @@
26 local audio_file = ""
54 local audio_file = ""
27 for index, param in pairs(audio_file_table) do
55 for index, param in pairs(audio_file_table) do
28 audio_file = audio_file .. " --audio-file='" .. string.gsub(tostring(param), "'", "'\\''") .. "'"
56 audio_file = audio_file .. " --audio-file='" .. string.gsub(tostring(param), "'", "'\\''") .. "'"
29−@@ -354,9 +358,9 @@
57+@@ -354,9 +360,9 @@ function encode(enc)
30 if ovc == "gif" then
58 if ovc == "gif" then
31 full_command = full_command .. ' --vf-add=lavfi=graph=\\"framestep=' .. framestep .. '\\" && convert '
59 full_command = full_command .. ' --vf-add=lavfi=graph=\\"framestep=' .. framestep .. '\\" && convert '
32 .. tmpfolder .. '/*.png -set delay ' .. delay .. ' -loop 0 -fuzz ' .. fuzz .. '% ' .. dither .. ' -layers optimize '
60 .. tmpfolder .. '/*.png -set delay ' .. delay .. ' -loop 0 -fuzz ' .. fuzz .. '% ' .. dither .. ' -layers optimize '
33- .. full_output_path .. ' && rm -rf ' .. tmpfolder .. ' && notify-send "Gif done") & disown'
61- .. full_output_path .. ' && rm -rf ' .. tmpfolder .. ' && notify-send "Gif done") & disown'
34−+ .. full_output_path .. ' && rm -rf ' .. tmpfolder .. ' && ' .. NOTIFY_CMD .. ' "Gif done") & disown'
62++ .. full_output_path .. ' && rm -rf ' .. tmpfolder .. ' && ' .. notify_send_exe .. ' "Gif done") & disown'
36- full_command = full_command .. ' && notify-send "Encoding done"; mkvpropedit '
64- full_command = full_command .. ' && notify-send "Encoding done"; mkvpropedit '
37−+ full_command = full_command .. ' && ' .. NOTIFY_CMD .. ' "Encoding done"; mkvpropedit '
65++ full_command = full_command .. ' && ' .. notify_send_exe .. ' "Encoding done"; ' .. mkvpropedit_exe .. ' '
38 .. full_output_path .. ' -s title="' .. metadata_title .. '") & disown'
66 .. full_output_path .. ' -s title="' .. metadata_title .. '") & disown'
41−@@ -409,7 +413,7 @@
69+@@ -409,7 +415,7 @@ function encode_copy(enc)
42 sep = ",+"
70 sep = ",+"
44 if enc then
72 if enc then
45- local command = "mkvmerge '" .. video .. "' " .. mkvmerge_parts .. " -o " .. full_output_path
73- local command = "mkvmerge '" .. video .. "' " .. mkvmerge_parts .. " -o " .. full_output_path
46−+ local command = MKVMERGE_CMD .. " '" .. video .. "' " .. mkvmerge_parts .. " -o " .. full_output_path
74++ local command = mkvmerge_exe .. " '" .. video .. "' " .. mkvmerge_parts .. " -o " .. full_output_path
47 msg.info(command)
75 msg.info(command)
48 os.execute(command)
76 os.execute(command)
50−@@ -508,7 +512,7 @@
78+@@ -508,7 +514,7 @@ function call_gui ()
54- local yad_command = [[LC_NUMERIC=C yad --title="Convert Script" --center --form --fixed --always-print-result \
82- local yad_command = [[LC_NUMERIC=C yad --title="Convert Script" --center --form --fixed --always-print-result \
55−+ local yad_command = [[LC_NUMERIC=C ]] .. YAD_CMD .. [[ --title="Convert Script" --center --form --fixed --always-print-result \
83++ local yad_command = [[LC_NUMERIC=C ]] .. yad_exe .. [[ --title="Convert Script" --center --form --fixed --always-print-result \
56 --name "convert script" --class "Convert Script" --field="Resize to height:NUM" "]] .. scale_sav --yad_table 1
84 --name "convert script" --class "Convert Script" --field="Resize to height:NUM" "]] .. scale_sav --yad_table 1
57 .. [[" --field="Resize to width instead:CHK" ]] .. resize_to_width_instead .. " " --yad_table 2
85 .. [[" --field="Resize to width instead:CHK" ]] .. resize_to_width_instead .. " " --yad_table 2
58 if options.legacy_yad then
86 if options.legacy_yad then
59−@@ -543,7 +547,7 @@
87+@@ -524,7 +530,7 @@ function call_gui ()
60− yad_command = yad_command .. [[ --button="Crop:1" --button="gtk-cancel:2" --button="gtk-ok:0"; ret=$? && echo $ret]]
88+ yad_command = yad_command
61−
89+ .. [[--field="2pass:CHK" "false" ]] --yad_table 5
62− if gif_dialog then
90+ .. [[--field="Encode options::CBE" '! --ovcopts=b=2000,cpu-used=0,auto-alt-ref=1,lag-in-frames=25,quality=good,threads=4' ]] --yad_table 6
63−- yad_command = [[echo $(LC_NUMERIC=C yad --title="Gif settings" --name "convert script" --class "Convert Script" \
91+- .. [[--field="Output format::CBE" ' --ovc=libx264! --oautofps --of=webm --ovc=libvpx' ]]
64−+ yad_command = [[echo $(LC_NUMERIC=C ]] .. YAD_CMD .. [[ --title="Gif settings" --name "convert script" --class "Convert Script" \
92++ .. [[--field="Output format::CBE" ' --ovc=libx264! --of=webm --ovc=libvpx' ]]
65− --center --form --always-print-result --separator="…" \
93+ .. [[--field="Simple:FBTN" 'bash -c "echo \"simple\" && kill -s SIGUSR1 \"$YAD_PID\""' ]]
66− --field="Fuzz Factor:NUM" '1!0..100!0.5!1' \
94+ advanced = true
67− --field="Framestep:NUM" '3!1..3!1' \
95+ else
96+@@ -734,4 +740,4 @@ mp.set_key_bindings({
98+ mp.add_key_binding("alt+w", "convert_script", convert_script_hotkey_call)
100+-mp.register_event("tick", tick)
101+\ No newline at end of file
102++mp.register_event("tick", tick)