Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
Next revisionBoth sides next revision
wiki:scripts_and_tools [2011/06/15 10:04] – create script and tools section as suggested by S. Massy - emrumwiki:scripts_and_tools [2012/04/09 21:08] – [convert sound files with libsndfile] emrum
Line 5: Line 5:
  
 . .
 +
 +==== wav file to specimen bank (sampler format) script ====
 +
 +  * see here: [[/wiki/scripts_wav2specimen| wav2specimen ]]
 +
 +\\
 +
 +
 +==== lscp2rgd - linuxsampler to rosegarden instrument ====
 +
 +  * see: [[/wiki/script_lscp2rgd]]
 +
 +\\
 +
 +==== midi to hydrogen ====
 +
 +  * [[/wiki/script_midi2hydrogen| convert drums of a midi file to hydrogen format ]]
 +
 +\\
 +
 +==== script: create a hydrogen drumkit from wav files ===
 +
 +thanks to Thijs van Severen
 +
 +[[http://audio-and-linux.blogspot.de/2012/04/hydrogen-drumkit-creator-script.html|  Hydrogen drumkit creator script ]] - note: filenames have to follow a rule
 +
 +\\
 +
 +[[http://www.hydrogen-music.org/hcms/node/5#sect.pattern_editor.drumkit| Instrument mapping (Hydrogen Manual) ]]
 +
 +\\
 +
 +[[http://www.mindwaremusic.com/SoundsetterHelp/scr/GMDrumMap.html| GM (general midi) mapping ]]
 +
 +\\
 +
  
 ==== aj-snapshot - Store ALSA and JACK connections state ==== ==== aj-snapshot - Store ALSA and JACK connections state ====
Line 107: Line 143:
 . .
  
-=== convert sound files with libsndfile ===+==== convert sound files with libsndfile ====
  
-sndfile-convert+ 
 +=== convert all FLAC files in a directory to OGA format (vorbis-encoded stream in ogg-container) === 
 + 
 +<code bash> 
 +#!/bin/bash 
 + 
 +## UPDATE: sndfile-convert -vorbis  normalizes the sound to 0 DB ! 
 +## there are no options to control that, or compression rate. 
 +## so rather use "oggenc" instead ! 
 +## there is also a py-script called "dir2ogg" in ubuntu 
 + 
 +# initial code by Emanuel Rumpf 2012-04 
 +# any re-use and modification permitted 
 + 
 +# convert all FLAC files in a directory to OGA format  
 +# (compressed, vorbis-encoded stream in ogg-container) 
 +
 +# USAGE: 
 +# first install libsndfile - in ubuntu: 
 +# sudo   apt-get install   libsndfile1 sndfile-programs sndfile-tools 
 +#  
 +# copy this script to the files directory, make it executable 
 +# edit config options below if necessary, run it 
 + 
 +# TODO: allow file-names with spaces 
 + 
 + 
 +# CONFIGURE HERE 
 + 
 +# select file extension: 
 +EXT_OLD=".flac" 
 +EXT_NEW=".oga" 
 + 
 +# select directory for new vfiles 
 +OUT_DIR="./oggs/" 
 + 
 +# add -vorbis parameter to sndfile-convert call 
 +CONVERT_OPT="-vorbis" 
 + 
 + 
 +# CODE START 
 + 
 +mkdir -p "$OUT_DIR" 
 + 
 +# apply to all flac files in current directory 
 +FILES=*${EXT_OLD} 
 + 
 +for f in $FILES 
 +do 
 + 
 +  fn=`basename "$f" $EXT_OLD` 
 +  fn="${OUT_DIR}${fn}${EXT_NEW}" 
 +   
 +  comm="sndfile-convert $CONVERT_OPT $f $fn " 
 +  echo "--> $comm " 
 +  $comm 
 +  echo "" 
 + 
 +done 
 + 
 + 
 + 
 + 
 +</code> 
 +\\ 
 +\\ 
 +<code> 
 +# There is a possilbe alternative, with "find" and -exec statement 
 +
 +# warning: this is not verbose  and  can take some time ! 
 + 
 + 
 +# for all files in current directory (.)  execute libsndfile-convert 
 +
 +find . -name "*.flac" -exec sndfile-convert -vorbis '{}' '{}'.oga \; 
 + 
 +</code>
  
 . .
Line 115: Line 227:
 ==== conversion examples with sox ==== ==== conversion examples with sox ====
  
-FIXME+convert a .wav file to raw PCM - here 8bit (''-b 8'') signed integer (''-e signed''), stereo (''-c 2''): 
 +  sox INFILE.wav -t raw -r 48k -e signed -b  8 -c 2 OUTFILE.raw
  
-.+convert raw CD digital audio (16-bit, signed-integer) to floating point wav: 
 +  sox input.cdda -e float output1.wav 
 + 
 +generate (''-n'' = NULL input) a .wav file with a 3 second sine-sweep: 
 +  sox -n OUTFILE.wav synth 3 sine 300-3300 gain -5 
 + 
 +The format-options must be given before the filename for which they're intended. If unspecified they are read from the file header (if possible):
  
 +Synopsis:
 +  sox [global-options] [format-options] infile1 \ 
 +      [[format-options] infile2] ... \
 +      [format-options] outfile \
 +      [effect [effect-options]] ...
 +      
 +Common encoding-types for ''-e'': signed, unsigned, float. see ''man sox'' for a complete reference.
  
 ==== conversion examples with ecasound ==== ==== conversion examples with ecasound ====
  
 FIXME FIXME
 +
 +.
 +
 +
 +
 +==== move regions, markers, temi in an Ardour session ====
 +
 +A script to slide every regions, markers, tempi, meters, automations, and so on in an Ardour session.
 +
 +"Actually, it's not really a solution, as one can move only ALL REGIONS,..."
 +
 +by Aurélien
 +
 +[[http://lists.linuxaudio.org/pipermail/linux-audio-user/2011-June/079213.html| announce mail]]
 +
 +[[http://lists.linuxaudio.org/pipermail/linux-audio-user/attachments/20110617/50c10587/attachment.obj| Download (tar.gz ?)]]
  
 . .
Line 130: Line 272:
 ==== spaces to underscores ==== ==== spaces to underscores ====
  
-<code>+<code bash>
 #! /bin/bash #! /bin/bash
 # #
Line 158: Line 300:
  
 . .
 +
 +
 +==== Extract Audio from Video and recombine ====
 +(help by Robin Gareus @lau-ml)
 +
 +=== with ffmpeg ===
 +
 +<code>
 +
 +#extract audio
 +ffmpeg -i orig_video.wmv audio_out.wav
 +
 +#replace audio
 +ffmpeg \
 + -i orig_video.wmv \
 + -i new_audio.wav \
 + -vcodec copy \
 + -map 0.0 -map 1.0 \
 + new_video.wmv
 +
 +</code>
 +
 +
 +<code>
 +Details:  The "map" may be different depending on the .wmv file.
 +run `ffprobe` to see which is the video-track in the .wmv file
 +usually this is "0.0".
 +   Stream #0.0: Video:...
 +   Stream #0.1: Audio: ..
 +and "1.0" corresponds to the 2nd input file - your new audio.
 +
 +You may want to add "-acodec wmav2" and "-ar 128k" options for 128kbit/s
 +Windows Media Audio 2 or whatever audio-codec/quality your want. `ffmpeg
 +-codecs | grep "EA"` gives you a list of available codecs for Encoding
 +Audio.
 +
 +</code>
 +
 +
 +BTW. Ardour3 with videotimeline patch can do all this for you.
 +import,extract,re-encode using ffmpeg.
 +
 +
 +
 +>> Thanks. It is 0:0 and 0:1 and -b:a=192k I found, but I have some sync problems after recombining tho. Any other ideas?
 +
 +My gut feeling is to blame ffmpeg's WMV muxer (it may not be able to mux
 +a bit-exact copy of the original video with your new soundtrack).
 +
 +<code>
 +
 +Try using '-sameq' instead of '-vcodec copy' (re-encode the video with
 +same quality rather than a bit-exact copy - this often solves muxing
 +issues but will cause a small loss of either video quality or increased
 +bandwidth).
 +
 +</code>
 +
 +and also try a different output format eg. 'new_video.avi' or '..mov'
 +instead of 'new_video.wmv'.
 +
 +<code>
 +
 +you may need both, this should work:
 + 'ffmpeg -i vid.wmv -i aud.wav -sameq -map 0.0 -map 1.0 output.avi'
 +
 +</code>
 +
 +\\
 +
 +=== with mencoder ===
 +
 +[[http://savvyadmin.com/extract-audio-from-video-files-to-wav-using-mplayer/]]
 +
 +\\
 +
 +=== posssibly other options ===
 +
 +\\
 +  * kdenlive
 +  * ardour3 + video patch
 +
 +\\
 +
 +\\
 +
  
 ==== Tips ==== ==== Tips ====
wiki/scripts_and_tools.txt · Last modified: 2017/12/03 12:22 by nilsge