LINUX.ORG.RU

Сообщения bad_master

 

Использование nodejs для фронтенда

Есть небольшая задумка сделать свой сайт для портфолио, вроде сингл Пейдж Эпликэйшн. Я как-то тут спрашивал что учить. Мне посоветовали nodejs. Как я понял он используется для Бэкэнда. Можно ли на нём печатать фронтенд? Сейчас смотрю на ютубе язык «JavaScript за 6 часов». Охота использовать все (ну почти что может потребоваться на собеседовании в этом приложении) , немного поработать с дизайном страницы и с базой данных, использовать web socket. В дальнейшем хочу по заморачиваться с паттернами программирования и проектирования, а перед этим захостить сайт с этим приложением.

 , ,

bad_master ()

Вопрос по ссд

Важно ли его установить ровно и крепко или можно набекрень?

 

bad_master ()

Что произойдет раньше?

Такой вот вопросик нарисовался: Если представить генеалогическое древо всего человечества что произойдет раньше: Союз между любыми двумя жителями планеты приведет к кровосмешению(что через какой-то момент приведет к вымиранию человечества) или взрыв Солнца?

Перемещено Pinkbyte из general

 ,

bad_master ()

Усилить фоновые звуки и шумы на записи?

Использую fft зануляю высокие частоты но проезжающих машин и прочего не слышно

clc;
clear;
[flute,Fs] = audioread('record.mp3');
plot(flute)
f=fft(flute);
hist(f)
count=0;
for i=1:1775856
    if f(i,1)>1 || f(i,1)<-1
        f(i,1) = 0;
        f(i,2) = 0;
        count=count+1;
    end
end
count
y=ifft(f);
audiowrite('record2.wav',y,44100);

 , , ,

bad_master ()

Настроить wifi на tp-link

Нужно настроить так чтобы wi-fi раздавался по dhcp и в тоже время был в одной сети со статическими адресами

 , , ,

bad_master ()

Как избавиться от быдлокодинга и спагетти кода?

Вообщем напечатал проект, там в классе самом большом 1700 строк кода, решил переписать проект поначалу всё шло неплохо, но сейчас в нём 2900 строк в самом большом классе выполняющем тот же функционал с некоторыми улучшениями. Может я остановился в развитии в плане техники кодинга? С другой стороны спагетти код более понятен мне при условии что я иногда забрасываю проект на парочку месяцев. Что посоветуете?

 

bad_master ()

Проблема с чтением wav файла?

Вообщем в винде работает код, а в убунте нет

//Sound.h
#pragma once
#include <AL/al.h>
#include <AL/alc.h>
#include <stdio.h>
#include <iostream>
#include <string>
#ifdef _WIN32
	#include <io.h>
	#include <Windows.h>
#else
	#include <unistd.h>
	#include <fcntl.h>
	#include <sys/stat.h>
#endif // _WIN32

struct WAVHEADER
{
	// WAV-формат начинается с RIFF-заголовка:
	// Содержит символы "RIFF" в ASCII кодировке
	// (0x52494646 в big-endian представлении)
	char chunkId[4];
	// 36 + subchunk2Size, или более точно:
	// 4 + (8 + subchunk1Size) + (8 + subchunk2Size)
	// Это оставшийся размер цепочки, начиная с этой позиции.
	// Иначе говоря, это размер файла - 8, то есть,
	// исключены поля chunkId и chunkSize.
	unsigned long chunkSize;
	// Содержит символы "WAVE"
	// (0x57415645 в big-endian представлении)
	char format[4];
	// Формат "WAVE" состоит из двух подцепочек: "fmt " и "data":
	// Подцепочка "fmt " описывает формат звуковых данных:
	// Содержит символы "fmt "
	// (0x666d7420 в big-endian представлении)
	char subchunk1Id[4];
	// 16 для формата PCM.
	// Это оставшийся размер подцепочки, начиная с этой позиции.
	unsigned long subchunk1Size;
	// Аудио формат, полный список можно получить здесь http://audiocoding.ru/wav_formats.txt
	// Для PCM = 1 (то есть, Линейное квантование).
	// Значения, отличающиеся от 1, обозначают некоторый формат сжатия.
	unsigned short audioFormat;
	// Количество каналов. Моно = 1, Стерео = 2 и т.д.
	unsigned short numChannels;
	// Частота дискретизации. 8000 Гц, 44100 Гц и т.д.
	unsigned long sampleRate;
	// sampleRate * numChannels * bitsPerSample/8
	unsigned long byteRate;
	// numChannels * bitsPerSample/8
	// Количество байт для одного сэмпла, включая все каналы.
	unsigned short blockAlign;
	// Так называемая "глубиная" или точность звучания. 8 бит, 16 бит и т.д.
	unsigned short bitsPerSample;
	// Подцепочка "data" содержит аудио-данные и их размер.
	// Содержит символы "data"
	// (0x64617461 в big-endian представлении)
	char subchunk2Id[4];
	// numSamples * numChannels * bitsPerSample/8
	// Количество байт в области данных.
	unsigned long subchunk2Size;
	// Далее следуют непосредственно Wav данные.
};
struct Sounds
{
	unsigned int* buffer;
	unsigned int* source;
	std::string* Name;
	int* number;
};
class Sound
{
public:
	Sound();
	int Init();
	int Play(int src);
	int Stop(int src, bool force);
	int StopAll();
	void SetPlay(int num);
	virtual ~Sound();
private:
protected:
	ALCdevice* dev;
	ALCcontext* ctx;
	int state;
	unsigned char* buf;
	unsigned int size_, freq;
	int format;
	int file;
	int org;
	Sounds *sounds;
	int CounterSounds, CountSounds;
};
//Sound.cpp
#include "Sound.h"
#ifdef _WIN32
	#pragma warning(disable : 4996)
	#pragma comment(lib,"OpenAL32_.lib")
#endif

Sound::Sound()
{
	CountSounds = 5;
	sounds = new Sounds[CountSounds];
	sounds->Name = new std::string[CountSounds];
	for (int i = 0; i < CountSounds; i++)
	{
		sounds->Name[i] = "";
	}
	sounds->buffer = new unsigned int[CountSounds];
	sounds->source = new unsigned int[CountSounds];
	sounds->number = new int[CountSounds];
	CounterSounds = 0;
}
int Sound::Init()
{
	dev = alcOpenDevice(0);
	ctx = alcCreateContext(dev, 0);
	alcMakeContextCurrent(ctx);
	alGenBuffers(CountSounds, sounds->buffer);
	alGenSources(CountSounds, sounds->source);
	sounds->Name[0] = "content//test.wav";
	sounds->Name[1] = "content//konga.wav";
	sounds->Name[2] = "content//internet.wav";
	sounds->Name[3] = "content//winner.wav";
	sounds->Name[4] = "content//coin.wav";
	for (int j = 0; j < CountSounds; j++)
	{
		FILE* file_;
#ifdef _WIN32
		errno_t err;
		err = fopen_s(&file_,sounds->Name[j].c_str(), "rb");
		if (err)
		{
			printf_s("Failed open file, error %d", err);
			return 0;
		}
#else
        file_=fopen(sounds->Name[j].c_str(), "rb");
#endif
		WAVHEADER header;
#ifdef _WIN32
		fread_s(&header, sizeof(WAVHEADER), sizeof(WAVHEADER), 1, file_);
#else
		fread(&header, sizeof(WAVHEADER), 1, file_);
#endif

		printf("audioformat:%d\n", header.audioFormat);
		printf("bitsPerSample:%d\n", header.bitsPerSample);
		printf("blockAlign:%d\n", header.blockAlign);
		printf("byteRate:%lu\n", header.byteRate);
		printf("chunkId:%s\n", header.chunkId);
		printf("chunkSize:%lu\n", header.chunkSize);
		printf("format:%s\n", header.format);
		printf("numCannels:%d\n", header.numChannels);
		printf("sampleRate:%lu\n", header.sampleRate);
		printf("subchunk1Id:%s\n", header.subchunk1Id);
		printf("subchunk1Size:%lu\n", header.subchunk1Size);
		printf("subchunk2Id:%s\n", header.subchunk2Id);
		printf("subchunk2Size:%lu\n", header.subchunk2Size);
		fclose(file_);
		if (header.numChannels == 1)
		{
			if (header.subchunk1Size == 16)
				format = AL_FORMAT_MONO16;
			else
				format = AL_FORMAT_MONO8;
		}
		else
		{
			if (header.subchunk1Size == 16)
				format = AL_FORMAT_STEREO16;
			else
				format = AL_FORMAT_STEREO8;
		}
#ifdef _WIN32
		file = open(sounds->Name[j].c_str(), _A_ARCH);
#else
		file = open(sounds->Name[j].c_str(), O_RDONLY);
#endif // _WIN32
		if (file == -1)
		{
			printf("Open failed on input file: %s\n",sounds->Name[j].c_str());
#ifdef _WIN32
			wchar_t path[MAX_PATH];
			GetCurrentDirectory(sizeof(path), path);
			std::wcout << path << std::endl;
#endif // _WIN32
		}
		org = 0;
		lseek(file,0,org);
		std::cout<<"hchs="<<header.subchunk2Size<<std::endl;
		buf = new unsigned char[header.subchunk2Size];
		read(file, buf, header.subchunk2Size);
		org = 1;
		alBufferData(sounds->buffer[j], format, buf, header.subchunk2Size, header.sampleRate);
		delete buf;
		alSourcei(sounds->source[j], AL_BUFFER, sounds->buffer[j]);
		close(file);
	}

	return 0;
}
int Sound::Play(int src)
{
	alGetSourcei(sounds->source[src], AL_SOURCE_STATE, &state);
	if (state == AL_PLAYING)
		return 0;
	alSourcePlay(sounds->source[src]);
	return 1;
}
int Sound::Stop(int src, bool force)
{
	alGetSourcei(sounds->source[src], AL_SOURCE_STATE, &state);
	if (state == AL_PLAYING || force)
		alSourceStop(sounds->source[src]);
	return 0;
}
int Sound::StopAll()
{
	for (int i = 0; i < CountSounds; i++)
		Stop(i, false);
	return 0;
}
Sound::~Sound()
{
	alDeleteSources(CountSounds, sounds->source);
	alDeleteBuffers(CountSounds, sounds->buffer);
	delete sounds;
	delete buf;
	alcMakeContextCurrent(0);
	alcDestroyContext(ctx);
	alcCloseDevice(dev);
	org = 2;
}
//main.cpp
#include "Sound.h"
void main()
{
        Sound *Sound_ = new Sound();
	Sound_->Init();
        Sound_->Play(2);
}
Проблема в то что один из аргументов WAVEHEADER при чтении огромный выдает огромные значение из-за чего памяти не хватает и программа завершается

 ,

bad_master ()

Репостинг из группы ВК в телеграмм канал

Сложно ли это организовать и на чем будет проще? До этого ни с какими API не работал

 ,

bad_master ()

Наверное последнее линукс предложение в жизни?

Что может предложить линукс сообщество какие проекты в которых можно поучаствовать, просто вообще нет связи и я думаю забросить линукс навсегда

 ,

bad_master ()

Как создать три дэ редактор на опенжл?

То есть сейчас приходится править код чтобы нарисовать точку, линию или фигуру. Как сделать чтобы можно было как в пайнте?

 , ,

bad_master ()

Скомплировать вручную

Есть main.java в нем используется класс A.form A.java в котором есть вызов экземпляра класса B.java и использование lib.jar, lib-sources.jar в A. Как скомпилировать через javac и запустить программу через java

 

bad_master ()

Посоветуйте сайты

Какие нибудь необычные и вдохновляющие и чтобы айтишные тоже

 

bad_master ()

Проблема в коде

Нашел ошибку в своем коде из предыдущей темы

#include <iostream>

int main()
{
    int j;
    for(int i=0;i<4000000000;i++)
        if(i%2!=0 && i%3!=0 && i%5!=0 && i%7!=0)
            j=i;    
    std::cout << j <<"\n";
}
-диапазон делиться пополам это не беззнаковый тип. Чуть больше 2х миллиардов диапазон.А у меня тут 4.
#include <iostream>
#include <thread>
#include <ctime>
#include <cassert>
std::time_t result;
void hello(const std::time_t *result)
{
    int j;
    char buffer[32];
    std::strncpy(buffer, std::ctime(result), 26);
    assert('\n' == buffer[std::strlen(buffer) - 1]);
    std::cout << buffer;
    for (int i = 0; i < 2000000000; i++)
        if (i % 2 != 0 && i % 3 != 0 && i % 5 != 0 && i % 7 != 0)
            j = i;
    std::time_t result_ = std::time(nullptr);
    std::cout << std::ctime(&result_);
    std::strncpy(buffer, std::ctime(&result_), 26);
    assert('\n' == buffer[std::strlen(buffer)-1]);
    std::cout << buffer;
}
int main()
{
    result = std::time(nullptr);
    std::cout << std::ctime(&result);
    std::thread t(hello,&result);
    t.join();
}
Вот такой лучше работает

 

bad_master ()

Нужно ли распараллеливать чтение файлов?

Программа читает файлы с диска, программа долго читает кучу файлов

 , ,

bad_master ()

Как хранить последовательность координат в коде либо в файле?

struct Image
{
	float**TextureCoordinats;//Координаты текстур
	float**VertexCoordinats;//Координаты вершин
	unsigned int*IndexTexture;//Указатель на текстуру
	std::string *Name;//Её имя
	int *number;//Её номер
};
struct Coor
{
	std::vector<float> a;//массив x-координат
	float b;//y-координата
	float width;//ширина
	float height;//высота
};

То есть пока что есть, что нужно:

1.Нужна структура данных в которой можно хранить вершины(координаты) и последовательность их соединений(

GL_POINTS	Каждый вызов glVertex задает отдельную точку.
GL_LINES	Каждая пара вершин задает отрезок.
GL_LINE_STRIP	Рисуется ломанная.
GL_LINE_LOOP	Рисуется ломанная, причем ее последняя точка соединяется с первой.
GL_TRIANGLES	Каждые три вызова glVertex задают треугольник.
GL_TRIANGLE_STRIP	Рисуются треугольники с общей стороной.
GL_TRIANGLE_FAN	Тоже самое, но по другому правилу соединяются вершины, вряд ли понадобится.
GL_QUADS	Каждые четыре вызова glVertex задают четырехугольник.
GL_QUAD_STRIP	Четырехугольники с общей стороной.
GL_POLYGON).
2.Также было бы желательно хранить цвета, текстуры.

3.Все это хранить допустим в файле(ах) и иметь какой-то общий алгоритм загрузки их всех в программу без костылей под каждый объект и раздувания кода.

Подытожим итоги, то есть нужно сделать так чтобы хранить сцену и не одну, объекты и их свойства. Какой вид структур данных для этого нужно: графы, деревья, списки всякие,вектора, листы в этом и весь вопрос, может кто знает что используется в коммерческих проектах и т.д.

 ,

bad_master ()

Вопрос о том как зайти в настройки

Вот например я захожу на этот сайт, можно ли как-то на стороне сайта сделать так чтобы передать данные на роутер? То есть зайти в админку, через JavaScript или ещё как-то

 

bad_master ()

Какова скорость upload obs для 1080p со звуком?

Хотелось бы постримить немного на ютуб и вот не пойму сколько надо скорости

 , ,

bad_master ()

Поиск третьего места по max?

Допустим есть такой вектор:

A = [ 3 5 6 7 ]
second_max_value = max(A(A~=max(A)))
Находит максимум и второе место, а как найти 3-е место?

 

bad_master ()

Не пробрасывается порт из lan в wan

Пытаюсь пробросить порт из сети 192.168.31.0 в 192.168.0.0 не получается, роутер tp-link tl-wr740n пишет ошибку: код ошибки: 26106 подсеть ip-адреса отличается от подсети ip-адреса LAN

 , , ,

bad_master ()

Какой длины ряд для обучения нейросетей?

Использую что то вроде одномерного ряда для обучения нейросети, подбираю коэффициенты эпох обучения, но постоянно то один нейрон забирает почти всё, то другой. Ряд длиной 1000 чисел.

 , , ,

bad_master ()

RSS подписка на новые темы