La plataforma de tecnología de análisis inteligente de imágenes de video RTSP / RTMP EasyCVR agrega la actualización de la dirección CDN del canal después de la resolución de problemas de pérdida de campo CDN

La plataforma de tecnología de análisis inteligente de imágenes de video de TSINGSEE Green Rhinoceros EasyCVR no solo puede realizar escaneo de transmisión de video y compartir enlaces, sino que también admite push to CDN ( cómo EasyCVR empuja la transmisión de video de canal a CDN para su distribución ).

WeChat screenshot_20201127101659.png

Existe un problema cuando EasyCVR empuja el canal de video al CDN, es decir, cuando el usuario actualiza el canal después de agregar la dirección CDN del canal, el campo CDN se perderá.

Después de agregar la CDN al canal, aquí están los datos:

18.png

El campo CDN se pierde después de que se ejecuta el canal de actualización:

19.png

En este momento, los campos de la tabla CDN de la base de datos se muestran vacíos:

20.png

El código de investigación encontró que cuando se actualiza el canal, el servicio actualizará todos los canales, incluido el campo CDN, que también actualizará los datos antiguos, de modo que después de que se configure el campo CDN, el canal se actualice nuevamente, y el campo CDN está perdido.

Agregue el siguiente código, llame a .Omit ("enable_cdn", "cdn_url"), estos dos campos serán ignorados al actualizar los datos de la base de datos, el código de referencia es el siguiente:


if len(gbschannels) == 0 {
       cvrChannel.Name = channel.Name
       tx.Model(cvrdo.DBChannelInfo{}).Omit("enable_cdn", "cdn_url").Save(cvrChannel)
} else {
       tmp, ret := cvrdao.GetChannelDao().Get(uint(gbschannels[0].Index))
       if ret != nil {
              cvrChannel.Name = gbschannels[0].Name
       } else {
              cvrChannel.ChannelID = tmp.ChannelID
              cvrChannel.EnableAudio = tmp.EnableAudio
              cvrChannel.Name = tmp.Name
              cvrChannel.Token = tmp.Token
              cvrChannel.RecordPlanNew = tmp.RecordPlanNew
              cvrChannel.RecordPlanSwitch = tmp.RecordPlanSwitch
              cvrChannel.RecordPlan = tmp.RecordPlan
       }
       tx.Model(cvrdo.DBChannelInfo{}).Omit("enable_cdn", "cdn_url").Save(cvrChannel)
}

Después de ajustar el código, configure la dirección CDN nuevamente, tanto antes como después se pueden mostrar normalmente, el problema se ha resuelto.

21.png

La plataforma de integración del protocolo de video EasyCVR no solo es compatible con los protocolos de video principales actuales, como el estándar nacional GB28181 y RTSP, sino que también admite el acceso a dispositivos de algunos protocolos privados, incluidos los protocolos HIKSDK y Ehome. Los protocolos privados de otros fabricantes principales también se están expandiendo y será irregular. Entre ellos, vale la pena mencionar que EasyCVR puede usar el protocolo GB28181 para la conexión en cascada en muchas escenas al aire libre y proyectos de plataforma de múltiples niveles, y la característica de integración de múltiples protocolos también jugará un papel en muchos aspectos.

Supongo que te gusta

Origin blog.csdn.net/TsingSee/article/details/115306148
Recomendado
Clasificación