2017-02-15 18 views
5

tôi chạy lệnh này để có thể phát luồng trực tiếp udp tới luồng trực tiếp http có thể phát bằng ứng dụng di động đang xây dựng. chỉ là luồng của nó với luồng âm thanh.ffmpeg đầu ra kênh riêng biệt từ đầu vào có nhiều kênh

ffmpeg -i udp: // @ localhost: 1111 -map 0: a http://localhost:8090/feed1.ffm

Input #0, mpegts, from 'udp://@localhost:1111': 
    Duration: N/A, start: 54616.264622, bitrate: 768 kb/s 
    Program 1 
    Metadata: 
    service_name : Service 1 
    service_provider: TLK 
    Stream #0:0[0x101]: Audio: mp2 ([3][0][0][0]/0x0003), 48000 Hz, stereo, s16p, 96 kb/s 
    Program 2 
Metadata: 
    service_name : Service 2 
    service_provider: TLK 
Stream #0:1[0x111]: Audio: mp2 ([3][0][0][0]/0x0003), 48000 Hz, stereo, s16p, 96 kb/s 
Program 3 
Metadata: 
    service_name : Service 3 
    service_provider: TLK 
Stream #0:2[0x121]: Audio: mp2 ([3][0][0][0]/0x0003), 48000 Hz, stereo, s16p, 96 kb/s 
Program 4 
Metadata: 
    service_name : Service 4 
    service_provider: TLK 
Stream #0:3[0x131]: Audio: mp2 ([3][0][0][0]/0x0003), 48000 Hz, stereo, s16p, 96 kb/s 
    Program 5 
Metadata: 
    service_name : Service 5 
    service_provider: TLK 
Stream #0:4[0x141]: Audio: mp2 ([3][0][0][0]/0x0003), 48000 Hz, stereo, s16p, 96 kb/s 
    Program 6 
Metadata: 
    service_name : Service 6 
    service_provider: TLK 
Stream #0:5[0x151]: Audio: mp2 ([3][0][0][0]/0x0003), 48000 Hz, stereo, s16p, 96 kb/s 
    Program 7 
Metadata: 
    service_name : Service 7 
    service_provider: TLK 
Stream #0:6[0x161]: Audio: mp2 ([3][0][0][0]/0x0003), 48000 Hz, stereo, s16p, 96 kb/s 
Program 8 
Metadata: 
    service_name : Service 1 
    service_provider: TLK 
Stream #0:7[0x171]: Audio: mp2 ([3][0][0][0]/0x0003), 48000 Hz, stereo, s16p, 96 kb/s 

tôi nhận được sản lượng này

Stream mapping: 
    Stream #0:0 -> #0:0 (mp2 (native) -> mp2 (native)) 
    Stream #0:0 -> #0:1 (mp2 (native) -> mp2 (native)) 
Press [q] to stop, [?] for help 
size=  100kB time=00:00:07.19 bitrate= 113.8kbits/s speed=3.01x 
video:0kB audio:84kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 18.358242% 

tôi thực sự muốn có một cách tôi có thể có thể để ánh xạ mọi luồng đầu vào để có luồng đầu ra có thể được truy cập riêng biệt với luồng khác như có thể nếu tôi cần luồng đầu tiên có lẽ tôi sẽ chỉ

ffplay http://localhost:8090/feed1.ffm 

và nếu tôi cần dòng thứ 7 tôi sẽ chỉ

ffplay http://localhost:8090/feed7.ffm 

Hãy ai đó có thể giúp tôi phá vỡ vấn đề này. FFmpeg không có ví dụ phức tạp cho tình hình hiện tại của tôi.

đây là thông tin tiêu đề của tôi

[email protected]:~$ \ 
ffmpeg -i udp://@localhost:4000 \ 
    -map 0:a:0  http://localhost:8090/feed1.ffm 
    -map 0:a:1 http://localhost:8090/feed2.ffm 
    -map 0:a:2 http://localhost:8090/feed3.ffm 
    -map 0:a:3 http://localhost:8090/feed4.ffm 
    -map 0:a:4 http://localhost:8090/feed5.ffm 
    -map 0:a:5 http://localhost:8090/feed6.ffm 
    -map 0:a:6 http://localhost:8090/feed7.ffm 
    -map 0:a:7 http://localhost:8090/feed8.ffm 

phiên bản ffmpeg 3.2.4-1 ~ 16.04.york0 Bản quyền (c) 2000-2017 các nhà phát triển FFmpeg xây dựng với gcc 5.4.1 (Ubuntu 5.4.1-5ubuntu2 ~ 16.04.york1) Cấu hình 20170210 : --prefix =/usr --extra-version = '1 ~ 16.04.york0' - toolchain = hardened --libdir =/usr/lib/x86_64-linux-gnu --incdir =/usr/include/x86_64-linux-gnu - có thể-gpl - có thể tháo rời-tước - có thể-avresample - có thể-avisynth - có thể-gnutls --enable-ladspa --enable-libass --enable- libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libebur128 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enab le-libgme --enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librubberband --enable-libshine --enable-libsnappy - enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 - enable-libxvid --enable-libzmq --enable-libzvbi --enable-omx --enable-openal --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libiec61883 - khả năng chỉnh sửa - enable-frei0r --enable-libopencv --enable-libx264 - có thể chia sẻ được libavutil 55. 34.101/55. 34.101 libavcodec 57. 64.101/57. 64.101 libavformat 57. 56.101/57. 56.101 libavdevice 57. 1.100/57. 1.100 libavfilter 6. 65.100/6. 65.100 libavresample 3. 1. 0/3. 1. 0 libswscale 4. 2,100/4. 2,100 libswresample 2. 3,100/2. 3,100 libpostproc 54. 1,100/54. 1,100

Input #0, mpegts, from 'udp://@localhost:1111': 
    Duration: N/A, start: 60047.944622, bitrate: 768 kb/s 
    Program 1 
    Metadata: 
    service_name : Service 1 
    service_provider: TKL 
Stream #0:0[0x101]: Audio: mp2 ([3][0][0][0]/0x0003), 48000 Hz, stereo, s16p, 96 kb/s 
Program 2 
Metadata: 
    service_name : Service 2 
    service_provider: TKL 
Stream #0:1[0x111]: Audio: mp2 ([3][0][0][0]/0x0003), 48000 Hz, stereo, s16p, 96 kb/s 
Program 3 
Metadata: 
    service_name : Service 3 
    service_provider: TKL 
Stream #0:2[0x121]: Audio: mp2 ([3][0][0][0]/0x0003), 48000 Hz, stereo, s16p, 96 kb/s 
Program 4 
Metadata: 
    service_name : Service 4 
    service_provider: TKL 
Stream #0:3[0x131]: Audio: mp2 ([3][0][0][0]/0x0003), 48000 Hz, stereo, s16p, 96 kb/s 
Program 5 
Metadata: 
    service_name : Service 5 
    service_provider: TKL 
Stream #0:4[0x141]: Audio: mp2 ([3][0][0][0]/0x0003), 48000 Hz, stereo, s16p, 96 kb/s 
Program 6 
Metadata: 
    service_name : Service 6 
    service_provider: TKL 
Stream #0:5[0x151]: Audio: mp2 ([3][0][0][0]/0x0003), 48000 Hz, stereo, s16p, 96 kb/s 
Program 7 
Metadata: 
    service_name : Service 7 
    service_provider: TKL 
Stream #0:6[0x161]: Audio: mp2 ([3][0][0][0]/0x0003), 48000 Hz, stereo, s16p, 96 kb/s 
Program 8 
Metadata: 
    service_name : Service 8 
    service_provider: TKL 
Stream #0:7[0x171]: Audio: mp2 ([3][0][0][0]/0x0003), 48000 Hz, stereo, s16p, 96 kb/s 
Output #0, ffm, to 'http://localhost:8090/feed1.ffm': 
Metadata: 
creation_time : now 
encoder   : Lavf57.56.101 
Stream #0:0: Audio: mp2, 44100 Hz, mono, s16, 32 kb/s 
Metadata: 
    encoder   : Lavc57.64.101 mp2 
Stream #0:1: Audio: mp2, 44100 Hz, stereo, s16, 64 kb/s 
Metadata: 
    encoder   : Lavc57.64.101 mp2 
Output #1, ffm, to 'http://localhost:8090/feed2.ffm': 
Metadata: 
creation_time : now 
encoder   : Lavf57.56.101 
Stream #1:0: Audio: mp2, 44100 Hz, stereo, s16, 64 kb/s 
Metadata: 
    encoder   : Lavc57.64.101 mp2 
Output #2, ffm, to 'http://localhost:8090/feed3.ffm': 
Metadata: 
creation_time : now 
encoder   : Lavf57.56.101 
Stream #2:0: Audio: mp2, 44100 Hz, stereo, s16, 64 kb/s 
Metadata: 
    encoder   : Lavc57.64.101 mp2 
Output #3, ffm, to 'http://localhost:8090/feed4.ffm': 
Metadata: 
creation_time : now 
encoder   : Lavf57.56.101 
Stream #3:0: Audio: mp2, 44100 Hz, stereo, s16, 64 kb/s 
Metadata: 
    encoder   : Lavc57.64.101 mp2 
Output #4, ffm, to 'http://localhost:8090/feed5.ffm': 
Metadata: 
creation_time : now 
encoder   : Lavf57.56.101 
Stream #4:0: Audio: mp2, 44100 Hz, stereo, s16, 64 kb/s 
Metadata: 
    encoder   : Lavc57.64.101 mp2 
Output #5, ffm, to 'http://localhost:8090/feed6.ffm': 
Metadata: 
creation_time : now 
encoder   : Lavf57.56.101 
Stream #5:0: Audio: mp2, 44100 Hz, stereo, s16, 64 kb/s 
Metadata: 
    encoder   : Lavc57.64.101 mp2 
Output #6, ffm, to 'http://localhost:8090/feed7.ffm': 
Metadata: 
creation_time : now 
encoder   : Lavf57.56.101 
Stream #6:0: Audio: mp2, 44100 Hz, stereo, s16, 64 kb/s 
Metadata: 
    encoder   : Lavc57.64.101 mp2 
Output #7, ffm, to 'http://localhost:8090/feed8.ffm': 
Metadata: 
creation_time : now 
encoder   : Lavf57.56.101 
Stream #7:0: Audio: mp2, 44100 Hz, stereo, s16, 64 kb/s 
Metadata: 
    encoder   : Lavc57.64.101 mp2 
Stream mapping: 
Stream #0:0 -> #0:0 (mp2 (native) -> mp2 (native)) 
Stream #0:0 -> #0:1 (mp2 (native) -> mp2 (native)) 
Stream #0:0 -> #1:0 (mp2 (native) -> mp2 (native)) 
Stream #0:0 -> #2:0 (mp2 (native) -> mp2 (native)) 
Stream #0:0 -> #3:0 (mp2 (native) -> mp2 (native)) 
Stream #0:0 -> #4:0 (mp2 (native) -> mp2 (native)) 
Stream #0:0 -> #5:0 (mp2 (native) -> mp2 (native)) 
Stream #0:0 -> #6:0 (mp2 (native) -> mp2 (native)) 
Stream #0:0 -> #7:0 (mp2 (native) -> mp2 (native)) 
Press [q] to stop, [?] for help 

thats console đầy đủ của tôi.

Trả lời

0

cú pháp cơ bản là ffmpeg -i input1 -i input2 {switches} output1 {switches} output2..., vì vậy

ffmpeg -i udp://@localhost:1111 -map 0:a:0 http://localhost:8090/feed1.ffm 
           -map 0:a:1 http://localhost:8090/feed2.ffm 
           -map 0:a:2 http://localhost:8090/feed3.ffm 
           ... 
+0

tôi đã thử và sao chép luồng đầu tiên cho tất cả những người khác Lập bản đồ luồng: Luồng # 0: 0 -> # 0: 0 (mp2 (bản địa) -> mp2 (bản địa)) Luồng # 0: 0 -> # 0: 1 (mp2 (bản địa) -> mp2 (bản địa)) Luồng # 0: 0 -> # 1: 0 (mp2 (bản địa) -> mp2 (bản địa)) Luồng # 0: 0 -> # 2 : 0 (mp2 (bản địa) -> mp2 (bản địa)) Luồng # 0: 0 -> # 3: 0 (mp2 (bản địa) -> mp2 (bản địa)) Luồng # 0: 0 -> # 4: 0 (mp2 (bản địa) -> mp2 (bản địa)) Luồng # 0: 0 -> # 5: 0 (mp2 (bản địa) -> mp2 (bản địa)) Luồng # 0: 0 -> # 6: 0 (mp2 (bản địa) -> mp2 (bản địa)) Luồng # 0: 0 -> # 7: 0 (mp2 (bản địa) -> mp2 (bản địa)) Nhấn [q] để dừng, [?] để được trợ giúp –

+0

Hiển thị đầu ra bàn điều khiển đầy đủ. – Mulvya

+0

đây là liên kết đến mẫu ngắn. nó có tất cả 8 kênh luồng. Vui lòng tải xuống và cố gắng mô phỏng tình huống của tôi. http://drive.google.com/open?id=0B12_TxWYu6LzMlBsTDVMN2RjZ1E –

2

Bạn có thể làm điều đó bằng cách chạy 7 trường hợp khác nhau của ffmpeg tại cùng một thời gian như quá trình song song; nếu bạn mở cửa cho điều đó.

Cho phép mỗi trường hợp ffmpeg phân tách một luồng âm thanh và đầu ra thành cổng tương ứng.

Sẽ đi phần nào như thế này:

(ffmpeg -i udp://@localhost:1111 -map 0:a:0 http://localhost:8090/feed1.ffm) & (ffmpeg -i udp://@localhost:1111 -map 0:a:1 http://localhost:8090/feed2.ffm) & (ffmpeg -i udp://@localhost:1111 -map 0:a:2 http://localhost:8090/feed3.ffm) & and so on.

không muốn giới thiệu nó tuy nhiên, sẽ ăn lên công suất của CPU của bạn.

Các vấn đề liên quan