ffmpeg \
-i "c:/ffmpeg/videos/video_1.avi" \
-t 10 \
-c:v copy \
-c:a copy \
"c:/ffmpeg/videos2/video_1.avi"
"5" > "499999"
// замените
var bal = $.trim($('#bal').val());
// на
var bal = +$.trim($('#bal').val());
cl
– сделать из текста число.cl
окажется свежий результат выполнения ajax-запроса?var cl1 = $.ajax({
url: "ajaxs.php",
data: "x=test",
type: "POST",
success: function (data) {
window.test1 = data;
}
});
var cl = test1;
ffmpeg \
-i input.mp4 \
-lavfi '[0:v] scale=ih*16/9:-1, boxblur=luma_radius=min(h\,w)/20:luma_power=1:chroma_radius=min(cw\,ch)/20:chroma_power=1[bg]; [bg][0:v]overlay=(W-w)/2:(H-h)/2, crop=h=iw*9/16' \
-vb 800K \
output.webm
setItem()
, или вытащить getItem()
, если есть — всё тот же текст.const KEY = 'my-likes';
let likes = 0; // по умолчанию
if (localStorage.hasOwnProperty(KEY)) likes = +localStorage.getItem(KEY);
const showLikes = n => document.querySelector("#root").innerText = n;
showLikes(likes);
let plusOne = () => {
likes++;
localStorage.setItem(KEY, likes);
showLikes(likes);
}
const hpDelta = chance => 10 + (chance > 5 ? 10 : 0) + (chance > 7 ? 20 : 0);
const simpleFight = () => {
let player_hp = 100;
let enemy_hp = 100;
let player_chance;
let enemy_chance;
const hpDelta = chance => 10 + (chance > 5 ? 10 : 0) + (chance > 7 ? 20 : 0);
const randomChance = () => Math.floor(Math.random() * 11);
const healthReport = hello => console.log(`${hello||''} Your health: ${player_hp}%, enemy health: ${enemy_hp}%`);
const chanceReport = hello => console.log(`${hello||''} Your chance: ${player_chance}, enemy chance: ${enemy_chance}`);
healthReport("Welcome!");
while (player_hp || enemy_hp > 0) {
player_chance = randomChance();
enemy_chance = randomChance();
chanceReport();
if (player_chance > enemy_chance) {
enemy_hp -= hpDelta(player_chance);
console.log(`Your turn. Enemy health updated to: ${enemy_hp}%`);
} else if (enemy_chance > player_chance) {
player_hp = hpDelta(enemy_chance);
console.log(`Enemy's turn. Your health updated to: ${player_hp}%`);
} else {
chanceReport('Equal chances!');
}
if (enemy_hp <= 0) {
healthReport('You win!');
break;
} else if (player_hp <= 0) {
healthReport('You lost!');
break;
}
}
}
simpleFight();
1, 2, 3
на входе даст «случайно» разбросанные на выходе.10101101 // вход: 173
10110101 // отзеркалили = 181
01010000 // секрет = 80
// поменяли местами где "1" в секрете
11100101 // получилось 229
0 .. 0x3FFF
это 14 бит. На входе, видимо, надо тоже 14, хотя можно домножить. r.forEach(e => e.field = myFunc(e.field));
function addFilter(filter) {
const delimiter = ',';
// разобрать хэш
const str = location.hash;
const hashes = str.slice(str.indexOf('#') + 1).split('&')
const params = {}
hashes.forEach(hash => {
if (!hash) return;
const [key, val] = hash.split('=')
params[key] = decodeURIComponent(val)
})
// параметр фильтров разобрать, добавить, собрать
const filters = params.search ? params.search.split(delimiter) : [];
filters.push(filter); // ["Toster", "Habr"]
params.search = filters.join(delimiter);
// собрать обратно
hashes.length = 0;
for (p in params)
hashes.push([p, encodeURIComponent(params[p])].join('='));
location.hash = '#' + hashes.join('&');
}
addFilter('Toster');
addFilter('Habr');
//#search=Toster%2CHabr
const value = 1 + 1 * 1;
var a = {
b: value,
b1: value
}
// хочется так? (но нельзя!)
var a = {
b: 1,
c: this.b * 10
}
// тогда можно так:
var a = {
get c() { return this.b * 10; }
}
a.b = 1;
a.c // 10
function testFunction(name, data) {
data.param1 = name;
}
const obj = {
param1: 1,
param2: 2
}
testFunction('test', obj);
obj.param1 // "test"
setDate(1)
, setMonth(0)
и прибавлять по 1 дню. Месяца перевернутся автомагически.mm/dd/yyyy
можно использовать локальный формат дат для США, указав в опциях, что даты и месяц выводить как 2-цифры.const dates = [];
const options = { year: 'numeric', month: '2-digit', day: '2-digit' };
const d = new Date();
d.setMonth(0);
d.setDate(1);
const year = d.getFullYear();
while(d.getFullYear() === year) {
dates.push(d.toLocaleDateString('en-US', options));
d.setDate(d.getDate() + 1);
}
/*
01/01/2019
01/02/2019
01/03/2019
01/04/2019
01/05/2019
01/06/2019
01/07/2019
01/08/2019
01/09/2019
01/10/2019
...
*/
while (start < end) {
array[start++] = value;
}
Array.fill()
, ...filler
local MUSIC_LENGTH=$(ffprobe \
-v quiet \
-print_format ini \
-show_format \
"$MUSIC_PCM" | grep duration | sed s/duration=//)
$MUSIC_PCM
– путь к медиафайлу.