Audio-PIDs im Movieplayer

Wünsche, Anträge, Fehlermeldungen
Gaucho316
Contributor
Beiträge: 1688
Registriert: Donnerstag 17. Februar 2005, 20:24

Audio-PIDs im Movieplayer

Beitrag von Gaucho316 »

Vor einigen Monaten wurde im Movieplayer die Audioauswahl optimiert, so dass die Audioinformationen aus der XML-Datei ausgelesen werden. Leider habe ich von Zeit zu Zeit das Problem, dass diese Informationen leider nicht richtig in die XML-Datei geschrieben werden. So weiß ich dann nicht, welche die deutsche und welche die englische Tonspur ist, da nur "German", "German" und "German (AC3)" angezeigt wird. Könnte man bitte die Informationen, um welche PIDs es sich handelt, wieder mit in die Anzeige aufnehmen?
PT-1
Moderator english
Beiträge: 2458
Registriert: Donnerstag 20. Dezember 2001, 00:00

Beitrag von PT-1 »

Bei Premiere wird da

deutsch
German (die englische spur)
AC3

glaube ich angezeigt
Gaucho316
Contributor
Beiträge: 1688
Registriert: Donnerstag 17. Februar 2005, 20:24

Re: Audio-PIDs im Movieplayer

Beitrag von Gaucho316 »

Nach knapp 2 Jahren ist mir eine Lösung für das Problem eingefallen.

Statt

German
German
German (AC3)

steht dann bspw.

German [Stream 513]
German [Stream 512]
German (AC3) [Stream 515 (AC3)]

da. Allerdings würde dann auch bspw. statt

Englisch
Deutsch
Dolby Digital 5.1 (AC3)

das hier

Englisch [Stream 513]
Deutsch [Stream 512]
Dolby Digital 5.1 (AC3) [Stream 515 (AC3)]

dastehen. Trotzdem fände ich es besser. Ich würde das gerne im CVS sehen.

Code: Alles auswählen

--- movieplayer.cpp.ORIG	2009-01-30 10:00:49.049517000 +0100
+++ movieplayer.cpp	2009-02-06 14:58:09.018072000 +0100
@@ -209,7 +209,7 @@
        if( movie_info->audioPids[i].epgAudioPid == apid && 
           !movie_info->audioPids[i].epgAudioPidName.empty())
        {
-            *apidtitle = movie_info->audioPids[i].epgAudioPidName;
+            *apidtitle = movie_info->audioPids[i].epgAudioPidName + " [" + *apidtitle + "]";
             return true;
        }
     }
GetAway
Contributor
Beiträge: 1509
Registriert: Donnerstag 27. Dezember 2007, 12:59

Re: Audio-PIDs im Movieplayer

Beitrag von GetAway »

Im Movieplayer2 wird alles besser.
Gaucho316
Contributor
Beiträge: 1688
Registriert: Donnerstag 17. Februar 2005, 20:24

Re: Audio-PIDs im Movieplayer

Beitrag von Gaucho316 »

Da kann doch aber der Movieplayer2 auch nichts machen, wenn die Namen der Audio-PIDs schon bei der Aufnahme nicht zur Verfügung standen.
Gaucho316
Contributor
Beiträge: 1688
Registriert: Donnerstag 17. Februar 2005, 20:24

Re: Audio-PIDs im Movieplayer

Beitrag von Gaucho316 »

*schieb*

Hat denn wirklich niemand eine Meinung zu meinem Patch?
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: Audio-PIDs im Movieplayer

Beitrag von rhabarber1848 »

Wenn bis heute abend niemand Einspruch erhebt, wandert der Patch heute ins CVS.

Ich habe ihn allerdings nicht getestet, da ich nur selten mit mehreren Tonspuren
arbeite und mir daher ein Testszenario fehlt. Wenn der Patch dann in den JTG-
Images u.a. drin ist, könnte vielleicht noch Widerspruch kommen, dann kann
der Patch immer noch aus dem CVS entfernt werden.
GetAway
Contributor
Beiträge: 1509
Registriert: Donnerstag 27. Dezember 2007, 12:59

Re: Audio-PIDs im Movieplayer

Beitrag von GetAway »

Hier mal ein Shot der geänderten Anzeige. Streams stammen von 3Sat. Etwas bescheiden.
Bild
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: Audio-PIDs im Movieplayer

Beitrag von seife »

Code: Alles auswählen

*apidtitle = movie_info->audioPids[i].epgAudioPidName + " [" + *apidtitle + "]";
JFTR: ich bezweifle, dass das korrekt ist.
valgrind bekommt davon bestimmt Magenschmerzen ;)

Ist mir aber egal, solange es niemand im MP2 committed.
Gaucho316
Contributor
Beiträge: 1688
Registriert: Donnerstag 17. Februar 2005, 20:24

Re: Audio-PIDs im Movieplayer

Beitrag von Gaucho316 »

GetAway hat geschrieben:Hier mal ein Shot der geänderten Anzeige. Streams stammen von 3Sat. Etwas bescheiden.
Es funktioniert auf alle Fälle so, wie ich mir das gedacht habe. Wenn du einen besseren Vorschlag hast, dann her damit. Meckern kann ich auch.
seife hat geschrieben:

Code: Alles auswählen

*apidtitle = movie_info->audioPids[i].epgAudioPidName + " [" + *apidtitle + "]";
JFTR: ich bezweifle, dass das korrekt ist.
valgrind bekommt davon bestimmt Magenschmerzen ;)
Wie wäre denn die programmiertechnisch korrekte Lösung? Ich mache die Änderungen auch nur rein intuitiv, ohne allzu große Ahnung von C und C++ zu haben.
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: Audio-PIDs im Movieplayer

Beitrag von seife »

Ich glaube halt nicht, dass das "weise einen pointer auf sich selbst zu" so richtig gehen kann. Ich habe mir aber den Kontext nicht angeschaut. Jag's einfach mal durch valgrind, der beschimpft dich dann schon ;)
Gaucho316
Contributor
Beiträge: 1688
Registriert: Donnerstag 17. Februar 2005, 20:24

Re: Audio-PIDs im Movieplayer

Beitrag von Gaucho316 »

Wie wäre es dann hiermit? Die Zuweisung des Pointers auf sich selbst ist ja damit raus.

Code: Alles auswählen

--- tuxbox-cvs/apps/tuxbox/neutrino/src/gui/movieplayer.cpp	2009-03-16 20:29:14.000000000 +0100
+++ tuxbox-src/apps/tuxbox/neutrino/src/gui/movieplayer.cpp	2009-03-16 20:46:49.000000000 +0100
@@ -208,7 +208,8 @@
        if( movie_info->audioPids[i].epgAudioPid == apid && 
           !movie_info->audioPids[i].epgAudioPidName.empty())
        {
-            *apidtitle = movie_info->audioPids[i].epgAudioPidName;
+            std::string apidtitle_old = *apidtitle;
+            *apidtitle = movie_info->audioPids[i].epgAudioPidName + " [" + apidtitle_old + "]";
             return true;
        }
     }
Gaucho316
Contributor
Beiträge: 1688
Registriert: Donnerstag 17. Februar 2005, 20:24

Re: Audio-PIDs im Movieplayer

Beitrag von Gaucho316 »

Ich habe folgenden Vorschlag als Kompromiss:
German [513]
German [512]
German (AC3) [515]


Der Code dazu sieht folgendermaßen aus:

Code: Alles auswählen

--- movieplayer.cpp.ORIG	2009-03-17 12:55:02.058300800 +0100
+++ movieplayer.cpp	2009-03-17 13:08:12.855411200 +0100
@@ -208,7 +208,9 @@
        if( movie_info->audioPids[i].epgAudioPid == apid && 
           !movie_info->audioPids[i].epgAudioPidName.empty())
        {
-            *apidtitle = movie_info->audioPids[i].epgAudioPidName;
+            char show_pid_number[4];
+            sprintf(show_pid_number, "%u", apid);
+            *apidtitle = movie_info->audioPids[i].epgAudioPidName + " [" + show_pid_number + "]";
             return true;
        }
     }
Das würde ich nun aber furchtbar gerne so schnell wie möglich im CVS sehen. :wink:
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: Audio-PIDs im Movieplayer

Beitrag von rhabarber1848 »

Gaucho316 hat geschrieben:Das würde ich nun aber furchtbar gerne so schnell wie möglich im CVS sehen. :wink:
Was lange währt, wird endlich gut: http://cvs.tuxbox-cvs.sourceforge.net/t ... 8&r2=1.169
Gaucho316
Contributor
Beiträge: 1688
Registriert: Donnerstag 17. Februar 2005, 20:24

Re: Audio-PIDs im Movieplayer

Beitrag von Gaucho316 »

Juhu, endlich. Vielen Dank. :)