The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"склеивание видео и аудио в ffmpeg"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на рабочей станции (Видео / Linux)
Изначальное сообщение [ Отслеживать ]

"склеивание видео и аудио в ffmpeg"  +/
Сообщение от back2egg on 13-Фев-12, 17:17 
День добрый.
Есть файл с видео в формате yuv и аудио в формате oss (снято с веб-камеры).
Нужно склеить их в один файл в формате flv.
Делаю так:
ffmpeg -vcodec rawvideo -f rawvideo -pix_fmt yuv420p -i video.yuv -f oss -i audio.oss -vcodec flv -f flv out.flv
Вроде все получается. Однако, продолжительность файла video.yuv ~10 секунд, а audio.oss - ~30 секунд. Никто не подскажет, как сделать чтобы кодирование прекращалось когда "заканчивается" видеофайл, а все "лишнее" из звукового файла обрезалось?
ЗЫ На самом деле ни продолжительность видео ни продолжительность звука заранее не известны и могут варьироваться в очень широких пределах. Известно только что видео всегда короче звука.
Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "склеивание видео и аудио в ffmpeg"  +/
Сообщение от ACCA (ok) on 14-Фев-12, 01:41 
> - ~30 секунд. Никто не подскажет, как сделать чтобы кодирование прекращалось
> когда "заканчивается" видеофайл, а все "лишнее" из звукового файла обрезалось?

Померять длительность видео хотя бы тем же mplayer -frames 0 -identify  и отдать ключ ffmpeg -t, не?

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "склеивание видео и аудио в ffmpeg"  +/
Сообщение от back2egg on 14-Фев-12, 04:24 
> Померять длительность видео хотя бы тем же mplayer -frames 0 -identify  
> и отдать ключ ffmpeg -t, не?

Спасибо, подумаю. Но на первый взгляд не вдохновляет. Это я сам виноват, потому как не все написал. На самом деле все выглядит так:

while true; do
pwcview -hkr ... | ffmpeg -vcodec rawvideo -f rawvideo -pix_fmt yuv420p -i - -f oss -i /dev/dsp0.0 -vcodec flv -f flv tmp.flv
file=`date +%Y%m%d%H%M%S`
mv tmp.flv ${file}.flv
done

Причем pwcview немного заточен напильником - завершается когда достигнут конец выявленного движения. Т.е. хочется чтобы каждый фрагмент с движением находился в отдельном файле. И тут - меряй, не меряй - остановить чтение из dsp не получается :(
Видимо вообще придется без звука обойтись или искать какую-то альтернативу pwcview.
И почему разработчики ffmpeg не озадачились выявлением движения? Можно было бы им одним обойтись.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2022 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру