オーディオおよびビデオ開発コンテンツ

実際、オーディオとビデオの開発は、画像、オーディオ、およびビデオの基本的な知識を習得し、一連の開発とアプリケーションを収集、レンダリング、処理、および送信する方法を学ぶことです。
ここに画像の説明を挿入

取得:データの
出所の問題を解決しますレンダリング:データの表示方法の問題を解決します
処理:データの処理方法の問題を解決します
送信:データの共有方法の問題を解決します

各カテゴリを深く掘り下げて、画像をより効率的にレンダリングする方法、オーディオとビデオの圧縮率を改善する方法、弱いネットワークでオーディオとビデオのデータの送信を最適化する方法など、技術的な課題に満ちた次々と導き出すことができます。 、 等々。

実際、オーディオとビデオの開発の技術的な蓄積はそれほど難しくありません。問題を抱えてGoogleにアクセスし、タスクを練習してください。すべてが問題ではありません。上記の4つの方向を調べ、知識のポイントを1つずつ調べてみましょう。私たちが理解し、習得するために。

コレクション

コレクション、それはデータがどこから来るのかという問題を解決します、それでデータはどこから来るのですか?
ここに画像の説明を挿入
実際、どのプラットフォーム、画像、ビデオが元々カメラからのものであり、オーディオが元々マイクからのものであるかに関係なく、オーディオとビデオの収集を行うには、次の技術的知識を習得する必要があります。

1. 系统的摄像头采集接口是什么,怎么用 ?

比如:Windows:DirectShow,Linux:V4L2,Android:Camera,iOS:AVCaptureSession 等

2. 系统的摄像头采集的参数怎么配置,都是什么含义 ?

比如:分辨率、帧率、预览方向、对焦、闪光灯 等

3. 系统的摄像头输出的图像/视频数据,是什么格式,不同格式有什么区别 ?

比如:图片:JPEG,视频数据:NV21,NV12,I420 等

4. 系统的麦克风采集接口是什么,怎么用 ?

比如:Windows:DirectShow,Linux:ALSA & OSS,Android:AudioRecord,iOS:Audio Unit 等

6. 系统的麦克风采集参数怎么配置,都是什么含义 ?

比如:采样率,通道号,位宽 等

8. 系统的麦克风输出的音频数据,是什么格式?

比如:PCM

レンダリング

レンダリング、データの表示方法、次にデータの表示方法の問題を解決しますか?
ここに画像の説明を挿入
実際、どのプラットフォーム、画像、ビデオが最終的にビューに描画され、オーディオが最終的にスピーカーに出力されるかに関係なく、オーディオとビデオのレンダリングを行うには、次の技術的知識を習得する必要があります。

  1. YUV画像データの画像またはフレームを描画するためにシステムが提供するAPIは何ですか?
    例:
    Windows:DirectDraw、Direct3D、GDI、OpenGLなど
    。Linux:GDI、OpenGLなど
    。Android:ImageView、SurfaceView、TextureView、OpenGLなど
    。iOS:CoreGraphics、OpenGLなど。
  1. mp3またはpcmデータを再生するためにシステムはどのAPIを提供しますか?
    例:
    Windows:DirectSoundなど
    。Linux:ALSA&OSSなど
    。Android:AudioTrackなど
    。iOS:AudioQueueなど。

扱う

処理、それはデータを処理する方法の問題を解決します、そして、データはどのように処理することができますか?

まず、画像/音声/動画データに対してどのような処理ができるか見てみましょう。
ここに画像の説明を挿入
実際、プラットフォーム、画像、オーディオ、ビデオの処理、システムAPIに関係なく、それらのほとんどは、いくつかのクロスプラットフォームのサードパーティライブラリに依存します。これらのサードパーティの原則と使用法を習得することにより、ライブラリでは、基本的に毎日のオーディオおよびビデオ処理作業に対応できます。これらのライブラリには次のものが含まれますが、これらに限定されません。

1.画像処理:OpenGL、OpenCV、libyuv、ffmpegなど
。2。ビデオコーデック:x264、OpenH264、ffmpegなど
。3。オーディオ処理:speexdsp、ffmpegなど
。4。オーディオコーデック:libfaac、opus、speex、 ffmpegなど

したがって、これらのサードパーティライブラリの使用法を学び、習得する必要があります

伝染;感染

送信、それはデータを共有する方法の問題を解決し、次にデータを共有する方法は?

共有、最も重要なポイントは合意です。

インターネットがこれほど活発に発展し、全世界を緊密につなぐことができる理由は、W3C委員会の多大な貢献と切り離せないものだと思います。どのようなデータであっても、さまざまな国やさまざまなデバイス間で相互接続する必要があるからです。 「標準」と切り離せない「標準」で、誰もがお互いを理解することができます。

したがって、オーディオとビデオの伝送を研究することは、実際にはプロトコルを研究することです。具体的なプロトコルは何ですか?

1.どのように、送信前にオーディオやビデオをパッケージ化する:、FLV、TS、MPEG4など
2.ライブストリーミングのような一般的なプロトコル、何をしている:RTMP、RTSP、など
3.ライブストリーミングは、何をしていますRTMP、HLS、HDL、RTSPなどの一般的なプロトコル。4。UDP
ベースのプロトコルとは何ですか。例:RTP / RTCP、QUICなど。

インターネット環境でのオーディオとビデオの送信は、非常に困難で価値のある方向です。弱いネットワークの下での送信遅延とストールを解決し、ユーザーエクスペリエンスを向上させるために、業界全体が常に詳細な調査を行っています。最適化。

おすすめ

転載: blog.csdn.net/weixin_44991625/article/details/108096192