Seite 1 von 1
IP Camera
Verfasst: Do 12. Sep 2013, 21:39
von udog
Jo Gemeinde
brauch da mal etwas Aufklärung was den ffmpeg Player betrifft
Ich will meine Webcamstreams also keine Bilder,sondern Livestreams ähnlich Amsterdam im WebTV in die xml einbinden
nun haben meine Cams die Endung "videostream.cgi "
im VLC bekomm ich den Stream einwandfrei rein mit "http://xxx.xxx.xxx.:Port/videostream.cgi
jetzt hab ich gelesen das man das ffmpeg codieren lassen kann zb. "ffmpeg -f mjpeg -i
http://81.20.148.158/anony/mjpg.cgi"
getestet hab ich das auch schon alles.....aber ohne Erfolg
vielleicht hat jemand ne Idee wie man das verwirklichen kann.
Re: IP Camera
Verfasst: Fr 13. Sep 2013, 06:43
von BPanther
Da scheint wohl was zu fehlen lt. der Meldungen:
Code: Alles auswählen
playback_libeplayer3.cpp:Open - PlayMode=PLAYMODE_FILE
player output name: Output
IS FILE PLAYER: true
playback_libeplayer3.cpp:Start - filename=http://81.20.148.158/anony/mjpg.cgi vpid=0 vtype=0 apid=0 ac3=0
http://
[container_ffmpeg.c:container_ffmpeg_init] >
[container_ffmpeg.c:container_ffmpeg_init] filename http://81.20.148.158/anony/mjpg.cgi
[neutrino] CSectionsdClient::EVT_EIT_COMPLETE
[container_ffmpeg.c:container_ffmpeg_init] Error avformat_find_stream_info
[container_ffmpeg.c:container_ffmpeg_update_tracks] number streams 1
Codec ID: 8 (00000008)
[container_ffmpeg.c:Codec2Encoding] Codec ID 8 (00000008) not found
[container_ffmpeg.c:container_ffmpeg_update_tracks] CODEC_TYPE_VIDEO 0
[container_ffmpeg.c:container_ffmpeg_update_tracks] codec type video but codec unknown 8
[container_ffmpeg.c:container_ffmpeg_update_tracks] number streams 1
Codec ID: 8 (00000008)
[container_ffmpeg.c:Codec2Encoding] Codec ID 8 (00000008) not found
[container_ffmpeg.c:container_ffmpeg_update_tracks] CODEC_TYPE_VIDEO 0
[container_ffmpeg.c:container_ffmpeg_update_tracks] codec type video but codec unknown 8
[container_ffmpeg.c:container_ffmpeg_update_tracks] number streams 1
Codec ID: 8 (00000008)
[container_ffmpeg.c:Codec2Encoding] Codec ID 8 (00000008) not found
[container_ffmpeg.c:container_ffmpeg_update_tracks] CODEC_TYPE_VIDEO 0
[container_ffmpeg.c:container_ffmpeg_update_tracks] codec type video but codec unknown 8
manager/subtitle.c::ManagerList
manager/subtitle.c::ManagerList return (nil) (0 - 0)
[container_ffmpeg.c:container_ffmpeg_update_tracks] number streams 1
Codec ID: 8 (00000008)
[container_ffmpeg.c:Codec2Encoding] Codec ID 8 (00000008) not found
[container_ffmpeg.c:container_ffmpeg_update_tracks] CODEC_TYPE_VIDEO 0
[container_ffmpeg.c:container_ffmpeg_update_tracks] codec type video but codec unknown 8
[container_ffmpeg.c:container_ffmpeg_update_tracks] number streams 1
Codec ID: 8 (00000008)
[container_ffmpeg.c:Codec2Encoding] Codec ID 8 (00000008) not found
[container_ffmpeg.c:container_ffmpeg_update_tracks] CODEC_TYPE_VIDEO 0
[container_ffmpeg.c:container_ffmpeg_update_tracks] codec type video but codec unknown 8
playback_libeplayer3.cpp:SetAPid
[container_ffmpeg.c:container_ffmpeg_play]
[container_ffmpeg.c:container_ffmpeg_play] is Playing
[container_ffmpeg.c:container_ffmpeg_play] Created thread
[container_ffmpeg.c:container_ffmpeg_play] exiting with value 0
playback_libeplayer3.cpp:Start - return=1
[container_ffmpeg.c:FFMPEGThread]
[container_ffmpeg.c:FFMPEGThread] Running!
[container_ffmpeg.c:FFMPEGThread] no data ->end of file reached ?
[container_ffmpeg.c:FFMPEGThread] terminating
playback_libeplayer3.cpp:FindAllPids
[container_ffmpeg.c:container_ffmpeg_update_tracks] number streams 1
Codec ID: 8 (00000008)
[container_ffmpeg.c:Codec2Encoding] Codec ID 8 (00000008) not found
[container_ffmpeg.c:container_ffmpeg_update_tracks] CODEC_TYPE_VIDEO 0
[container_ffmpeg.c:container_ffmpeg_update_tracks] codec type video but codec unknown 8
playback_libeplayer3.cpp:SetSpeed playing 1 speed 1
[playback.c:PlaybackContinue] continue not possible
returning false
KEY: 80 - STOP
Re: IP Camera
Verfasst: Fr 13. Sep 2013, 09:06
von DboxOldie
Dieser Stream von 81....anony/..usw sagt der vlc : mjpeg Video
Das wäre dieser Codec (lt. avcodec.h) : AV_CODEC_ID_MJPEG <---- wäre im enum = 8
Ist im ffmpeg aktiviert:
FFMPEG_CONFIGURE += --enable-decoder=h263i --enable-decoder=h264 --enable-decoder=iff_byterun1 --enable-decoder=mjpeg
Nur in container_ffmpeg.c vom eplayer3 wird der nicht gehandelt.
Vielleicht kann man den da mit beischreiben : ( mehr wie absemmeln kann ja nicht passieren )
fprintf(stderr, "Codec ID: %ld (%.8lx)\n", (long)codec->codec_id, (long)codec->codec_id);
switch (codec->codec_id)
{
case AV_CODEC_ID_MPEG1VIDEO:
case AV_CODEC_ID_MPEG2VIDEO:
return "V_MPEG1";
Re: IP Camera
Verfasst: Fr 13. Sep 2013, 10:32
von BPanther
Mir war auch so als wenn das ffm kennt. Müsste man mal testen was dann passiert wenn man das hinzufügt.
Re: IP Camera
Verfasst: Fr 13. Sep 2013, 10:42
von DboxOldie
Jo, habs gemacht....
case AV_CODEC_ID_MJPEG:
case AV_CODEC_ID_MPEG1VIDEO:
case AV_CODEC_ID_MPEG2VIDEO:
return "V_MPEG1";
Für "V_MPEG1" kommt ´ne Meckermeldung kein writer, habs dann auf :
return "V_MPEG2"; geändert...
Er spielt aber kein Bild....
Sagt auch bei der Analyse : Bitrate = 0
Und sagt sofort :
Code: Alles auswählen
Codec ID: 8 (00000008)
[container_ffmpeg.c:container_ffmpeg_update_tracks] 0. encoding = V_MPEG2 - version 0
[container_ffmpeg.c:container_ffmpeg_update_tracks] CODEC_TYPE_VIDEO 0
[container_ffmpeg.c:container_ffmpeg_update_tracks] frame_rate = 25.000000
[container_ffmpeg.c:container_ffmpeg_update_tracks] bit_rate = 0
[container_ffmpeg.c:container_ffmpeg_update_tracks] flags = 0
[container_ffmpeg.c:container_ffmpeg_update_tracks] frame_bits = 0
[container_ffmpeg.c:container_ffmpeg_update_tracks] time_base.den 1200000
[container_ffmpeg.c:container_ffmpeg_update_tracks] time_base.num 1
[container_ffmpeg.c:container_ffmpeg_update_tracks] frame_rate 25
[container_ffmpeg.c:container_ffmpeg_update_tracks] TimeScale 1
[container_ffmpeg.c:container_ffmpeg_update_tracks] frame_rate 25000
[container_ffmpeg.c:container_ffmpeg_update_tracks] TimeScale 1000
[container_ffmpeg.c:container_ffmpeg_update_tracks] Stream has no duration so we take the duration from context
[output/linuxdvb.c:LinuxDvbOpen] ioctl failed with errno 22
[output/linuxdvb.c:LinuxDvbOpen] VIDEO_CLEAR_BUFFER: Invalid argument
playback_libeplayer3.cpp:SetAPid
[container_ffmpeg.c:container_ffmpeg_play]
[container_ffmpeg.c:container_ffmpeg_play] is Playing
[container_ffmpeg.c:container_ffmpeg_play] Created thread
[container_ffmpeg.c:container_ffmpeg_play] exiting with value 0
playback_libeplayer3.cpp:Start - return=1
[container_ffmpeg.c:FFMPEGThread]
[container_ffmpeg.c:FFMPEGThread] Running!
[container_ffmpeg.c:FFMPEGThread] no data ->end of file reached ?
[container_ffmpeg.c:FFMPEGThread] terminating
playback_libeplayer3.cpp:FindAllPids
Wobei eine normale *. mpg weiterhin läuft.
das "V_MPEG1" kommt auch nirgendwo weiter vor nur "V_MPEG2" im writer.

Re: IP Camera
Verfasst: Fr 13. Sep 2013, 10:44
von BPanther
Hmm, denke mal, daß man da was anderes zurückgeben muß als mpg1/2, denn es ist ja nur nen Bild sozusagen, also nen jpg.
Re: IP Camera
Verfasst: Fr 13. Sep 2013, 10:47
von DboxOldie
Ist ja ein bewegtes Bild ( mjpeg ), man sieht ja auch im vlc das sich ein wenig bewegt.
Oder es fehlt einfach´ne passende writer Definition für sowas.
Re: IP Camera
Verfasst: Fr 13. Sep 2013, 10:50
von BPanther
Hmm, dabei fällt mir gerade auf, wenn das nicht mal mit ffmpeg selbst abspielbar ist, braucht man auch erstmal nichts nachzutragen denke ich mal. Hier ist wohl ffm selbst gefragt wie Du schon festgestellt hast.
Re: IP Camera
Verfasst: Fr 13. Sep 2013, 12:07
von BPanther
Also ein
ffmpeg -vcodec mjpeg -f mjpeg -i http://81.20.148.158/anony/mjpg.cgi /tmp/test.mpg erzeugt ein mpg, genau dazu ist auch ffmpeg gedacht, zum konvertieren. Ein streamen auf das Video-Device dürfte so nicht gehen (oder hat einer die richtigen Parameter dafür?), dafür gibts den eplayer3. Der hat allerdings das Problem, daß er kein mjpeg kennt, daher keine Darstellung.
Re: IP Camera
Verfasst: Fr 13. Sep 2013, 13:10
von udog
das wäre ja prima ,muß ich testen wenn ich zu Hause bin

Re: IP Camera
Verfasst: Fr 13. Sep 2013, 13:20
von BPanther
Nur was bringt Dir das? Ist ja nur ein konvertieren in eine Datei, nicht mehr. Eine direkte Wiedergabe funktioniert wie gesagt nicht so...