Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von Feinfinger
Thema: G.729 Audiokompressionscodec in C# verwenden: Woher bekommt man DLLs oder Lizenzen?
Am im Forum: Grafik und Sound

Ich bin durch Zufall fündig geworden und auf das komplette gowk project gestoßen wo die g.729 dll dabei war und jetzt funzt es!
link

Thema: G.729 Audiokompressionscodec in C# verwenden: Woher bekommt man DLLs oder Lizenzen?
Am im Forum: Grafik und Sound

Den kenne ich, leider konnte ich aber die dort verwendete g729.dll nicht finden die da verwendet wird. Ich stoße immer nur auf die g729.lib aber dieser Dateityp lässt sich meines wissens nicht in c# einbinden und mein c++ liegt so weit zurück das ich kaum noch einen eigenen Wrapper zusammenbekomme...

Einen G729 acm Codec habe ich auch gefunden von Vidosystem aber wenn ich versuche die Aufnahme zu starten bekomme ich nur die Meldung :

Fehler
Speicher kann nicht reserviert werden, da keine Größe festgelegt wurde.

Thema: G.729 Audiokompressionscodec in C# verwenden: Woher bekommt man DLLs oder Lizenzen?
Am im Forum: Grafik und Sound

so Lizenztechnisch bin ich schonmal weiter

G729 codec licenses (Übersetzt mit Google Translate)

aber gibts es auch schon einen fertigen Wrapper für die dll ?

Thema: G.729 Audiokompressionscodec in C# verwenden: Woher bekommt man DLLs oder Lizenzen?
Am im Forum: Grafik und Sound

Ok das wäre die dll zum selber compilieren aber was zum Thema Lizenzkosten hab ich vergebens gesucht!?

Thema: G.729 Audiokompressionscodec in C# verwenden: Woher bekommt man DLLs oder Lizenzen?
Am im Forum: Grafik und Sound

Hallo,

ich würde gerne den g729 für mein aktuelles Projekt verwenden aber ich tue mich irgenwie schwer Infos darüber zu finden wo man die entsprechende Dll herbekommt bzw. die Lizenzen!?
Kennt jemand von Euch einen passenden deutschen Reseller?


Gruß
Feinfinger

Thema: TCP Audiostreaming stockt bei EDGE
Am im Forum: Netzwerktechnologien

Hallo Zusammen,

ich habe mir ein kleines Voip Tool geschrieben, welches bei UMTS auch wunderbar funktioniert. Habe ich aber nur EDGE funktioniert nur der Upload zum Server super aber nicht der Download, der gerät ins stocken. Dabei sind das gerdae mal 4kbyte/s!
Das ganze läuft im grunde genommen über eine simple TCP/IP Verbindung.

Gibts es irgendwelche einstellungen am Socket die ich noch nicht berücksictigt habe???

Gruß
Feinfinger

Thema: Priorität für einen bestimmten Socket
Am im Forum: Netzwerktechnologien

Hallo Zusammen,

habe ich die Möglichkeit, wenn gleichzeit über zwei TCP Sockets Daten versendet werden, zu sagen, dass die Daten von einem der beiden mit priorität versendet werden?
Wobei der Socket mit priorität sehr viel kleinere Pakete versenden würde als der andere.

Gruß
Lars

Thema: Frage zu DirectShow Samplegrabber und Komprimierung
Am im Forum: Grafik und Sound

Hallo Zusammen,

ich versuche gerade mir anhand der Beispiele aus der DirectShow.net eine Testapplikation zu bauen welche folgende Eigenschaften haben soll:
1. Video und Sound von der Webcam abgreifen
2. Video Preview anzeigen
3. Sound&Video Daten komprimieren
4. Daten zwecks versenden über das Netzwerk in Pakete unterteilen.

1-3 habe ich wahrscheinlich mehr schlecht als recht gelöst:

Die Filter zum Abgreifen der Kameradaten gesetzt

                     hr = m_FilterGraph.AddSourceFilterForMoniker(dev.Mon, null, dev.Name, out capFilter);
                     hr = m_FilterGraph.AddSourceFilterForMoniker(capADevices[0].Mon, null, capADevices[0].Name, out audFilter);
und einen ASF Filter erstellt welcher die Daten aufnimmt und komprimiert


            DirectShowLib.IFileSinkFilter pTmpSink = null;
            DirectShowLib.IBaseFilter asfWriter = null;
            
            int hr = capGraph.SetOutputFileName(DirectShowLib.MediaSubType.Asf, szOutputFileName, out asfWriter, out pTmpSink);
            Marshal.ThrowExceptionForHR(hr);

            try
            {
                DirectShowLib.IConfigAsfWriter lConfig = asfWriter as DirectShowLib.IConfigAsfWriter;

                // Windows Media Video 8 for Dial-up Modem (No audio, 56 Kbps)
                // READ THE README for info about using guids
                Guid cat = new Guid(0x6E2A6955, 0x81DF, 0x4943, 0xBA, 0x50, 0x68, 0xA9, 0x86, 0xA7, 0x08, 0xF6);
               //320x240 fair quality with stereo audio ca. 2mb / min
                Guid Gui = new Guid(0x3510A862, 0x5850, 0x4886, 0x83, 0x5F, 0xD7, 0x8E, 0xC6, 0xA6, 0x40, 0x42);
                hr = lConfig.ConfigureFilterUsingProfileGuid(Gui);
                Marshal.ThrowExceptionForHR(hr);
               
            }
            finally
            {
                Marshal.ReleaseComObject(pTmpSink);
            }

Das ganze ausgeben und in eine Datei schreiben ist kein Problem


                    hr = capGraph.RenderStream(DirectShowLib.PinCategory.Preview, DirectShowLib.MediaType.Video, capFilter, null, null);
                    DirectShowLib.DsError.ThrowExceptionForHR(hr);
                    hr = capGraph.RenderStream(DirectShowLib.PinCategory.Capture, DirectShowLib.MediaType.Video, capFilter, null, asfWriter);
                   
                    DirectShowLib.DsError.ThrowExceptionForHR(hr);
                    hr = capGraph.RenderStream(DirectShowLib.PinCategory.Capture, DirectShowLib.MediaType.Audio, audFilter, null, asfWriter);
               
                    DirectShowLib.DsError.ThrowExceptionForHR(hr);

Aber ich möchte keine Datei als ausgabe sondern etwas was sich "on the fly" versenden lässt. Daher kam ich zu dem Punkt Samplegrabber aber wo hänge ich den drann, denn der asf Filter hat keinen Ausgang dafür definiert und unkomprimiert möchte ich es auch nicht wegschicken!?
Kann jemand einem blutigen Anfänger auf dem Gebiet helfen oder kennt jemand ein gutes Bsp. ?

Soweit zu meinem bisherigen Ansatz :


sampGrabber = new SampleGrabber() as ISampleGrabber;

                     // Configure the sample grabber
                     IBaseFilter baseGrabFlt = sampGrabber as IBaseFilter;
                     AMMediaType media = new AMMediaType();

                     // Set the media type to Video/RBG24
                     media.majorType = MediaType.Video;
                     media.subType = MediaSubType.RGB24;
                     media.formatType = FormatType.VideoInfo;
                     hr = sampGrabber.SetMediaType(media);
                     DsError.ThrowExceptionForHR(hr);

                     DsUtils.FreeAMMediaType(media);
                     media = null;
                     DirectShowLib.IPin pSampleIn = DsFindPin.ByDirection(baseGrabFlt, PinDirection.Input, 0);
                     DirectShowLib.IPin VideoPin = DsFindPin.ByDirection(asfWriter, PinDirection.Output, 0);
                     // Configure the samplegrabber
                     hr = sampGrabber.SetCallback(Call, 1);
                     DsError.ThrowExceptionForHR(hr);
                     hr = m_FilterGraph.AddFilter(baseGrabFlt, "Ds.NET Grabber");
                     DsError.ThrowExceptionForHR(hr);

                     hr = m_FilterGraph.Connect(VideoPin, pSampleIn);
                     DsError.ThrowExceptionForHR(hr);
Der VideoPin ist hierbei NULL.


Gruß
Lars

Thema: VS2005 & WM6.5 -> Bootstrapper konnte nicht geladen werden.
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Moin,

ich habe XP Prof. SP3

Thema: VS2005 & WM6.5 -> Bootstrapper konnte nicht geladen werden.
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hallo Zusammen,

ich habe heute mein HTC HD2 mit WM6.5 bekommen und bin kurz nach dem anschließen des USB Kabels schon auf das erste Problem gestoßen mit Visual Studio 2005.

Zitat
Fehler 1 Bootstrapper konnte nicht geladen werden. Device Connectivity Component

Nun habe ich mal ein bischen gegoogelt und bin zum einen auf den Hinweis gestoßen das man unter lokalen Einstellungen dieses eine Verzeichniss löschen sollte oder das man Zertifikate nachinstallieren solle.
Beides hat nun nicht geholfen und irgendwie werde ich das Gefühl nicht los das VS2005 generell schon veraltet ist für WM6.5 !?

Gruß
Lars

Thema: TcpClient an ausgesuchtes Netzwerk binden
Am im Forum: Netzwerktechnologien

hat sich erledigt! Habe gestern die Aussage bekommen das der verwendete Cisco VPN Client nach aktivierung alle anderen Verbindungen quasi dominiert

Thema: TcpClient an ausgesuchtes Netzwerk binden
Am im Forum: Netzwerktechnologien

Hallo,

ich versuche gerade in einemTestprogramm festzulegen welches Netzwerk ein TcpClient zu benutzen hat. Die Notwendigkeit dafür liegt in dem Problem das ich einen Server im Internet habe den ich über das normale Umts WAN erreiche aber baue ich einen VPN Tunnel zusätzlich auf hat sich was mit verbindung zum Server.
Also habe ich mir folgendes überlegt:

            System.Net.Sockets.TcpClient Client = new System.Net.Sockets.TcpClient();
            IPEndPoint End = null;
            System.Net.NetworkInformation.NetworkInterface[] Arr = System.Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces();
            foreach (System.Net.NetworkInformation.NetworkInterface I in Arr)
            {
                System.Net.NetworkInformation.IPInterfaceProperties P = I.GetIPProperties();
                if (I.OperationalStatus == System.Net.NetworkInformation.OperationalStatus.Up &&
                    I.NetworkInterfaceType != System.Net.NetworkInformation.NetworkInterfaceType.Tunnel &&
                    P.GatewayAddresses.Count > 0 && I.Description.Contains("VPN")==false)
                {
                    End = new IPEndPoint(P.UnicastAddresses[0].Address, 0);
                    MessageBox.Show(I.Description);
                    break;
                }
                
            }
            Client.Client.Bind(End);

            Client.Client.Connect(Server, 44444);

was leider nicht zum erfolg führte obwohl er zuverlässig die WAN Verbindung wählt und ich meine das ich die Funktion "Bind" richtig verwende!?
Hat jemand eine Idee was ich falsch gemacht haben könnte?

Gruß
Lars

Thema: chm-Datei Rechte Problem
Am im Forum: Rund um die Programmierung

Hallo,

ich habe vermutlich ein Rechte Problem bei der Verteilung von chm-Hilfe Dateien über einen selbstgeschriebene Update-Service. Es läuft dabei so ab das ich bei einer neuen Version die Datei per TCP/IP auf einen Server im Internet schicke dort auf der Festplatte zwischenspeichere und von dort aus auf die jeweiligen Clients verteile per TCP/IP. Bei Dlls z.b. funktioniert das ohne Probleme aber wird eine chm-Datei auf einen Client runtergeladen lässt sich diese nicht mehr öffnen oder ich bekomme nur die Anfangseite ohne Menu, kopiere ich diese Datei manuell auf den Client per Netzwerkfreigabe ist alles i.O. . Beide chm-Dateien sind gleich groß und die Übertragung kann auch keine Fehler haben da das dazugehörige Programm mir Fehler aus den ausgetauschten Dlls melden würde, bleibt nur noch ein Unterschied in den Rechten durch die unterschiedlichen Übertragungswege aber welcher?


Gruß
Feinfinger

Thema: IMEI auslesen
Am im Forum: Rund um die Programmierung

Für andere die hier suchen:

Die Tapilib.dll einbinden aus diesem DemoProjekt
http://www.peterfoot.net/RetrieveIMEIThroughTAPI.aspx


class IMEI
    {
        //Import cellcore.dll

        [DllImport("cellcore.dll")]
        internal static extern int lineGetGeneralInfo(IntPtr hLine, byte[] bCache);

        // code to get IMEI
        public  string  getIMEIInfo()
        {
            
            string IMEI;
            Tapi t = new Tapi();
            t.Initialize();
            Line _line = t.CreateLine(0, LINEMEDIAMODE.INTERACTIVEVOICE, LINECALLPRIVILEGE.MONITOR);

            byte[] buffer = new byte[512];
            //write size
            BitConverter.GetBytes(512).CopyTo(buffer, 0);

            if (lineGetGeneralInfo(_line.hLine, buffer) != 0)
            {
                throw new System.ComponentModel.Win32Exception (System.Runtime.InteropServices.Marshal.GetLastWin32Error(), "TAPI Error: " + System.Runtime.InteropServices.Marshal.GetLastWin32Error().ToString("X"));
            }

            int serialsize = BitConverter.ToInt32(buffer, 36);
            int serialoffset = BitConverter.ToInt32(buffer, 40);
            IMEI = System.Text.Encoding.Unicode.GetString(buffer, serialoffset, serialsize);
            IMEI = IMEI.Substring(0, IMEI.IndexOf(Convert.ToChar(0)));


            _line.Dispose();
            t.Shutdown();
            return IMEI;
        }
    }

Thema: IMEI auslesen
Am im Forum: Rund um die Programmierung

zumindest weis ich dadurch das für die IMEI die letzten beiden stellen abgeschitten werden um wieder auf 15 byte zu kommen.

Thema: IMEI auslesen
Am im Forum: Rund um die Programmierung

Den Beitrag kenn ich wohl.
1. Problem: Die Tapi Dll von opennetcf ist kostenpflichtig
2. Problem: Die IMEI die da ermittelt wird ist 17 byte lang, aber soweit ich weis
darf sie laut telefonstandart nur 15 byte lang sein!?

Thema: IMEI auslesen
Am im Forum: Rund um die Programmierung

Das Ding ist recht mächtig aber die IMEI konnte ich auch dort nicht finden.

Thema: IMEI auslesen
Am im Forum: Rund um die Programmierung

Hallo,

ich suche einen weg die Geräte IMEI unter Windows Mobile auszulesen.
Irgenwie muss es ja gehen da diese ja unter Einstellungen -> Geräte-Information
angezeigt wird.

Thema: CreateFile unter CF
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

das kommt schon hin,letzten endes ist es die coredll.dll

        [DllImport("coredll.dll", SetLastError = true, CharSet = CharSet.Auto)]
        private static extern int CreateFile(

          string lpFileName,                        
          uint dwDesiredAccess,                      
          int dwShareMode,                          
          int lpSecurityAttributes, 
          int dwCreationDisposition,                
          int dwFlagsAndAttributes,                 
          int hTemplateFile                        
        );

Thema: CreateFile unter CF
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Ich suche unter CF 2.0 eine möglichkeit CreateFile bzw. ReadFile zu verwenden, unter normalen Bedingungen würde ich [DllImport("kernel32.dll")] verwenden aber die nette Dll scheints unter Windows Mobile nicht zu geben!?

Thema: Applikation auf PDA fernsteuern
Am im Forum: Rund um die Programmierung

Hallo,

ich suche gerade eine Möglichkeit von einem Destop Pc aus ein Programm auf einem Windows CE5.0 Gerät zu steuern. Ich verwende bereits die OpenNETCF um eine Replikation von Daten zu einem entfernten Server zu ermöglichen ohne das das Gerät selber eine TCP/IP Verbindung benötigt, nur wenn die Replikation beendet ist muss ich der Software auf dem Gerät irgendwie sagen das es die Daten neu laden muss.

Die einzige Lösung die mir bisher eingefallen ist, ist eine zweite kleine Applikation zu schreiben die ich über RAPI CreateProcess aufrufe und die dann eine Globale Message schickt aber wirklich begeistern tut mich das nicht.

Thema: XMLReader und Unicode
Am im Forum: Datentechnologien

Bin doch noch selbst drauf gekommen :

                    StreamReader SReader = new StreamReader(RecStream, Encoding.Unicode);
                    XmlTextReader Reader = new XmlTextReader(SReader);
                    DsClient.ReadXml(Reader);
                    Reader.Close();

Thema: XMLReader und Unicode
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: XML

Hallo,

Ich übertrage typisierte Datasets per Tcp/Ip zum Datenabgleich und damit ich die Umlaute in den Datensätzen nicht verliere wandle ich die XMLDaten in Unicode um:

     XmlWriterSettings sett = new XmlWriterSettings();
            sett.ConformanceLevel = ConformanceLevel.Auto;
            sett.Encoding = Encoding.Unicode;
            XmlWriter Writer = XmlWriter.Create(Stream, sett);
            dataSetClient.WriteXml(Writer);

Das kommt auch schön brav an am server und alle Umlaute sind erhalten geblieben aber das DataSet kann das ganze nicht mehr einlesen aufeinmal !?

                    XmlReaderSettings Settings = new XmlReaderSettings ();
                    Settings.ConformanceLevel = ConformanceLevel.Auto;
                    XmlReader Reader = XmlReader.Create(RecStream, Settings);
                    DsClient.ReadXml(Reader);
                    Reader.Close();

Thema: Parameter für Select mit "IN" Bedingung
Am im Forum: Datentechnologien

das Verhalten konnte ich auch beobachten bei mir also dann doch zu Fuß

           string InClause = "";
            foreach (DataRow R in DsMain.WORKTODOSTATUS)
            {
                InClause += R["ID"].ToString() + ",";
            }
            if (InClause != "" || Workstatus != "")
            {
                WorkTodostatus = InClause.Remove(InClause.Length - 1);
                string Sql = REP_SQL.sql_worknotes.Replace("%2", Workstatus);
                Sql = Sql.Replace("%1", WorkTodostatus);
                OdbcDataAdapter Adapter = new OdbcDataAdapter(Sql, MainCon);
                Adapter.Fill(DsMain.WORKNOTES);
                Adapter.Dispose();
            }[

Thema: Parameter für Select mit "IN" Bedingung
Am im Forum: Datentechnologien

verwendetes DatenbanksystemDBC Firebird

Ich arbeite mit typisierten Datasets und habe nun einem Tableadapter mit einer Select abfrage die eine über "IN" einen Parameter mit eine kommagetrennten Liste übergeben bekommt :
SELECT ID, IDENT, PCONF_ID, NOTES, LOV_STATUS, TYP_ID, CHANGED
FROM WORKFOLDERS
WHERE (PCONF_ID IN (?))

Den Parameter hab ich als String konfigurert aber ich bekomme keine Werte zurück wenn ich das Fill aufrufe, wenn ich aber das statement so direkt in dem
Datenbankeditor ausführe und die generierte Liste da einfüge funktioniert es.
Also liegt es daran wie der Parameter vom Visual Studio interpretiert wird aber ich hab keine Ahnung wie man ihn anders konfiguriern sollte !?

Thema: Aktualisierung mit Fill führt zu doppelten Einträgen
Am im Forum: Datentechnologien

den seed habe ich jeweils auch schonmal geändert, daran liegt es leider nicht. Man müsste die möglichkeit haben über den tableadapter einzelne Datensätze zuholen anstatt nur tabellenweise! Dann könnte ich den neu eingügten Datensatz nämlich zwischen Update und Fill löschen aber so wüsste ich danach nicht mehr welcher jetzt der neue war .

Thema: Aktualisierung mit Fill führt zu doppelten Einträgen
Am im Forum: Datentechnologien

die id wird per autoincr. des datasets erzeugt nach dem einfügen und quasi als zwischenlösung verwendet bis der datensatz über die Fill Methode mit der in der Datenbank vergebenen Id aktualisiert wird. Das Funktioniert ja auch komischerweise wenn clearbeforefill false ist aber nur wenn mind 2 datensätze vorhanden sind ! Folglich muss die Fill Methode den Datensatz irgendwie wiedererkennen können auch wenn sich der Primärschlüssel geändert hat.

Thema: Aktualisierung mit Fill führt zu doppelten Einträgen
Am im Forum: Datentechnologien

die einstellung ist aber notwendig da ich aufgrund von fremdschlüsseln nicht einfach so eine Tabelle löschen kann
vs2005 ist leider nicht so intelligent diese für die Fill funktion ausser kraft zu setzen.

Thema: Aktualisierung mit Fill führt zu doppelten Einträgen
Am im Forum: Datentechnologien

Hallo,

folgendes Problem tritt bei mir auf. Ich habe eine leere Tabelle bei der ich einen neuen Datensatz einfüge. Diesen schicke ich dann per "Update" des tableadapters runter zur Datenbank und aktualsiere die Tabelle danach mit "Fill" mit der eigenschaft "ClearBeforeFill" = false. Dabei aktualisiert er den neu angelegten datensatz nicht, sondern legt den aus der Datenbank gelesenen neu an so das ich 2 mal den gleichen hab! Das tritt nicht auf sobald vorher schon ein Datensatz vorhanden war. Dann aktualsiert er ihn schön brav.

Sinn der ganzen Geschichte war eigentlich das ich aus sämtlichen Insert Statements der Adapter den Primärschlüssel genommen hab und so beim aktualisieren mit der Datenbank den dort über den Generator erzeugten Schlüssel zurückbekomme.

Thema: Zugriff auf Components in abgeleiteten Formularen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Yup das wars , alte gewohnheiten sag ich nur, in der borland VCL wurden nämlich Komponenten standartmäßig protected angelegt!
Vielen Dank ! =)