【BUG】AudioConsumer 中 consume 方法是不是存在无法完整消费剩余数据的情况?
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 45/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- python
- Ambito
- audio-video-rtc
Direzione di ricerca
Leggi agora_rtc/agora/rtc/utils/audio_consumer.py intorno a consume() alla riga 86, quindi traccia il modo in cui is_push_to_rtc_completed(), len() e release() osservano lo stato del consumer. Riproduci il caso in cui il push si interrompe con meno di un pacchetto di invio rimanente e non avviene alcun release. Il lavoro è completato quando i dati rimanenti e lo stato di completamento possono essere osservati correttamente senza restituire ripetutamente -2.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
在这个文件中
class AudioConsumer:
def consume(self):
//....something
if besent_packages > AudioConsumer.MIN_BUFFER_SIZE and data_len //self._bytes_per_frame < AudioConsumer.MIN_BUFFER_SIZE: #for fist time, if data_len is not enough, just return and wait for next time
#print("-----underflow data")
return -2
这里虽然注释说只有第一次会触发,但是如果我推送结束后,不再有新的数据继续推送,但是剩余数据又不足一个发送包,并且没有 release 的情况下。这里会一直返回 -2 。也就是说在release 之前我无法通过is_push_to_rtc_completed 或者 len() 正确的判断是否发送完成。
- Lingua principale
- Python
- Stelle
- 18
- Fork
- 5
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di AgoraIO-Extensions/Agora-Python-Server-SDK
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
-
Get RTC OfferAperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
AgoraIO-Extensions/Agora-Python-Server-SDK#9 · 2 commenti ·
-
unsubscribe_audio unsubscribe_video ISSUE: ctypes.ArgumentError: argument 2: TypeError: wrong typeAperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
AgoraIO-Extensions/Agora-Python-Server-SDK#5 · 1 commento ·
-
numpy类型转ExternalVideoFrame类型Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 28/100
Tutte le issue di AgoraIO-Extensions/Agora-Python-Server-SDK
Issue simili
-
documentation pkg: sphinx-needs
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 82/100
useblocks/sphinx-needs#2255 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 60/100
home-assistant/core#186538 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
btclib-org/btclib-secp256k1#1181 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
pyrite-wiki/pyrite#917 ·
I maintainer di solito rispondono entro 1 giorno