我在将MJPEG流保存到文件方面有问题。当我使用这样的管道流MJPEG时:
gst-launch filesrc location=thirdmovie640x360.mp4 ! decodebin2 name=dec \
! queue ! ffmpegcolorspace ! jpegenc ! queue ! avimux name=mux \
! udpsink host=192.168.0.2 port=5000我可以使用这样的管道在我的第二台机器上播放这个流:
gst-launch -v udpsrc port=5000 ! jpegdec ! autovideosink但是,如何将这样的MJPEG流保存到文件中(不需要转码!)哪一个能在某些媒体播放器中播放?你能推荐一些管道吗?
我找到这样的管道来将输出流保存为matroska文件:
gst-launch udpsrc port=5000 ! multipartdemux ! jpegparse ! jpegdec \
! ffmpegcolorspace ! matroskamux ! filesink location=output.mkv如何将其更改为保存mp4文件?这类管道:
gst-launch udpsrc port=5000 ! multipartdemux ! jpegparse ! jpegdec \
! ffmpegcolorspace ! mp4mux ! filesink location=output.mp4不管用。你能帮我把它保存为mp4 contener (或avi contener)而不转码MJPEG视频吗?
发布于 2012-10-03 22:41:57
MJPEG是一种简单的编解码器,它意味着有一系列的jpeg图像。如果要将这些jpeg作为视频查看,则必须将它们存储在容器中。MP4是一个用于将它们存储在其中的公共容器。
因此,您可以将jpegenc输出复制回mp4mux,并将其存储在文件中。任何一个像样的媒体玩家都应该能够回放。
发布于 2012-10-04 11:02:51
我解决了我的问题。这里是我正在寻找的对线:
服务器
gst-launch filesrc location=thirdmovie640x360.mp4 ! decodebin2 name=dec
! queue ! ffmpegcolorspace ! jpegenc ! queue ! multipartmux
! udpsink host=192.168.0.4 port=5000客户端
gst-launch udpsrc port=5000 ! multipartdemux ! image/jpeg, framerate=25/1
! jpegparse ! jpegdec ! ffmpegcolorspace ! jpegenc
! avimux ! filesink location=output.avihttps://stackoverflow.com/questions/12712931
复制相似问题