TonieToolbox 0.2.0__tar.gz → 0.2.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. {tonietoolbox-0.2.0/TonieToolbox.egg-info → tonietoolbox-0.2.1}/PKG-INFO +40 -26
  2. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/README.md +39 -25
  3. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox/__init__.py +1 -1
  4. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox/__main__.py +23 -23
  5. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1/TonieToolbox.egg-info}/PKG-INFO +40 -26
  6. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/LICENSE.md +0 -0
  7. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/MANIFEST.in +0 -0
  8. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox/audio_conversion.py +0 -0
  9. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox/constants.py +0 -0
  10. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox/dependency_manager.py +0 -0
  11. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox/filename_generator.py +0 -0
  12. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox/logger.py +0 -0
  13. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox/ogg_page.py +0 -0
  14. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox/opus_packet.py +0 -0
  15. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox/recursive_processor.py +0 -0
  16. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox/tonie_analysis.py +0 -0
  17. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox/tonie_file.py +0 -0
  18. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox/tonie_header.proto +0 -0
  19. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox/tonie_header_pb2.py +0 -0
  20. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox/version_handler.py +0 -0
  21. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox.egg-info/SOURCES.txt +0 -0
  22. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox.egg-info/dependency_links.txt +0 -0
  23. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox.egg-info/entry_points.txt +0 -0
  24. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox.egg-info/requires.txt +0 -0
  25. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/TonieToolbox.egg-info/top_level.txt +0 -0
  26. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/pyproject.toml +0 -0
  27. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/setup.cfg +0 -0
  28. {tonietoolbox-0.2.0 → tonietoolbox-0.2.1}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: TonieToolbox
3
- Version: 0.2.0
3
+ Version: 0.2.1
4
4
  Summary: Convert audio files to Tonie box compatible format
5
5
  Home-page: https://github.com/Quentendo64/TonieToolbox
6
6
  Author: Quentendo64
@@ -159,15 +159,14 @@ tonietoolbox --recursive --output-to-source "Music/Albums"
159
159
  Run the following command to see all available options:
160
160
 
161
161
  ```
162
- tonietoolbox --help
162
+ tonietoolbox -h
163
163
  ```
164
164
 
165
165
  Output:
166
166
  ```
167
- usage: TonieToolbox.py [-h] [--ts TIMESTAMP] [--ffmpeg FFMPEG] [--opusenc OPUSENC]
168
- [--bitrate BITRATE] [--cbr] [--append-tonie-tag TAG]
169
- [--no-tonie-header] [--info] [--split] [--recursive] [--output-to-source]
170
- [--compare FILE2] [--detailed-compare] [--debug] [--trace] [--quiet] [--silent]
167
+ usage: TonieToolbox.py [-h] [-v] [-t TIMESTAMP] [-f FFMPEG] [-o OPUSENC]
168
+ [-b BITRATE] [-c] [-a TAG] [-n] [-i] [-s] [-r] [-O]
169
+ [-A] [-k] [-C FILE2] [-D] [-d] [-T] [-q] [-Q]
171
170
  SOURCE [TARGET]
172
171
 
173
172
  Create Tonie compatible file from Ogg opus file(s).
@@ -178,25 +177,40 @@ positional arguments:
178
177
 
179
178
  optional arguments:
180
179
  -h, --help show this help message and exit
181
- --ts TIMESTAMP set custom timestamp / bitstream serial / reference .taf file
182
- --ffmpeg FFMPEG specify location of ffmpeg
183
- --opusenc OPUSENC specify location of opusenc
184
- --bitrate BITRATE set encoding bitrate in kbps (default: 96)
185
- --cbr encode in cbr mode
186
- --append-tonie-tag TAG append [TAG] to filename (must be an 8-character hex value)
187
- --no-tonie-header do not write Tonie header
188
- --info Check and display info about Tonie file
189
- --split Split Tonie file into opus tracks
190
- --recursive Process folders recursively
191
- --output-to-source Save output files in the source directory instead of output directory
192
- --compare FILE2 Compare input file with another .taf file for debugging
193
- --detailed-compare Show detailed OGG page differences when comparing files
180
+ -v, --version show program version and exit
181
+ -t, --timestamp TIMESTAMP
182
+ set custom timestamp / bitstream serial / reference .taf file
183
+ -f, --ffmpeg FFMPEG specify location of ffmpeg
184
+ -o, --opusenc OPUSENC specify location of opusenc
185
+ -b, --bitrate BITRATE set encoding bitrate in kbps (default: 96)
186
+ -c, --cbr encode in cbr mode
187
+ -a, --append-tonie-tag TAG
188
+ append [TAG] to filename (must be an 8-character hex value)
189
+ -n, --no-tonie-header do not write Tonie header
190
+ -i, --info Check and display info about Tonie file
191
+ -s, --split Split Tonie file into opus tracks
192
+ -r, --recursive Process folders recursively
193
+ -O, --output-to-source
194
+ Save output files in the source directory instead of output directory
195
+ -A, --auto-download Automatically download FFmpeg and opusenc if needed
196
+ -k, --keep-temp Keep temporary opus files in a temp folder for testing
197
+ -C, --compare FILE2 Compare input file with another .taf file for debugging
198
+ -D, --detailed-compare
199
+ Show detailed OGG page differences when comparing files
200
+
201
+ Version Check Options:
202
+ -S, --skip-update-check
203
+ Skip checking for updates
204
+ -F, --force-refresh-cache
205
+ Force refresh of update information from PyPI
206
+ -X, --clear-version-cache
207
+ Clear cached version information
194
208
 
195
209
  Logging Options:
196
- --debug Enable debug logging
197
- --trace Enable trace logging (very verbose)
198
- --quiet Show only warnings and errors
199
- --silent Show only errors
210
+ -d, --debug Enable debug logging
211
+ -T, --trace Enable trace logging (very verbose)
212
+ -q, --quiet Show only warnings and errors
213
+ -Q, --silent Show only errors
200
214
  ```
201
215
 
202
216
  ### Common Usage Examples
@@ -230,9 +244,9 @@ tonietoolbox file1.taf --compare file2.taf --detailed-compare
230
244
  #### Custom timestamp options:
231
245
 
232
246
  ```
233
- tonietoolbox input.mp3 --ts 1745078762 # UNIX Timestamp
234
- tonietoolbox input.mp3 --ts 0x6803C9EA # Bitstream time
235
- tonietoolbox input.mp3 --ts ./reference.taf # Reference TAF for extraction
247
+ tonietoolbox input.mp3 --timestamp 1745078762 # UNIX Timestamp
248
+ tonietoolbox input.mp3 --timestamp 0x6803C9EA # Bitstream time
249
+ tonietoolbox input.mp3 --timestamp ./reference.taf # Reference TAF for extraction
236
250
  ```
237
251
 
238
252
  #### Set custom bitrate:
@@ -132,15 +132,14 @@ tonietoolbox --recursive --output-to-source "Music/Albums"
132
132
  Run the following command to see all available options:
133
133
 
134
134
  ```
135
- tonietoolbox --help
135
+ tonietoolbox -h
136
136
  ```
137
137
 
138
138
  Output:
139
139
  ```
140
- usage: TonieToolbox.py [-h] [--ts TIMESTAMP] [--ffmpeg FFMPEG] [--opusenc OPUSENC]
141
- [--bitrate BITRATE] [--cbr] [--append-tonie-tag TAG]
142
- [--no-tonie-header] [--info] [--split] [--recursive] [--output-to-source]
143
- [--compare FILE2] [--detailed-compare] [--debug] [--trace] [--quiet] [--silent]
140
+ usage: TonieToolbox.py [-h] [-v] [-t TIMESTAMP] [-f FFMPEG] [-o OPUSENC]
141
+ [-b BITRATE] [-c] [-a TAG] [-n] [-i] [-s] [-r] [-O]
142
+ [-A] [-k] [-C FILE2] [-D] [-d] [-T] [-q] [-Q]
144
143
  SOURCE [TARGET]
145
144
 
146
145
  Create Tonie compatible file from Ogg opus file(s).
@@ -151,25 +150,40 @@ positional arguments:
151
150
 
152
151
  optional arguments:
153
152
  -h, --help show this help message and exit
154
- --ts TIMESTAMP set custom timestamp / bitstream serial / reference .taf file
155
- --ffmpeg FFMPEG specify location of ffmpeg
156
- --opusenc OPUSENC specify location of opusenc
157
- --bitrate BITRATE set encoding bitrate in kbps (default: 96)
158
- --cbr encode in cbr mode
159
- --append-tonie-tag TAG append [TAG] to filename (must be an 8-character hex value)
160
- --no-tonie-header do not write Tonie header
161
- --info Check and display info about Tonie file
162
- --split Split Tonie file into opus tracks
163
- --recursive Process folders recursively
164
- --output-to-source Save output files in the source directory instead of output directory
165
- --compare FILE2 Compare input file with another .taf file for debugging
166
- --detailed-compare Show detailed OGG page differences when comparing files
153
+ -v, --version show program version and exit
154
+ -t, --timestamp TIMESTAMP
155
+ set custom timestamp / bitstream serial / reference .taf file
156
+ -f, --ffmpeg FFMPEG specify location of ffmpeg
157
+ -o, --opusenc OPUSENC specify location of opusenc
158
+ -b, --bitrate BITRATE set encoding bitrate in kbps (default: 96)
159
+ -c, --cbr encode in cbr mode
160
+ -a, --append-tonie-tag TAG
161
+ append [TAG] to filename (must be an 8-character hex value)
162
+ -n, --no-tonie-header do not write Tonie header
163
+ -i, --info Check and display info about Tonie file
164
+ -s, --split Split Tonie file into opus tracks
165
+ -r, --recursive Process folders recursively
166
+ -O, --output-to-source
167
+ Save output files in the source directory instead of output directory
168
+ -A, --auto-download Automatically download FFmpeg and opusenc if needed
169
+ -k, --keep-temp Keep temporary opus files in a temp folder for testing
170
+ -C, --compare FILE2 Compare input file with another .taf file for debugging
171
+ -D, --detailed-compare
172
+ Show detailed OGG page differences when comparing files
173
+
174
+ Version Check Options:
175
+ -S, --skip-update-check
176
+ Skip checking for updates
177
+ -F, --force-refresh-cache
178
+ Force refresh of update information from PyPI
179
+ -X, --clear-version-cache
180
+ Clear cached version information
167
181
 
168
182
  Logging Options:
169
- --debug Enable debug logging
170
- --trace Enable trace logging (very verbose)
171
- --quiet Show only warnings and errors
172
- --silent Show only errors
183
+ -d, --debug Enable debug logging
184
+ -T, --trace Enable trace logging (very verbose)
185
+ -q, --quiet Show only warnings and errors
186
+ -Q, --silent Show only errors
173
187
  ```
174
188
 
175
189
  ### Common Usage Examples
@@ -203,9 +217,9 @@ tonietoolbox file1.taf --compare file2.taf --detailed-compare
203
217
  #### Custom timestamp options:
204
218
 
205
219
  ```
206
- tonietoolbox input.mp3 --ts 1745078762 # UNIX Timestamp
207
- tonietoolbox input.mp3 --ts 0x6803C9EA # Bitstream time
208
- tonietoolbox input.mp3 --ts ./reference.taf # Reference TAF for extraction
220
+ tonietoolbox input.mp3 --timestamp 1745078762 # UNIX Timestamp
221
+ tonietoolbox input.mp3 --timestamp 0x6803C9EA # Bitstream time
222
+ tonietoolbox input.mp3 --timestamp ./reference.taf # Reference TAF for extraction
209
223
  ```
210
224
 
211
225
  #### Set custom bitrate:
@@ -2,4 +2,4 @@
2
2
  TonieToolbox - Convert audio files to Tonie box compatible format
3
3
  """
4
4
 
5
- __version__ = '0.2.0'
5
+ __version__ = '0.2.1'
@@ -21,50 +21,50 @@ from .recursive_processor import process_recursive_folders
21
21
  def main():
22
22
  """Entry point for the TonieToolbox application."""
23
23
  parser = argparse.ArgumentParser(description='Create Tonie compatible file from Ogg opus file(s).')
24
- parser.add_argument('--version', action='version', version=f'TonieToolbox {__version__}',
24
+ parser.add_argument('-v', '--version', action='version', version=f'TonieToolbox {__version__}',
25
25
  help='show program version and exit')
26
26
  parser.add_argument('input_filename', metavar='SOURCE', type=str,
27
27
  help='input file or directory or a file list (.lst)')
28
28
  parser.add_argument('output_filename', metavar='TARGET', nargs='?', type=str,
29
29
  help='the output file name (default: ---ID---)')
30
- parser.add_argument('--ts', dest='user_timestamp', metavar='TIMESTAMP', action='store',
30
+ parser.add_argument('-t', '--timestamp', dest='user_timestamp', metavar='TIMESTAMP', action='store',
31
31
  help='set custom timestamp / bitstream serial')
32
32
 
33
- parser.add_argument('--ffmpeg', help='specify location of ffmpeg', default=None)
34
- parser.add_argument('--opusenc', help='specify location of opusenc', default=None)
35
- parser.add_argument('--bitrate', type=int, help='set encoding bitrate in kbps (default: 96)', default=96)
36
- parser.add_argument('--cbr', action='store_true', help='encode in cbr mode')
37
- parser.add_argument('--append-tonie-tag', metavar='TAG', action='store',
33
+ parser.add_argument('-f', '--ffmpeg', help='specify location of ffmpeg', default=None)
34
+ parser.add_argument('-o', '--opusenc', help='specify location of opusenc', default=None)
35
+ parser.add_argument('-b', '--bitrate', type=int, help='set encoding bitrate in kbps (default: 96)', default=96)
36
+ parser.add_argument('-c', '--cbr', action='store_true', help='encode in cbr mode')
37
+ parser.add_argument('-a', '--append-tonie-tag', metavar='TAG', action='store',
38
38
  help='append [TAG] to filename (must be an 8-character hex value)')
39
- parser.add_argument('--no-tonie-header', action='store_true', help='do not write Tonie header')
40
- parser.add_argument('--info', action='store_true', help='Check and display info about Tonie file')
41
- parser.add_argument('--split', action='store_true', help='Split Tonie file into opus tracks')
42
- parser.add_argument('--recursive', action='store_true', help='Process folders recursively')
43
- parser.add_argument('--output-to-source', action='store_true',
39
+ parser.add_argument('-n', '--no-tonie-header', action='store_true', help='do not write Tonie header')
40
+ parser.add_argument('-i', '--info', action='store_true', help='Check and display info about Tonie file')
41
+ parser.add_argument('-s', '--split', action='store_true', help='Split Tonie file into opus tracks')
42
+ parser.add_argument('-r', '--recursive', action='store_true', help='Process folders recursively')
43
+ parser.add_argument('-O', '--output-to-source', action='store_true',
44
44
  help='Save output files in the source directory instead of output directory')
45
- parser.add_argument('--auto-download', action='store_true', help='Automatically download FFmpeg and opusenc if needed')
46
- parser.add_argument('--keep-temp', action='store_true',
45
+ parser.add_argument('-A', '--auto-download', action='store_true', help='Automatically download FFmpeg and opusenc if needed')
46
+ parser.add_argument('-k', '--keep-temp', action='store_true',
47
47
  help='Keep temporary opus files in a temp folder for testing')
48
- parser.add_argument('--compare', action='store', metavar='FILE2',
48
+ parser.add_argument('-C', '--compare', action='store', metavar='FILE2',
49
49
  help='Compare input file with another .taf file for debugging')
50
- parser.add_argument('--detailed-compare', action='store_true',
50
+ parser.add_argument('-D', '--detailed-compare', action='store_true',
51
51
  help='Show detailed OGG page differences when comparing files')
52
52
 
53
53
  # Version check options
54
54
  version_group = parser.add_argument_group('Version Check Options')
55
- version_group.add_argument('--skip-update-check', action='store_true',
55
+ version_group.add_argument('-S', '--skip-update-check', action='store_true',
56
56
  help='Skip checking for updates')
57
- version_group.add_argument('--force-refresh-cache', action='store_true',
57
+ version_group.add_argument('-F', '--force-refresh-cache', action='store_true',
58
58
  help='Force refresh of update information from PyPI')
59
- version_group.add_argument('--clear-version-cache', action='store_true',
59
+ version_group.add_argument('-X', '--clear-version-cache', action='store_true',
60
60
  help='Clear cached version information')
61
61
 
62
62
  log_group = parser.add_argument_group('Logging Options')
63
63
  log_level_group = log_group.add_mutually_exclusive_group()
64
- log_level_group.add_argument('--debug', action='store_true', help='Enable debug logging')
65
- log_level_group.add_argument('--trace', action='store_true', help='Enable trace logging (very verbose)')
66
- log_level_group.add_argument('--quiet', action='store_true', help='Show only warnings and errors')
67
- log_level_group.add_argument('--silent', action='store_true', help='Show only errors')
64
+ log_level_group.add_argument('-d', '--debug', action='store_true', help='Enable debug logging')
65
+ log_level_group.add_argument('-T', '--trace', action='store_true', help='Enable trace logging (very verbose)')
66
+ log_level_group.add_argument('-q', '--quiet', action='store_true', help='Show only warnings and errors')
67
+ log_level_group.add_argument('-Q', '--silent', action='store_true', help='Show only errors')
68
68
 
69
69
  args = parser.parse_args()
70
70
  if args.trace:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: TonieToolbox
3
- Version: 0.2.0
3
+ Version: 0.2.1
4
4
  Summary: Convert audio files to Tonie box compatible format
5
5
  Home-page: https://github.com/Quentendo64/TonieToolbox
6
6
  Author: Quentendo64
@@ -159,15 +159,14 @@ tonietoolbox --recursive --output-to-source "Music/Albums"
159
159
  Run the following command to see all available options:
160
160
 
161
161
  ```
162
- tonietoolbox --help
162
+ tonietoolbox -h
163
163
  ```
164
164
 
165
165
  Output:
166
166
  ```
167
- usage: TonieToolbox.py [-h] [--ts TIMESTAMP] [--ffmpeg FFMPEG] [--opusenc OPUSENC]
168
- [--bitrate BITRATE] [--cbr] [--append-tonie-tag TAG]
169
- [--no-tonie-header] [--info] [--split] [--recursive] [--output-to-source]
170
- [--compare FILE2] [--detailed-compare] [--debug] [--trace] [--quiet] [--silent]
167
+ usage: TonieToolbox.py [-h] [-v] [-t TIMESTAMP] [-f FFMPEG] [-o OPUSENC]
168
+ [-b BITRATE] [-c] [-a TAG] [-n] [-i] [-s] [-r] [-O]
169
+ [-A] [-k] [-C FILE2] [-D] [-d] [-T] [-q] [-Q]
171
170
  SOURCE [TARGET]
172
171
 
173
172
  Create Tonie compatible file from Ogg opus file(s).
@@ -178,25 +177,40 @@ positional arguments:
178
177
 
179
178
  optional arguments:
180
179
  -h, --help show this help message and exit
181
- --ts TIMESTAMP set custom timestamp / bitstream serial / reference .taf file
182
- --ffmpeg FFMPEG specify location of ffmpeg
183
- --opusenc OPUSENC specify location of opusenc
184
- --bitrate BITRATE set encoding bitrate in kbps (default: 96)
185
- --cbr encode in cbr mode
186
- --append-tonie-tag TAG append [TAG] to filename (must be an 8-character hex value)
187
- --no-tonie-header do not write Tonie header
188
- --info Check and display info about Tonie file
189
- --split Split Tonie file into opus tracks
190
- --recursive Process folders recursively
191
- --output-to-source Save output files in the source directory instead of output directory
192
- --compare FILE2 Compare input file with another .taf file for debugging
193
- --detailed-compare Show detailed OGG page differences when comparing files
180
+ -v, --version show program version and exit
181
+ -t, --timestamp TIMESTAMP
182
+ set custom timestamp / bitstream serial / reference .taf file
183
+ -f, --ffmpeg FFMPEG specify location of ffmpeg
184
+ -o, --opusenc OPUSENC specify location of opusenc
185
+ -b, --bitrate BITRATE set encoding bitrate in kbps (default: 96)
186
+ -c, --cbr encode in cbr mode
187
+ -a, --append-tonie-tag TAG
188
+ append [TAG] to filename (must be an 8-character hex value)
189
+ -n, --no-tonie-header do not write Tonie header
190
+ -i, --info Check and display info about Tonie file
191
+ -s, --split Split Tonie file into opus tracks
192
+ -r, --recursive Process folders recursively
193
+ -O, --output-to-source
194
+ Save output files in the source directory instead of output directory
195
+ -A, --auto-download Automatically download FFmpeg and opusenc if needed
196
+ -k, --keep-temp Keep temporary opus files in a temp folder for testing
197
+ -C, --compare FILE2 Compare input file with another .taf file for debugging
198
+ -D, --detailed-compare
199
+ Show detailed OGG page differences when comparing files
200
+
201
+ Version Check Options:
202
+ -S, --skip-update-check
203
+ Skip checking for updates
204
+ -F, --force-refresh-cache
205
+ Force refresh of update information from PyPI
206
+ -X, --clear-version-cache
207
+ Clear cached version information
194
208
 
195
209
  Logging Options:
196
- --debug Enable debug logging
197
- --trace Enable trace logging (very verbose)
198
- --quiet Show only warnings and errors
199
- --silent Show only errors
210
+ -d, --debug Enable debug logging
211
+ -T, --trace Enable trace logging (very verbose)
212
+ -q, --quiet Show only warnings and errors
213
+ -Q, --silent Show only errors
200
214
  ```
201
215
 
202
216
  ### Common Usage Examples
@@ -230,9 +244,9 @@ tonietoolbox file1.taf --compare file2.taf --detailed-compare
230
244
  #### Custom timestamp options:
231
245
 
232
246
  ```
233
- tonietoolbox input.mp3 --ts 1745078762 # UNIX Timestamp
234
- tonietoolbox input.mp3 --ts 0x6803C9EA # Bitstream time
235
- tonietoolbox input.mp3 --ts ./reference.taf # Reference TAF for extraction
247
+ tonietoolbox input.mp3 --timestamp 1745078762 # UNIX Timestamp
248
+ tonietoolbox input.mp3 --timestamp 0x6803C9EA # Bitstream time
249
+ tonietoolbox input.mp3 --timestamp ./reference.taf # Reference TAF for extraction
236
250
  ```
237
251
 
238
252
  #### Set custom bitrate:
File without changes
File without changes
File without changes
File without changes