1

ffmpeg を使用してウェブカメラから AkamaiHD サービスにビデオをストリーミングしようとしています (Flash Media Live Encoder に実装されているように)。


    ffmpeg -f dshow -i video="Webcam C110" -s 640x360 -aspect 16:9 -profile:v baseline -    pix_fmt yuv420p -vcodec libx264 -f flv "rtmp://..."
...
   Input #0, dshow, from 'video=Webcam C110':
  Duration: N/A, start: 31296.194000, bitrate: N/A
    Stream #0:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 640x480, 30 tbr, 10000k tbn, 30 tbc
Output #0
  Metadata:
    encoder         : Lavf55.8.102
    Stream #0:0: Video: h264 (libx264) ([7][0][0][0] / 0x0007), yuv420p, 640x360 [SAR 1:1 DAR 16:9], q=-1--1, 1k tbn, 30 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo -> libx264)
....

ビデオはストリーミングされていますが、 http: //mediapm.edgesuite.net/edgeflash/public/zeri/debug/Main.html?url=myplayback_url/manifest.f4m で表示しようとすると 表示されません。

ビデオが FMLE を使用して録画され、akamai に再ストリーミングされると、HLS ストリームが再生されることがわかりました。


ffmpeg -re -i sample.f4v -c copy -f flv "rtmp://..."
....
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'sample.f4v':
  Metadata:
    major_brand     : f4v
    minor_version   : 0
    compatible_brands: isommp42m4v
    creation_time   : 2018-10-06 09:23:33
  Duration: 00:01:01.77, start: 0.460000, bitrate: 718 kb/s
    Stream #0:0(eng): Video: h264 (Baseline) (avc1 / 0x31637661), yuv420p, 640x360 [SAR 1:1 DAR 16:9], 624 kb/s, 30 tbr, 1k tbn, 48 tbc
    Metadata:
      creation_time   : 2018-10-06 09:23:33
      handler_name    : MainConcept

Output #0
  Metadata:
    major_brand     : f4v
    minor_version   : 0
    compatible_brands: isommp42m4v
    encoder         : Lavf55.8.102
    Stream #0:0(eng): Video: h264 ([7][0][0][0] / 0x0007), yuv420p, 640x360 [SAR 1:1 DAR 16:9], q=2-31, 624 kb/s, 1k tbn, 1k tbc
    Metadata:
      creation_time   : 2018-10-06 09:23:33
      handler_name    : MainConcept
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
....

問題は h.264 コーデックの設定にあるようですが、まだ解決策が見つかりません。

ffmpeg を使用して FMLE のようなストリーミングを実装する方法を教えてください。

4

1 に答える 1

0

Akamai の場合、ffmpeg で使用される librtmp でサポートされているとは思えない RTMP エントリポイントの認証が必要だと思います。

詳細については、Wowza のこのスレッドを参照してください。

コーデックの問題だと思われる場合は、コーデックをコピーする代わりに、ビデオ コーデックとして -c:v libx264 を使用し、オーディオ用に -c:a libfaac を使用してエンコードを試すことができます。

于 2013-06-21T04:43:02.820 に答える