Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   FLV транскодер (http://www.flasher.ru/forum/showthread.php?t=129490)

wvxvw 02.09.2009 19:53

FLV транскодер
 
Вот, чего-то наваял, если кому интересно :)
Что делает:
Загружает FLV как байт-стрим и проигрывает.
Сорцы очень сырые! И, если чесно, я не совсем понимаю, почему именно так работает, но, первые пару тестов дали положительные результаты :)
Непонятная фишка - почему в PlaceObject2 во всех кадрах после первого нужно ставить HasFrameAction флаг в true... Если кто-то возьмется просветить по этому поводу - буду очень признателен :)
Сорцы:
AIR это какой-никакой GUI :)
http://code.google.com/p/e4xu/source...VCompiler.mxml
Собственно, транскодер + компилятор:
http://code.google.com/p/e4xu/source...vxvws/encoding

ЗЫ. Я еще немного потестю и попробую это все переписать в двух видах:
1. Патч к флексовому компилятору
2. плагин к ФД :)

7thsky™ 02.09.2009 22:27

Прикольно

iflamberg 03.09.2009 16:14

я еще не смотрел. Т.е. этот код декодирует видео програмно и играет?

Оу, там еще и mp3-транскодер. Блин. Если с этой штукой можно будет решить проблемы потокового аудио/видео... (чтение тегов, освобождение памяти, неправильно принятый битрейт почему-то иногда).

Просто папа...

wvxvw 03.09.2009 17:05

Что это делает:
- читает FLV файл из ByteArray (т.е. не нужно его загружать через NetStream, тот же URLStream / URLLoader покатит, если получится - хоть сами пишите, но тест был на уже готовых FLV).
- создает SWF файл, в котором кадр == кадр FLV.
Ну а дальше уже загрузили SWF и играем, как нужно, хотим - в обратную сторону, хотим - через кадр и т.д.

- чего я пока не умею:
* я даже не смотрел в сторону звука... т.е. я не знаю поддерживается ли тот же формат записи звука в SWF и FLV. Опять же, оба формата используют и разные кодеки для записи видео, и, например, ScreenVideo таким образом сконвертировать не получится + похоже что для mp4 нужно будет как-то по-другому конвертировать... но Sorenson и ON2 вроде как нормально пошли :)
* технически... можно было бы видео еще и из других форматов конвертить в рантайме... это, конечно огромная нагрузка на проц и т.д. но... если порыться в сорцах ffmpeg'a то, наверняка можно наскрести парочку форматов, которые не очень сложно будет конвертнуть. На вскидку, AVI без сжатия - должно быть довольно просто :) по-сути нужен будет только энкодер, т.как декодер там вообще пишется в 2 строчки.

По поводу записи звука в SWF - MP3Encoder - просто слизано с флексового компилятора, так что там довольно надежно, ну, по крайней мере большинство не-VBR MP3 должны нормально компилироваться.
WAVE - переделка WAVE плеера etc. Ничего кроме чистого PCI без компрессии он писать не умеет... опять же, можно поискать документацию по разным аудио кодекам, которые основаны на PCI и попробовать добавить опций... но, это пока не первостепенная задача...

- и последнее, что должно быть самое вкусное... научится самому записывать H263VIDEOPACKET (это самый простой из видео кодеков поддерживаемых FLV / SWF) - если я когда-нибудь это сделаю, это будет значить, что можно в рантайме слепить видео из битмапдаты, записать его в FLV и запулять на сервер, при чем сервер вообще никакого участия в конвертации / создании принимать не будет, точно так же, как JPEGEncoder... но это уже мЯчты...

AL.exe 03.09.2009 17:49

По поводу последнего - можно будет сделать аналог GameCam для флеша =)


Часовой пояс GMT +4, время: 14:10.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.