Byla vydána nová verze 2.56.0 distribuovaného systému správy verzí Git. Přispělo 104 vývojářů, z toho 39 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.
Hackerská skupina ShinyHunters oznámila průnik do informačních systémů FBI, prostřednictvím zero-day zranitelnosti v platformě Oracle PeopleSoft, kterou úřad využívá mimo jiné pro náborový portál FBIJobs.gov. Útočníci tvrdí, že získali až 3 TB dat o současných i bývalých zaměstnancích a uchazečích o práci. Jako důkaz zveřejnili vzorek přibližně 5 000 záznamů obsahující jména, adresy, telefonní čísla, data narození, čísla
… více »Doba kompilace linuxového jádra se díky rychlejšímu hardwaru a optimalizacím kbuildu snižuje k deseti sekundám. Nejnovější patche Lorenza Stoakse (vznikají i s pomocí SI) zkrátily na testovacím stroji dobu sestavení z dlouhých 22 vteřin na pouhých 15, a to bez použití RAMdisku. Testovací systém tvořily dva procesory AMD EPYC 9575F (oba dohromady poskytují celkem 128 jader a 256 vláken), čtyřiadvacet 64GB DDR5-6400 paměťových modulů a
… více »Před rokem a půl vývojáři postmarketOS informovali, že pro projekt hledají nové jméno. Včera bylo oznámeno: postmarketOS se nově jmenuje Nura.
Hra Factorio dorazila na Printables. Hned teď si můžete stáhnout 65 různých modelů a nechat celou mimozemskou planetu oživnout na svém stole.
GNU Project Debugger aneb GDB byl vydán ve verzi 18.1. Podrobný přehled novinek v souboru NEWS.
Prezident USA Donald Trump během svého projevu na valném shromáždění OSN 22. září 2026 prohlásil, že umělá inteligence 'bude dále oficiálně nazývána superinteligencí', zkráceně SI. Svůj návrh zdůvodnil takto: 'Použití slova artificial činí inteligenci falešnou. Ona falešná není, ve skutečnosti je úžasná'. Zároveň ve svém proslovu prohlásil, že Spojené státy kategoricky odmítají jakékoliv pokusy o vytvoření 'globalistického
… více »Čínská technologická firma Xiaomi představila novou verzi 2.6 svého modelu MiMo, váhy modelů MiMo‑V2.6‑Pro‑RL a MiMo‑V2.6‑Flash‑RL jsou dostupné na HuggingFace pod licencí MIT. Výkonnější varianta Pro má přes bilion parametrů, z toho 42 miliard aktivních, úspornější Flash 309 miliard parametrů, z nichž se při generování aktivuje přibližně 15 miliard. Oba modely mají délku kontextového okna milion tokenů. Tyto MoE modely zvládají
… více »Proběhl Snapdragon Summit 2026. Společnost Qualcomm se mimo jiné pochlubila během Linuxu na čipech Snapdragon X2. Zatím pouze v ranní verzi vhodné pro vývojáře linuxových distribucí a přispěvatele do jádra Linux.
Byla vydána nová verze 2.0 klienta F-Droid určeného pro instalaci bezplatných a otevřených mobilních aplikací do Androidu ze softwarového repozitáře F-Droid (Wikipedie). Jedná se o alternativu k Google Play.
Bash skript pre zlúčenie dvoch textových titulkov do jednoho. Výsledkom je súčasné zobrazenie 2 titulkov na spodku/vrchu okna prehrávača (podobnú funkciu má napr. PowerDVD, ale len pri dvd titulkoch). Opravy a vylepšenia sú vítané.
#!/bin/bash # merge2ass.sh - script for merging two text-subtitles into an ass subtitle file # version 0.9b, 02-feb-2013 # comments/criticism/praise to jose1711-gmail-com # dependencies: mplayer (if your subtitle files need to be converted to srt), gnu utils # thanks to: # - d.watzke for comments # - belisarivs for testing # - boris dušek <boris (dot) dusek - gmail - com> for testing/ideas # - swans100 - patch for milliseconds precision srt subs # # $1 is a movie file # $2 is a subtitle1 # $3 is a subtitle2 # $4 is optional and could be "-pm" or "--play-movie" for instant watching of the movie # example: # merge2ass.sh movie.avi english.srt slovak.sub # mplayer -noautosub -ass movie.avi -sub movie-bilingual.ass -subcp utf8 # # or just # merge2ass.sh movie.avi english.srt slovak.sub -pm # # or even only # merge2ass.sh --detect movie.avi -pm # ## # release history: # 0.8a (29. 7. 2007) # - initial public release # 0.8.1a (30. 7. 2007) # - check_syntax fixed (d.watzke) # - multiline echo -> cat (d.watzke) # - removes temp files after conversion # 0.8.2 (1. 8. 2007) # - check whether the input files exist prior to running MPlayer # - check for MPlayer binary # - help page added # - new optional CLI parameters: -pm (plays movie after conversion), --help # 0.8.2.1 (2. 8. 2007) # - timestamp in output more compatible (reported by belisarivs) # 0.9 (8. 8. 2007) # - performs a check for writable output # - check for MPlayer's support of ass/ssa if -pm is used # - pointers to subtitle files stored as arraysF # - autorecognition of subtitles based on MPlayer's -sub-fuzziness feature (--detect) # - output filename based on movie filename (+bilingual.ass) # - bash now mandatory (non-POSIX syntax used) # - flag -pm has a long alias (--play-movie) # 0.9a (27. 4. 2012) # - added compatibility with SRT subtitles using milliseconds precision (thanks juan!) # 0.9b (2. 2. 2013) # - define encoding in ssa header (thanks mathieuu!) # # some future thoughts: # - more optional flags (do_not_remove_temp_files, play_but_dont_delete_output_afterwards,dont_do # the_conversion_just_merging,output_file..) # - cleaner sed/awk code # - support for other players (xine, totem, kmplayer, vlc..) # - subtitle encoding detection based on enca (if present) - boris? # # docs: # - http://en.wikipedia.org/wiki/SubStation_Alpha # - http://www.perlfu.co.uk/projects/asa/ass-specs.doc # # THE STORY ENDS HERE # set -x # normally you do not want to see mplayer's error output #mplayer_err=/dev/stderr mplayer_err=/dev/null arg_count="$#" movie="$1" sub[1]="$2" sub[2]="$3" show_help(){ cat << EOF ---------------------------------------------------------------------------------- | | | Merge2ass - a script for merging two text subtitles into ass/ssa subtitle file | | author: jose1711 - gmail - com, 2007/08 | ---------------------------------------------------------------------------------- Usage: merge2ass.sh [--help] [movie subtitle1 subtitle2] [-pm|--play-movie] or merge2ass.sh --detect movie [-pm|--play-movie] --help show this help page and exit --detect try to detect subtitles using MPlayer's sub-fuzziness=1 flag movie movie file (anything that MPlayer recognizes) subtitle[12] file(s) containing text subtitles that MPlayer recognizes -pm play movie immediately and remove the output after finishing --play-movie EOF } detect_subtitles(){ while read -r line; do sub[++i]="$line" done < <(mplayer -sub-fuzziness 1 -frames 0 "$movie" 2>/dev/null | sed -n "s/^SUB: Added subtitle file ([0-9]*): \(.*\)$/\1/p") echo "$i subtitles were detected in total." echo "These two will be used:" echo "${sub[1]}" echo "${sub[2]}" } convert_subs(){ type mplayer || { echo "MPlayer not installed or binary not in path, please investigate. Exiting.."; exit 1; } echo "Converting the 1st subtitle file (${sub[1]}) to a time-based format..." # slower but does not require the video file for conversion # mplayer /dev/zero -rawvideo pal:fps=25 -demuxer rawvideo -vc null -vo null -noframedrop -benchmark -sub "$movie" -dumpsrtsub mplayer -dumpsrtsub -noautosub -really-quiet -frames 0 -sub "${sub[1]}" "$movie" 2>>"$mplayer_err" && echo "Done" mv dumpsub.srt "${sub[1]}-temp" echo "Converting the 2nd subtitle file (${sub[2]}) to a time-based format..." mplayer -dumpsrtsub -noautosub -really-quiet -frames 0 -sub "${sub[2]}" "$movie" 2>>"$mplayer_err" && echo "Done" mv dumpsub.srt "${sub[2]}-temp" } generate_ssa_header(){ cat > "$output" << EOF [Script Info] Title: Original Script: Original Translation: Original Editing: Original Timing: Original Script Checking: ScriptType: v4.00 Collisions: Normal PlayResY: 1024 PlayDepth: 0 Timer: 100,0000 [V4 Styles] Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding Style: lang1style,Arial,64,65535,65535,65535,-2147483640,-1,0,1,3,0,6,30,30,30,0,0 Style: lang2style,Arial,64,15724527,15724527,15724527,4144959,0,0,1,1,2,2,5,5,30,0,0 Encoding:0 [Events] Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text EOF } generate_ssa_dialogs(){ sed -e "/ --> /s/,/./g" "${sub[1]}-temp" | tr -d "\r" | awk 'BEGIN{ORS="";print " "} / --> /,/^$/ {ORS=" ";print} /^$/{print "\n"}' | sed -e "s/ --> /,/g" -e "s/^ \([^ ]*\) \(.*\)/Dialogue: Marked=0,\1,lang1style,Cher,0000,0000,0000,,\2/" -e "s/,00:/,0:/g" -e "s/\([:,]\)0\([0-9]\)/\1\2/g" -e "s/\([0-9]\)\(\.\)\([0-9]\)\([0-9]\)0\(,\)/\1\2\3\4\5/g" >>"$output" sed -e "/ --> /s/,/./g" "${sub[2]}-temp" | tr -d "\r" | awk 'BEGIN{ORS="";print " "} / --> /,/^$/ {ORS=" ";print} /^$/{print "\n"}' | sed -e "s/ --> /,/g" -e "s/^ \([^ ]*\) \(.*\)/Dialogue: Marked=0,\1,lang2style,Cher,0000,0000,0000,,\2/" -e "s/,00:/,0:/g" -e "s/^ *//g" -e "s/\([:,]\)0\([0-9]\)/\1\2/g" -e "s/\([0-9]\)\(\.\)\([0-9]\)\([0-9]\)0\(,\)/\1\2\3\4\5/g" >>"$output" } remove_temp_files(){ rm "${sub[1]}-temp" "${sub[2]}-temp" } play_movie(){ mplayer -ass 2>/dev/null >/dev/null || { echo "Too old MPlayer version, can't understand ASS/SSA subs. Install a newer version."; exit 1; } mplayer -really-quiet -fs "$movie" -sub "$output" -ass -subcp utf8 -noautosub } delete_output(){ rm "$output" } eval last_arg='$'${arg_count} if [ $arg_count -eq 0 ]; then show_help exit 0 fi for param in $* do if [ $param = "--help" ]; then show_help; exit 0; fi done if [ "$movie" = "--detect" ]; then movie="${sub[1]}" output="${movie%.*}-bilingual.ass" > "$output" #|| { echo "Can't write here! Exiting.." && echo 1; } detect_subtitles fi if [ ! -f "$movie" ]; then echo "Movie file ($movie) does not exist. Going back to shell.."; exit 1; fi if [ ! -f "${sub[1]}" ]; then echo "Subtitle1 file (${sub[1]}) does not exist. Going back to shell.."; exit 1; fi if [ ! -f "${sub[2]}" ]; then echo "Subtitle2 file (${sub[2]}) does not exist. Going back to shell.."; exit 1; fi echo "Processing.." # reset output output="${movie%.*}-bilingual.ass" > "$output" #|| { echo "Can't write here! Exiting.." && echo 1; } convert_subs generate_ssa_header generate_ssa_dialogs remove_temp_files if [ "$last_arg" = "-pm" -o "$last_arg" = "--play-movie" ]; then play_movie delete_output fi exit 0 # set +x
Tiskni
Sdílej:
vim ~/.emacscheck_syntax() se nikdy neukončí, díky nesmyslnému použití subshellu. Použij if.
[[ $# -ne 3 ]] je rychlejší.
cat > soubor << EOF obsah souboru EOF
jose
Nakonec jsem objevil službu (zdrojové kódy si může každý stáhnout), která spojí dva srt soubory do jednoho ass souboru, který ve VLC přehrává jeden titulek nahoře a druhý dole. Adresa je http://pas-bien.net/2srt2ass/