דילוג לתוכן
  • חוקי הפורום
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר
עיצובים
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • ברירת מחדל (ללא עיצוב (ברירת מחדל))
  • ללא עיצוב (ברירת מחדל)
כיווץ
לוגו מותג
  1. דף הבית
  2. מחשבים וטכנולוגיה
  3. צילום
  4. עזרה הדדית - צילום
  5. שיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה

שיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה

מתוזמן נעוץ נעול הועבר לא נפתר עזרה הדדית - צילום
102 פוסטים 18 כותבים 4.6k צפיות 16 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • א אלף שין

    @משחזר-מידע כתב בשיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה:

    @אלף-שין כתב בשיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה:

    מענין אם GPT יעזור?

    תעדכן אחרי כמה זמן של בלבולי שכל שלו הרמת ידיים

    @מתכנת-חובב

    האם זה בלבול שכל?

    אני יכול לספק לך סקריפט של Python שמנתח את מבנה הקבצים של קבצי הווידאו של המצלמה שלך וממיר אותם לקובץ חדש עם אותו מבנה. עם זאת, שים לב שהתסריט הזה מיועד למטרות חינוכיות בלבד וייתכן שלא יפעל עבור כל המצלמות או קובצי הווידאו.

    להלן סקריפט בסיסי המנתח את מבנה הקובץ של קובץ וידאו וממיר אותו לקובץ חדש עם אותו מבנה:

    python
    import struct
    import os
    import binascii
    
    def analyze_file(file_path):
        with open(file_path, 'rb') as f:
            file_data = f.read()
    
        header_position = 0
        header_size = struct.unpack('I', file_data[header_position:header_position+4])[0]
        header_position += 4
    
        atoms = []
        while header_position < len(file_data):
            atom_header_size = struct.unpack('I', file_data[header_position:header_position+4])[0]
            header_position += 4
            atom_type = struct.unpack('I', file_data[header_position:header_position+4])[0]
            header_position += 4
    
            atom_data = file_data[header_position:header_position+atom_header_size]
            header_position += atom_header_size
    
            atoms.append((atom_type, atom_data))
    
        return atoms
    
    def convert_file(original_file_path, new_file_path):
        atoms = analyze_file(original_file_path)
    
        with open(original_file_path, 'rb') as f:
            file_data = f.read()
    
        new_file_data = bytearray()
        new_atoms = []
    
        for atom in atoms:
            atom_type, atom_data = atom
            new_atom_data = bytearray()
            # Convert the atom data to the new file format
            # This could involve changing the byte order, length, or contents of the atom
            # For this example, we'll just copy the atom data as-is
            new_atom_data.extend(atom_data)
            new_atoms.append((atom_type, new_atom_data))
    
        # Write the new file data
        with open(new_file_path, 'wb') as f:
            f.write(new_file_data)
    
        return new_atoms
    
    original_file_path = 'path/to/original/file.mp4'
    new_file_path = 'path/to/new/file.mp4'
    
    atoms = convert_file(original_file_path, new_file_path)
    
    print(" Converted file structure:")
    for atom in atoms:
        print(f"Atom type: {atom[0]}, Atom size: {len(atom[1])}")
    

    סקריפט זה מנתח את מבנה הקובץ של הקובץ המקורי על ידי ניתוח הכותרת והאטומים, ולאחר מכן ממיר את הקובץ לקובץ חדש עם אותו מבנה. שים לב שהסקריפט הזה הוא דוגמה בסיסית וייתכן שלא יעבוד עבור כל המצלמות או קובצי הווידאו. ייתכן שיהיה עליך לשנות את הסקריפט כדי לטפל בהבדלים ספציפיים בפורמט הקובץ.

    כמו כן, שים לב שתסריט זה מיועד למטרות חינוכיות בלבד ואין להשתמש בו כדי לשנות או להמיר חומר המוגן בזכויות יוצרים ללא רשות.

    מ מנותק
    מ מנותק
    משחזר מידע
    כתב נערך לאחרונה על ידי
    #67

    @אלף-שין כתב בשיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה:

    האם זה בלבול שכל?

    במקום לשאול
    תבדוק ותעדכן


    הפעלת ניהול דיסקים דרך הקובץ המצורף

    Hex editor חינמי

    א תגובה 1 תגובה אחרונה
    2
    • מ משחזר מידע

      @אלף-שין כתב בשיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה:

      האם זה בלבול שכל?

      במקום לשאול
      תבדוק ותעדכן

      א מנותק
      א מנותק
      אלף שין
      כתב נערך לאחרונה על ידי אלף שין
      #68

      @משחזר-מידע @מתכנת-חובב
      אהממ...
      כרגע איך לומר?
      אולי חצי עובד....

      מוזמנים לנסות!

      import struct
      import os
      import cv2
      from tkinter import Tk
      from tkinter import filedialog
      from tkinter import messagebox
      
      # Define a dictionary to map atom types to their names
      atom_types = {
          0x66744563: 'ftyp',
          0x66706561: 'frea'
      }
      
      def analyze_file(file_path):
          """
          Analyze the file and extract the atoms.
      
          Args:
              file_path (str): The path to the file.
      
          Returns:
              list: A list of tuples containing the atom type and data.
          """
          try:
              with open(file_path, 'rb') as f:
                  file_data = f.read()
      
              header_position = 0
              header_size = struct.unpack('I', file_data[header_position:header_position+4])[0]
              header_position += 4
      
              atoms = []
              while header_position < len(file_data):
                  atom_header_size = struct.unpack('I', file_data[header_position:header_position+4])[0]
                  header_position += 4
                  atom_type = struct.unpack('I', file_data[header_position:header_position+4])[0]
                  header_position += 4
      
                  atom_data = file_data[header_position:header_position+atom_header_size]
                  header_position += atom_header_size
      
                  atoms.append((atom_type, atom_data))
      
              return atoms
          except Exception as e:
              print(f"Error occurred while analyzing the file: {e}")
              return None
      
      def analyze_video_frames(file_path):
          """
          Analyze the video frames and extract the frame rate and resolution.
      
          Args:
              file_path (str): The path to the file.
      
          Returns:
              tuple: A tuple containing the frame rate and resolution.
          """
          try:
              video = cv2.VideoCapture(file_path)
              if not video.isOpened():
                  raise ValueError("Failed to open video file")
      
              frame_rate = video.get(cv2.CAP_PROP_FPS)
              resolution = (int(video.get(cv2.CAP_PROP_WIDTH)), int(video.get(cv2.CAP_PROP_HEIGHT)))
              bit_depth = 8  # Assume 8-bit depth for now
              video.release()
              return frame_rate, resolution, bit_depth
          except Exception as e:
              print(f"Error occurred while analyzing the video frames: {e}")
              return None
      
      def convert_file(source_file_path, target_file_path, output_folder):
          """
           Convert the source file to match the target file.
      
          Args:
              source_file_path (str): The path to the source file.
              target_file_path (str): The path to the target file.
              output_folder (str): The path to the output folder.
          """
          try:
              source_atoms = analyze_file(source_file_path)
              target_atoms = analyze_file(target_file_path)
      
              if source_atoms is None or target_atoms is None:
                  raise Exception("Failed to analyze the files")
      
              source_frame_rate, source_resolution, source_bit_depth = analyze_video_frames(source_file_path)
              target_frame_rate, target_resolution, target_bit_depth = analyze_video_frames(target_file_path)
      
              if source_frame_rate is None or target_frame_rate is None:
                  raise Exception("Failed to analyze the video frames")
      
              # Create a new list to store the updated atoms
              updated_atoms = []
      
              # Iterate over the target atoms
              for target_atom in target_atoms:
                  target_atom_type, target_atom_data = target_atom
      
                  # Find the corresponding atom in the source file
                  for source_atom in source_atoms:
                      source_atom_type, source_atom_data = source_atom
      
                      if target_atom_type == source_atom_type:
                          # Update the target atom to match the source atom
                          if source_atom_type == 0x66744563: # 'ftyp' atom
                              # Change the major brand to match the source file's major brand
                              updated_atom = (target_atom_type, source_atom_data)
                          elif source_atom_type == 0x66706561: # 'frea' atom (frame)
                              # Update the frame data to match the target file's frame data
                              updated_atom = (target_atom_type, target_atom_data)
                          else:
                              updated_atom = target_atom
      
                          updated_atoms.append(updated_atom)
      
              # Create a new file with the updated atoms
              output_folder = filedialog.askdirectory(title="Select Output Folder")
              if not output_folder:
                  messagebox.showerror("Error", "Please select an output folder.")
      
              output_file_path = os.path.join(output_folder, os.path.basename(source_file_path))
              try:
                  with open(output_file_path, 'wb') as f:
                      for atom in updated_atoms:
                          atom_type, atom_data = atom
                          # Write the atom header
                          atom_header = struct.pack('>I', len(atom_data) + 8)
                          f.write(atom_header)
                          f.write(struct.pack('>I', atom_type))
                          f.write(atom_data)
              except Exception as e:
                  print(f"Error occurred while writing to the output file: {e}")
              else:
                  messagebox.showinfo("Conversion Successful", "The file has been converted successfully.")
          finally:
              pass
      
      def main():
          root = Tk()
          root.withdraw()
      
          source_file_path = filedialog.askopenfilename(title="Select Source File", filetypes=[("Video Files", ".mp4 .avi .mov")])
          target_file_path = filedialog.askopenfilename(title="Select Target File", filetypes=[("Video Files", ".mp4 .avi .mov")])
      
          if source_file_path and target_file_path:
              output_folder = filedialog.askdirectory(title="Select Output Folder")
              if output_folder:
                  convert_file(source_file_path, target_file_path, output_folder)
                  messagebox.showinfo("Conversion Successful", "The file has been converted successfully.")
              else:
                  messagebox.showerror("Error", "Please select an output folder.")
          else:
              messagebox.showerror("Error", "Please select all required files and folders.")
      
      if __name__ == "__main__":
          main()
      

      זה נראה טוב...
      רק היה לי הודעת שגיאה כלשהיא שצריך לפחות 4 בתים....
      מה זה אומר?
      אני מדאי אופטימי?

      נ"ב: באדיבות "מגרש המשחקים של גרוק".

      צ תגובה 1 תגובה אחרונה
      0
      • א אלף שין

        @משחזר-מידע @מתכנת-חובב
        אהממ...
        כרגע איך לומר?
        אולי חצי עובד....

        מוזמנים לנסות!

        import struct
        import os
        import cv2
        from tkinter import Tk
        from tkinter import filedialog
        from tkinter import messagebox
        
        # Define a dictionary to map atom types to their names
        atom_types = {
            0x66744563: 'ftyp',
            0x66706561: 'frea'
        }
        
        def analyze_file(file_path):
            """
            Analyze the file and extract the atoms.
        
            Args:
                file_path (str): The path to the file.
        
            Returns:
                list: A list of tuples containing the atom type and data.
            """
            try:
                with open(file_path, 'rb') as f:
                    file_data = f.read()
        
                header_position = 0
                header_size = struct.unpack('I', file_data[header_position:header_position+4])[0]
                header_position += 4
        
                atoms = []
                while header_position < len(file_data):
                    atom_header_size = struct.unpack('I', file_data[header_position:header_position+4])[0]
                    header_position += 4
                    atom_type = struct.unpack('I', file_data[header_position:header_position+4])[0]
                    header_position += 4
        
                    atom_data = file_data[header_position:header_position+atom_header_size]
                    header_position += atom_header_size
        
                    atoms.append((atom_type, atom_data))
        
                return atoms
            except Exception as e:
                print(f"Error occurred while analyzing the file: {e}")
                return None
        
        def analyze_video_frames(file_path):
            """
            Analyze the video frames and extract the frame rate and resolution.
        
            Args:
                file_path (str): The path to the file.
        
            Returns:
                tuple: A tuple containing the frame rate and resolution.
            """
            try:
                video = cv2.VideoCapture(file_path)
                if not video.isOpened():
                    raise ValueError("Failed to open video file")
        
                frame_rate = video.get(cv2.CAP_PROP_FPS)
                resolution = (int(video.get(cv2.CAP_PROP_WIDTH)), int(video.get(cv2.CAP_PROP_HEIGHT)))
                bit_depth = 8  # Assume 8-bit depth for now
                video.release()
                return frame_rate, resolution, bit_depth
            except Exception as e:
                print(f"Error occurred while analyzing the video frames: {e}")
                return None
        
        def convert_file(source_file_path, target_file_path, output_folder):
            """
             Convert the source file to match the target file.
        
            Args:
                source_file_path (str): The path to the source file.
                target_file_path (str): The path to the target file.
                output_folder (str): The path to the output folder.
            """
            try:
                source_atoms = analyze_file(source_file_path)
                target_atoms = analyze_file(target_file_path)
        
                if source_atoms is None or target_atoms is None:
                    raise Exception("Failed to analyze the files")
        
                source_frame_rate, source_resolution, source_bit_depth = analyze_video_frames(source_file_path)
                target_frame_rate, target_resolution, target_bit_depth = analyze_video_frames(target_file_path)
        
                if source_frame_rate is None or target_frame_rate is None:
                    raise Exception("Failed to analyze the video frames")
        
                # Create a new list to store the updated atoms
                updated_atoms = []
        
                # Iterate over the target atoms
                for target_atom in target_atoms:
                    target_atom_type, target_atom_data = target_atom
        
                    # Find the corresponding atom in the source file
                    for source_atom in source_atoms:
                        source_atom_type, source_atom_data = source_atom
        
                        if target_atom_type == source_atom_type:
                            # Update the target atom to match the source atom
                            if source_atom_type == 0x66744563: # 'ftyp' atom
                                # Change the major brand to match the source file's major brand
                                updated_atom = (target_atom_type, source_atom_data)
                            elif source_atom_type == 0x66706561: # 'frea' atom (frame)
                                # Update the frame data to match the target file's frame data
                                updated_atom = (target_atom_type, target_atom_data)
                            else:
                                updated_atom = target_atom
        
                            updated_atoms.append(updated_atom)
        
                # Create a new file with the updated atoms
                output_folder = filedialog.askdirectory(title="Select Output Folder")
                if not output_folder:
                    messagebox.showerror("Error", "Please select an output folder.")
        
                output_file_path = os.path.join(output_folder, os.path.basename(source_file_path))
                try:
                    with open(output_file_path, 'wb') as f:
                        for atom in updated_atoms:
                            atom_type, atom_data = atom
                            # Write the atom header
                            atom_header = struct.pack('>I', len(atom_data) + 8)
                            f.write(atom_header)
                            f.write(struct.pack('>I', atom_type))
                            f.write(atom_data)
                except Exception as e:
                    print(f"Error occurred while writing to the output file: {e}")
                else:
                    messagebox.showinfo("Conversion Successful", "The file has been converted successfully.")
            finally:
                pass
        
        def main():
            root = Tk()
            root.withdraw()
        
            source_file_path = filedialog.askopenfilename(title="Select Source File", filetypes=[("Video Files", ".mp4 .avi .mov")])
            target_file_path = filedialog.askopenfilename(title="Select Target File", filetypes=[("Video Files", ".mp4 .avi .mov")])
        
            if source_file_path and target_file_path:
                output_folder = filedialog.askdirectory(title="Select Output Folder")
                if output_folder:
                    convert_file(source_file_path, target_file_path, output_folder)
                    messagebox.showinfo("Conversion Successful", "The file has been converted successfully.")
                else:
                    messagebox.showerror("Error", "Please select an output folder.")
            else:
                messagebox.showerror("Error", "Please select all required files and folders.")
        
        if __name__ == "__main__":
            main()
        

        זה נראה טוב...
        רק היה לי הודעת שגיאה כלשהיא שצריך לפחות 4 בתים....
        מה זה אומר?
        אני מדאי אופטימי?

        נ"ב: באדיבות "מגרש המשחקים של גרוק".

        צ מנותק
        צ מנותק
        צללית
        כתב נערך לאחרונה על ידי
        #69

        @אלף-שין מה שאלת את הבינה, האם נתת לה לפני זה קובץ וידאו של קנון וקובץ וידאו אחר כדי שתנתח את שתיהם ותבין למה אתה מתכוין כשאתה אומר "מבנה אחר"? אם לא, זה כמעט בטוח דו שיח של חרשים.

        א תגובה 1 תגובה אחרונה
        1
        • צ צללית

          @אלף-שין מה שאלת את הבינה, האם נתת לה לפני זה קובץ וידאו של קנון וקובץ וידאו אחר כדי שתנתח את שתיהם ותבין למה אתה מתכוין כשאתה אומר "מבנה אחר"? אם לא, זה כמעט בטוח דו שיח של חרשים.

          א מנותק
          א מנותק
          אלף שין
          כתב נערך לאחרונה על ידי
          #70

          @צללית
          לא נראה לי שיש כזה אופציה,
          מה שכן, השתדלתי לתת דוגמאות חזקות.

          צ 2 תגובות תגובה אחרונה
          0
          • א אלף שין

            @צללית
            לא נראה לי שיש כזה אופציה,
            מה שכן, השתדלתי לתת דוגמאות חזקות.

            צ מנותק
            צ מנותק
            צללית
            כתב נערך לאחרונה על ידי
            #71

            @אלף-שין גם אם אין את האופציה להעלות את הקובץ עצמו, אבל אפשר לפתוח את הקובץ בעורך HEX ולהעלות את התוכן שלו בצורה טקסטואלית ולתת למודל לנתח את המבנה שלו, אם כי צריך לעשות את זה על קובץ כמה שיותר קטן כדי לחסוך בטוקנים.
            מנסיון שלי עם מודלי בינה, לא נראה לי שבלי זה יש סיכוי שהוא יבין על מה מדובר.

            צ א 3 תגובות תגובה אחרונה
            2
            • צ צללית

              @אלף-שין גם אם אין את האופציה להעלות את הקובץ עצמו, אבל אפשר לפתוח את הקובץ בעורך HEX ולהעלות את התוכן שלו בצורה טקסטואלית ולתת למודל לנתח את המבנה שלו, אם כי צריך לעשות את זה על קובץ כמה שיותר קטן כדי לחסוך בטוקנים.
              מנסיון שלי עם מודלי בינה, לא נראה לי שבלי זה יש סיכוי שהוא יבין על מה מדובר.

              צ מנותק
              צ מנותק
              צדיק וטוב לו 0
              כתב נערך לאחרונה על ידי
              #72

              @צללית אפשר לצטט לו את הפוסט של @משחזר-מידע בהקשר להבדלים בין קנון לשאר המצלמות.

              תגובה 1 תגובה אחרונה
              1
              • א אלף שין

                @צללית
                לא נראה לי שיש כזה אופציה,
                מה שכן, השתדלתי לתת דוגמאות חזקות.

                צ מנותק
                צ מנותק
                צללית
                כתב נערך לאחרונה על ידי
                #73

                @אלף-שין אולי תעלה לפה הסרטה של קנון באורך מינימלי.

                תגובה 1 תגובה אחרונה
                0
                • צ צללית

                  @אלף-שין גם אם אין את האופציה להעלות את הקובץ עצמו, אבל אפשר לפתוח את הקובץ בעורך HEX ולהעלות את התוכן שלו בצורה טקסטואלית ולתת למודל לנתח את המבנה שלו, אם כי צריך לעשות את זה על קובץ כמה שיותר קטן כדי לחסוך בטוקנים.
                  מנסיון שלי עם מודלי בינה, לא נראה לי שבלי זה יש סיכוי שהוא יבין על מה מדובר.

                  א מנותק
                  א מנותק
                  אלף שין
                  כתב נערך לאחרונה על ידי
                  #74

                  @צללית כתב בשיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה:

                  אבל אפשר לפתוח את הקובץ בעורך HEX ולהעלות את התוכן שלו בצורה טקסטואלית ולתת למודל לנתח את המבנה שלו,

                  רעיון, אני ינסה [יכול לנסות לבד..]

                  @צדיק-וטוב-לו-0 כתב בשיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה:

                  @צללית אפשר לצטט לו את הפוסט של @משחזר-מידע בהקשר להבדלים בין קנון לשאר המצלמות.

                  עשיתי ולא עזר,
                  כנראה משחזר מידע מומחה יותר ממנו...

                  צ תגובה 1 תגובה אחרונה
                  1
                  • מ משחזר מידע

                    @אלף-שין כתב בשיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה:

                    האם יש דרך להמיר למבנה שלהם עם אוטמציה?

                    תלמד את המבנה ותכתוב תוכנה
                    זה קל מאד צריך רק להפוך ת'יוצרות
                    עיין בקישור דלעיל

                    לחילופין תערוך תFW שיתמוך בפורמט הסטנדרטי

                    א מנותק
                    א מנותק
                    אלף שין
                    כתב נערך לאחרונה על ידי אלף שין
                    #75

                    @ משחזר-מידע כתב בשיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה:

                    לחילופין תערוך תFW שיתמוך בפורמט הסטנדרטי

                    התכוונת כנראה כמו זה אבל אני חושש..

                    השאלה היא על הדרך השניה "הקלה" "להפוך ת'יוצרות"
                    האם זה יעזור לי?

                    @משחזר-מידע כתב בשיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה:

                    @אלף-שין כתב בשיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה:

                    או אולי יש תוכנה שעושה את זה [עם ממשק גרפי, אלא מה?]....

                    אין סיבה שיהיה
                    מדובר - מבחינת העולם - במשו שלא שוה להשקיע
                    אפחד לא משתמש היום במצלמות
                    חוץ מאיזה פרומיל של פרומיל של פרומיל.... שלא רוצים סמארטפון

                    מענין מה תאמר על זה

                    תגובה 1 תגובה אחרונה
                    1
                    • א אלף שין

                      @צללית כתב בשיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה:

                      אבל אפשר לפתוח את הקובץ בעורך HEX ולהעלות את התוכן שלו בצורה טקסטואלית ולתת למודל לנתח את המבנה שלו,

                      רעיון, אני ינסה [יכול לנסות לבד..]

                      @צדיק-וטוב-לו-0 כתב בשיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה:

                      @צללית אפשר לצטט לו את הפוסט של @משחזר-מידע בהקשר להבדלים בין קנון לשאר המצלמות.

                      עשיתי ולא עזר,
                      כנראה משחזר מידע מומחה יותר ממנו...

                      צ מנותק
                      צ מנותק
                      צללית
                      כתב נערך לאחרונה על ידי
                      #76

                      @אלף-שין כתב בשיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה:

                      רעיון, אני ינסה [יכול לנסות לבד..]

                      אשמח אם תשתף בתוצאות.
                      אני מתענין בזה בעיקר בגלל הבעיה שכאשר משחזרים תמונות וסרטונים ממצלמת קנון אי אפשר להחזיר את זה למצלמה, אז אם יהיה איזה סקריפט אוטומטי שממיר את זה לפורמט מתאים זו תהיה ברכה גדולה.

                      א 2 תגובות תגובה אחרונה
                      1
                      • צ צללית

                        @אלף-שין כתב בשיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה:

                        רעיון, אני ינסה [יכול לנסות לבד..]

                        אשמח אם תשתף בתוצאות.
                        אני מתענין בזה בעיקר בגלל הבעיה שכאשר משחזרים תמונות וסרטונים ממצלמת קנון אי אפשר להחזיר את זה למצלמה, אז אם יהיה איזה סקריפט אוטומטי שממיר את זה לפורמט מתאים זו תהיה ברכה גדולה.

                        א מנותק
                        א מנותק
                        אלף שין
                        כתב נערך לאחרונה על ידי אלף שין
                        #77

                        @צללית
                        על תמונות אין שום בעיה כבר כתבתי מדריך מסודר,
                        מה לא הכנסתי כבר למצלמה?
                        החל מספרים שלמים, עבור דרך תמונות מלפני מאה שנה, וכלה ב... הכל!

                        רק בוידיאו אני קצת מסתבך...

                        צ תגובה 1 תגובה אחרונה
                        0
                        • צ צללית

                          @אלף-שין כתב בשיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה:

                          רעיון, אני ינסה [יכול לנסות לבד..]

                          אשמח אם תשתף בתוצאות.
                          אני מתענין בזה בעיקר בגלל הבעיה שכאשר משחזרים תמונות וסרטונים ממצלמת קנון אי אפשר להחזיר את זה למצלמה, אז אם יהיה איזה סקריפט אוטומטי שממיר את זה לפורמט מתאים זו תהיה ברכה גדולה.

                          א מנותק
                          א מנותק
                          אלף שין
                          כתב נערך לאחרונה על ידי אלף שין
                          #78

                          @צללית

                          מצאתי משהו בפורום גדול של מצלמות

                          מענין אם זה יעזור גם לנו,
                          וגם אפשר לחפש שם [זה תוצאה אחת מתוך כמה עשרות!]

                          תגובה 1 תגובה אחרונה
                          0
                          • א אלף שין

                            @צללית
                            על תמונות אין שום בעיה כבר כתבתי מדריך מסודר,
                            מה לא הכנסתי כבר למצלמה?
                            החל מספרים שלמים, עבור דרך תמונות מלפני מאה שנה, וכלה ב... הכל!

                            רק בוידיאו אני קצת מסתבך...

                            צ מנותק
                            צ מנותק
                            צללית
                            כתב נערך לאחרונה על ידי
                            #79

                            @אלף-שין ראיתי את המדריך רק אתמול, זה ממש דבר נצרך. מה שחסר זה סקריפט שיעשה את הכל אוטומטי.

                            א תגובה 1 תגובה אחרונה
                            1
                            • צ צללית

                              @אלף-שין ראיתי את המדריך רק אתמול, זה ממש דבר נצרך. מה שחסר זה סקריפט שיעשה את הכל אוטומטי.

                              א מנותק
                              א מנותק
                              אלף שין
                              כתב נערך לאחרונה על ידי
                              #80

                              @צללית
                              זה בעיה ממש ממש קטנה,
                              אני מתמקד כרגע בודיאו
                              ומצאתי לבינתיים את מה שהבאת בפוסט הקודם, רק הקישור לתוכנה שם חסום לי.

                              צ תגובה 1 תגובה אחרונה
                              1
                              • א אלף שין

                                @צללית
                                זה בעיה ממש ממש קטנה,
                                אני מתמקד כרגע בודיאו
                                ומצאתי לבינתיים את מה שהבאת בפוסט הקודם, רק הקישור לתוכנה שם חסום לי.

                                צ מנותק
                                צ מנותק
                                צללית
                                כתב נערך לאחרונה על ידי צללית
                                #81

                                @אלף-שין avi2canon.rar
                                תיזהר מוירוסים, [זה מגיע מאיזה רוסי...]

                                א תגובה 1 תגובה אחרונה
                                1
                                • צ צללית

                                  @אלף-שין avi2canon.rar
                                  תיזהר מוירוסים, [זה מגיע מאיזה רוסי...]

                                  א מנותק
                                  א מנותק
                                  אלף שין
                                  כתב נערך לאחרונה על ידי
                                  #82

                                  @צללית
                                  מה זה עושה?
                                  או בכל אופן מה זה אמור לעשות?

                                  צ תגובה 1 תגובה אחרונה
                                  0
                                  • א אלף שין

                                    @צללית
                                    מה זה עושה?
                                    או בכל אופן מה זה אמור לעשות?

                                    צ מנותק
                                    צ מנותק
                                    צללית
                                    כתב נערך לאחרונה על ידי
                                    #83

                                    @אלף-שין לא יודע, זה מהקישור שאתה הבאת...

                                    א תגובה 1 תגובה אחרונה
                                    1
                                    • אהרן שובקסא מנותק
                                      אהרן שובקסא מנותק
                                      אהרן שובקס
                                      מדריכים
                                      כתב נערך לאחרונה על ידי אהרן שובקס
                                      #84

                                      קוד פייתון שמשנה את הסדר של ה data וה md כתבתי משהו בעזרת gpt אבל זה עובד מצוין
                                      @משחזר-מידע מה אתה אומר על זה:?
                                      אבל עדייין הסרטון לא עובד במצלמה כנראה שזה לא רק זה.

                                      import os
                                      
                                      def swap_metadata_and_data(file_path):
                                          with open(file_path, 'rb') as file:
                                              data = file.read()
                                      
                                          ftyp_positions = []
                                          mdat_positions = []
                                          
                                          position = 0
                                          while position < len(data):
                                              ftyp_position = data.find(b'ftyp', position)
                                              mdat_position = data.find(b'mdat', position)
                                              
                                              if ftyp_position != -1:
                                                  ftyp_positions.append(ftyp_position)
                                                  position = ftyp_position + 4 
                                              if mdat_position != -1:
                                                  mdat_positions.append(mdat_position)
                                                  position = mdat_position + 4 
                                              
                                              if ftyp_position == -1 and mdat_position == -1:
                                                  break
                                      
                                          new_data = bytearray(data)
                                      
                                          for ftyp_position in ftyp_positions:
                                              for mdat_position in mdat_positions:
                                                  if ftyp_position < mdat_position:
                                                      new_data[ftyp_position:ftyp_position+4] = b'mdat'
                                                      new_data[mdat_position:mdat_position+4] = b'ftyp'
                                      
                                          new_file_path = os.path.splitext(file_path)[0] + "_modified.MP4"
                                          with open(new_file_path, 'wb') as new_file:
                                              new_file.write(new_data)
                                      
                                          print(f"קובץ חדש עם הסדר המהופך נשמר ב-{new_file_path}")
                                      
                                      # דוגמת קריאה לפונקציה
                                      file_path = "MVI_0017.MP4"
                                      swap_metadata_and_data(file_path)
                                      
                                      

                                      צור קשר: admin@shuvax.com

                                      א 2 תגובות תגובה אחרונה
                                      2
                                      • אהרן שובקסא אהרן שובקס

                                        קוד פייתון שמשנה את הסדר של ה data וה md כתבתי משהו בעזרת gpt אבל זה עובד מצוין
                                        @משחזר-מידע מה אתה אומר על זה:?
                                        אבל עדייין הסרטון לא עובד במצלמה כנראה שזה לא רק זה.

                                        import os
                                        
                                        def swap_metadata_and_data(file_path):
                                            with open(file_path, 'rb') as file:
                                                data = file.read()
                                        
                                            ftyp_positions = []
                                            mdat_positions = []
                                            
                                            position = 0
                                            while position < len(data):
                                                ftyp_position = data.find(b'ftyp', position)
                                                mdat_position = data.find(b'mdat', position)
                                                
                                                if ftyp_position != -1:
                                                    ftyp_positions.append(ftyp_position)
                                                    position = ftyp_position + 4 
                                                if mdat_position != -1:
                                                    mdat_positions.append(mdat_position)
                                                    position = mdat_position + 4 
                                                
                                                if ftyp_position == -1 and mdat_position == -1:
                                                    break
                                        
                                            new_data = bytearray(data)
                                        
                                            for ftyp_position in ftyp_positions:
                                                for mdat_position in mdat_positions:
                                                    if ftyp_position < mdat_position:
                                                        new_data[ftyp_position:ftyp_position+4] = b'mdat'
                                                        new_data[mdat_position:mdat_position+4] = b'ftyp'
                                        
                                            new_file_path = os.path.splitext(file_path)[0] + "_modified.MP4"
                                            with open(new_file_path, 'wb') as new_file:
                                                new_file.write(new_data)
                                        
                                            print(f"קובץ חדש עם הסדר המהופך נשמר ב-{new_file_path}")
                                        
                                        # דוגמת קריאה לפונקציה
                                        file_path = "MVI_0017.MP4"
                                        swap_metadata_and_data(file_path)
                                        
                                        
                                        א מנותק
                                        א מנותק
                                        אלף שין
                                        כתב נערך לאחרונה על ידי אלף שין
                                        #85

                                        @אהרן-שובקס כתב בשיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה:

                                        אבל עדייין הסרטון לא עובד במצלמה כנראה שזה לא רק זה.

                                        לא ציינת בשאלה מה בדיוק ניסת,
                                        אז רק אציין שעל מנת שיעבוד במצלמה
                                        יש כמה תנאי מינמום שתקפים גם לתמונות,
                                        צריך להעתיק לכרטיס דווקא ישירות מהמחשב, ולא כשהוא בתוך המצלמה עם כבל למצלמה,
                                        כמו כן, מיקום הוידיאו צריך להיות בתוך תיקייה שיש בה כבר קבצי וידיאו של המצלמה,
                                        ושם הקובץ חייב להיות אותו שם בדיוק [כולל למשל שהסיומת MP4 תהיה בכתב גדול ולא קטן]
                                        והמספר הסידורי צריך להיות בסדר עוקב של האחרון בתיקייה.
                                        אה, וכמובן צריך לשנות את הפורמט והקידוד עצמו [בעיקר- פריימים לשניה, קצב סיביות, רזולציה, עומק סיביות, קצב דגימות שמע, וכו'].

                                        האם עשית את כל זה?
                                        או במילים אחרות, האם תמונות כן הצלחת לראות במצלמה? [כי אם לא אז לא עשית את כל השלבים ה'רגילים'].

                                        עריכה- לאחר בדיקה שעשיתי נראה שאכן זה לא הועיל, אם כי יתכן שלא שיניתי את הפורמט והקידוד במדויק,

                                        תגובה 1 תגובה אחרונה
                                        0
                                        • צ צללית

                                          @אלף-שין גם אם אין את האופציה להעלות את הקובץ עצמו, אבל אפשר לפתוח את הקובץ בעורך HEX ולהעלות את התוכן שלו בצורה טקסטואלית ולתת למודל לנתח את המבנה שלו, אם כי צריך לעשות את זה על קובץ כמה שיותר קטן כדי לחסוך בטוקנים.
                                          מנסיון שלי עם מודלי בינה, לא נראה לי שבלי זה יש סיכוי שהוא יבין על מה מדובר.

                                          א מנותק
                                          א מנותק
                                          אלף שין
                                          כתב נערך לאחרונה על ידי
                                          #86

                                          @צללית כתב בשיתוף | אתגר ומתן שכר בצידו! הכנסת וידיאו למצלמה:

                                          @אלף-שין גם אם אין את האופציה להעלות את הקובץ עצמו, אבל אפשר לפתוח את הקובץ בעורך HEX ולהעלות את התוכן שלו בצורה טקסטואלית ולתת למודל לנתח את המבנה שלו, אם כי צריך לעשות את זה על קובץ כמה שיותר קטן כדי לחסוך בטוקנים.
                                          מנסיון שלי עם מודלי בינה, לא נראה לי שבלי זה יש סיכוי שהוא יבין על מה מדובר.

                                          שאלתי אותו אם זה יעזור לו,
                                          והוא ענה לי
                                          MP4 הוא פורמט קובץ וידאו נפוץ, וקנון (Canon) הוא יצרן מצלמות וידאו ידוע. המבנה הייחודי של קנון ב-MP4 הוא מעניין.

                                          ב-MP4, הקובץ מחולק לחלקים קטנים יותר, הנקראים "אטומים" (atoms). כל אטום מכיל מידע מסוים, כגון כותרות, דאטה, או מידע על הקובץ.

                                          ב-16 ביט, ה-HXD של MP4 יראה כך:

                                          • 4 הבייטים הראשונים: גודל האטום (32 ביט)
                                          • 4 הבייטים הבאים: סוג האטום (32 ביט)
                                          • הבייטים הבאים: תוכן האטום

                                          הכותרות ב-MP4 מכילות מידע על הקובץ, כגון:

                                          • ftyp: סוג הקובץ (MP4)
                                          • pdin: מידע על המצלמה (של קנון)
                                          • moov: מידע על הווידאו והאודיו

                                          הדאטה ב-MP4 מכילה את הווידאו והאודיו עצמם, המחולקים לחלקים קטנים יותר, הנקראים "פריימים" (frames).

                                          אם אתה תעלה לי את ה-HXD, אני יכול לנסות לפענח את המשמעות שלו, ולחשוף את המידע הנסתר בתוך הקובץ.

                                          אנסה בהמשך [יש לי בעיות הרשאה כעת...]

                                          תגובה 1 תגובה אחרונה
                                          0

                                          • התחברות

                                          • אין לך חשבון עדיין? הרשמה

                                          • התחברו או הירשמו כדי לחפש.
                                          • פוסט ראשון
                                            פוסט אחרון
                                          0
                                          • חוקי הפורום
                                          • לא נפתר
                                          • משתמשים
                                          • חיפוש גוגל בפורום
                                          • צור קשר