Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++
Войти
Регистрация
Восстановить пароль
 
Jio
2 / 2 / 0
Регистрация: 11.08.2015
Сообщений: 94
1

FFMPEG libx264 Как правильно указать параметры энкодеру?

27.01.2018, 02:18. Просмотров 315. Ответов 3
Метки нет (Все метки)

Вот кусок кода. Есть исходный файл видео. Какие параметры нужно указать энкодеру, чтобы при декодировании и повторном кодировании получился файл такого же размера, как исходный? И почему без указания time_base.num = 1 функция avcodec_open2() возвращает -22?


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
int moveThread::findCodecEncoder(AVMediaType type, AVStream *stream) {
 
    AVCodec *codec = avcodec_find_encoder(stream->codecpar->codec_id);
    if (codec == NULL)
        return ERROR_CODEC_NOT_FOUND;
 
    AVCodecContext *codecContext = avcodec_alloc_context3(codec);
    avcodec_parameters_to_context(codecContext, stream->codecpar);
 
    if (type == AVMEDIA_TYPE_VIDEO)
        codecContext->time_base.num = 1;
 
    if (avcodec_open2(codecContext, codec, NULL)<0)
        return ERROR_UNABLE_OPEN_CODEC;
 
 
    if (type == AVMEDIA_TYPE_AUDIO) {
        codecAudioEncoder = codec;
        codecContextAudioEncoder = codecContext;
    }
    if (type == AVMEDIA_TYPE_VIDEO) {
        codecVideoEncoder = codec;
        codecContextVideoEncoder = codecContext;
    }
    return ERROR_NOT;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.01.2018, 02:18
Ответы с готовыми решениями:

Подскажите, как правильно указать параметры для TClientSocket
Суть такая: Есть программа, которая может в любой момент отвалиться (зависнуть, или вылететь из...

В каких скобках правильно указать параметры
Здравствуйте. Пытаюсь написать приложение на сайте для соц. сетей. Возникла такая проблема. Есть...

FFMPEG. Указать в аргументе куда сохранить видео файл
Дорогие программисты скажите, а возможно ли реализовать сохранение конвертируемого файла в FFMPEG в...

Как программно указать параметры футера для DBGridEh
На событие OnChange другого компонента, пробую сменить параметры Footer у DBGridEh:...

Как правильно указать условие
var ft, ft2: TextFile; i: integer; s:string; Begin Интересующая часть кода...

3
Jio
2 / 2 / 0
Регистрация: 11.08.2015
Сообщений: 94
28.01.2018, 02:55  [ТС] 2
Кто работал с ффмпег?) Поделитесь советами)
0
Jio
2 / 2 / 0
Регистрация: 11.08.2015
Сообщений: 94
29.01.2018, 21:17  [ТС] 3
Также, новое видео не открывается виндовс плеером, но другими открывается, подскажите, что я делаю не так?
0
outoftime
║XLR8║
854 / 749 / 227
Регистрация: 25.07.2009
Сообщений: 3,716
Записей в блоге: 5
31.01.2018, 02:56 4
Jio, дашь линк откуда либу тянул, полный код и строку для компиляции, завтра посмотрю.

Цитата Сообщение от Jio Посмотреть сообщение
Какие параметры нужно указать энкодеру, чтобы при декодировании и повторном кодировании получился файл такого же размера, как исходный?
Ну тут надо парсить мета инфу файла который кодируешь. Видел когда-то пиратки 720 с качеством 360? Занимают дох*ра а толку мало. Вот это с этой же песни.
0
31.01.2018, 02:56
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.01.2018, 02:56

Как правильно указать почтовый а/я?
Комрады! Зарегал себе на почте а/я, как прально его указать на латинице в настройках аккаунта? ...

как правильно указать адрес?
вот решил вступить на неровный путь адсенса. думаю, почитав форум, обязательно возникнут трудности...

Как задать правильно параметры?
if ($stmt_1 = $mysqli-&gt;prepare(&quot;UPDATE `bd` SET `field`='&quot;.$ch_1.&quot;' WHERE `id`=?&quot;)) ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru