Kodowanie i mieszanie Xugglera
Próbuję użyćXuggler (które jauwierzyć używaffmpeg
pod maską), aby wykonać następujące czynności:
Obejrzałem / przeczytałem niektóre z ich doskonałych samouczków i do tej pory mam to, co mam:
// I'll worry about implementing this functionality later, but
// involves querying native device drivers.
byte[] nextMjpeg = getNextMjpegFromSerialPort();
// I'll also worry about implementing this functionality as well;
// I'm simply providing these for thoroughness.
BufferedImage mjpeg = MjpegFactory.newMjpeg(nextMjpeg);
// Specify a h.264 video stream (how?)
String h264Stream = "???";
IMediaWriter writer = ToolFactory.makeWriter(h264Stream);
writer.addVideoStream(0, 0, ICodec.ID.CODEC_ID_H264);
writer.encodeVideo(0, mjpeg);
Po pierwsze, myślę, że jestem tu blisko, ale nadal nie jest poprawny; i doszedłem tak daleko, czytając przykłady kodu wideo (nie audio - nie mogę znaleźć żadnych dobrych przykładów audio).
Dosłownie uzyskuję dostęp na poziomie bajtów do surowych kanałów audio i wideo wchodzących do mojej implementacji Xugglera. Ale przez całe życie nie potrafię zrozumieć, jak wprowadzić je do formatu h.264 / AAC / MPEG-TS. Z góry dziękuję za pomoc tutaj.