Java FFMpeg-将多个rtmp流输入合并到单个rtmp输出
我正在尝试合并两个rtmp流,然后将它们发布到另一个流 例: 场景如下,我得到一个来自用户麦克风的流 是第一个micMyStream7,我也从另一个用户那里得到了一个流,但这一个有音频和视频MyStream7 当用户说话时,他们彼此交谈,而另一方只会倾听,反之亦然 我的想法是建立第三条名为bcove的流,将两者合并,这样我就可以让观众只听他们之间的整个对话 这是ffmpeg打印的日志,尽管我无法识别任何帮助我的信息Java FFMpeg-将多个rtmp流输入合并到单个rtmp输出,java,ffmpeg,video-streaming,audio-streaming,wowza,Java,Ffmpeg,Video Streaming,Audio Streaming,Wowza,我正在尝试合并两个rtmp流,然后将它们发布到另一个流 例: 场景如下,我得到一个来自用户麦克风的流 是第一个micMyStream7,我也从另一个用户那里得到了一个流,但这一个有音频和视频MyStream7 当用户说话时,他们彼此交谈,而另一方只会倾听,反之亦然 我的想法是建立第三条名为bcove的流,将两者合并,这样我就可以让观众只听他们之间的整个对话 这是ffmpeg打印的日志,尽管我无法识别任何帮助我的信息 paulo@paulo-desktop:~$ ffmpeg -re -i rtm
paulo@paulo-desktop:~$ ffmpeg -re -i rtmp://ip:1935/live/micMyStream7 -i rtmp://ip:1935/live/MyStream7 -strict -2 -f flv rtmp://ip:1935/live/bcove7
ffmpeg version N-56029-g2ffead9 Copyright (c) 2000-2013 the FFmpeg developers
built on Sep 4 2013 11:05:57 with gcc 4.7 (Ubuntu/Linaro 4.7.3-1ubuntu1)
configuration:
libavutil 52. 43.100 / 52. 43.100
libavcodec 55. 31.100 / 55. 31.100
libavformat 55. 16.100 / 55. 16.100
libavdevice 55. 3.100 / 55. 3.100
libavfilter 3. 83.102 / 3. 83.102
libswscale 2. 5.100 / 2. 5.100
libswresample 0. 17.103 / 0. 17.103
Input #0, flv, from 'rtmp://ip:1935/live/micMyStream7':
Metadata:
author :
copyright :
description :
keywords :
rating :
title :
presetname : Medium Bandwidth (300 Kbps) - VP6
creationdate : Wed Sep 4 16:41:52 2013
:
videodevice : Built-in iSight
videokeyframe_frequency: 5
audiodevice : External microphone
audiochannels : 1
audioinputvolume: 75
Duration: N/A, start: 0.000000, bitrate: 253 kb/s
Stream #0:0: Video: vp6f, yuv420p, 320x240, 204 kb/s, 44.83 tbr, 1k tbn, 1k tbc
Stream #0:1: Audio: mp3, 22050 Hz, mono, s16p, 49 kb/s
Input #1, flv, from 'rtmp://ip:1935/live/MyStream7':
Metadata:
author :
copyright :
description :
keywords :
rating :
title :
presetname : Custom
creationdate : Wed Sep 4 12:02:24 2013
:
videodevice : FaceTime HD Camera (Built-in)
videokeyframe_frequency: 5
audiodevice : Internal microphone
audiochannels : 1
audioinputvolume: 75
Duration: N/A, start: 0.000000, bitrate: 253 kb/s
Stream #1:0: Video: vp6f, yuv420p, 320x240, 204 kb/s, 45.08 tbr, 1k tbn, 1k tbc
Stream #1:1: Audio: mp3, 22050 Hz, mono, s16p, 49 kb/s
Output #0, flv, to 'rtmp://ip:1935/live/bcove7':
Metadata:
author :
copyright :
description :
keywords :
rating :
title :
presetname : Medium Bandwidth (300 Kbps) - VP6
creationdate : Wed Sep 4 16:41:52 2013
:
videodevice : Built-in iSight
videokeyframe_frequency: 5
audiodevice : External microphone
audiochannels : 1
audioinputvolume: 75
encoder : Lavf55.16.100
Stream #0:0: Video: flv1 (flv) ([2][0][0][0] / 0x0002), yuv420p, 320x240, q=2-31, 200 kb/s, 1k tbn, 44.83 tbc
Stream #0:1: Audio: adpcm_swf ([1][0][0][0] / 0x0001), 22050 Hz, mono, s16, 88 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (vp6f -> flv)
Stream #0:1 -> #0:1 (mp3 -> adpcm_swf)
Press [q] to stop, [?] for help
[mp3 @ 0x3625ec0] overread, skip -9 enddists: -3 -300:14.44 bitrate= 224.0kbits/s
[mp3 @ 0x3625ec0] overread, skip -7 enddists: -3 -30:26.39 bitrate= 203.5kbits/s
提前感谢复制视频流并混合两个单声道流
使用或音频过滤器
对于两个RTMP输入:
ffmpeg-irtmp://ip:1935/live/micMyStream7 -我rtmp://ip:1935/live/MyStream7 -filter_complex[0:a][1:a]amix[a]-map 0:v-map[a]-c:v copy-f flvrtmp://ip:1935/live/bcove7
对于RTMP输入和附加的循环音频文件:
ffmpeg-irtmp://ip:1935/live/micMyStream7 -re-stream_loop-1-i input.mp3-filter_complex[0:a][1:a]amix[a]-map 0:v-map[a]-c:v copy-c:a aac-f flvrtmp://ip:1935/live/bcove7
-c:v将复制视频,而不是重新编码。
复制视频流并混合两个单声道流
使用或音频过滤器
对于两个RTMP输入:
ffmpeg-irtmp://ip:1935/live/micMyStream7 -我rtmp://ip:1935/live/MyStream7 -filter_complex[0:a][1:a]amix[a]-map 0:v-map[a]-c:v copy-f flvrtmp://ip:1935/live/bcove7
对于RTMP输入和附加的循环音频文件:
ffmpeg-irtmp://ip:1935/live/micMyStream7 -re-stream_loop-1-i input.mp3-filter_complex[0:a][1:a]amix[a]-map 0:v-map[a]-c:v copy-c:a aac-f flvrtmp://ip:1935/live/bcove7
-c:v将复制视频,而不是重新编码。
请包括完整的ffmpeg控制台输出。默认情况下,ffmpeg每个输出只包含一种流类型。看见你能详细说明你所说的合并是什么意思吗?您想要顶部和底部并排显示、画中画、叠加等吗?更新了我的问题。如果遗漏了什么,请告诉我,谢谢您的关注。两个输入都有视频流。是否应该忽略来自micMyStream7的视频流?实际上,在制作过程中,它不会有来自micMyStream7的视频流。当我使用Flash媒体编码器模拟该流时,我不小心忘记删除视频的检查选项。My bad=请包含完整的ffmpeg控制台输出。默认情况下,ffmpeg每个输出只包含一种流类型。看见你能详细说明你所说的合并是什么意思吗?您想要顶部和底部并排显示、画中画、叠加等吗?更新了我的问题。如果遗漏了什么,请告诉我,谢谢您的关注。两个输入都有视频流。是否应该忽略来自micMyStream7的视频流?实际上,在制作过程中,它不会有来自micMyStream7的视频流。当我使用Flash媒体编码器模拟该流时,我不小心忘记删除视频的检查选项。My bad=如何将额外的音频文件添加到已经有音频和视频的rtmp流中。我想在我的流中添加一些背景音乐。。IE.Video+Audio+bgmusic.mp3=到单个RTMP。感谢@llogan,我们将尝试此操作并向您更新结果。如何将额外的音频文件添加到已包含音频和视频的RTMP流中。我想在我的流中添加一些背景音乐。。IE.Video+Audio+bgmusic.mp3=到单个RTMP。感谢@llogan,我们将尝试此功能并向您更新结果。
paulo@paulo-desktop:~$ ffmpeg -re -i rtmp://ip:1935/live/micMyStream7 -i rtmp://ip:1935/live/MyStream7 -strict -2 -f flv rtmp://ip:1935/live/bcove7
ffmpeg version N-56029-g2ffead9 Copyright (c) 2000-2013 the FFmpeg developers
built on Sep 4 2013 11:05:57 with gcc 4.7 (Ubuntu/Linaro 4.7.3-1ubuntu1)
configuration:
libavutil 52. 43.100 / 52. 43.100
libavcodec 55. 31.100 / 55. 31.100
libavformat 55. 16.100 / 55. 16.100
libavdevice 55. 3.100 / 55. 3.100
libavfilter 3. 83.102 / 3. 83.102
libswscale 2. 5.100 / 2. 5.100
libswresample 0. 17.103 / 0. 17.103
Input #0, flv, from 'rtmp://ip:1935/live/micMyStream7':
Metadata:
author :
copyright :
description :
keywords :
rating :
title :
presetname : Medium Bandwidth (300 Kbps) - VP6
creationdate : Wed Sep 4 16:41:52 2013
:
videodevice : Built-in iSight
videokeyframe_frequency: 5
audiodevice : External microphone
audiochannels : 1
audioinputvolume: 75
Duration: N/A, start: 0.000000, bitrate: 253 kb/s
Stream #0:0: Video: vp6f, yuv420p, 320x240, 204 kb/s, 44.83 tbr, 1k tbn, 1k tbc
Stream #0:1: Audio: mp3, 22050 Hz, mono, s16p, 49 kb/s
Input #1, flv, from 'rtmp://ip:1935/live/MyStream7':
Metadata:
author :
copyright :
description :
keywords :
rating :
title :
presetname : Custom
creationdate : Wed Sep 4 12:02:24 2013
:
videodevice : FaceTime HD Camera (Built-in)
videokeyframe_frequency: 5
audiodevice : Internal microphone
audiochannels : 1
audioinputvolume: 75
Duration: N/A, start: 0.000000, bitrate: 253 kb/s
Stream #1:0: Video: vp6f, yuv420p, 320x240, 204 kb/s, 45.08 tbr, 1k tbn, 1k tbc
Stream #1:1: Audio: mp3, 22050 Hz, mono, s16p, 49 kb/s
Output #0, flv, to 'rtmp://ip:1935/live/bcove7':
Metadata:
author :
copyright :
description :
keywords :
rating :
title :
presetname : Medium Bandwidth (300 Kbps) - VP6
creationdate : Wed Sep 4 16:41:52 2013
:
videodevice : Built-in iSight
videokeyframe_frequency: 5
audiodevice : External microphone
audiochannels : 1
audioinputvolume: 75
encoder : Lavf55.16.100
Stream #0:0: Video: flv1 (flv) ([2][0][0][0] / 0x0002), yuv420p, 320x240, q=2-31, 200 kb/s, 1k tbn, 44.83 tbc
Stream #0:1: Audio: adpcm_swf ([1][0][0][0] / 0x0001), 22050 Hz, mono, s16, 88 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (vp6f -> flv)
Stream #0:1 -> #0:1 (mp3 -> adpcm_swf)
Press [q] to stop, [?] for help
[mp3 @ 0x3625ec0] overread, skip -9 enddists: -3 -300:14.44 bitrate= 224.0kbits/s
[mp3 @ 0x3625ec0] overread, skip -7 enddists: -3 -30:26.39 bitrate= 203.5kbits/s