
Recherche avancée
Médias (1)
-
The pirate bay depuis la Belgique
1er avril 2013, par
Mis à jour : Avril 2013
Langue : français
Type : Image
Autres articles (75)
-
Participer à sa traduction
10 avril 2011Vous pouvez nous aider à améliorer les locutions utilisées dans le logiciel ou à traduire celui-ci dans n’importe qu’elle nouvelle langue permettant sa diffusion à de nouvelles communautés linguistiques.
Pour ce faire, on utilise l’interface de traduction de SPIP où l’ensemble des modules de langue de MediaSPIP sont à disposition. ll vous suffit de vous inscrire sur la liste de discussion des traducteurs pour demander plus d’informations.
Actuellement MediaSPIP n’est disponible qu’en français et (...) -
Supporting all media types
13 avril 2011, parUnlike most software and media-sharing platforms, MediaSPIP aims to manage as many different media types as possible. The following are just a few examples from an ever-expanding list of supported formats : images : png, gif, jpg, bmp and more audio : MP3, Ogg, Wav and more video : AVI, MP4, OGV, mpg, mov, wmv and more text, code and other data : OpenOffice, Microsoft Office (Word, PowerPoint, Excel), web (html, CSS), LaTeX, Google Earth and (...)
-
Encoding and processing into web-friendly formats
13 avril 2011, parMediaSPIP automatically converts uploaded files to internet-compatible formats.
Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
All uploaded files are stored online in their original format, so you can (...)
Sur d’autres sites (10766)
-
FFmpeg conversion to mp3 works in terminal, not in script
19 juillet 2013, par user2598172I can run
ffmpeg -i test.m4a -vn -acodec libmp3lame -ab 256k test.mp3
And it works perfectly. However, when I have the line :
./ffmpeg -i "$SONG_SAVE.m4a" -vn -acodec libmp3lame -ab 256k "$SONG_SAVE$EXT" &> /dev/null
running in a .sh script (downloading the same file that I was able to successfully convert through the terminal), it returns an mp3 file with no audio data. Does anyone have any idea what could be causing this ? Thanks !
EDIT : here is the whole script :
#!/bin/bash
TITLE="$(echo "$1" | ./recode html..ascii | tr -d '\' | tr -s ' ' | sed 's|\ *$||')"
TAG_TITLE="$2"
ARTIST="$(echo "$3" | ./recode html..ascii | tr -d '\' | tr -s ' ')"
ALBUM="$(echo "$4" | ./recode html..ascii | tr -d '\' | tr -s ' ')"
IMG="$5"
TRACK_NUMBER="$6"
TOTAL_TRACKS="$7"
URL="$8"
MIX_TITLE="$9"
CONVERT="${10}"
RECURSIVE="${11}"
SESSION_ID="${12}"
DOWNLOAD_ID="${13}"
SONG_ID="${14}"
SONG_SAVE="songs/$SONG_ID"
ZIP_SAVE="$SESSION_ID-$DOWNLOAD_ID.zip"
ZIP_DIR="$MIX_TITLE/"
ARTWORK_SAVE="artwork/$MIX_TITLE.png"
SAVE_TITLE="$(echo "$TITLE" | sed 's|/|-|g;s|^\.||g')"
[ "$TAG_TITLE" == "false" ] && unset TITLE
[ "$ARTIST" == "false" ] && unset ARTIST
[ "$ALBUM" == "false" ] && unset ALBUM
[ "$IMG" == "false" ] && unset IMG
[ "$TRACK_NUMBER" == "false" ] && unset TRACK_NUMBER TOTAL_TRACKS
[ "$CONVERT" == "false" ] && unset CONVERT
[ "$RECURSIVE" == "false" ] && unset RECURSIVE
while [ -f "SONG_SAVE".part ]; do
sleep 2
done
if [ -f "$SONG_SAVE".m4a ]; then
EXT=".m4a"
touch "$SONG_SAVE$EXT"
elif [ -f "$SONG_SAVE".mp3 ]; then
EXT=".mp3"
touch "$SONG_SAVE$EXT"
else
curl -Lso "$SONG_SAVE".part "$URL"
if [ -n "$(file -b "$SONG_SAVE".part | grep "MPEG ADTS")" ]; then
EXT=".mp3"
elif [ -n "$(file -b "$SONG_SAVE".part | grep "MPEG v4")" ]; then
EXT=".m4a"
else
EXT=".txt"
echo "Unable to download: $URL. Sorry ):" > "$SONG_SAVE".part
fi
mv "$SONG_SAVE".part "$SONG_SAVE$EXT"
fi
if [ -n "$CONVERT" ] && [ "$EXT" == ".m4a" ]; then
EXT=".mp3"
if [ ! -f "$SONG_SAVE$EXT" ]; then
./ffmpeg -i "$SONG_SAVE.m4a" -vn -acodec libmp3lame -ab 256k "$SONG_SAVE$EXT" &> /dev/null
fi
fi
if [ "$EXT" == ".mp3" ]; then
./eyeD3 --remove-images -t "$TITLE" -a "$ARTIST" -A "$ALBUM" -n "$TRACK_NUMBER" -N "$TOTAL_TRACKS" "$SONG_SAVE$EXT" &> /dev/null
if [ -n "$IMG" ]; then
[ ! -f "$ARTWORK_SAVE" ] && curl -Lso "$ARTWORK_SAVE" "$IMG"
./eyeD3 --add-image="$ARTWORK_SAVE":FRONT_COVER "$SONG_SAVE$EXT" &> /dev/null
fi
elif [ "$EXT" == ".m4a" ]; then
if [ -n "$IMG" ]; then
[ ! -f "$ARTWORK_SAVE" ] && curl -Lso "$ARTWORK_SAVE" "$IMG"
if [ -n "$TRACK_NUMBER" ]; then
./mp4tags -P "$ARTWORK_SAVE" -s "$TITLE" -a "$ARTIST" -R "" -A "$ALBUM" -t "$TRACK_NUMBER" -T "$TOTAL_TRACKS" "$SONG_SAVE$EXT" &> /dev/null
else
./mp4tags -P "$ARTWORK_SAVE" -s "$TITLE" -a "$ARTIST" -R "" -A "$ALBUM" "$SONG_SAVE$EXT" &> /dev/null
fi
else
if [ -n "$TRACK_NUMBER" ]; then
./mp4tags -r P -s "$TITLE" -a "$ARTIST" -R "" -A "$ALBUM" -t "$TRACK_NUMBER" -T "$TOTAL_TRACKS" "$SONG_SAVE$EXT" &> /dev/null
else
./mp4tags -r P -s "$TITLE" -a "$ARTIST" -R "" -A "$ALBUM" "$SONG_SAVE$EXT" &> /dev/null
fi
fi
fi
if [ -n "$RECURSIVE" ]; then
cd archives
mkdir -p "$ZIP_DIR"
chmod 777 "$ZIP_DIR"
cp "../$SONG_SAVE$EXT" "$ZIP_DIR$SAVE_TITLE$EXT"
./zip -q -0 -D -r "$ZIP_DIR$ZIP_SAVE" "$ZIP_DIR$SAVE_TITLE$EXT" &> /dev/null
rm -f "$ZIP_DIR$SAVE_TITLE$EXT"
printf "archives/$ZIP_DIR$ZIP_SAVE\n$MIX_TITLE.zip\n$EXT\n"
echo "$(du -h "$ZIP_DIR$ZIP_SAVE" | tr '\t' '\n' | head -1)"
else
printf "$SONG_SAVE$EXT\n$SAVE_TITLE$EXT\n$EXT"
fi -
script doesnt recognize bars / lenght right for cutting audio , ffmpeg terminal
14 avril 2024, par totzillarbeatsThis Terminal script doesnt recognize bars / lenght right for cutting audio , maybe somebody knows whats wrong with the calculation :)


Would be happy about any help the cutting already works !


#!/bin/bash

# Function to extract BPM from filename

get_bpm() {
 local filename="$1"
 local bpm=$(echo "$filename" | grep -oE '[0-9]{1,3}' | head -n1)
 echo "$bpm"
}

# Function to cut audio based on BPM
cut_audio() {
 local input_file="$1"
 local bpm="$2"
 local output_file="${input_file%.*}_cut.${input_file##*.}" # Appends "_cut" to original filename

 # Define the number of beats per bar (assuming 4 beats per bar)
 beats_per_bar=4

 # Calculate the duration of each bar in seconds
 bar_duration=$((60 * beats_per_bar / bpm))

 # Define start and end times for each bar range
 start_times=(0 21 33 45 57 69 81 93 105 117 129 141)
 end_times=(20 29 41 53 65 77 89 101 113 125 137 149)

 # Iterate through each bar range
 for ((i = 0; i < ${#start_times[@]}; i++)); do
 start_time=${start_times[$i]}
 end_time=${end_times[$i]}
 echo "Cutting audio file $input_file at $bpm BPM for bar $((i + 1)) ($start_time-$end_time) for $bar_duration seconds..."

 # Cut audio for current bar range using ffmpeg
 ffmpeg -i "$input_file" -ss "$start_time" -to "$end_time" -c copy "$output_file"_"$((i + 1)).${input_file##*.}" -y
 done

 # Check if the output files are empty and delete them if so
 for output_file in "${output_file}"_*; do
 if [ ! -s "$output_file" ]; then
 echo "Output file $output_file is empty. Deleting..."
 rm "$output_file"
 fi
 done

 echo "Audio cut and saved as $output_file"
}


# Main script
if [ "$#" -eq 0 ]; then
 echo "Usage: $0 [audio_file1] [audio_file2] ..."
 exit 1
fi

for file in "$@"; do
 bpm=$(get_bpm "$file")
 if [ -z "$bpm" ]; then
 echo "Error: No BPM found in filename $file"
 else
 cut_audio "$file" "$bpm"
 fi
done



Maybe its only the math calc in the beginning but idk :)


If you need more details just lmk


-
Script doesnt recognize bars / length right for cutting audio , ffmpeg terminal
14 avril 2024, par totzillarbeatsThis terminal script doesn't recognize bars / length right for cutting audio, maybe somebody knows what's wrong with the calculation ...


Would be happy about any help the cutting already works !


#!/bin/bash

# Function to extract BPM from filename

get_bpm() {
 local filename="$1"
 local bpm=$(echo "$filename" | grep -oE '[0-9]{1,3}' | head -n1)
 echo "$bpm"
}

# Function to cut audio based on BPM
cut_audio() {
 local input_file="$1"
 local bpm="$2"
 local output_file="${input_file%.*}_cut.${input_file##*.}" # Appends "_cut" to original filename

 # Define the number of beats per bar (assuming 4 beats per bar)
 beats_per_bar=4

 # Calculate the duration of each bar in seconds
 bar_duration=$((60 * beats_per_bar / bpm))

 # Define start and end times for each bar range
 start_times=(0 21 33 45 57 69 81 93 105 117 129 141)
 end_times=(20 29 41 53 65 77 89 101 113 125 137 149)

 # Iterate through each bar range
 for ((i = 0; i < ${#start_times[@]}; i++)); do
 start_time=${start_times[$i]}
 end_time=${end_times[$i]}
 echo "Cutting audio file $input_file at $bpm BPM for bar $((i + 1)) ($start_time-$end_time) for $bar_duration seconds..."

 # Cut audio for current bar range using ffmpeg
 ffmpeg -i "$input_file" -ss "$start_time" -to "$end_time" -c copy "$output_file"_"$((i + 1)).${input_file##*.}" -y
 done

 # Check if the output files are empty and delete them if so
 for output_file in "${output_file}"_*; do
 if [ ! -s "$output_file" ]; then
 echo "Output file $output_file is empty. Deleting..."
 rm "$output_file"
 fi
 done

 echo "Audio cut and saved as $output_file"
}


# Main script
if [ "$#" -eq 0 ]; then
 echo "Usage: $0 [audio_file1] [audio_file2] ..."
 exit 1
fi

for file in "$@"; do
 bpm=$(get_bpm "$file")
 if [ -z "$bpm" ]; then
 echo "Error: No BPM found in filename $file"
 else
 cut_audio "$file" "$bpm"
 fi
done



Maybe its only the math calc in the beginning but idk :)


If you need more details just lmk