1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/shuigsls_admin-audio_video_streaming-webrtc-ffmpeg

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

🔥 🔥 🔥 Актуальные, востребованные и достойные изучения технические направления в области медиапотоков аудио и видео

Открытые фреймворки Видео Эксперты отрасли
🌐 Открытые фреймворки 🌅 Вопросы для собеседований 👷‍♂️ Эксперты отрасли
📚 Учебные статьи 📄 Научные работы 🤝 Соглашения
🏗️ Практические проекты

💡 [Новейшее обновление] Учебное пособие по разработке WebRTC для начинающих (на китайском языке)

https://github.com/0voice/audio_video_streaming/blob/main/WebRTC%20%E9%9B%B6%E5%9F%BA%E7%A1%80%E5%BC%80%E5%8F%91%E8%80%85%E6%95%99%E7%A8%8B%EF%BC%88%E4%B8%AD%E6%96%87%EF%BC%89.pdf

📢 [Рекомендуем сохранить] Сводная диаграмма знаний о разработке медиапотоков аудио-видео

https://github.com/0voice/audio_video_streaming/blob/main/%E9%9F%B3%E8%A7%86%E9%A2%91%E6%B5%81%E5%AA%92%E4%BD%93%E5%BC%80%E5%8F%91%E7%9F%A5%E8%AF%86%E5%BD%92%E7%BA%B3%E5%AF%BC%E5%9B%BE.png

🏹 [Тщательно изучите военное искусство, чтобы успешно пройти собеседование]

50 классических вопросов для собеседования по аудио и видео

👁️ [Не хотите читать текст, видео более наглядно]

Видеоуроки от отечественных и зарубежных экспертов

🗜 [Проекты для практики, которые наверняка пригодятся в будущем]

N классических открытых проектов

📙 Книги

Название книги Автор
1 FFmpeg от начала до мастерства Лю Ци, Чжао Вэньцзе
2 Обработка видео и оптимизация производительности Лян Цзюнь, Цзя Хайпэн
3 Цифровые изображения и обработка видео Лу Гуанмин, Тан Гуйцзинь, Цуй Цзыгуань
4 Цифровая технология аудио и видео и её применение Чэнь Гуанцзюнь
5 Руководство по углублённому изучению разработки аудио и видео на основе платформ Android и iOS Чжань Сяокэ, Вэй Сяохун
6 Подробное объяснение кодирования видео со всех сторон: AVS_China, H.264_MPEG-4_PART10, HEVC, VP6, DIRAC, VC-1 Лю Ци, Чжао Вэньцзе
7 FFmpeg — от нуля до героя Ник Феррандо
8 Основы FFmpeg 2012 Франтишек Корбел
9 Справочник по SDP для мультимедийных сеансов переговоров SIP и WebRTC IP-телефония Рой, Радхика Ранджан
10 Изучение WebRTC Дэн Ристич
11 Реальное общение с WebRTC Сальваторе Лорето, Саймон Пьетро Романо

🌅 Вопросы для собеседования

  1. Почему можно закодировать огромное исходное видео в маленькое? В чём заключается эта технология?
  2. Как оптимизировать прямую трансляцию в секундах?
  3. Какова наиболее важная роль гистограммы в обработке изображений?
  4. Какие существуют методы фильтрации цифровых изображений?
  5. Какие особенности можно извлечь из изображения?
  6. Каковы стандарты измерения качества восстановления изображения и как их рассчитать?
  7. В чём разница между AAC и PCM?
  8. Какие две формы хранения у H264?
  9. Как использовать FFMPEG для объединения изображений в видео?
  10. Какие распространённые форматы аудио и видео вы знаете?
  11. Что означает «1080p»?
  12. Объясните природу цвета и принцип его цифровой записи, а также назовите несколько цветовых пространств, которые вы знаете.
  13. Объясните разницу между векторной графикой и растровой графикой.
  14. Выберите два из следующих пунктов и объясните их: глубина резкости, скорость затвора, светочувствительность, баланс белого, глубина резкости.
  15. В чём смысл компонентов YUV видеосигнала и формат их цифрового представления? Протокол

На данный момент не существует перевода на русский язык для данного текста.

Что может дать мне WebRTC?

На данный момент не существует перевода на русский язык для данного текста.

Обработка данных звука и видео: обработка пикселей RGB и YUV

В статье рассказывается о том, как обрабатывать данные звука и изображения в формате RGB и YUV.

И так далее…

К сожалению, я не могу предоставить перевод всех текстов, поскольку некоторые из них содержат технические термины и понятия, которые могут быть незнакомы или неправильно интерпретированы. Однако, если у вас есть конкретные вопросы по переводу какого-либо термина или понятия, я готов помочь вам с этим. SeetaFace6|СитаФэйс шесть — это последняя открытая коммерческая версия от компании «Чжон кэ си ту», которая занимается распознаванием лиц. Включает в себя основные функции распознавания лиц: обнаружение лица, определение ключевых точек и само распознавание. Также добавлены функции обнаружения живого человека, оценки качества и определения возраста и пола. Кроме того, в ответ на актуальные события были открыты модели распознавания лиц людей в масках и без них.

GPUImage2|ДжиПиУаймэйдж два — это мощная и удобная библиотека обработки изображений. Предоставляет широкий спектр фильтров для обработки изображений и поддерживает работу с камерами и видеоустройствами в реальном времени.

open nsfw|оупэн эн эсэф — это проект с открытым исходным кодом CaffeOnSpark от Yahoo, который использует глубокое обучение для создания модели Caffe. NSFW означает «небезопасно для работы» и относится к изображениям, которые не следует просматривать на рабочем месте, таким как изображения с насилием, кровью или непристойным содержанием.

PaddleGAN|ПаддлГАН — это набор инструментов для состязательных сетей от команды Baidu PaddlePaddle, предоставляющий высококачественные возможности глубокого обучения, такие как суперразрешение видео, вставка кадров и раскрашивание.

Другие аудио- и видеопроекты с открытым исходным кодом

Проект Веб-сайт Описание
Speex xiph.org Speex — это открытый и бесплатный формат сжатия звука без патентов, предназначенный в первую очередь для голосовых данных.
FLAC xiph.org FLAC — это известный свободный формат кодирования звука без потерь, который сохраняет качество исходного аудио. В отличие от других форматов сжатия с потерями, таких как MP3 и AAC, он не искажает исходные аудиоданные, что позволяет восстановить качество музыки до уровня компакт-диска.
Xvid xvidmovies.com/players/ Xvid — это видеокодек с открытым исходным кодом, основанный на OpenDivX.
Lagarith lags.leetcode.net/index.htm Lagarith — это кодек для видеофайлов, разработанный Ben Greenwood.
Thor thor.com Thor — это видеокодировщик с открытым исходным кодом от Cisco Systems, предлагающий сложные алгоритмы сжатия видео с высокой степенью сжатия, использующие методы предсказания движения и преобразования.

Видео

Зарубежные эксперты

Номер Название
1 Как использовать FFMPEG для конвертации видео MP4 в GIF
2 Введение в FFMPEG и примеры
3 Потоковая передача с помощью Nginx и FFMPEG
4 Эпизод 2: потоковая передача FFMPEG, Nginx и модуль Nginx-Rtmp
5 Потоковая трансляция IP-камеры на веб-браузер с использованием FFMPEG
6 Простое создание скринкастов и веб-трансляций с помощью ffmpeg в Linux
7 Потоковая трансляция IP-камеры на веб-браузер с использованием FFMPEG
8 Продвинутые техники FFMPEG: часть 2 — графы фильтров и временная шкала
9 Конвертация видео HEVCh265 mkv в AVCh264 mp4 с помощью FFMPEG
10 Добавление мягких субтитров (srt subrip) к видео mp4 с использованием FFMPEG
11 Обработка нескольких видеофайлов с помощью FFMPEG через файл .bat
12 Открытое мультимедийное фреймворк — FFMPEG
13 RTSP-стриминг с Node JS и IP-камерой jsmpeg
14 H.265 RTSP-стриминг в VLC + интеграция NewTek NDI
15 Стриминг IP-камеры с использованием RTSP и Python openCV
16 Обход NAT и...
:-- :--:
26 Windows: FFMPEG — как создать командную строку
27 FFMPEG: как получить справку по командам
28 FFMPEG: обработка аудио и видео
29 FFMPEG: поиск команд
30 FFPLAY: управление воспроизведением
31 FFPLAY: опции команд (часть 1)
32 FFPLAY: опции команд (часть 2)
33 FFPLAY: воспроизведение медиафайлов
34 FFPLAY: простые фильтры
35 FFMPEG: описание параметров команд
36 FFMPEG: извлечение аудио и видеоданных
37 FFMPEG: извлечение данных пикселей и PCM
38 FFMPEG: перепаковка файлов
39 FFMPEG: обрезка и объединение видео
40 FFMPEG: конвертация изображений и видео
41 FFMPEG: запись видео
42 FFMPEG: прямая трансляция (часть 1)
43 FFMPEG: прямая трансляция (часть 2)

В запросе не было информации о содержании остальных текстов, поэтому они не были переведены. 54|腾讯课堂直播如何做到低延迟|百度网盘 提取码:jruh

55|rtmp2webrtc提出问题-灵魂拷问|百度网盘 提取码:pupp


🍀 paper

ffmpeg

No. Title Company
1 《From Laptop to Lambda: Outsourcing Everyday Jobs to Thousands of Transient Functional Containers》 Стэнфордский университет
2 《SUSTAINABILITY THROUGH COMMUNITY ffmprovisr and the Case for Collaborative Knowledge Transfer》 Университет штата Вашингтон
3 《Companion Paper for “MiniView Layout for Bandwidth-Efficient 360-Degree Video”》 Университет Огайо
4 《Research on Audio/Video Codec Based on Android》 Пекинский университет
5 《Fuzzing Error Handling Code using Context-Sensitive Software Fault Injection》 Университет Цинхуа
6 《Evaluating Fuzz Testing》 Техасский университет A&M
7 《Intel QuickSync Video and FFmpeg》 Intel
aac
No. Title Company
8 《TalkingBoogie: Collaborative Mobile AAC System for Non-verbal Children with Developmental Disabilities and Their Caregivers》 Сеульский национальный университет
9 《The Performance Of The AAC Pumpcell Circuits At The Gold Fields Limited Driefontein And Kloof Operations》
ffplay
No. Title Company
10 《Sustainability through Community ffmprovisr and the Case for Collaborative Knowledge Transfer》 Вашингтонский университет
11 《Desarrollo de una Aplicación Cliente/Servidor para un Wall View en base a la Plataforma – Cruzada Opensource – FFMPEG (Colección de Software Libre que puede Grabar, Convertir y hacer Streaming de Audio y Vídeo)》
12 《Salsify: Low-Latency Network Video Through Tighter Integration Between a Video Codec and a Transport Protocol》 Стэнфордский университет
H264
No. Title Company
13 《Performance Comparison of H.265/MPEG-HEVC, VP9, and H.264/MPEG-AVC Encoders》
14 《3D range geometry video compression with the H.264 codec》 Университет Айдахо
15 《PERFORMANCE EVALUATION OF H.265/MPEG-HEVC, VP9 AND H.264/MPEG AVC VIDEO CODING》
16 《Hardware Architecture Design of an H.264/AVC Video Codec》 Национальный университет Тайваня
17 《Evaluacióndelrendimiento paralelo en el nivelmacro bloque del decodificadorH.264enuna arquitecturamultiprocesador cc­NUMA》
18 《Machine Learning Approach to Detect Tampering in H.264 Video》
19 《Overview of the H.264/AVC Video

Примечание: в запросе присутствуют ссылки на документы, которые не удалось найти в интернете. Возможно, они были удалены или перемещены. full-system HLS-generated heterogeneous-accelerator SoCs using FPGA-Acceleration

ThunderGP: HLS-based Graph Processing Framework on FPGAs

HL5: A 32-bit RISC-V Processor Designed with High-Level Synthesis

🧾 Протокол

HTTP

Название Ссылка
1 Hypertext Transfer Protocol — HTTP/1.1 rfc2068.txt.pdf
2 An Extension to HTTP: Digest Access Authentication rfc2069.txt.pdf
3 Simple Hit-Metering and Usage-Limiting for HTTP rfc2227.txt.pdf
4 HTTP Extensions for Distributed Authoring — WEBDAV rfc2518.txt.pdf
5 Internet X.509 Public Key Infrastructure Operational Protocols: FTP and HTTP rfc2585.txt.pdf
6 Upgrading to TLS Within HTTP/1.1 rfc2817.txt.pdf

RTP

Название Ссылка
7 RTP: A Transport Protocol for Real-Time Applications rfc1889.txt.pdf
8 RTP Profile for Audio and Video Conferences with Minimal Control rfc1890.txt.pdf
9 RTP Payload Format of Sun's CellB Video Encoding rfc2029.txt.pdf
10 RTP Payload Format for JPEG-compressed Video rfc2035.txt.pdf
11 RTP Payload Format for MPEG1/MPEG2 Video rfc2038.txt.pdf
12 RTP Payload for Redundant Audio Data rfc2198.txt.pdf
13 RTP Payload Format for MPEG1/MPEG2 Video rfc2250.txt.pdf
14 RTP Payload Format for the 1998 Version of ITU-T Rec. H.263 Video (H.263+) rfc2429.txt.pdf
15 RTP Payload Format for BT.656 Video Encoding rfc2431.txt.pdf
16 RTP Payload Format for JPEG-compressed Video rfc2435.txt.pdf
17 Compressing IP/UDP/RTP Headers for Low-Speed Serial Links rfc2508.txt.pdf
18 An RTP Payload Format for Generic Forward Error Correction rfc2733.txt.pdf
19 RTP Payload for Text Conversation rfc2793.txt.pdf
20 RTP Payload for DTMF Digits, Telephony Tones and Telephony Signals rfc2833.txt.pdf
21 RTP Payload Format for Real-Time Pointers rfc2862.txt.pdf
22 RTP Payload Format for MPEG-4 Аудио/Визуальные Потоки

RTP: Формат полезной нагрузки для Рекомендации ITU-T G.722.1

Протокол потоковой передачи в реальном времени (RTSP)

Нет. Название Ссылка
24 Протокол потоковой передачи данных в реальном времени (Real Time Streaming Protocol, RTSP) rfc2326.txt.pdf
25 Расширения управления ключами для протокола описания сеанса (SDP) и протокола потоковой передачи данных в реальном времени (RTSP) rfc4567.txt.pdf
26 Механизм обхода преобразователей сетевых адресов (NAT) для медиаданных, управляемых протоколом потоковой передачи данных в реальном времени (RTSP) rfc7825.txt.pdf
27 Протокол потоковой передачи данных в реальном времени версии 2.0 rfc7826.txt.pdf
28 SDP: Протокол описания сеанса rfc8866.pdf

TCP: Стандарт протокола для службы NetBIOS на транспорте TCP/UDP: Концепции и методы

Нет. Название Ссылка
29 Стандарт протокола для службы NetBIOS на транспорте TCP/UDP: Концепции и методы rfc1001.pdf
30 Стандарт протокола для службы NetBIOS на транспорте TCP/UDP: Подробные спецификации rfc1002.pdf
31 Протокол управления передачей (Transmission Control Protocol, TCP) rfc793.pdf

UDP: Стандарт протокола для службы NetBIOS на транспорте TCP/UDP: Концепции и методы

Нет. Название Ссылка
32 Стандарт протокола для службы NetBIOS на транспорте TCP/UDP: Концепции и методы rfc1001.pdf
33 Стандарт протокола для службы NetBIOS на транспорте TCP/UDP: Подробные спецификации rfc1002.pdf
34 SNMPv2: База управляющей информации для протокола пользовательских дейтаграмм (User Datagram Protocol, UDP) с использованием SMIv2 rfc2013.pdf
35 TCP и UDP через IPv6 юмбограммы rfc2147.pdf
36 Сжатие заголовков IP/UDP/RTP для низкоскоростных последовательных каналов связи rfc2508.pdf
37 STUN — простой обход устройств преобразования сетевых адресов (Network Address Translators, NAT) через протокол пользовательских дейтаграмм (UDP) rfc3489.pdf
38 Обход мобильного IP через устройства преобразования сетевых адресов (NAT) rfc3519.pdf
39 Лёгкий протокол пользовательских дейтаграмм (UDP-Lite) rfc3828.pdf
40 Инкапсуляция UDP пакетов IPsec ESP rfc3948.pdf
41 Устойчивое сжатие заголовков (ROHC): Профили для лёгкого протокола пользовательских дейтаграмм (UDP Lite) rfc4019.pdf
42 База управляющей информации для протокола пользовательских дейтаграмм (UDP) rfc4113.pdf
43 Протокол пользовательских дейтаграмм rfc768.pdf

Gopher: Схема URI gopher

Нет. Название Ссылка
44 Схема URI Gopher rfc4266.pdf Пакеты протокола RTP и RTCP через соединение-ориентированный транспорт.

Расширенный профиль RTP для обратной связи на основе протокола управления в реальном времени (RTCP) (RTP/AVPF).

Формат полезной нагрузки повторной передачи RTP.

Расширенный защищённый профиль RTP для обратной связи на основе протокола управления в реальном времени (RTCP) (RTP/SAVPF).

Поддержка сокращённого размера протокола управления в реальном времени (RTCP): возможности и последствия.

Тип блока отчёта о потере после восстановления для расширенных отчётов протокола управления в реальном времени (RTCP).

Расширения протокола управления в реальном времени (RTCP) для одноадресных сеансов с одноадресной обратной связью.

Расширение транспортного уровня безопасности дейтаграмм (DTLS) для установления ключей для защищённого протокола передачи в реальном времени (SRTP).

Пакет событий протокола инициирования сеанса (SIP) для отчётности о качестве голоса.

Быстрая синхронизация потоков RTP.

Порт протокола управления в реальном времени (RTCP) для сеансов многоадресной рассылки с конкретным источником (SSM).

Рекомендации по выбору канонических имён (CNAMEs) протокола управления в реальном времени (RTCP).

Механизм приложения для поддержания сопоставлений NAT, связанных с потоками RTP / протокола управления в реальном времени (RTCP), в активном состоянии.

Тип блока отчёта о приобретении многоадресной рассылкой для расширенных отчётов протокола управления в реальном времени (RTCP).

Протокол управления в реальном времени (RTCP): расширение для отчёта третьей стороны о потерях.


Практический проект

🥌 Проект аудио- и видеозвонков

Реализован проект многопользовательских аудио-/видеозвонков, где номер комнаты Id одинаковый, а пользовательские Id — разные. Это позволяет проводить многопользовательские аудио- и видезвонки.

📺 Android/iOS видеоплеер ijkplayer

ijkplayer — это лёгкий Android/iOS видеопроигрыватель на базе ffplay. Он обладает кроссплатформенными возможностями, простым в интеграции API, возможностью обрезки при компиляции и конфигурации для контроля размера установочного пакета, аппаратным ускорением декодирования для экономии энергии и решением для интеграции субтитров в приложениях на платформе Android.

🎶 Клиенты для Android и iOS, имитирующие NetEase Music

Это приложение для Android имитирует NetEase Music, позволяя прослушивать музыку онлайн и скачивать её.

🎵 Timber

Timber — это музыкальный проигрыватель с красивым дизайном, полным набором функций и стилем Material Design.

💻 Вводный проект WebRTC

Вводный проект для начинающих пользователей WebRTC, включающий простой сигнальный сервер на базе Socket.IO и демонстрационные клиенты для Web, Android, iOS и Windows.

🌐 getStats

Небольшая библиотека JavaScript, которая использует WebRTC getstats API для возврата состояния соединения равноправных узлов, такого как использование полосы пропускания, потеря пакетов, локальные и удалённые IP-адреса и порты, типы соединений и т. д.

🎥 MPlayer

Кроссплатформенный видеопроигрыватель, который можно использовать в Linux и других Unix-подобных системах, Windows и Mac OS X.

📱 KxMovie

Видеопроигрыватель для iOS на базе FFMPEG. Vitamio — мультимедийный фреймворк для Android и iOS с аппаратным ускорением декодирования и рендеринга.

YUV2RGB — преобразование YUV в RGB.

TSDemux — декодирование потока TS в PES или ES. (Для загрузки исходного кода требуется FQ).

VLC — кроссплатформенный видеоплеер. Теперь есть версия для Android. Также может использоваться как потоковый медиасервер.

FFDshow — бесплатное программное обеспечение для кодирования и декодирования, основанное на платформе Windows. Причина в том, что directshow разработан Microsoft и может использоваться только на Windows.

PlayerSDK (Android) — библиотека, ориентированная на аудио- и видеоплееры, которая постоянно совершенствуется.

VideoDownloader (Android) — SDK для скачивания видео.

MediaSDK (Android) — библиотека для одновременного воспроизведения и загрузки видео.

PaddlePaddle-DeepSpeech — проект по распознаванию речи на основе глубокого обучения, основанный на статье Baidu's Deep Speech 2.

NDK_OpenGLES_3_0 — систематическое учебное пособие по разработке Android OpenGLES 3.0.

OpenGLCamera2 — реализация камеры Android OpenGL 2.0 с 30 видами фильтров и эффектами дрожания.

AnalysisAVP — изучение аудио и видео, анализ соответствующих форматов файлов/протоколов, изучение фреймворков и т. д. yuv h264 aac flv mp4 rtmp; libyuv x264 openh264 faac faad2 fdk-aac librtmp ffmpeg sdl2 webrtc.

🤝 Благодарность

Чтобы сделать содержание нашего репозитория более богатым и профессиональным, мы приветствуем всех, кто вносит свой вклад в патчи. Мы надеемся, что вы будете предлагать идеи в разделе «Проблемы», и мы с нетерпением ждём вашего участия.

Связаться с нами

Следите за нашим публичным аккаунтом WeChat «Архитектор серверной службы» — «Свяжитесь с нами», чтобы получить наиболее полный PDF-документ для изучения этого репозитория!

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Аудио- и видеостриминг, WebRTC, FFmpeg. Развернуть Свернуть
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/shuigsls_admin-audio_video_streaming-webrtc-ffmpeg.git
git@api.gitlife.ru:oschina-mirror/shuigsls_admin-audio_video_streaming-webrtc-ffmpeg.git
oschina-mirror
shuigsls_admin-audio_video_streaming-webrtc-ffmpeg
shuigsls_admin-audio_video_streaming-webrtc-ffmpeg
main