comparison ffmpeg_converter.xml @ 0:dda39fc5dc6d draft default tip

planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/ffmpeg commit 528a2a0d7dc5d1a872e00dddee8395e463477568
author bgruening
date Wed, 17 Dec 2025 18:11:42 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:dda39fc5dc6d
1 <tool id="ffmpeg_converter" name="FFmpeg Format Converter" version="0.1.3" profile="24.2">
2 <description>Convert between video and audio formats</description>
3 <requirements>
4 <requirement type="package" version="7.1.1">ffmpeg</requirement>
5 </requirements>
6 <command detect_errors="exit_code">
7 <![CDATA[
8 ffmpeg -i '$input_file' output.${output_format} &&
9 mv output.${output_format} '$output_file'
10 ]]>
11 </command>
12 <inputs>
13 <param name="input_file" type="data" format="mp4,mov,avi,mkv,webm,mp3,wav,flac,ogg,m4a" label="Input media file"/>
14 <param name="output_format" type="select" label="Output format">
15 <option value="mp4">MP4 (video)</option>
16 <option value="mkv">MKV (video)</option>
17 <option value="avi">AVI (video)</option>
18 <option value="mov">MOV (video)</option>
19 <option value="webm">WebM (video)</option>
20 <option value="mp3">MP3 (audio)</option>
21 <option value="wav">WAV (audio)</option>
22 <option value="flac">FLAC (audio)</option>
23 <option value="ogg">OGG (audio)</option>
24 <option value="m4a">M4A (audio)</option>
25 </param>
26 </inputs>
27 <outputs>
28 <data name="output_file" format="ogg" label="Converted file (${output_format})">
29 <change_format>
30 <when input="output_format" value="mp4" format="mp4"/>
31 <when input="output_format" value="mkv" format="mkv"/>
32 <when input="output_format" value="avi" format="avi"/>
33 <when input="output_format" value="mov" format="mov"/>
34 <when input="output_format" value="webm" format="webm"/>
35 <when input="output_format" value="mp3" format="mp3"/>
36 <when input="output_format" value="wav" format="wav"/>
37 <when input="output_format" value="flac" format="flac"/>
38 <when input="output_format" value="m4a" format="m4a"/>
39 </change_format>
40 </data>
41 </outputs>
42 <tests>
43 <test expect_num_outputs="1">
44 <param name="input_file" value="SampleVideo_360x240_cut.mp4" ftype="mp4"/>
45 <param name="output_format" value="webm"/>
46 <output name="output_file" ftype="webm">
47 <assert_contents>
48 <has_size value="107485" delta="8000"/>
49 </assert_contents>
50 </output>
51 </test>
52 <test expect_num_outputs="1">
53 <param name="input_file" value="SampleVideo_360x240_cut.mp4" ftype="mp4"/>
54 <param name="output_format" value="flac"/>
55 <output name="output_file" ftype="flac">
56 <assert_contents>
57 <has_size value="630917" delta="8000"/>
58 </assert_contents>
59 </output>
60 </test>
61 <test expect_num_outputs="1">
62 <param name="input_file" value="SampleVideo_360x240_cut.mp4" ftype="mp4"/>
63 <param name="output_format" value="mp3"/>
64 <output name="output_file" ftype="mp3">
65 <assert_contents>
66 <has_size value="32979" delta="8000" />
67 </assert_contents>
68 </output>
69 </test>
70 <test expect_num_outputs="1">
71 <param name="input_file" value="SampleVideo_360x240_cut.flac" ftype="flac"/>
72 <param name="output_format" value="ogg"/>
73 <output name="output_file" ftype="ogg">
74 <assert_contents>
75 <has_size value="67376" delta="8000" />
76 </assert_contents>
77 </output>
78 </test>
79 <test expect_num_outputs="1">
80 <param name="input_file" value="SampleVideo_360x240_cut.mp4" ftype="mp4"/>
81 <param name="output_format" value="mkv"/>
82 <output name="output_file" ftype="mkv">
83 <assert_contents>
84 <has_size value="107489" delta="8000"/>
85 </assert_contents>
86 </output>
87 </test>
88 <test expect_num_outputs="1">
89 <param name="input_file" value="SampleVideo_360x240_cut.mp3" ftype="mp3"/>
90 <param name="output_format" value="m4a"/>
91 <output name="output_file" ftype="m4a">
92 <assert_contents>
93 <has_size value="33170" delta="8000" />
94 </assert_contents>
95 </output>
96 </test>
97 </tests>
98 <help>
99 This tool uses FFmpeg to convert between common video and audio file formats.
100
101 Input formats:
102 - Video: MP4, MOV, AVI, MKV, WebM
103 - Audio: MP3, WAV, FLAC, AAC, OGG, M4A
104
105 Select the output format you want, and FFmpeg will handle the conversion.
106 </help>
107 <citations>
108 <citation type="bibtex">
109 @article{tomar2006converting,
110 title={Converting video formats with FFmpeg},
111 author={Tomar, Suramya},
112 journal={Linux Journal},
113 volume={2006},
114 number={146},
115 pages={10},
116 year={2006},
117 publisher={Belltown Media}
118 }
119 </citation>
120 </citations>
121 </tool>